/* Vultigo — tokens from the Vultigo design system */
:root{
  --surface:#F3F1EC; --surface-raised:#FFFFFF; --mist:#E3E7EA;
  --ink:#16191D; --ink-muted:#5B6470;
  --slate:#6E7E8E; --slate-deep:#4A5866; --on-slate:#FFFFFF;
  --sand:#C8B48E; --line:#D3D8DD; --focus:#4A5866;
  --font-display:"Inter Display","Inter",system-ui,sans-serif;
  --font-sans:"Inter",system-ui,sans-serif;
  --font-mono:"JetBrains Mono",ui-monospace,monospace;
  --r-sm:6px; --r-md:16px; --r-pill:999px;
  --max:1120px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;font-optical-sizing:auto}
img,svg{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.label{font-size:13px;line-height:18px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.mono{font-family:var(--font-mono);font-size:14px;letter-spacing:.02em}
h1,h2,h3{font-family:var(--font-display);font-weight:300;margin:0;letter-spacing:-.02em}
h1{font-size:clamp(44px,6vw,72px);line-height:1.05}
h2{font-size:clamp(34px,4.2vw,48px);line-height:1.1}
h3{font-size:22px;line-height:1.3;font-weight:400;letter-spacing:-.01em}
p{margin:0}
.lead{font-size:18px;line-height:28px;color:var(--ink-muted)}

/* Buttons: always pills */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 26px;border-radius:var(--r-pill);border:1px solid transparent;font:500 15px/1 var(--font-sans);text-decoration:none;cursor:pointer;transition:transform .15s ease,background .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--slate-deep);color:var(--on-slate)}
.btn-primary:hover{background:#3d4a57}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}
.btn-light{background:var(--surface);color:var(--ink)}
.btn[disabled]{opacity:.5;cursor:not-allowed;transform:none}
.btn-block{width:100%}

/* Header */
.site-header{position:sticky;top:0;z-index:20;background:rgba(243,241,236,.86);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid transparent;transition:border-color .2s}
.site-header.scrolled{border-bottom-color:var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand img{height:28px;width:auto}
.brand span{font-family:var(--font-display);font-weight:300;font-size:24px;letter-spacing:.04em}
.nav-links{display:flex;gap:28px;align-items:center}
.nav-links a{text-decoration:none;font-size:15px;color:var(--ink-muted)}
.nav-links a:hover{color:var(--ink)}
.nav-cta{display:flex;gap:10px;align-items:center}
.nav-cta .btn{height:40px;padding:0 18px;font-size:14px}
.menu-btn{display:none;background:none;border:0;padding:8px;cursor:pointer}
@media (max-width:860px){.nav-links{display:none}.menu-btn{display:block}.nav-cta .btn-ghost{display:none}
  .nav-links.open{display:flex;position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:18px;padding:24px;background:var(--surface);border-bottom:1px solid var(--line)}}

/* Sections */
section{padding:96px 0}
.section-head{max-width:640px;margin-bottom:48px}
.section-head .label{margin-bottom:14px;display:block}
.section-head p{margin-top:16px}

/* Hero */
.hero{padding:72px 0 96px}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hero h1{margin:18px 0 22px}
.hero .lead{max-width:520px}
.hero-actions{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}
.hero-note{margin-top:18px;font-size:14px;color:var(--ink-muted)}
.hero-visual{position:relative;aspect-ratio:4/5;border-radius:var(--r-md);background:var(--slate);overflow:hidden}
.hero-visual .mark{position:absolute;left:50%;top:50%;width:58%;transform:translate(-50%,-52%);opacity:.95}
.hero-visual svg.overlay{position:absolute;inset:0;width:100%;height:100%}
.overlay line,.overlay path,.overlay circle.ring{stroke:var(--sand);stroke-width:1.5;fill:none}
.overlay circle.dot{fill:var(--sand)}
.overlay text{font-family:var(--font-mono);font-size:12px;fill:var(--sand);letter-spacing:.04em}
.draw{stroke-dasharray:600;stroke-dashoffset:600;animation:draw 1.2s ease-out forwards}
.draw.d2{animation-delay:.3s}.draw.d3{animation-delay:.6s}.draw.d4{animation-delay:.9s}
@keyframes draw{to{stroke-dashoffset:0}}
.fade{opacity:0;animation:fade .6s ease-out forwards;animation-delay:1.1s}
@keyframes fade{to{opacity:1}}
.score-chip{position:absolute;left:20px;bottom:20px;right:20px;display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-radius:12px;background:rgba(22,25,29,.72);color:var(--surface);backdrop-filter:blur(8px)}
.score-chip b{font-family:var(--font-mono);font-weight:400;color:var(--sand);font-size:20px}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-visual{max-width:440px}}

/* Strip */
.strip{padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.strip .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
.strip .stat{display:flex;flex-direction:column}
.strip b{font-family:var(--font-display);font-weight:300;font-size:34px;letter-spacing:-.02em}
.strip span{font-size:14px;color:var(--ink-muted)}

/* Feature grid */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media (max-width:900px){.grid-3,.grid-2{grid-template-columns:1fr}}
.card{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--r-md);padding:28px}
.card h3{margin:14px 0 8px}
.card p{color:var(--ink-muted)}
.card .metric{display:inline-block;padding:4px 10px;border-radius:var(--r-pill);background:var(--mist);font-family:var(--font-mono);font-size:12px;color:var(--ink)}

/* Dark band */
.band{background:var(--ink);color:var(--surface)}
.band .label{color:#A3ACB5}
.band .lead{color:#A3ACB5}
.band .card{background:#1F2328;border-color:#343A41}
.band .card p{color:#A3ACB5}

/* Steps */
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.step{padding-top:24px;border-top:1px solid #343A41}
.step::before{counter-increment:s;content:"0" counter(s);font-family:var(--font-mono);color:var(--sand);font-size:14px}
.step h3{margin:18px 0 10px}
@media (max-width:900px){.steps{grid-template-columns:1fr}}

/* Report preview */
.report{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.report-row{display:flex;justify-content:space-between;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--line)}
.report-row:last-child{border-bottom:0}
.report-row span{color:var(--ink-muted);font-size:15px}
.bar{height:6px;border-radius:6px;background:var(--mist);margin-top:8px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--slate)}
@media (max-width:900px){.report{grid-template-columns:1fr}}

/* Pricing */
.price-card{max-width:560px;margin:0 auto;background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--r-md);padding:40px}
.price{font-family:var(--font-display);font-weight:300;font-size:64px;letter-spacing:-.03em;margin:12px 0 4px}
.price small{font-size:20px;color:var(--ink-muted);letter-spacing:0}
.checklist{list-style:none;padding:0;margin:28px 0}
.checklist li{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.checklist li::before{content:"";flex:0 0 8px;height:8px;margin-top:8px;border-radius:50%;background:var(--slate)}

/* FAQ */
.faq details{border-bottom:1px solid var(--line);padding:20px 0}
.faq summary{cursor:pointer;list-style:none;font-size:18px;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";font-family:var(--font-mono);color:var(--ink-muted)}
.faq details[open] summary::after{content:"–"}
.faq details p{margin-top:12px;color:var(--ink-muted);max-width:760px}

/* CTA */
.cta{background:var(--slate);color:var(--on-slate);border-radius:var(--r-md);padding:64px 48px;text-align:center}
.cta h2{max-width:640px;margin:0 auto 16px}
.cta p{color:#EEF1F3;margin-bottom:28px}

/* Footer */
.site-footer{padding:56px 0 40px;border-top:1px solid var(--line);margin-top:48px}
.footer-grid{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap}
.footer-grid a:not(.brand){display:block;text-decoration:none;color:var(--ink-muted);font-size:14px;padding:4px 0}
.footer-grid a:hover{color:var(--ink)}
.copy{margin-top:40px;font-size:13px;color:var(--ink-muted)}

/* App pages */
.app-main{min-height:calc(100vh - 72px);padding:56px 0 96px}
.panel{max-width:520px;margin:0 auto;background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--r-md);padding:36px}
.panel.wide{max-width:880px}
.tabs{display:flex;gap:6px;padding:4px;background:var(--mist);border-radius:var(--r-pill);margin-bottom:28px}
.tabs button{flex:1;height:40px;border:0;border-radius:var(--r-pill);background:transparent;font:500 14px var(--font-sans);color:var(--ink-muted);cursor:pointer}
.tabs button.active{background:var(--surface-raised);color:var(--ink)}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.field label{font-size:14px;font-weight:500}
.field input,.field select,.field textarea{height:48px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);font:16px var(--font-sans);color:var(--ink)}
.field textarea{height:auto;min-height:96px;padding:12px 14px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--focus);outline-offset:1px;border-color:transparent}
.hint{font-size:13px;color:var(--ink-muted)}
.msg{display:none;margin:12px 0;padding:12px 14px;border-radius:var(--r-sm);font-size:14px}
.msg.show{display:block}
.msg.err{background:#F6E7E4;color:#7A2E22}
.msg.ok{background:#E6EEE8;color:#24513A}
.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--ink-muted);margin:14px 0}
.check input{margin-top:3px;width:18px;height:18px;accent-color:var(--slate-deep)}

/* Wizard */
.progress{display:flex;gap:8px;margin-bottom:32px}
.progress i{flex:1;height:4px;border-radius:4px;background:var(--mist)}
.progress i.on{background:var(--slate-deep)}
.wstep{display:none}.wstep.active{display:block}
.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}
@media (max-width:640px){.photo-grid{grid-template-columns:repeat(2,1fr)}}
.slot{position:relative;aspect-ratio:3/4;border:1px dashed #B8C0C8;border-radius:12px;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:10px;cursor:pointer;overflow:hidden}
.slot:hover{border-color:var(--slate-deep)}
.slot b{font-weight:500;font-size:14px}
.slot small{font-size:12px;color:var(--ink-muted)}
.slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.slot input{position:absolute;inset:0;opacity:0;cursor:pointer}
.slot.done::after{content:"✓";position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:var(--slate-deep);color:#fff;font-size:13px;display:flex;align-items:center;justify-content:center}
.summary{display:flex;justify-content:space-between;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 0}
.status{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--r-pill);background:var(--mist);font-size:14px}
.status::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ink-muted)}
.status.paid::before{background:var(--sand)}
.status.ready::before{background:#3E7C5A}
.order{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.legal{max-width:760px;margin:0 auto}
.legal h1{font-size:44px;margin-bottom:24px}
.legal h2{font-size:24px;font-weight:400;margin:36px 0 10px}
.legal p,.legal li{color:var(--ink-muted);margin-bottom:10px}

/* ===== v2: editorial grid layout ===== */
body{background:#F5F4F1}
.frame{max-width:1180px;margin:0 auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}
.rule{border-top:1px solid var(--line)}
.pad{padding:96px 48px}
@media (max-width:760px){.pad{padding:64px 22px}}
.muted{color:var(--slate)}
.tag{display:inline-block;padding:5px 10px;border:1px solid var(--line);border-radius:6px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);background:var(--surface-raised)}
.tag.on-dark{border-color:rgba(255,255,255,.25);color:#E8ECEF;background:rgba(255,255,255,.06)}

/* floating glass nav */
.site-header{position:fixed;top:14px;left:0;right:0;background:none;backdrop-filter:none;border:0}
.site-header .nav{max-width:1120px;margin:0 auto;height:56px;padding:0 10px 0 20px;border-radius:var(--r-pill);background:rgba(110,126,142,.42);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);border:1px solid rgba(255,255,255,.18);color:#fff}
.site-header.scrolled .nav{background:rgba(74,88,102,.78)}
.site-header .brand img{filter:brightness(0) invert(1)}
.site-header .brand span{color:#fff}
.site-header .nav-links a{color:rgba(255,255,255,.82)}
.site-header .nav-links a:hover{color:#fff}
.site-header .btn-ghost{border-color:transparent;color:#fff}
.site-header .btn-primary{background:#fff;color:var(--ink)}
.site-header .menu-btn{color:#fff}
@media (max-width:860px){.site-header .nav{margin:0 12px}.nav-links.open{top:64px;border-radius:20px;background:rgba(74,88,102,.95);border:0}}
.app-main{padding-top:120px}
body[data-page=index] .app-main{padding-top:0}

/* hero */
.hero2{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;color:#fff;background:#8E9DAA url(/assets/img/hero-poster.jpg) center right/cover no-repeat;overflow:hidden}
.hero2::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(110,126,142,.92) 0%,rgba(110,126,142,.55) 42%,rgba(110,126,142,0) 70%)}
.hero2 .inner{position:relative;max-width:1120px;margin:0 auto;width:100%;padding:120px 24px 160px}
.hero2 .kicker{font-size:14px;color:#E6EBEF;margin-bottom:18px}
.hero2 h1{font-size:clamp(46px,6.2vw,80px);line-height:1.02;max-width:620px}
.hero2 h1 .muted{color:#D9E0E6}
.hero2 .lead{color:#EEF2F5;max-width:440px;margin-top:22px}
.hero2 .btn-primary{background:#fff;color:var(--ink)}
.hero2 .btn-ghost{background:rgba(255,255,255,.18);border-color:transparent;color:#fff}
.pillars{position:absolute;left:0;right:0;bottom:0}
.pillars .row{max-width:1120px;margin:0 auto;padding:0 24px 32px;display:grid;grid-template-columns:repeat(3,minmax(0,220px));gap:24px}
.pillars .row div{padding-left:16px;border-left:1px solid rgba(255,255,255,.35)}
.pillars b{display:block;font-weight:500;font-size:14px}
.pillars span{font-size:13px;color:#DCE3E8}
@media (max-width:760px){.hero2{background-position:72% center}.hero2::before{background:linear-gradient(180deg,rgba(110,126,142,.35) 0%,rgba(110,126,142,.9) 70%)}.hero2 .inner{padding-top:140px;align-self:flex-end}.pillars .row{grid-template-columns:1fr 1fr 1fr;gap:10px}}

/* split */
.split{display:grid;grid-template-columns:1fr 1fr}
.split>div{padding:72px 48px}
.split>div+div{border-left:1px solid var(--line)}
@media (max-width:900px){.split{grid-template-columns:1fr}.split>div+div{border-left:0;border-top:1px solid var(--line)}.split>div{padding:56px 22px}}
.numlist{list-style:none;padding:0;margin:36px 0 0}
.numlist li{display:flex;gap:22px;padding:10px 0;font-size:16px}
.numlist li::before{content:attr(data-n);font-family:var(--font-mono);font-size:12px;color:var(--ink-muted);min-width:28px;padding-top:3px}
.h-xl{font-family:var(--font-display);font-weight:300;font-size:clamp(36px,4.6vw,60px);line-height:1.08;letter-spacing:-.025em}
.h-xl .muted{color:#8E9DAA}

/* rating promo */
.rate-card{position:relative;border-radius:var(--r-md);background:var(--slate);color:#fff;padding:36px;overflow:hidden;min-height:420px;display:flex;flex-direction:column;justify-content:space-between}
.rate-card .big{font-family:var(--font-mono);font-size:88px;line-height:1;color:var(--sand)}
.rate-card .big small{font-size:24px;color:#E6EBEF}
.rate-card .mark{position:absolute;right:-40px;top:-30px;width:280px;opacity:.12}
.rate-rows{margin-top:18px}
.rate-rows div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid rgba(255,255,255,.18);font-size:14px}
.rate-rows b{font-family:var(--font-mono);font-weight:400}
.rate-rows .lock{filter:blur(5px);user-select:none}

/* chips + feature tiles */
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.chips span{padding:12px 18px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface-raised);font-size:15px}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.tiles div{padding:28px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:150px;display:flex;flex-direction:column;justify-content:space-between}
.tiles div:nth-child(4n){border-right:0}
.tiles h3{font-size:20px}
.tiles span{font-family:var(--font-mono);font-size:12px;color:var(--ink-muted)}
@media (max-width:900px){.tiles{grid-template-columns:1fr 1fr}.tiles div:nth-child(4n){border-right:1px solid var(--line)}.tiles div:nth-child(2n){border-right:0}}
.learn{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line)}
.learn div{padding:28px 22px;border-right:1px solid var(--line)}
.learn div:last-child{border-right:0}
.learn i{font-style:normal;font-family:var(--font-mono);font-size:12px;color:var(--ink-muted)}
.learn h3{font-size:18px;margin:40px 0 8px}
.learn p{font-size:14px;color:var(--ink-muted)}
@media (max-width:900px){.learn{grid-template-columns:1fr}.learn div{border-right:0;border-bottom:1px solid var(--line)}}
.anchor-price{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;margin:22px 0 6px}
.anchor-price s{font-family:var(--font-display);font-weight:300;font-size:40px;color:#A3ACB5}
.anchor-price b{font-family:var(--font-display);font-weight:300;font-size:72px;letter-spacing:-.03em}
body:not([data-page=index]) .site-header .nav{background:rgba(74,88,102,.92)}

/* auth: google + divider */
.btn-google{background:#fff;color:var(--ink,#16191D);border:1px solid var(--line,#D3D8DD);gap:10px;display:flex;align-items:center;justify-content:center}
.btn-google:hover{background:#fafafa}
.or{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--ink-muted,#5B6470);font-size:13px}
.or:before,.or:after{content:"";flex:1;height:1px;background:var(--line,#D3D8DD)}

/* ===== v3: QOVES-structure components ===== */
body{background:#fff}
.frame{max-width:1110px}
.h-lg{font-family:var(--font-display);font-weight:300;font-size:clamp(34px,4vw,48px);line-height:1.1;letter-spacing:-.025em;color:var(--ink)}
.h-lg .muted{color:#8E9DAA}
.body-sm{font-size:15px;line-height:1.55;color:var(--ink-muted)}
.center{text-align:center}
.tag{font-size:11px;border-radius:999px;padding:5px 12px}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;z-index:0}
.hero2>.inner,.hero2>.pillars{z-index:2}
.hero2::before{z-index:1}
.numlist.light li{color:#fff}.numlist.light li::before{color:#D9E0E6}

/* before / projection slider */
.ba-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:14px!important}
.ba{position:relative;margin:0;aspect-ratio:4/5;border-radius:10px;overflow:hidden;background:linear-gradient(180deg,#B6C2CB,#98A6B2);cursor:ew-resize;user-select:none;touch-action:pan-y;width:100%;max-width:310px;display:inline-block}
.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.ba img.after{clip-path:inset(0 0 0 var(--x,50%))}
.ba::after{content:"";position:absolute;top:0;bottom:0;left:var(--x,50%);width:1px;background:rgba(255,255,255,.7)}
.ba .handle{position:absolute;top:50%;left:var(--x,50%);width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;border:1px solid #fff;background:rgba(255,255,255,.18);backdrop-filter:blur(4px);z-index:2}
.ba span{position:absolute;top:14px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#fff;z-index:2}
.ba .l{left:14px}.ba .r{right:14px}
.ba.empty::before{content:"";position:absolute;inset:28% 30%;background:url(/assets/img/mark-white.svg) center/contain no-repeat;opacity:.35}
@media (max-width:900px){.ba-pair{grid-template-columns:1fr 1fr}.ba{max-width:none}}

/* pills tabs */
.pills-wrap{padding:0 48px 24px}
.pills{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;background:#fff}
.pills button{border:0;background:none;padding:9px 16px;border-radius:999px;font:400 14px var(--font-sans);color:var(--ink-muted);cursor:pointer}
.pills button.on{background:var(--ink);color:#fff}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.stat-grid article{margin:12px 6px;padding:18px;border:1px solid var(--line);border-radius:10px;background:#F8F9FA;min-height:280px;display:flex;flex-direction:column}
.stat-grid h3{font-size:21px;font-weight:400}
.stat-grid h3 .muted{color:#8E9DAA}
.stat-grid p{font-size:14px;margin-top:10px;color:var(--ink)}
.stat-grid cite{margin-top:auto;font-style:normal;font-size:11px;color:var(--ink-muted)}
@media (max-width:900px){.stat-grid{grid-template-columns:1fr 1fr}.pills-wrap{padding:0 16px 20px}}

/* old way / new way */
.ways{padding:14px;display:grid;gap:14px}
.way{display:grid;grid-template-columns:180px repeat(5,1fr);align-items:end;gap:16px;padding:26px;border-radius:10px;border:1px solid var(--line);background:#F8F9FA}
.way b{font-family:var(--font-display);font-weight:300;font-size:20px}
.way ol{display:contents;list-style:none}
.way li{font-size:15px;position:relative;padding-top:42px}
.way li::before{content:"";position:absolute;top:0;left:0;width:10px;height:10px;border-radius:50%;border:3px solid #B6C2CB;background:#fff}
.way li i{position:absolute;top:22px;left:0;font:normal 10px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.way.old li{color:var(--ink-muted)}
.way.new{background:linear-gradient(100deg,#9C958F 0%,#7E8A95 50%,#8E9DAA 100%);color:#fff;border:0}
.way.new li i{color:#E6EBEF}.way.new li::before{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.3)}
@media (max-width:900px){.way{grid-template-columns:1fr}.way li{padding-top:0;padding-left:26px}.way li::before{top:5px}.way li i{position:static;display:block}}

/* analysis dashboard */
.analysis-hero{background:linear-gradient(180deg,#8E9DAA,#A9B6C0);overflow:hidden;margin:0 calc(50% - 50vw);padding:0 calc(50vw - 50%)}
.analysis-hero .tag.on-dark{background:rgba(255,255,255,.12)}
.dash{position:relative;display:grid;grid-template-columns:1fr 1fr 1.3fr 1fr 1fr;gap:12px;align-items:end;padding:20px 0 0;min-height:420px}
.dash .face{margin:0;align-self:stretch;min-height:400px;background:url(/assets/img/mark-white.svg) center 40%/40% no-repeat;opacity:1;position:relative}
.dash .face img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
.w{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:14px;color:#fff;backdrop-filter:blur(6px);margin-bottom:30px}
.w svg{width:100%;display:block}
.w .t{font:9px var(--font-mono);fill:#fff;fill-opacity:.7}
.w p{font-size:12px;margin-top:10px;padding:6px 8px;background:rgba(255,255,255,.12);border-radius:4px}
.w small{font:10px var(--font-mono);letter-spacing:.08em;color:#E6EBEF}
.w-pct b{display:block;font-family:var(--font-display);font-weight:300;font-size:44px;margin:6px 0}
.bar{height:6px;border-radius:3px;background:rgba(255,255,255,.2)}.bar i{display:block;height:100%;border-radius:3px;background:var(--sand)}
.thirds{display:flex;gap:10px;height:110px;align-items:flex-end;margin-top:10px}
.thirds div{flex:1;display:flex;flex-direction:column;justify-content:flex-end;height:100%;font-size:10px}
.thirds i{display:block;background:rgba(255,255,255,.45);border-radius:3px 3px 0 0;margin:4px 0}
.thirds b{font:400 11px var(--font-mono)}
@media (max-width:900px){.dash{grid-template-columns:1fr 1fr}.dash .face{grid-column:1/-1;order:-1;min-height:320px}.w{margin-bottom:0}}

/* list cards */
.list-cards{max-width:540px;margin:0 auto;padding:0 14px 40px;display:grid;gap:12px}
.list-cards>div{display:flex;gap:18px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:10px;background:#fff}
.list-cards .ic{flex:none;width:98px;height:66px;border-radius:6px;background:linear-gradient(135deg,#C7D0D7,#97A5B1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:26px}
.list-cards .ic.num{font-family:var(--font-display);font-weight:300}
.list-cards h3{font-size:16px;font-weight:400}
.list-cards p{font-size:13px;color:var(--ink-muted);margin-top:2px}

/* plan band + report */
.plan-band{display:grid;grid-template-columns:1fr 1.2fr;background:linear-gradient(110deg,#8E9DAA,#A39C96);margin:0 calc(50% - 50vw);padding:0 calc(50vw - 50%)}
.plan-left{padding:72px 48px 72px 24px}
.rpt{align-self:end;margin-top:48px;background:#fff;border-radius:12px 12px 0 0;padding:24px;box-shadow:0 20px 60px rgba(0,0,0,.12)}
.rp-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:12px}
.rp-head span{font-size:13px;color:var(--ink-muted)}
.rp-body{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:18px 0}
.rp-sm{font-size:12px;color:var(--ink-muted)}
.rp-list{columns:2;font-size:12px;margin:10px 0 0;padding-left:16px}
.radar .t2 text,.chart-card .t2 text{font:8px var(--font-mono);fill:var(--ink-muted)}
.rp-foot{font-size:14px;border-top:1px solid var(--line);padding-top:12px}
@media (max-width:900px){.plan-band{grid-template-columns:1fr}.plan-left{padding:56px 22px 0}.rp-body{grid-template-columns:1fr}}

/* phases */
.phases{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.phase{padding:24px;border-right:1px solid var(--line)}.phase:last-child{border-right:0}
.ph{display:inline-block;font:11px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:16px}
.act{border:1px solid var(--line);border-radius:10px;padding:16px;margin-bottom:12px;background:#F8F9FA}
.act b{font-weight:400;font-size:16px}
.tags{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.tags em{font:normal 11px var(--font-mono);padding:3px 8px;border-radius:999px;background:var(--mist)}
.act small{font-size:11px;color:#3E7C5A}
@media (max-width:900px){.phases{grid-template-columns:1fr}.phase{border-right:0;border-bottom:1px solid var(--line)}}

/* gauges + chart */
.gauges{margin-top:32px;display:grid;gap:22px}
.g span{font-size:13px;color:var(--ink-muted)}
.track{position:relative;height:6px;border-radius:3px;background:var(--mist);margin-top:12px}
.track .ideal{position:absolute;top:0;bottom:0;background:#C9D2D9;border-radius:3px}
.track b{position:absolute;top:-22px;transform:translateX(-50%);font:400 10px var(--font-mono);background:var(--ink);color:#fff;padding:2px 6px;border-radius:4px}
.track b::after{content:"";position:absolute;left:50%;top:100%;width:1px;height:12px;background:var(--ink)}
.chart-card{border:1px solid var(--line);border-radius:12px;padding:22px;background:#F8F9FA}
.chart-card small{font:10px var(--font-mono);letter-spacing:.08em;color:var(--ink-muted)}
.chart-card svg{width:100%;margin-top:14px}
.legend{display:flex;gap:18px;font-size:12px;margin-top:8px}.legend i{display:inline-block;width:10px;height:3px;margin-right:6px;vertical-align:middle}

.tiles.four{grid-template-columns:repeat(4,1fr)}
.tiles p{font-size:13px;color:var(--ink-muted);margin-top:6px}

/* assessments */
.assess{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.assess>div{padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.assess>div:nth-child(4n){border-right:0}
.assess h3{font-size:18px;font-weight:400}
.assess span{font:11px var(--font-mono);color:var(--ink-muted)}
.assess ul{margin:14px 0 0;padding-left:16px;font-size:13px;color:var(--ink-muted);line-height:1.8}
@media (max-width:900px){.assess{grid-template-columns:1fr 1fr}.assess>div:nth-child(4n){border-right:1px solid var(--line)}.assess>div:nth-child(2n){border-right:0}}

/* how it works */
.how{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.how .step{padding:28px;border-right:1px solid var(--line)}.how .step:last-child{border-right:0}
.how .step::before{content:none}
.how .step i{font:normal 12px var(--font-mono);color:var(--ink-muted)}
.how .step h3{font-size:20px;font-weight:400;margin:28px 0 8px}
.how .step>p{font-size:14px;color:var(--ink-muted)}
.drop{margin-top:22px;border:1.5px dashed #B6C2CB;border-radius:10px;padding:18px;text-align:center;font-size:14px}
.drop small{display:block;margin:12px 0 8px;font:10px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.poses{display:flex;gap:8px;justify-content:center}
.poses svg{width:44px;height:54px;padding:4px;border-radius:6px;background:var(--mist);fill:none;stroke:var(--slate);stroke-width:1.5}
.chips.sm span{padding:7px 12px;font-size:13px}
.mini-report{margin-top:22px;border:1px solid var(--line);border-radius:10px;padding:18px;background:#F8F9FA}
.mini-report small{font:10px var(--font-mono);letter-spacing:.08em;color:var(--ink-muted)}
.mini-report .track{margin:30px 0 14px}
.mini-report p{font-size:13px}
@media (max-width:900px){.how{grid-template-columns:1fr}.how .step{border-right:0;border-bottom:1px solid var(--line)}}

/* price */
.price-card{margin-top:36px;text-align:left}
.anchor-price .unit{font-size:15px;color:var(--ink-muted)}
.anchor-price s{font-size:30px}.anchor-price b{font-size:60px}
.checks{list-style:none;padding:0;margin:20px 0 26px}
.checks li{padding:9px 0 9px 28px;border-top:1px solid var(--line);position:relative;font-size:15px}
.checks li::before{content:"✓";position:absolute;left:4px;color:var(--slate-deep)}
.pay,.trust{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:16px}
.pay span{font:11px var(--font-mono);padding:5px 10px;border:1px solid var(--line);border-radius:6px;color:var(--ink-muted)}
.trust span{font-size:12px;color:var(--ink-muted)}
.trust span+span::before{content:"·";margin-right:8px}

/* chat */
.chat{display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid var(--line);border-radius:14px;background:#F8F9FA}
.chat p{max-width:80%;padding:12px 16px;border-radius:16px;font-size:14px}
.chat .q{align-self:flex-end;background:var(--ink);color:#fff;border-bottom-right-radius:4px}
.chat .a{background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}

/* faq */
.faq2{max-width:760px;margin:0 auto;padding:0 22px 64px}
.faq2 details{border-bottom:1px solid var(--line);padding:18px 0}
.faq2 summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;font-size:17px}
.faq2 summary::after{content:"+";font-family:var(--font-mono);color:var(--ink-muted)}
.faq2 details[open] summary::after{content:"–"}
.faq2 p{margin-top:10px;color:var(--ink-muted);font-size:15px}

.final-cta{text-align:center;padding:96px 24px;background:linear-gradient(110deg,#6E7E8E,#8E9DAA);margin:0 calc(50% - 50vw)}
.final-cta .hero-actions{margin-top:28px}
.final-cta .btn-primary{background:#fff;color:var(--ink)}
.final-cta .btn-ghost{background:rgba(255,255,255,.18);color:#fff;border-color:transparent}
.notes{padding:36px 48px;font-size:12px;color:var(--ink-muted)}
.notes p+p{margin-top:8px}
@media (max-width:900px){.split.ba-pair{grid-template-columns:1fr}.notes{padding:28px 22px}}

.analysis-hero .h-lg .muted,.plan-band .h-lg .muted,.final-cta .h-lg .muted{color:rgba(255,255,255,.6)}
.dash .face{background:none}
.dash .face img{-webkit-mask-image:linear-gradient(90deg,transparent,#000 22%,#000 78%,transparent),linear-gradient(0deg,#000 85%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 22%,#000 78%,transparent);filter:saturate(.9)}

.hero2{background-color:#9AA8B4}
.hero-video{left:auto;right:0;width:72%;object-position:center;opacity:0;transition:opacity 1.2s ease;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30%);mask-image:linear-gradient(90deg,transparent 0,#000 30%)}
.hero-video.on{opacity:1}
@media (max-width:900px){.hero-video{display:none}}

.hero-video{left:0;right:0;width:100%;object-position:right center;-webkit-mask-image:none;mask-image:none}

/* ===== v4 polish: no grid lines, tighter rhythm, bigger dashboard ===== */
.frame{border:0;max-width:1180px}
.rule{border-top:0}
.split>div+div{border-left:0;border-top:0}
.pad{padding:72px 40px 32px}
.split>div{padding:48px 40px}
section.split{align-items:center}
@media (max-width:900px){.pad{padding:56px 20px 24px}.split>div{padding:28px 20px}}

.stat-grid{border-top:0;padding:0 34px;gap:12px}
.stat-grid article{margin:0;min-height:240px}
.pills-wrap{padding:0 40px 20px}

.ways{padding:0 40px}
.list-cards{padding:0 20px 8px;max-width:600px}
.list-cards .ic{width:120px;height:80px;object-fit:cover;border-radius:8px;background:#C7D0D7}

.tiles,.tiles.four,.assess,.phases,.how{border-top:0;gap:12px;padding:0 40px}
.tiles div,.assess>div,.phase,.how .step{border:1px solid var(--line)!important;border-radius:14px;background:#F8F9FA}
.tiles div{min-height:150px}
.phase{padding:20px}
.act{background:#fff}
.how .step{padding:24px}
.drop,.mini-report{background:#fff}

/* analysis band */
.analysis-hero{padding-bottom:0}
.dash{max-width:1240px;margin:0 auto;grid-template-columns:1fr 1fr 1.35fr 1fr 1fr;gap:16px;min-height:600px;padding:24px 24px 0}
.dash .face{min-height:600px}
.dash .face img{object-fit:cover;object-position:center top;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 20%,#000 80%,transparent 100%),linear-gradient(180deg,transparent 0,#000 18%,#000 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent 0,#000 20%,#000 80%,transparent 100%),linear-gradient(180deg,transparent 0,#000 18%,#000 100%);
  mask-composite:intersect}
.w{padding:18px;border-radius:14px;margin-bottom:48px;background:rgba(255,255,255,.14)}
.w small{font-size:11px}
.w p{font-size:13px;line-height:1.4;padding:8px 10px}
.w-pct b{font-size:56px}
.thirds{height:150px}
.thirds div{font-size:12px}
.thirds b{font-size:12px}
.w-grid,.w-curve{align-self:start;margin-top:40px}
@media (max-width:900px){
  .dash{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:8px 0 0;gap:0}
  .dash .face{order:-1;min-height:0;height:min(110vw,460px);margin:0 20px}
  .dash .face img{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 100%);mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 100%)}
  .dash-scroll{display:flex}
}
.dash-row{display:contents}
@media (max-width:900px){
  .dash-row{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:20px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .dash-row::-webkit-scrollbar{display:none}
  .dash-row .w{flex:0 0 72%;scroll-snap-align:center;margin:0;align-self:stretch}
}

/* payment logos */
.pay{gap:6px;margin-top:18px}
.pay svg{width:42px;height:27px;display:block}
.pay span{display:none}

.notes{padding:24px 40px 40px}
.final-cta{padding:80px 24px}
@media (min-width:901px){
  .dash .face{grid-column:3;grid-row:1}
  .dash .w-grid{grid-column:1;grid-row:1}
  .dash .w-curve{grid-column:2;grid-row:1}
  .dash .w-pct{grid-column:4;grid-row:1}
  .dash .w-thirds{grid-column:5;grid-row:1}
}
body[data-page=index] section{padding:0}
body[data-page=index] .frame>section{padding:24px 0}
body[data-page=index] .hero2{padding:0}
body[data-page=index] .analysis-hero,body[data-page=index] .plan-band{margin-top:24px;margin-bottom:24px}
body[data-page=index] .final-cta{padding:80px 24px}
.analysis-hero{background:linear-gradient(180deg,#8FA3B1 0%,#A3B9C5 55%,#A5BBC6 100%)}
.analysis-hero .w{background:rgba(52,70,86,.32);border-color:rgba(255,255,255,.22)}
.dash{grid-template-columns:1fr 1fr 1.6fr 1fr 1fr}
.dash .face{min-height:640px}

/* ===== v4 mobile fixes ===== */
.pills{flex-wrap:nowrap;max-width:100%;overflow-x:auto;scrollbar-width:none}
.pills::-webkit-scrollbar{display:none}
.pills button{white-space:nowrap;flex:none}
.trust{gap:6px 14px}
.trust span+span::before{content:none}
.hero-actions{flex-wrap:wrap}
.final-cta .hero-actions{justify-content:center}
@media (max-width:900px){
  .pills-wrap{padding:0 20px 16px}
  .stat-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 20px 4px;scrollbar-width:none}
  .stat-grid::-webkit-scrollbar{display:none}
  .stat-grid article{flex:0 0 78%;scroll-snap-align:start;min-height:220px}
  .tiles,.tiles.four{grid-template-columns:1fr 1fr;padding:0 20px}
  .tiles div{min-height:130px;padding:20px 16px}
  .assess,.phases,.how,.ways{padding:0 20px}
  .ba span{font-size:9px;top:10px}.ba .l{left:10px}.ba .r{right:10px}
  .ba-pair{padding:0 20px 8px!important;gap:10px}
  .hero2::before{background:linear-gradient(180deg,rgba(110,126,142,.25) 0%,rgba(110,126,142,.55) 45%,rgba(110,126,142,.92) 78%)}
  .hero2 .inner{padding-bottom:150px}
  .hero2 .hero-actions .btn{flex:1 1 auto}
  .price-card{padding:28px 22px}
  .anchor-price b{font-size:52px}
  .final-cta .hero-actions .btn{flex:1 1 140px}
  .notes{padding:20px}
  .list-cards .ic{width:96px;height:64px}
}
@media (max-width:380px){.tiles,.tiles.four{grid-template-columns:1fr}}

.hero-media{position:absolute;inset:0;z-index:0;opacity:0;transition:opacity 1s ease}
.hero-media.on{opacity:1}
.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;opacity:0}
.hero-media video.front{opacity:1}
@media (max-width:900px){.hero-media video{object-position:78% center}.hero-video{display:block}}
.field input,.field select,.field textarea,.slot{background:#F6F7F8}
.field input:focus,.field select:focus,.field textarea:focus{background:#fff;outline:2px solid #B6C2CB;outline-offset:0}

.menu-only{display:none}
@media (max-width:860px){
  .nav-links.open{background:#4A5866!important;backdrop-filter:none;box-shadow:0 18px 40px rgba(0,0,0,.18)}
  .nav-links.open .menu-only{display:block;padding-top:14px;border-top:1px solid rgba(255,255,255,.18);width:100%}
}
@media (max-width:900px){
  .hero2{justify-content:flex-end}
  .hero2 .inner{padding:0 20px 150px;align-self:stretch}
  .hero2 h1{font-size:40px}
  .hero2 .lead{font-size:16px;margin-top:14px}
  .hero2 .kicker{margin-bottom:10px}
  .hero2 .hero-actions{margin-top:22px}
}
@media (max-width:420px){
  .hero2 .hero-actions{flex-wrap:nowrap;gap:8px}
  .hero2 .hero-actions .btn{flex:1 1 0;padding:0 12px;font-size:14px;min-width:0}
  .hero2 h1{font-size:36px}
  .pillars .row{padding:0 20px 24px;gap:8px}
  .pillars b{font-size:13px}.pillars span{font-size:12px;line-height:1.35}
  .pillars .row div{padding-left:10px}
  .hero2 .inner{padding-bottom:140px}
}
@media (max-height:700px) and (max-width:420px){.pillars span{display:none}.hero2 .inner{padding-bottom:100px}}
@media (max-width:370px){.site-header .nav-cta .btn-primary{padding:0 14px;font-size:13px}.site-header .brand span{font-size:20px}}
@media (max-width:340px){.site-header .nav-cta .btn-primary{display:none}}

/* ===== v5: analysis dashboard, mini graphics, report + protocol mocks ===== */
.rate-card .big{color:#fff}
.bar i{background:#fff}

/* -- analysis -- */
.analysis-hero{background:linear-gradient(180deg,#8496A4 0%,#9DB0BB 60%,#A6B8C2 100%);padding-bottom:0!important;overflow:hidden}
.dash2{display:grid;grid-template-columns:minmax(0,1fr) 330px minmax(0,1fr);align-items:center;max-width:1360px;margin:0 auto;padding:8px 24px 0}
.dz-face{margin:0 -64px;height:620px;align-self:end;position:relative;z-index:2;pointer-events:none}
.dz-face img{position:absolute;left:50%;bottom:0;height:100%;width:auto;max-width:none;transform:translateX(-50%)}
.dz-side{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch;margin-bottom:56px}
.gw-stack{display:grid;gap:14px;grid-template-rows:1fr 1fr}
.gw{background:rgba(64,82,98,.36);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:14px;color:#fff;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;flex-direction:column;justify-content:space-between;min-width:0}
.gw-svg{width:100%;display:block}
.gw .t{font:8.5px var(--font-mono);fill:#fff;fill-opacity:.8;letter-spacing:.04em}
.gw small{font:10px var(--font-mono);letter-spacing:.08em;color:#E6EBEF}
.gw p{font-size:12px;line-height:1.35;margin-top:10px;padding:7px 9px;background:rgba(255,255,255,.14);border-radius:5px;color:#fff}
.gw-num{font-family:var(--font-display);font-weight:300;font-size:40px;line-height:1;margin:8px 0 22px;display:block}
.gw-range{position:relative;height:6px;border-radius:3px;background:rgba(255,255,255,.22)}
.gw-range i{display:block;height:100%;border-radius:3px;background:#fff}
.gw-range em,.sym em,.tone em{position:absolute;font:normal 8px var(--font-mono);letter-spacing:.06em;background:#fff;color:#33424F;padding:2px 5px;border-radius:3px;white-space:nowrap}
.gw-range em{top:-20px;transform:translateX(-50%)}
.gw-ends{display:flex;justify-content:space-between;font:9px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:#DCE3E8;margin-top:8px}
.tone{position:relative;flex:1;min-height:150px;margin:12px 0 4px}
.tone i{position:absolute;left:50%;top:0;bottom:0;width:10px;margin-left:-5px;border-radius:5px;background:linear-gradient(180deg,#F6E3D3,#E8C4A4 22%,#CFA07A 42%,#A9764F 62%,#7A4E33 82%,#4A2E20)}
.tone span{position:absolute;left:calc(50% + 16px);font-size:10px;color:#EEF2F5;transform:translateY(-50%)}
.tone span::before{content:"";position:absolute;right:calc(100% + 3px);top:50%;width:8px;height:1px;background:rgba(255,255,255,.6)}
.tone em{right:calc(50% + 12px);transform:translateY(-50%)}
.thirds3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:auto;padding-top:26px}
.thirds3 div{display:flex;flex-direction:column;gap:5px;font-size:9px;color:#EEF2F5}
.thirds3 i{order:-1;height:3px;border-radius:2px;background:#fff;width:100%!important;opacity:.55}
.thirds3 div:nth-child(2) i{opacity:1}
.thirds3 span{font:8px var(--font-mono);letter-spacing:.05em;text-transform:uppercase}
.thirds3 b{font:400 11px var(--font-mono)}
.sym{display:grid;gap:16px;margin:22px 0 4px}
.sym div{position:relative;height:3px;border-radius:2px;background:rgba(255,255,255,.2)}
.sym i{display:block;height:100%;border-radius:2px;background:#fff}
.sym em{top:50%;transform:translate(-50%,-50%)}
@media (max-width:1100px){
  .dash2{display:flex;flex-direction:column;padding:0 20px}
  .dz-face{order:-1;margin:0;height:min(104vw,480px);align-self:stretch}
  .dz-side{margin:0 0 14px}
  .dz-r{margin-bottom:32px}
  .dz-l{margin-top:-28px;position:relative;z-index:3}
}
@media (min-width:600px) and (max-width:1100px){.dash2{max-width:560px}}

/* -- mini graphics in list cards -- */
.list-cards .ic{position:relative;flex:none;width:132px;height:88px;border-radius:8px;overflow:hidden;background:linear-gradient(135deg,#B9C7CF,#8FA1AE);color:#fff;font-size:0;display:block}
.ic-img img{width:100%;height:100%;object-fit:cover;display:block}
.ic-faces{display:flex!important;align-items:center;justify-content:center;gap:5px}
.ic-faces img{width:30%;aspect-ratio:3/4;object-fit:cover;border-radius:4px;flex:none}
.ic-faces:not(.even) img:nth-child(2){width:38%}
.ic-faces img:first-child{margin-left:-12%}.ic-faces img:last-child{margin-right:-12%}
.ic-tiles,.ic-score{display:flex!important;gap:5px;padding:9px;align-items:stretch}
.ic-tiles>div,.ic-score>div{flex:1;border-radius:5px;background:rgba(58,76,92,.42);border:1px solid rgba(255,255,255,.18);padding:6px;display:flex;flex-direction:column;justify-content:space-between;min-width:0}
.ic-score{padding:0 26px;align-items:flex-end}
.ic-score>div{align-items:center;justify-content:center;gap:4px;border-radius:6px 6px 0 0;height:78%;border-bottom:0}
.ic small{font:500 6.5px var(--font-sans);color:#EEF2F5;white-space:nowrap}
.ic b{font:300 14px var(--font-display);line-height:1;white-space:nowrap}
.ic b i{font:400 6px var(--font-sans);font-style:normal;margin:0 2px 0 1px;opacity:.85}
.ic b.boxed{background:rgba(255,255,255,.14);border-radius:3px;padding:5px 0;text-align:center;display:flex;flex-direction:column;gap:2px;align-items:center}
.ring{--p:80;width:26px;height:26px;border-radius:50%;background:conic-gradient(#fff calc(var(--p)*1%),rgba(255,255,255,.28) 0);display:flex;align-items:center;justify-content:center;position:relative;flex:none}
.ring::before{content:"";position:absolute;inset:2px;border-radius:50%;background:#7F92A0}
.ring b{position:relative;font-size:10px}
.ic-score .ring{width:38px;height:38px}.ic-score .ring b{font-size:14px}
.ic-rows img{position:absolute;top:0;height:100%;width:42%;object-fit:cover}
.ic-rows img:first-child{left:-14%}.ic-rows img:nth-child(2){right:-14%;transform:scaleX(-1)}
.ic-rows ul{position:absolute;inset:8px 18px;list-style:none;margin:0;padding:0;display:grid;gap:3px}
.ic-rows li{display:flex;justify-content:space-between;align-items:center;font:500 6.5px var(--font-sans);background:rgba(58,76,92,.72);border-radius:3px;padding:0 6px}
.ic-rows li b{font:400 7px var(--font-mono)}
.ic-doc{display:flex!important;justify-content:center;align-items:flex-end}
.ic-doc>div{width:52%;height:86%;background:rgba(58,76,92,.5);border:1px solid rgba(255,255,255,.25);border-bottom:0;border-radius:7px 7px 0 0;display:flex;flex-direction:column;align-items:center;padding-top:7px;gap:1px}
.ic-doc b{font:italic 300 9px Georgia,serif}
.ic-doc img{width:46%;margin-top:auto;aspect-ratio:1/1;object-fit:cover;border-radius:50% 50% 0 0}
@media (max-width:900px){.list-cards .ic{width:112px;height:76px}.list-cards>div{gap:14px}}

/* -- plan band + report mock -- */
.plan-band{display:grid;grid-template-columns:minmax(0,460px) minmax(0,1fr);gap:32px;align-items:stretch;background:linear-gradient(105deg,#8FA1AE 0%,#9C9A97 45%,#93A4B0 100%);margin:24px calc(50% - 50vw)!important;padding:0 0 0 max(40px,calc(50vw - 550px))!important;overflow:hidden}
.plan-left{padding:72px 0}
.rp-wrap{align-self:end;padding-top:56px;font-size:clamp(6px,.86vw,10.5px);min-width:0}
.rp{width:96em;display:grid;grid-template-columns:10em 54em 30em;gap:1.2em;background:#EEF1F3;border-radius:2em 0 0 0;padding:1.4em 1.4em 0;box-shadow:0 0 0 .8em rgba(255,255,255,.22);color:var(--ink)}
.rp-pages{display:grid;gap:1em;align-content:start}
.rp-pages i{display:block;aspect-ratio:3/4;border-radius:.5em;background:#fff repeating-linear-gradient(180deg,transparent 0 .9em,#E3E7EA .9em 1em) content-box;padding:1.6em 1em;border:1px solid #E3E7EA}
.rp-pages i.on{border:1.5px solid var(--ink);background:#fff;display:grid;grid-template-columns:1fr 1fr;gap:.4em;padding:1.4em .7em;align-content:start}
.rp-pages img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:.2em}
.rp-main{background:#fff;border-radius:1em 1em 0 0;padding:1.8em 2em 0}
.rp-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.4em;border-bottom:1px solid #EEF1F3}
.rp-top img{height:2em}
.rp-top span{font:.9em var(--font-mono);color:var(--ink-muted);letter-spacing:.08em}
.rp-main h3{font:300 3.2em var(--font-display);letter-spacing:-.02em;margin:.7em 0 .6em}
.rp-main h3 span{color:#8E9DAA}
.rp-photos{display:grid;grid-template-columns:1fr 1fr;gap:1em}
.rp-photos figure,.pd-photos figure{margin:0;position:relative;border-radius:.5em;overflow:hidden}
.rp-photos img{display:block;width:100%;aspect-ratio:1/1.05;object-fit:cover;object-position:center 22%}
.rp-photos figcaption{position:absolute;top:.8em;left:.8em;font:.85em var(--font-mono);letter-spacing:.08em;color:#fff;background:rgba(40,52,62,.5);padding:.3em .6em;border-radius:.3em}
.rp-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.5em;padding:1.8em 0 1em}
.rp h4{font:400 1.7em var(--font-sans);margin:0 0 .7em}
.rp-cols p{font-size:1.1em;color:var(--ink-muted);margin:0 0 1em}
.rp-cols ul{columns:2;list-style:none;margin:0;padding:0;font-size:1.15em;line-height:2.1}
.rp-cols li::before{content:"";display:inline-block;width:.3em;height:.3em;border-radius:50%;background:#A3ACB5;margin-right:.8em;vertical-align:middle}
.rp .radar{width:100%;display:block}
.rp .radar .t2 text{font:6.5px var(--font-mono);fill:var(--ink-muted);letter-spacing:.04em}
.rp-legend{display:flex;gap:1.6em;justify-content:center;font:.85em var(--font-mono);color:var(--ink-muted);letter-spacing:.05em}
.rp-legend i{display:inline-block;width:.9em;height:.9em;margin-right:.5em;vertical-align:-.1em}
.rp-line{font-size:1.45em;margin:.4em 0 .8em}.rp-line span{color:#8E9DAA}
.rp-ages{display:grid;grid-template-columns:1fr 1fr;gap:1em}
.rp-ages div{background:#F4F6F7;border-radius:.5em .5em 0 0;padding:.8em 1em 0}
.rp-ages .dark{background:linear-gradient(100deg,#4A5866,#8E9DAA);color:#fff}
.rp-ages small{font-size:1em;opacity:.8;display:block}
.rp-ages b{font:300 2.6em var(--font-display);line-height:1.1}
.rp-side{display:grid;gap:1.2em;align-content:start}
.rp-card{background:#fff;border-radius:1em;padding:1.6em}
.rp-card p{font-size:1.2em;color:var(--ink-muted);margin:0;line-height:1.5}
.rp-user{display:flex;gap:1.2em;align-items:center;margin-bottom:1em}
.rp-user img{width:4.4em;height:4.4em;border-radius:50%;object-fit:cover}
.rp-user b{display:block;font:400 1.5em var(--font-sans)}
.rp-user span{font-size:1.1em;color:var(--ink-muted)}
.rp dl{display:grid;grid-template-columns:11em 1fr;margin:0;row-gap:1.25em;font-size:1.15em;align-items:center}
.rp dt{font:.85em var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.rp dd{margin:0;white-space:nowrap}
.rp .sw{display:inline-block;width:1em;height:1em;border-radius:50%;background:#B98B66;margin-right:.6em;vertical-align:-.1em}
@media (max-width:900px){
  .plan-band{grid-template-columns:1fr;gap:0;padding:0 0 0 20px!important}
  .plan-left{padding:56px 20px 0 0}
  .rp-wrap{padding-top:36px;font-size:clamp(5.2px,1.62vw,9px)}
  .rp{width:auto;grid-template-columns:10em 48em 30em}
}

/* -- protocol -- */
.proto{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:48px;align-items:center;padding:48px 40px!important}
.proto-text h3{font:400 20px var(--font-sans);margin:36px 0 12px}
.dots{list-style:none;padding:0;margin:0;display:grid;gap:10px;font-size:15px;color:var(--ink)}
.dots li{padding-left:18px;position:relative}
.dots li::before{content:"";position:absolute;left:2px;top:.62em;width:4px;height:4px;border-radius:50%;background:var(--ink)}
.proto-frame{background:linear-gradient(160deg,#A9B8C2,#8E9DAA);border-radius:18px;padding:22px 22px 0;overflow:hidden}
.pd{background:#fff;border-radius:12px 12px 0 0;padding:18px 18px 4px;box-shadow:0 12px 40px rgba(30,42,52,.18)}
.pd-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pd-photos img{display:block;width:100%;aspect-ratio:1/1.08;object-fit:cover;object-position:center 20%}
.pd-photos figure{border-radius:8px}
.pd-photos figcaption{position:absolute;top:10px;left:0;right:0;text-align:center;font:10px var(--font-mono);letter-spacing:.1em;color:#fff}
.pd-list{position:relative;margin-top:16px;padding-left:26px}
.pd-list::before{content:"";position:absolute;left:8px;top:8px;bottom:0;width:1px;background:var(--line)}
.pd-list details{border:1px solid #EEF1F3;border-radius:10px;margin-bottom:10px;background:#fff;box-shadow:0 1px 2px rgba(22,25,29,.04)}
.pd-list summary{list-style:none;cursor:pointer;display:flex;gap:12px;align-items:center;padding:12px 14px;position:relative}
.pd-list summary::-webkit-details-marker{display:none}
.pd-list summary>i{position:absolute;left:-27px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;background:#fff;border:1px solid var(--line);font:normal 9px/16px var(--font-mono);text-align:center;color:var(--ink-muted)}
.pd-list summary span{flex:1;min-width:0}
.pd-list summary b{font-weight:400;font-size:16px;display:block}
.pd-list summary small{display:none;font-size:12px;color:var(--ink-muted);margin-top:3px;line-height:1.35}
.pd-list details[open] summary small{display:block}
.pd-list summary em{flex:none;font:normal 12px var(--font-sans);background:#F4F6F7;border-radius:6px;padding:4px 8px;text-align:center;white-space:nowrap}
.pd-list summary em u{text-decoration:none;font:9px var(--font-mono);letter-spacing:.08em;margin-left:4px;color:var(--ink-muted)}
.pd-list details[open] summary em{font-size:18px;padding:6px 10px;display:flex;flex-direction:column;gap:3px}
.pd-list details[open] summary em u{margin:0}
.pd-steps{background:#F8F9FA;border-top:1px solid #EEF1F3;border-radius:0 0 10px 10px;padding:12px 14px 14px;display:grid;gap:8px}
.pd-steps>small{font:9px var(--font-mono);letter-spacing:.1em;color:var(--ink-muted)}
.pd-steps>div{background:#fff;border:1px solid #EEF1F3;border-radius:8px;padding:10px 12px;display:flex;flex-wrap:wrap;gap:8px 12px;justify-content:space-between;align-items:center}
.pd-steps b{font-weight:400;font-size:14px}
.pd-steps span{display:flex;flex-wrap:wrap;gap:5px}
.pd-steps u{text-decoration:none;font:10px var(--font-mono);padding:3px 7px;border-radius:999px;background:var(--mist);white-space:nowrap}
.pd-steps u.g{background:#E4F0E9;color:#2F6B4B}
@media (max-width:900px){
  .proto{grid-template-columns:1fr;gap:28px;padding:32px 20px!important}
  .proto-frame{padding:12px 12px 0;border-radius:14px}
  .pd{padding:12px 12px 2px}
  .pd-list summary b{font-size:15px}
}

.hero2{background-position:right center;background-size:cover}
.hero-media video{transition:opacity 1s ease}
.dash2{grid-template-columns:minmax(0,1fr) 350px minmax(0,1fr)}
@media (max-width:900px){.hero2{background-position:70% center}.hero-media video{object-position:70% center}}
@media (min-width:1101px){
  .dz-face{height:640px;margin:0 -36px}
  .dz-side{margin-bottom:200px}
  .dash2{padding-top:24px}
}

.pd-steps u.s{background:#ECEAF6;color:#4B3F8F}
@media (max-width:1100px){.dz-l{margin-top:-10px}}

/* ===== v5 hero: framed media, poster image, crossfade ===== */
.hero2{background:linear-gradient(90deg,#8698A6 0%,#94A6B4 45%,#A9BBC8 70%,#A3B2BD 100%)!important}
.hero-media{opacity:1!important;inset:56px 0 0 0;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 70px);mask-image:linear-gradient(180deg,transparent 0,#000 70px)}
.hero-media img,.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right top}
.hero-media img{opacity:1}
.hero-media video{opacity:0;transition:opacity 1.1s ease}
.hero-media video.front{opacity:1}
.hero2::before{background:linear-gradient(90deg,rgba(110,126,142,.9) 0%,rgba(110,126,142,.5) 38%,rgba(110,126,142,0) 62%)}
@media (max-width:900px){
  .hero2{background:#8FA1AF!important;min-height:0;display:block}
  .hero-media{position:relative;inset:auto;height:min(92vw,440px);margin-top:64px;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 40px,#000 82%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 40px,#000 82%,transparent 100%)}
  .hero-media img,.hero-media video{object-position:68% top}
  .hero2::before{display:none}
  .hero2 .inner{padding:0 20px 28px;margin-top:-36px;position:relative}
  .pillars{position:static}
  .pillars .row{padding:0 20px 28px}
}
.stat-grid{scroll-padding-left:20px}
body[data-page=index] .frame>section.final-cta{padding:80px 24px}
body[data-page=index] .frame>section.notes{padding:24px 40px 40px}
@media (max-width:900px){
  body[data-page=index] .frame>section.final-cta{padding:56px 20px}
  body[data-page=index] .frame>section.notes{padding:20px}
  .pills button{padding:8px 12px;font-size:13px}
}
@media (max-width:900px){.final-cta .hero-actions .btn{padding:0 14px;font-size:14px;white-space:nowrap}}

.hero-media video{transition:opacity .7s ease}

/* v6 hero photo sequence (fallback when video cannot autoplay) */
.hero-media img.hero-still{opacity:0;z-index:1;transition:opacity .9s ease}
.hero-media img.hero-still.front{opacity:1}
.hero-media img.hero-still.top{z-index:2}
