.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.9rem 2rem;border-radius:var(--radius-full);font-weight:700;font-size:var(--fs-base);transition:all var(--transition-base);border:2px solid transparent}.btn--primary{background-color:var(--color-brown);color:var(--color-white);box-shadow:0 8px 20px rgba(139,90,60,.25)}.btn--primary:hover,.btn--primary:focus-visible{background-color:var(--color-brown-dark);transform:translateY(-3px);box-shadow:0 12px 28px rgba(110,69,48,.35)}.btn--secondary{background-color:transparent;border-color:var(--color-brown);color:var(--color-brown-dark)}.btn--secondary:hover,.btn--secondary:focus-visible{background-color:var(--color-brown);color:var(--color-white);transform:translateY(-2px)}.btn--lg{padding:1.1rem 2.5rem;font-size:var(--fs-md)}.btn--block{width:100%}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important;box-shadow:none!important}.cart-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-full);background-color:var(--color-white);border:1px solid var(--color-border-light);font-size:1.25rem;box-shadow:var(--shadow-soft);transition:var(--transition-base)}.cart-button:hover{transform:scale(1.05);border-color:var(--color-brown-light)}.cart-button__count{position:absolute;top:-2px;right:-2px;min-width:22px;height:22px;padding:0 6px;border-radius:var(--radius-full);background-color:var(--color-brown);color:var(--color-white);font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--color-white)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-md)}.product-card{background-color:var(--color-white);border:1px solid var(--color-border-light);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-medium);border-color:var(--color-brown-light)}.product-card__image-wrap{aspect-ratio:1 / 1;background-color:var(--color-brown-bg);overflow:hidden;position:relative}.product-card__image{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease}.product-card:hover .product-card__image{transform:scale(1.04)}.product-card__body{padding:var(--space-md);display:flex;flex-direction:column;gap:.5rem;flex:1}.product-card__name{font-family:var(--font-display);font-size:var(--fs-md);color:var(--color-text-dark)}.product-card__desc{color:var(--color-text-muted-dark);font-size:var(--fs-sm);flex:1;line-height:1.5}.product-card__price{font-weight:700;color:var(--color-brown-dark);font-size:var(--fs-md);margin-top:.4rem}.product-card__add-btn{margin-top:.75rem;background-color:var(--color-text-dark);color:var(--color-white);border-radius:var(--radius-full);padding:.8rem 1.2rem;font-weight:700;font-size:var(--fs-sm);transition:var(--transition-base)}.product-card__add-btn:hover{background-color:var(--color-brown);transform:translateY(-1px)}.product-card__add-btn.is-added{background-color:var(--color-brown-dark)}.cart-overlay{position:fixed;inset:0;background-color:rgba(18,18,18,.4);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:50;animation:fadeIn var(--transition-base)}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.cart-drawer{position:fixed;top:0;right:0;bottom:0;height:100%;width:min(440px,100%);background-color:var(--color-white);box-shadow:var(--shadow-strong);z-index:60;display:flex;flex-direction:column;animation:slideIn var(--transition-base)}@keyframes slideIn{from{transform:translateX(100%)}to{transform:translateX(0)}}.cart-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);border-bottom:1px solid var(--color-border-light)}.cart-drawer__header h2{font-size:var(--fs-lg);color:var(--color-text-dark)}.cart-drawer__close{font-size:2rem;line-height:1;color:var(--color-text-muted-dark);padding:.2rem .6rem;border-radius:var(--radius-sm);transition:var(--transition-base)}.cart-drawer__close:hover{color:var(--color-brown);background-color:var(--color-brown-bg)}.cart-drawer__items{flex:1;overflow-y:auto;padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-md)}.cart-empty{color:var(--color-text-muted-dark);text-align:center;margin-top:var(--space-xl);font-size:var(--fs-md)}.cart-item{display:flex;gap:var(--space-sm);align-items:center;border-bottom:1px solid var(--color-border-light);padding-bottom:var(--space-sm)}.cart-item__image{width:70px;height:70px;border-radius:var(--radius-sm);object-fit:cover;background-color:var(--color-brown-bg);flex-shrink:0}.cart-item__info{flex:1;min-width:0}.cart-item__name{font-weight:700;font-size:var(--fs-sm);color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-item__meta{color:var(--color-text-muted-dark);font-size:var(--fs-xs);display:flex;align-items:center;gap:.75rem;margin-top:.4rem}.cart-item__qty-controls{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--color-border-light);border-radius:var(--radius-full);padding:.2rem .6rem;background-color:var(--color-white-soft)}.cart-item__qty-btn{font-weight:700;color:var(--color-text-dark);width:22px;text-align:center}.cart-item__remove{color:var(--color-danger);font-size:var(--fs-xs);font-weight:600;text-decoration:underline;margin-left:auto}.cart-item__subtotal{font-weight:700;font-size:var(--fs-sm);color:var(--color-text-dark)}.cart-drawer__footer{padding:var(--space-md);border-top:1px solid var(--color-border-light);background-color:var(--color-white-soft);display:flex;flex-direction:column;gap:var(--space-sm)}.cart-total{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-md);color:var(--color-text-dark);font-weight:700}
/* ---------- GRUPO DE BOTOES DE CONTATO ---------- */
/* ---------- GRUPO DE BOTOES DE CONTATO ---------- */
.contact__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: var(--space-xs);
}

/* ---------- BOTAO DO INSTAGRAM (CORRIGIDO) ---------- */
.btn--instagram {
  position: relative;
  background-color: #ffffff;
  border: 2px solid #E1306C;
  color: #C13584 !important; /* Importante para sobrepor a regra global 'a { color: inherit }' */
  box-shadow: var(--shadow-soft);
  overflow: hidden;
  z-index: 1;
  transition: color 0.3s ease, border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
}

/* Fundo em gradiente via pseudoelemento para animação suave */
.btn--instagram::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
  opacity: 0;
  z-index: -1;
  transition: opacity 0.3s ease;
}

/* Estado de Hover / Foco */
.btn--instagram:hover,
.btn--instagram:focus-visible {
  color: #ffffff !important;
  border-color: transparent;
  transform: translateY(-3px);
  box-shadow: 0 10px 25px rgba(225, 48, 108, 0.35);
}

.btn--instagram:hover::before,
.btn--instagram:focus-visible::before {
  opacity: 1;
}
