:root {
  --deep:#022c23;
  --deepest:#011a15;
  --green:#075a43;
  --bright:#0a8861;
  --gold:#ffd45a;
  --gold-pale:#fff1a7;
  --cream:#fff9e8;
  --muted:#b7cec5;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color-scheme:dark;
}

* { box-sizing:border-box }
html { min-width:280px; scroll-behavior:smooth; background:var(--deepest) }
body { min-width:280px; margin:0; padding-bottom:76px; color:white; background:var(--deepest); font-size:16px; line-height:1.45 }
a { color:inherit; text-decoration:none }
img { display:block; max-width:100% }
h1,h2,h3,p,figure { margin:0 }
h1,h2 { line-height:.88; letter-spacing:-.065em }
.skip-link { position:fixed; z-index:100; left:12px; top:-60px; padding:9px 12px; color:var(--deep); background:var(--gold); font-weight:900 }
.skip-link:focus { top:10px }
a:focus-visible { outline:3px solid white; outline-offset:4px }

.site-header {
  position:fixed;
  z-index:50;
  top:0;
  left:0;
  right:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:66px;
  padding:9px max(14px,env(safe-area-inset-left)) 9px max(14px,env(safe-area-inset-right));
  background:linear-gradient(180deg,#011b16f5 0,#011b16b8 72%,transparent);
}
.brand { display:flex; align-items:center; gap:9px; font-size:.8rem; font-weight:950; letter-spacing:.035em; white-space:nowrap }
.brand b { color:var(--gold) }
.brand-mark { display:grid; place-items:center; width:37px; height:39px; color:var(--gold-pale); border:2px solid var(--gold); border-radius:9px; font-size:.84rem; font-weight:950 }
.header-cta { padding:10px 15px; color:var(--deepest); background:linear-gradient(135deg,var(--gold-pale),#f4ba1e); border:1px solid #fff2a8; font-size:.66rem; font-weight:950; letter-spacing:.08em; box-shadow:0 10px 30px #0008 }

.hero { position:relative; min-height:100svh; overflow:hidden; isolation:isolate }
.hero>img,.hero-shade { position:absolute; z-index:-2; inset:0; width:100%; height:100% }
.hero>img { object-fit:cover; object-position:center }
.hero-shade { z-index:-1; background:linear-gradient(180deg,#011c17d9 0,#011c178f 24%,transparent 47%,#011b16a4 72%,#011712fa 100%) }
.hero-copy { min-height:100svh; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start; padding:13vh 20px 150px }
.kicker { color:#ffe17b; font-size:.64rem; font-weight:950; letter-spacing:.16em }
.hero h1 { max-width:10ch; margin-top:17px; font-size:clamp(3rem,15vw,4.5rem); font-weight:950; text-shadow:0 5px 28px #00130fee }
.hero h1 em,.section-heading h2 em,.closing h2 em { color:var(--gold); font-style:normal }
.hero-lead { max-width:31ch; margin-top:19px; color:#e8f1ed; font-size:.92rem; font-weight:750 }
.gold-cta { display:flex; align-items:center; justify-content:center; width:100%; min-height:58px; margin-top:25px; padding:15px 18px; color:var(--deepest); background:linear-gradient(135deg,var(--gold-pale),#ffc52c 55%,#eaa500); border:1px solid #fff1a9; font-size:.76rem; font-weight:950; letter-spacing:.045em; text-align:center; box-shadow:0 18px 42px #000a,0 0 32px #ffc42f38 }
.hero-copy .gold-cta { width:min(100%,360px) }
.hero-proof { position:absolute; left:14px; right:14px; bottom:88px; display:grid; grid-template-columns:1fr 1fr 1fr; border:1px solid #e8c25575; background:#02261fdb; backdrop-filter:blur(10px) }
.hero-proof span { display:grid; place-items:center; min-height:54px; padding:8px 5px; color:#fff0aa; border-right:1px solid #e8c25550; text-align:center; font-size:.53rem; font-weight:900; letter-spacing:.05em }
.hero-proof span:last-child { border:0 }

.section { padding:72px 18px }
.section-heading h2 { margin-top:18px; font-size:clamp(3rem,14.5vw,4.4rem); font-weight:950 }
.section-heading>p:last-child { max-width:36ch; margin-top:23px; color:var(--muted); font-size:.94rem; font-weight:650 }
.section-heading.compact { margin-bottom:34px }
.problem { background:radial-gradient(circle at 100% 0,#0b654b 0,transparent 36%),#053b2f }
.statement { margin-top:47px; padding:31px 24px; color:var(--deepest); background:linear-gradient(135deg,#fff0a1,#efb621); box-shadow:0 20px 55px #001d176e }
.statement small { color:#604500; font-size:.6rem; font-weight:950; letter-spacing:.14em }
.statement strong { display:block; margin-top:13px; font-size:clamp(1.9rem,9vw,2.8rem); line-height:.95; letter-spacing:-.05em }

.analysis { background:#f8f4e9; color:var(--deepest) }
.analysis .kicker { color:#9b6c00 }
.analysis .section-heading h2 em { color:#bf8400 }
.analysis-visual { position:relative; min-height:540px; overflow:hidden; border-radius:22px; box-shadow:0 26px 70px #02261f36 }
.analysis-visual>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center top }
.analysis-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 48%,#011f1aa8 72%,#011a16fa 100%) }
.analysis-visual figcaption { position:absolute; z-index:2; left:0; right:0; bottom:0; padding:28px 24px }
.analysis-visual figcaption span { color:#ffdf70; font-size:.61rem; font-weight:950; letter-spacing:.14em }
.analysis-visual figcaption strong { display:block; max-width:26ch; margin-top:10px; color:white; font-size:1.15rem; line-height:1.25 }
.analysis-grid { display:grid; gap:10px; margin-top:14px }
.analysis-grid article { display:grid; grid-template-columns:60px 1fr; align-items:center; gap:14px; min-height:112px; padding:17px; background:white; border:1px solid #0b4c3d24; box-shadow:0 13px 30px #0b372c13 }
.analysis-grid article>span { color:#c28b0a; font-size:2rem; font-weight:950; letter-spacing:-.08em }
.analysis-grid h3 { font-size:.85rem; line-height:1.1; letter-spacing:.02em }
.analysis-grid p { margin-top:7px; color:#62766e; font-size:.76rem }

.mentor-room { position:relative; overflow:hidden; background:radial-gradient(circle at 50% 30%,#0c7959 0,transparent 40%),#023228 }
.mentor-room:before { content:""; position:absolute; inset:0; opacity:.08; background:repeating-linear-gradient(90deg,transparent 0 49px,#f7d466 50px) }
.mentor-room>* { position:relative }
.signal-card { overflow:hidden; border:1px solid #e3c16088; background:linear-gradient(155deg,#074f3c,#01261f); box-shadow:0 27px 75px #001711a6 }
.signal-top { display:flex; justify-content:space-between; gap:15px; padding:16px 18px; color:#f3df91; border-bottom:1px solid #e3c16055; font-size:.56rem; font-weight:900; letter-spacing:.08em }
.signal-top strong { color:#7ff7b9 }
.signal-main { padding:32px 20px }
.signal-main p { color:#dbebe5; font-size:.75rem; font-weight:850; letter-spacing:.08em }
.signal-main p b { color:var(--gold); font-size:1.45rem; line-height:1.05; letter-spacing:-.03em }
.probability-bars { display:flex; align-items:flex-end; gap:7px; height:96px; margin-top:24px; padding-bottom:4px; border-bottom:1px solid #d9c67555 }
.probability-bars i { flex:1; height:35%; background:linear-gradient(180deg,#8bffc1,#0bb276); box-shadow:0 0 18px #2fe69448 }
.probability-bars i:nth-child(2) { height:48% }
.probability-bars i:nth-child(3) { height:64% }
.probability-bars i:nth-child(4) { height:78% }
.probability-bars i:nth-child(5) { height:100%; background:linear-gradient(180deg,#fff1a2,#e7ad12); box-shadow:0 0 22px #ffc93266 }
.signal-card dl { display:grid; grid-template-columns:1fr 1fr 1fr; margin:0; border-top:1px solid #e3c16045 }
.signal-card dl div { padding:15px 8px; border-right:1px solid #e3c16045; text-align:center }
.signal-card dl div:last-child { border:0 }
.signal-card dt { color:#95b7aa; font-size:.51rem; font-weight:850 }
.signal-card dd { margin:5px 0 0; color:#ffe58b; font-size:.58rem; font-weight:950 }
.room-punch { margin-top:36px; color:#bcd0c8; font-size:1.05rem; line-height:1.3 }
.room-punch strong { color:white; font-size:1.32rem }

.steps { color:var(--deepest); background:#f8f3e5 }
.steps .kicker { color:#9a6b00 }
.steps .section-heading h2 em { color:#b87e00 }
.steps ol { display:grid; gap:10px; margin:0; padding:0; list-style:none }
.steps li { display:grid; grid-template-columns:56px 1fr; gap:4px 14px; align-items:start; padding:22px 18px; background:white; border-left:4px solid #d9a317; box-shadow:0 13px 30px #0b372c12 }
.steps li>span { grid-row:1/3; color:#c18a08; font-size:1.7rem; font-weight:950; letter-spacing:-.07em }
.steps li>strong { padding-top:4px; font-size:.85rem }
.steps li>p { color:#65786f; font-size:.76rem }

.closing { position:relative; min-height:820px; overflow:hidden; isolation:isolate }
.closing>img,.closing-shade { position:absolute; z-index:-2; inset:0; width:100%; height:100% }
.closing>img { object-fit:cover; object-position:center }
.closing-shade { z-index:-1; background:linear-gradient(180deg,#011c177d 0,#011c1748 35%,#011813ed 72%,#011611fc 100%) }
.closing-copy { min-height:820px; display:flex; flex-direction:column; justify-content:flex-end; padding:70px 18px 90px }
.closing h2 { margin-top:18px; font-size:clamp(3.1rem,15vw,4.6rem); font-weight:950 }
.closing small { margin-top:15px; color:#a8beb5; font-size:.58rem }
footer { display:grid; gap:20px; padding:32px 18px; color:#91aca1; background:#011611; font-size:.65rem }

.mobile-cta { position:fixed; z-index:60; left:0; right:0; bottom:0; display:grid; gap:2px; padding:7px 12px calc(6px + env(safe-area-inset-bottom)); background:#011e19f2; box-shadow:0 -12px 32px #00100ca8 }
.mobile-cta a { min-height:46px; padding:13px; color:var(--deepest); background:linear-gradient(135deg,var(--gold-pale),#efb11a); text-align:center; font-size:.76rem; font-weight:950; letter-spacing:.04em }
.mobile-cta span { color:#9eb7ad; text-align:center; font-size:.51rem }

@media(min-width:760px) {
  body { padding-bottom:0 }
  .site-header { min-height:80px; padding-inline:4vw }
  .brand { font-size:1rem }
  .brand-mark { width:44px; height:46px; font-size:1.05rem }
  .header-cta { min-width:150px; font-size:.74rem }
  .hero>img { object-position:center 38% }
  .hero-shade { background:linear-gradient(90deg,#011b16ef 0,#011b16b4 34%,transparent 64%),linear-gradient(180deg,transparent 55%,#011713c9 100%) }
  .hero-copy { justify-content:center; padding:110px 7vw 150px }
  .hero h1 { font-size:clamp(4.6rem,7.4vw,8rem) }
  .hero-lead { font-size:1.08rem }
  .hero-proof { left:4vw; right:4vw; bottom:25px }
  .section { padding:110px max(7vw,calc((100vw - 1320px)/2)) }
  .section-heading h2 { font-size:clamp(4.6rem,6.8vw,7.5rem) }
  .problem { display:grid; grid-template-columns:1.3fr .7fr; align-items:end; gap:70px }
  .statement { margin:0 }
  .analysis-visual { min-height:760px }
  .analysis-grid { grid-template-columns:1fr 1fr 1fr }
  .analysis-grid article { grid-template-columns:70px 1fr; min-height:140px }
  .mentor-room { display:grid; grid-template-columns:1fr 1fr; gap:40px 70px }
  .mentor-room .section-heading { grid-column:1 }
  .signal-card { grid-column:2; grid-row:1/4 }
  .room-punch,.mentor-room>.gold-cta { grid-column:1 }
  .steps ol { grid-template-columns:1fr 1fr 1fr }
  .closing { min-height:900px }
  .closing>img { object-position:center 46% }
  .closing-copy { min-height:900px; padding:120px 7vw }
  .closing h2 { font-size:clamp(4.8rem,7vw,7.7rem) }
  .closing .gold-cta { max-width:420px }
  footer { grid-template-columns:auto 1fr; align-items:center; padding:35px 5vw }
  .mobile-cta { display:none }
}

@media(max-width:340px) {
  .brand { font-size:.7rem }
  .brand-mark { width:34px; height:36px }
  .header-cta { padding-inline:10px }
  .hero-copy { padding-inline:15px }
  .hero h1 { font-size:2.75rem }
  .section { padding-inline:15px }
}

@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto }
}
[data-landing-cta][aria-disabled="true"] { cursor:wait; opacity:.75 }
[data-landing-cta].is-loading { position:relative; color:transparent }
[data-landing-cta].is-loading::after { content:""; position:absolute; inset:0; margin:auto; width:18px; height:18px; border:2px solid #032c2440; border-top-color:#032c24; border-radius:50%; animation:landing-spin .7s linear infinite }
@keyframes landing-spin { to { transform:rotate(360deg) } }
