@font-face{font-family:Graphik;src:url("/fonts/Graphik-Regular.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Graphik;src:url("/fonts/Graphik-RegularItalic.woff") format("woff");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Graphik;src:url("/fonts/Graphik-Medium.woff") format("woff");font-weight:500 700;font-style:normal;font-display:swap}
@font-face{font-family:Graphik;src:url("/fonts/Graphik-MediumItalic.woff") format("woff");font-weight:500 700;font-style:italic;font-display:swap}
:root{
  --paper:#FBF7EE; --surface:#FFFFFF; --sunk:#F4EFE3;
  --ink:#14121F; --ink-2:#2E2B3A; --slate:#5F5A6E; --faint:#958FA3;
  --rule:#E6DFD0; --rule-soft:#EFE9DC;
  --accent:#6B4EFF; --accent-ink:#4F33E6; --accent-soft:#EEE9FF;
  --pine:#12A26A; --pine-soft:#E3F8EC; --good:#12A26A;
  --critical:#DF1B41; --critical-wash:#FDEBEF;
  --warning:#E5850B; --warning-ink:#A45B00; --warning-wash:#FFF5E5;
  --lime:#E5FB5D; --mint:#61FFA0; --pink:#F7B8EE; --sky:#B9D4FF; --peach:#FFD29E; --grape:#6B4EFF;
  --hard:0 3px 0 #14121F; --hbd:#14121F;
  --shadow:0 1px 0 rgba(20,18,31,.06),0 6px 18px -10px rgba(20,18,31,.18);
  --lift:0 14px 30px -14px rgba(20,18,31,.35);
  --line:color-mix(in srgb,var(--ink) 12%,transparent);
  --line-2:color-mix(in srgb,var(--ink) 18%,transparent);
  --r-sm:8px; --r:12px; --r-lg:18px;
  --f-display:"Bricolage Grotesque","Figtree",system-ui,sans-serif;
  --f-ui:"Graphik","Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --paper:#0E0D14; --surface:#17151F; --sunk:#201D2B; --ink:#F3F0FF; --ink-2:#DDD8EE; --slate:#A9A3BC; --faint:#7A7490;
    --rule:#2D2939; --rule-soft:#221F2D; --accent:#9B87FF; --accent-ink:#B9AAFF; --accent-soft:#2A2348;
    --pine:#3FD99A; --pine-soft:#12291F; --good:#3FD99A; --warning-ink:#F2B04A; --warning-wash:#2A2010; --critical-wash:#2D1219;
    --hard:0 3px 0 #000; --hbd:#3A3550; --shadow:0 1px 2px rgba(0,0,0,.4); --lift:0 10px 30px -8px rgba(0,0,0,.6);
  }
}
:root[data-theme="dark"]{
  --paper:#0E0D14; --surface:#17151F; --sunk:#201D2B; --ink:#F3F0FF; --ink-2:#DDD8EE; --slate:#A9A3BC; --faint:#7A7490;
  --rule:#2D2939; --rule-soft:#221F2D; --accent:#9B87FF; --accent-ink:#B9AAFF; --accent-soft:#2A2348;
  --pine:#3FD99A; --pine-soft:#12291F; --good:#3FD99A; --warning-ink:#F2B04A; --warning-wash:#2A2010; --critical-wash:#2D1219;
  --hard:0 3px 0 #000; --hbd:#3A3550; --shadow:0 1px 2px rgba(0,0,0,.4); --lift:0 10px 30px -8px rgba(0,0,0,.6);
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--paper);color:var(--ink);font-family:var(--f-ui);font-size:15px;line-height:1.55;letter-spacing:-.005em;-webkit-font-smoothing:antialiased;
  background-image:radial-gradient(color-mix(in srgb,var(--ink) 7%,transparent) 1px,transparent 1px);background-size:22px 22px}
h1,h2,h3,h4,label,.disp{font-family:var(--f-display);letter-spacing:-.02em}
h2{font-size:clamp(26px,4vw,36px);font-weight:800;line-height:1.1;margin:0 0 10px}
h3{font-size:18px;font-weight:700;margin:0 0 6px}
p{margin:0 0 12px}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px}
.hl{background:linear-gradient(transparent 64%,color-mix(in srgb,var(--lime) 85%,transparent) 64%,color-mix(in srgb,var(--lime) 85%,transparent) 92%,transparent 92%);padding:0 4px;margin-left:-4px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
:root[data-theme="dark"] .hl{background:linear-gradient(transparent 64%,color-mix(in srgb,var(--accent) 55%,transparent) 64%,color-mix(in srgb,var(--accent) 55%,transparent) 92%,transparent 92%)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .hl{background:linear-gradient(transparent 64%,color-mix(in srgb,var(--accent) 55%,transparent) 64%,color-mix(in srgb,var(--accent) 55%,transparent) 92%,transparent 92%)}}
.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:700}
.navr{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--slate)}
.b{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border-radius:999px;border:1.5px solid var(--hbd);
  font-family:var(--f-ui);font-size:15px;font-weight:500;cursor:pointer;text-decoration:none;color:#14121F;background:var(--surface);transition:transform .08s,box-shadow .08s;white-space:nowrap}
.b.pri{background:var(--lime);border-color:#14121F;box-shadow:var(--hard)}
.b.pri:hover{transform:translateY(-1px);box-shadow:0 4px 0 #14121F}
.b.pri:active{transform:translateY(2px);box-shadow:0 1px 0 #14121F}
.b.dark{background:#14121F;color:#fff;border-color:#14121F}
.b.sm{height:36px;padding:0 14px;font-size:14px;font-weight:500}
.b[disabled]{opacity:.6;cursor:progress}
.inp,.sel{width:100%;height:46px;padding:8px 14px;border-radius:12px;border:1.5px solid var(--line-2);background:var(--surface);color:var(--ink);font-family:var(--f-ui);font-size:15px;outline:none}
.inp:focus,.sel:focus{border-color:var(--ink);box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 70%,transparent)}
.lbl{display:block;font-size:13px;font-weight:700;margin:0 0 6px;font-family:var(--f-display)}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:4px 11px;border-radius:999px;border:1.5px solid var(--line-2);background:var(--surface);letter-spacing:0;font-family:var(--f-display)}
.hhero{position:relative;overflow:hidden;border-radius:28px;border:1.5px solid #14121F;box-shadow:0 5px 0 #14121F;color:#fff;padding:clamp(28px,6vw,64px) clamp(18px,5vw,56px) clamp(26px,5vw,48px);text-align:center;
  background:radial-gradient(520px 240px at 8% -20%,rgba(97,255,160,.45),transparent 60%),radial-gradient(460px 240px at 96% 120%,rgba(247,184,238,.55),transparent 60%),radial-gradient(380px 200px at 70% -30%,rgba(229,251,93,.45),transparent 60%),#14121F}
.hhero::after{content:'';position:absolute;right:-70px;top:-90px;width:280px;height:280px;border-radius:50%;border:42px solid rgba(255,255,255,.05);pointer-events:none}
.hhero .eyebrow{display:inline-flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:18px}
.hhero .eyebrow .pill{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22);color:#fff}
.hhero .eyebrow .pill.lime{background:var(--lime);color:#14121F;border-color:#14121F}
.hhero h1{font-family:var(--f-display);font-size:clamp(34px,6.4vw,64px);font-weight:800;line-height:.98;letter-spacing:-.035em;font-style:italic;text-transform:uppercase;color:var(--mint);margin:0 auto 16px;max-width:860px}
.hhero .hsubt{color:rgba(255,255,255,.78);font-size:clamp(15px,2vw,18px);max-width:620px;margin:0 auto 26px}
.qa{position:relative;z-index:1;max-width:680px;margin:0 auto;background:var(--surface);color:var(--ink);border-radius:var(--r-lg);box-shadow:0 20px 40px -18px rgba(0,0,0,.45);padding:10px;display:flex;gap:8px}
.qa .inp{border:0;height:48px;font-size:16px;box-shadow:none}
.qa .inp:focus{box-shadow:none}
.qa:focus-within{box-shadow:0 0 0 3px rgba(229,251,93,.55),0 20px 40px -18px rgba(0,0,0,.45)}
.qa .b{height:48px}
.qerr{color:var(--peach);font-size:13.5px;margin-top:10px;min-height:1px}
.checks{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin-top:18px;font-size:13.5px;color:rgba(255,255,255,.7)}
.checks span::before{content:'✓';color:var(--mint);font-weight:800;margin-right:6px}
.scan{max-width:520px;margin:6px auto 0;text-align:left;position:relative;z-index:1}
.scan .bar{height:10px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden;margin:14px 0 18px;border:1.5px solid rgba(255,255,255,.2)}
.scan .bar i{display:block;height:100%;width:4%;background:linear-gradient(90deg,var(--mint),var(--lime));border-radius:999px;transition:width .6s ease}
.scan ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.scan li{display:flex;gap:10px;align-items:center;color:rgba(255,255,255,.55);font-size:14.5px}
.scan li .d{width:20px;height:20px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);flex:none;display:flex;align-items:center;justify-content:center;font-size:11px}
.scan li.on{color:#fff}.scan li.on .d{border-color:var(--lime);border-top-color:transparent;animation:spin .8s linear infinite}
.scan li.done{color:rgba(255,255,255,.85)}.scan li.done .d{background:var(--mint);border-color:var(--mint);color:#14121F}
.scan li.done .d::after{content:'✓';font-weight:800}
@keyframes spin{to{transform:rotate(360deg)}}
section{padding:clamp(48px,7vw,84px) 0 0}
.kick{font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-ink);margin-bottom:10px;font-family:var(--f-display)}
.lead{color:var(--slate);font-size:17px;max-width:640px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
.card{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-lg);box-shadow:0 1px 0 color-mix(in srgb,var(--ink) 6%,transparent);padding:20px 20px 18px}
.card.hard{border-color:var(--hbd);box-shadow:var(--hard)}
.ico{width:40px;height:40px;border-radius:12px;border:1.5px solid #14121F;display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-size:19px;color:#14121F}
.card p{color:var(--slate);font-size:14.5px;margin:0}
.step .n{font-family:var(--f-display);font-size:44px;font-weight:800;font-style:italic;line-height:1;color:var(--accent);margin-bottom:10px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
.stat .v{font-family:var(--f-display);font-size:40px;font-weight:800;letter-spacing:-.03em;line-height:1}
.stat .k{color:var(--slate);font-size:14px;margin-top:6px}
.faq details{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r);padding:14px 18px;margin-bottom:10px}
.faq summary{cursor:pointer;font-family:var(--f-display);font-weight:700;font-size:16px;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:'+';font-weight:800}
.faq details[open] summary::after{content:'–'}
.faq details p{color:var(--slate);margin:10px 0 0}
.cta-band{margin-top:clamp(48px,7vw,84px);border-radius:28px;border:1.5px solid #14121F;box-shadow:0 5px 0 #14121F;background:var(--lime);color:#14121F;padding:clamp(26px,5vw,48px);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.cta-band h2{margin:0;max-width:560px}
footer{padding:40px 0 48px;color:var(--faint);font-size:13px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
#results{display:none}
.res-head{display:grid;grid-template-columns:300px 1fr;gap:16px;margin-top:22px}
.scorecard{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ring{position:relative;width:170px;height:170px;margin:4px auto 10px}
.ring svg{transform:rotate(-90deg)}
.ring .num{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ring .num b{font-family:var(--f-display);font-size:52px;font-weight:800;letter-spacing:-.04em;line-height:1}
.ring .num span{font-size:12px;color:var(--slate);font-weight:500}
.grade{font-family:var(--f-display);font-weight:800;font-size:17px}
.cats{display:grid;gap:14px}
.cat{display:grid;grid-template-columns:150px 1fr 44px;gap:12px;align-items:center}
.cat .t{font-weight:700;font-size:14.5px;font-family:var(--f-display)}
.cat .track{height:12px;border-radius:999px;background:var(--sunk);border:1.5px solid var(--line);overflow:hidden}
.cat .track i{display:block;height:100%;border-radius:999px;width:0;transition:width 1s ease}
.cat .v{font-family:var(--f-display);font-weight:800;text-align:right}
.meta-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.c-good{color:var(--good)} .c-warn{color:var(--warning)} .c-bad{color:var(--critical)}
.bg-good{background:var(--good)} .bg-warn{background:var(--warning)} .bg-bad{background:var(--critical)}
.wins{display:grid;gap:12px;margin-top:22px;position:relative}
.win{display:grid;grid-template-columns:56px 1fr;gap:16px;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-lg);padding:18px 20px}
.win .no{width:48px;height:48px;border-radius:14px;border:1.5px solid #14121F;background:var(--lime);color:#14121F;font-family:var(--f-display);font-weight:800;font-size:22px;font-style:italic;display:flex;align-items:center;justify-content:center;box-shadow:var(--hard)}
.win:nth-child(2) .no{background:var(--mint)} .win:nth-child(3) .no{background:var(--pink)} .win:nth-child(4) .no{background:var(--sky)} .win:nth-child(5) .no{background:var(--peach)}
.win h3{font-size:19px;margin:2px 0 6px}
.win .tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.win .why{color:var(--ink-2);margin:0 0 10px}
.win .det{color:var(--slate);font-size:14px;background:var(--sunk);border-radius:10px;padding:8px 12px;margin-bottom:12px}
.win ol{margin:0;padding-left:20px;color:var(--ink-2);font-size:14.5px}
.win ol li{margin-bottom:4px}
.locked .win .body-lock{filter:blur(6px);user-select:none;pointer-events:none;opacity:.7}
.t-impact{background:var(--critical-wash);color:var(--critical);border-color:transparent}
.t-med{background:var(--warning-wash);color:var(--warning-ink);border-color:transparent}
.t-time{background:var(--pine-soft);color:var(--pine);border-color:transparent}
.t-cat{background:var(--accent-soft);color:var(--accent-ink);border-color:transparent}
.gate{position:relative;z-index:2;max-width:620px;margin:22px auto 4px;background:var(--surface);border:1.5px solid var(--hbd);box-shadow:var(--hard),var(--lift);border-radius:22px;padding:26px}
.gate h3{font-size:24px;font-weight:800;margin-bottom:4px}
.gate .row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 10px}
.gate .full{grid-column:1/-1}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:var(--slate);margin:6px 0 14px;font-family:var(--f-ui);letter-spacing:0}
.consent input{margin-top:3px;accent-color:#14121F}
.gate .b{width:100%}
.gerr{color:var(--critical);font-size:13.5px;min-height:1px;margin-top:8px}
.unlocked .gate{display:none}
.offer{margin-top:22px;display:grid;grid-template-columns:1.3fr 1fr;gap:16px}
.offer .dark{background:#14121F;color:#fff;border-color:#14121F;box-shadow:0 5px 0 #14121F;background-image:radial-gradient(420px 200px at 100% 0%,rgba(97,255,160,.3),transparent 60%),radial-gradient(360px 200px at 0% 120%,rgba(247,184,238,.35),transparent 60%)}
.offer .dark h3{font-size:26px;font-weight:800;color:var(--mint);font-style:italic;text-transform:uppercase;letter-spacing:-.03em;line-height:1.05}
.offer .dark p{color:rgba(255,255,255,.78)}
.offer ul{margin:10px 0 18px;padding-left:18px}
.offer .dark ul{color:rgba(255,255,255,.85)}
.more{margin-top:22px}
.more table{width:100%;border-collapse:collapse;font-size:14px}
.more td{padding:10px 8px;border-top:1px solid var(--rule)}
.more td:last-child{text-align:right;white-space:nowrap;color:var(--slate)}
.callout{margin-top:16px;border-radius:var(--r);padding:14px 16px;background:var(--accent-soft);color:var(--ink);font-size:14.5px;border:1.5px solid color-mix(in srgb,var(--accent) 30%,transparent)}
.note{font-size:12.5px;color:var(--faint);margin-top:14px}
.hide{display:none!important}
.shots{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}
.phone{background:#14121F;border-radius:30px;padding:9px;box-shadow:0 5px 0 #14121F;border:1.5px solid #14121F;max-width:300px;margin:0 auto}
.phone img{display:block;width:100%;border-radius:22px;aspect-ratio:390/844;object-fit:cover;object-position:top;background:#2E2B3A}
.phone .none{aspect-ratio:390/844;border-radius:22px;background:#2E2B3A;color:rgba(255,255,255,.6);display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;font-size:14px}
.shot h4{font-family:var(--f-display);margin:14px 0 8px;font-size:17px;font-weight:800;text-align:center}
.ck{list-style:none;padding:0;margin:0 auto;font-size:14px;display:grid;gap:5px;max-width:300px}
.ck li{display:flex;gap:8px;align-items:flex-start}
.ck li::before{content:'✓';color:var(--good);font-weight:800;flex:none}
.ck li.x::before{content:'✕';color:var(--critical)}
.ck li.q::before{content:'?';color:var(--warning);font-weight:800}
code{font-size:12.5px;background:var(--sunk);padding:1px 5px;border-radius:5px;word-break:break-all}
.logo{display:block;height:24px;width:auto}
footer .logo{display:inline-block;height:16px}
:root[data-theme="dark"] .logo{filter:invert(1)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .logo{filter:invert(1)}}
.partner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.partner > div{flex:1 1 420px}
.badge{display:block;height:84px;width:auto}
.badge.sm{height:52px;margin-bottom:12px}
:root[data-theme="dark"] .badge{filter:invert(1) hue-rotate(180deg)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .badge{filter:invert(1) hue-rotate(180deg)}}
@media (max-width:900px){
  .grid4{grid-template-columns:repeat(2,1fr)}
  .grid3,.stats,.offer{grid-template-columns:1fr}
  .res-head{grid-template-columns:1fr}
  .shots{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .grid4,.shots{grid-template-columns:1fr}
  .qa{flex-direction:column}
  .qa .b{width:100%}
  .cat{grid-template-columns:110px 1fr 36px}
  .win{grid-template-columns:1fr;gap:10px}
  .gate{padding:20px}
  .gate .row{grid-template-columns:1fr}
  .navr .hide-sm{display:none}
}
