:root {
  --navy: #0f172a;
  --gold: #f59e0b;
  --gold-2: #fbbf24;
}

html { scroll-behavior: smooth; }

body {
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.section-padding { padding-top: 4rem; padding-bottom: 4rem; }
@media (min-width: 640px) { .section-padding { padding-top: 5rem; padding-bottom: 5rem; } }
@media (min-width: 1024px) { .section-padding { padding-top: 6rem; padding-bottom: 6rem; } }

.btn-gold {
  background: linear-gradient(135deg, var(--gold) 0%, var(--gold-2) 100%);
  color: var(--navy);
  font-weight: 800;
  box-shadow: 0 10px 24px -10px rgba(245,158,11,0.55);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.btn-gold:hover {
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 14px 28px -10px rgba(245,158,11,0.7);
}
.btn-gold:active { transform: translateY(0); }

/* Fade-in on scroll */
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .6s ease, transform .6s ease; }
.reveal.is-visible { opacity: 1; transform: none; }

/* Focus visible */
:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; border-radius: 6px; }

img { max-width: 100%; height: auto; }

/* CTA fixa (mobile) */
#sticky-cta { transition: transform .3s ease; }
.tabular-nums { font-variant-numeric: tabular-nums; }
