/* Shared HBS funnel styles: Apple-style pass (2026-10-30). Charcoal / navy / gold, flat, no glows. */
:root {
  --charcoal:#171E26; --navy:#203159; --gold:#C9A24D; --gold-hi:#E6C77A; --off-white:#F5F7FA;
  --surface:#1C2430; --hairline:rgba(255,255,255,.08);
}
html { scroll-behavior:smooth; }
body {
  font-family:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", Inter, sans-serif;
  background:var(--charcoal); color:var(--off-white); margin:0;
  -webkit-font-smoothing:antialiased; -webkit-tap-highlight-color:transparent;
}
.balance { text-wrap:balance; }
h1, h2 { letter-spacing:-0.022em; }

/* Background */
.bg-grid-pattern { display:none; }
.bg-noise {
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  opacity:.03;
}
.hero-glow {
  background:
    radial-gradient(55% 35% at 50% 0%, rgba(201,162,77,.08), transparent 70%),
    radial-gradient(80% 45% at 50% 30%, rgba(32,49,89,.45), transparent 75%);
}

/* Type */
.gold-text {
  background:linear-gradient(180deg, #F2DCA0 0%, var(--gold-hi) 60%, #D9B866 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.kicker {
  display:block; color:var(--gold);
  font-size:12px; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
}
.text-glow { text-shadow:none; }

/* Surfaces */
.card {
  position:relative; border-radius:20px;
  background:var(--surface);
  border:1px solid var(--hairline);
}
.card-hi { border-color:rgba(201,162,77,.28); }
.top-line { display:none; }
.divider { height:1px; width:64px; margin:0 auto; background:var(--hairline); }
.band { background:none; }

/* Icons */
.icon-badge {
  width:40px; height:40px; flex:none; border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(201,162,77,.10); border:1px solid rgba(201,162,77,.22);
}
.step-num {
  width:32px; height:32px; flex:none; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:var(--gold-hi); color:var(--charcoal);
  font-weight:700; font-size:14px;
}
.check {
  width:24px; height:24px; flex:none; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:rgba(201,162,77,.12); border:1px solid rgba(201,162,77,.35);
}

/* Trust row */
.trust-cell { display:flex; flex-direction:column; align-items:center; justify-content:flex-start; text-align:center; padding:.7rem .4rem; border-radius:14px; background:rgba(255,255,255,.03); border:1px solid var(--hairline); }

/* Hero: things they never deal with */
.strike-row { display:flex; flex-wrap:wrap; justify-content:center; gap:.25rem; }
.strike-pill {
  display:inline-flex; align-items:center; gap:.22rem;
  padding:.22rem .48rem; border-radius:999px;
  background:rgba(255,255,255,.04); border:1px solid var(--hairline);
  color:rgba(245,247,250,.65); font-size:10.5px; font-weight:500; white-space:nowrap;
}
.strike-pill s { text-decoration-color:rgba(245,247,250,.55); text-decoration-thickness:1.5px; }
.strike-pill svg { flex:none; opacity:.7; }

/* Hero cue: points them down to the video */
.cue {
  display:inline-flex; align-items:center; gap:.45rem;
  padding:.55rem 1.1rem; border-radius:999px;
  background:rgba(201,162,77,.12); border:1px solid rgba(201,162,77,.38);
  color:var(--gold-hi); font-size:15px; font-weight:600;
}
.cue svg { animation:nudge 1.6s ease-in-out infinite; }
@keyframes nudge { 0%,100% { transform:translateY(0); } 50% { transform:translateY(3px); } }

/* VSL frame */
.vsl-frame { border-radius:20px; overflow:hidden; border:1px solid var(--hairline); background:#0f1520; }
.vsl-bar { display:flex; justify-content:center; align-items:center; gap:.5rem; padding:.65rem 1rem; background:rgba(32,49,89,.55); border-bottom:1px solid var(--hairline); }

/* Buttons */
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  width:100%; max-width:360px; min-height:52px; padding:0 1.5rem;
  border-radius:999px; background:var(--gold-hi); color:var(--charcoal);
  font-size:17px; font-weight:600; letter-spacing:-0.01em; text-decoration:none;
  transition:transform .15s ease, background-color .15s ease;
}
.btn:hover { background:#EDD28E; }
.btn:active { transform:scale(.97); background:var(--gold); }
.btn-note { font-size:13px; color:rgba(245,247,250,.5); margin-top:.6rem; }

/* Status badge (confirmation page) */
.status-badge {
  display:inline-flex; align-items:center; gap:.4rem;
  padding:.4rem .85rem; border-radius:999px;
  background:rgba(52,199,89,.12); border:1px solid rgba(52,199,89,.35);
  color:#7FDC9A; font-size:13px; font-weight:600;
}

/* FAQ */
details summary { list-style:none; }
details summary::-webkit-details-marker { display:none; }
details .chev { transition:transform .25s ease; }
details[open] .chev { transform:rotate(180deg); }
details[open] { border-color:rgba(201,162,77,.28); }

/* Motion */
@keyframes pulse-dot { 0%,100% { opacity:.5; transform:scale(1); } 50% { opacity:1; transform:scale(1.35); } }
.pulse-dot { animation:pulse-dot 2s ease-in-out infinite; }
.reveal { opacity:0; transform:translateY(14px); transition:opacity .6s ease, transform .6s ease; }
.reveal.in { opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce) {
  .reveal { opacity:1; transform:none; transition:none; }
  .pulse-dot, .cue svg { animation:none; }
}
