/* ═══════════════════════════════════════════════════════════
   INDEX · Shared UI — tokens & components (lifted from index-v3)
   Used by: captura.html, obrigado.html
   ═══════════════════════════════════════════════════════════ */
:root{
  --gold:#C59F3F;
  --gold-bright:#D4AF37;
  --gold-soft:#FFEAB5;
  --gold-deep:#745A18;
  --ivory:#F9F7F2;
  --paper:#F4F1EA;

  --bg:#070912;
  --bg-2:#0B0F1F;
  --surface:#111627;
  --surface-2:#171D2F;
  --line:rgba(255,255,255,.08);
  --line-strong:rgba(255,255,255,.14);

  --text:#F9F7F2;
  --text-2:rgba(249,247,242,.72);
  --text-3:rgba(249,247,242,.5);
  --text-4:rgba(249,247,242,.32);

  --whats:#22B36B;
  --whats-deep:#1A8E54;

  --r-sm:10px;
  --r-md:14px;
  --r-lg:20px;
  --r-pill:999px;

  --shadow-sm:0 2px 8px rgba(0,0,0,.3);
  --shadow-md:0 14px 40px rgba(0,0,0,.45);
  --shadow-glow:0 0 0 1px rgba(197,159,63,.35), 0 18px 60px -10px rgba(197,159,63,.35);

  --font-display:'Cormorant Garamond', 'Times New Roman', serif;
  --font-sans:'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
  overflow-x:hidden;
}
body{
  font-family:var(--font-sans);
  font-size:16px;
  line-height:1.55;
  color:var(--text);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
}
img,svg{display:block;max-width:100%;height:auto}
button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,p{margin:0}

/* layout */
.container{ width:100%; max-width:1200px; margin:0 auto; padding-inline: clamp(20px, 4vw, 48px); }
.container-narrow{ max-width:880px; margin:0 auto; padding-inline: clamp(20px, 4vw, 48px); }

/* type helpers */
.serif{ font-family:var(--font-display); font-weight:500; letter-spacing:-.005em; }
.serif-i{ font-family:var(--font-display); font-style:italic; font-weight:500; }
.gold{ color:var(--gold) }
.eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-size:12px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--gold);
}
.eyebrow .dot{ width:6px;height:6px;border-radius:50%; background:var(--gold); box-shadow:0 0 0 4px rgba(197,159,63,.18); animation:pulse 2.4s ease-in-out infinite; }
@keyframes pulse{ 50%{ box-shadow:0 0 0 8px rgba(197,159,63,.05) } }

/* live badge — pulsing red/green dot variant */
.live-badge{
  display:inline-flex; align-items:center; gap:9px;
  padding:9px 16px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--r-pill);
  background:rgba(255,255,255,.03);
  font-size:11.5px; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--text-2);
}
.live-badge .live-dot{
  width:8px;height:8px;border-radius:50%; flex:none;
  background:#ff4d4d;
  box-shadow:0 0 0 0 rgba(255,77,77,.5);
  animation:pulse-red 1.6s infinite;
}
@keyframes pulse-red{ 0%,100%{ box-shadow:0 0 0 0 rgba(255,77,77,.5)} 50%{ box-shadow:0 0 0 7px rgba(255,77,77,0)} }
.live-badge b{ color:var(--text); font-weight:600 }

/* buttons */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:14px 24px;
  border-radius:var(--r-pill);
  font-weight:600;
  font-size:15px;
  letter-spacing:.01em;
  transition: transform .18s, background-color .2s, box-shadow .25s, filter .2s, color .2s;
  white-space:nowrap;
  min-height:48px;
}
.btn-primary{ background:var(--gold); color:var(--bg); box-shadow: 0 8px 24px -8px rgba(197,159,63,.6), inset 0 1px 0 rgba(255,255,255,.18); }
.btn-primary:hover{ filter:brightness(1.08); transform: translateY(-1px); box-shadow:0 14px 30px -8px rgba(197,159,63,.7); }
.btn-primary:active{ transform: translateY(0) scale(.98); }
.btn-ghost{ border:1px solid var(--line-strong); color:var(--text); background:rgba(255,255,255,.02); }
.btn-ghost:hover{ background:rgba(255,255,255,.06); border-color: rgba(255,255,255,.25) }
.btn-whats{ background:var(--whats); color:#fff; box-shadow:0 10px 28px -8px rgba(34,179,107,.6), inset 0 1px 0 rgba(255,255,255,.22); }
.btn-whats:hover{ filter:brightness(1.06); transform:translateY(-1px); box-shadow:0 16px 34px -8px rgba(34,179,107,.7); }
.btn-whats:active{ transform:translateY(0) scale(.98); }
.btn-lg{ padding:18px 32px; font-size:16px; min-height:56px }
.btn-block{ width:100% }
.btn .arrow{ transition: transform .25s }
.btn:hover .arrow{ transform: translateX(3px) }
.btn svg{ width:20px; height:20px; }

/* ───────── minimal NAV ───────── */
.nav{
  position:fixed; top:0; left:0; right:0; z-index:50;
  background:rgba(7,9,18,.78);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  border-bottom:1px solid transparent;
  transition: border-color .3s, background .3s;
}
.nav.scrolled{ border-bottom-color: var(--line); background:rgba(7,9,18,.92); }
.nav-inner{
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  height:68px;
}
.brand{ display:flex; align-items:center; gap:10px; font-weight:600; }
.brand img{ width:24px; height:24px; }
.brand-mark{ font-family:var(--font-display); font-size:22px; letter-spacing:.18em; }
.nav .live-badge{ padding:7px 13px; font-size:10.5px; }
@media (max-width:560px){ .nav .live-badge b{ display:none } .nav .live-badge .sep-date{ display:none } }

/* ───────── FORM ───────── */
.lead-form{ display:flex; flex-direction:column; gap:16px; }
.field{ display:flex; flex-direction:column; gap:8px; }
.field label{
  font-size:11px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--text-3); font-weight:600;
}
.input{
  width:100%;
  background:var(--bg-2);
  border:1px solid var(--line-strong);
  border-radius:var(--r-md);
  padding:15px 16px;
  color:var(--text);
  font-family:inherit; font-size:16px;
  transition: border-color .2s, box-shadow .2s, background .2s;
}
.input::placeholder{ color:var(--text-4) }
.input:focus{
  outline:none;
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(197,159,63,.18);
  background:var(--surface);
}
.input.invalid{ border-color:#ff6b6b; box-shadow:0 0 0 3px rgba(255,107,107,.16) }
.form-note{
  display:flex; align-items:center; gap:8px;
  font-size:12.5px; color:var(--text-3); line-height:1.45;
}
.form-note svg{ width:14px; height:14px; color:var(--gold); flex:none }

/* ───────── REVEAL ───────── */
.reveal{
  opacity:0;
  transform: translateY(28px);
  transition: opacity 1s cubic-bezier(.22,.61,.36,1), transform 1s cubic-bezier(.22,.61,.36,1);
  will-change: opacity, transform;
}
.reveal.in{ opacity:1; transform:none; }

/* ───────── FOOTER ───────── */
.foot{
  border-top:1px solid var(--line);
  padding: 56px 0 64px;
}
.foot-inner{
  display:flex; flex-wrap:wrap; gap:24px; justify-content:space-between; align-items:center;
}
.foot-brand{ display:flex; align-items:center; gap:10px; }
.foot-brand .brand-mark{ font-size:26px; }
.foot-meta{ font-size:12px; color:var(--text-3); line-height:1.6; text-align:right; }
.foot-meta .amdg{
  font-family:var(--font-display); font-style:italic;
  color:var(--gold); letter-spacing:.3em; text-transform:uppercase; font-size:11px;
  display:block; margin-top:4px;
}
@media (max-width:560px){ .foot-inner{ flex-direction:column; align-items:flex-start } .foot-meta{ text-align:left } }

/* mobile: full-width buttons */
@media (max-width:520px){
  .btn-lg{ width:100% }
}
