/* ─── BUTTONS ─── */
.btn {
  display: inline-flex; align-items: center; gap: 0.6rem;
  font-family: var(--ff-body); font-weight: 600; font-size: var(--fs-sm);
  letter-spacing: 0.03em; text-decoration: none; cursor: pointer;
  border: none; outline: none; border-radius: var(--radius-pill);
  transition: all var(--duration-mid) var(--ease-out);
  position: relative; overflow: hidden; white-space: nowrap;
  padding: 0.75rem 1.8rem; /* Premium default padding to prevent squishing */
}
/* Sizes */
.btn--lg { padding: 0.875rem 2.2rem; font-size: var(--fs-base); }
.btn--md { padding: 0.75rem 1.8rem; }
.btn--sm { padding: 0.45rem 1.3rem; font-size: var(--fs-xs); }
.btn--full { width: 100%; justify-content: center; }

/* PRIMARY — Gold CTA */
.btn--primary {
  background: var(--grad-gold); color: var(--clr-bg-darkest); font-weight: 700;
  box-shadow: var(--shadow-btn);
}
.btn--primary::after {
  content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.28), transparent);
  transition: left 0.55s var(--ease-out);
}
.btn--primary:hover { box-shadow: 0 8px 28px rgba(242,193,46,0.50); transform: translateY(-2px) scale(1.02); }
.btn--primary:hover::after { left: 200%; }
.btn--primary:active { transform: translateY(0) scale(0.98); }

/* SECONDARY — Ghost on dark */
.btn--secondary {
  background: rgba(255,255,255,0.07); border: 1.5px solid rgba(255,255,255,0.28);
  color: var(--clr-text-light); backdrop-filter: blur(8px);
}
.btn--secondary:hover { background: rgba(255,255,255,0.13); border-color: rgba(255,255,255,0.50); transform: translateY(-2px); }

/* OUTLINE — Green on light bg */
.btn--outline {
  background: transparent; border: 2px solid var(--clr-green); color: var(--clr-green);
}
.btn--outline:hover { background: var(--clr-green); color: var(--clr-white); transform: translateY(-2px); box-shadow: 0 6px 24px rgba(26,107,58,0.25); }

/* OUTLINE GOLD */
.btn--outline-gold {
  background: transparent; border: 1.5px solid rgba(242,193,46,0.48); color: var(--clr-gold);
}
.btn--outline-gold:hover { background: rgba(242,193,46,0.10); border-color: var(--clr-gold); transform: translateY(-2px); }

/* DARK — Green solid on light */
.btn--dark {
  background: var(--grad-green); color: var(--clr-white); box-shadow: 0 4px 16px rgba(26,107,58,0.30);
}
.btn--dark:hover { box-shadow: 0 8px 32px rgba(26,107,58,0.40); transform: translateY(-2px); }

/* Icons */
.btn .lucide-icon { width: 1.1em; height: 1.1em; flex-shrink: 0; }
.cta-arrow { transition: transform var(--duration-fast) var(--ease-out); margin-left: 3px; }
.btn:hover .cta-arrow { transform: translateX(5px); }

/* WHATSAPP BUTTON */
.btn--whatsapp {
  background: #128C7E;
  color: var(--clr-white);
  box-shadow: 0 4px 16px rgba(18,140,126,0.25);
}
.btn--whatsapp:hover {
  background: #0f7267;
  color: var(--clr-white);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(18,140,126,0.38);
}


