:root{
  --paper:#EEF1F4;--paper-2:#E3E8ED;--ink:#1A2330;--ink-2:#465061;--line:#CBD3DC;
  --cobalt:#2448D8;--cobalt-ink:#1B38A8;--amber:#E8A838;--amber-ink:#8A5A00;--card:#FFFFFF;
  --on-cobalt:#fff;--shadow:0 1px 2px rgba(26,35,48,.06),0 8px 24px -12px rgba(26,35,48,.18);
  --r:16px;--ease:cubic-bezier(.2,.7,.2,1);color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#0F1520;--paper-2:#161E2C;--ink:#EEF1F4;--ink-2:#B3BCC9;--line:#2B3647;
  --cobalt:#6B86FF;--cobalt-ink:#8FA3FF;--amber:#F2B84B;--amber-ink:#F2B84B;--card:#1A2332;--on-cobalt:#0B1020;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 12px 30px -14px rgba(0,0,0,.6);color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#0F1520;--paper-2:#161E2C;--ink:#EEF1F4;--ink-2:#B3BCC9;--line:#2B3647;
  --cobalt:#6B86FF;--cobalt-ink:#8FA3FF;--amber:#F2B84B;--amber-ink:#F2B84B;--card:#1A2332;--on-cobalt:#0B1020;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 12px 30px -14px rgba(0,0,0,.6);color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;
  font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--cobalt)}
h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.015em;line-height:1.08;text-wrap:balance}
h1{font-size:clamp(2.3rem,5.6vw,4.6rem);font-variation-settings:"opsz" 96;letter-spacing:-.035em;font-weight:500}
h2{font-size:clamp(1.8rem,3.8vw,2.9rem);font-variation-settings:"opsz" 72;letter-spacing:-.025em;font-weight:550}
h3{font-size:1.15rem}
p{margin:0}
.wrap{max-width:1160px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}
section{padding:clamp(72px,10vw,132px) 0;position:relative}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--cobalt);margin-bottom:16px}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--amber)}
.lede{font-size:clamp(1.06rem,1.5vw,1.26rem);color:var(--ink-2);max-width:36em;margin-top:16px}
.muted{color:var(--ink-2)}
.skip{position:absolute;left:-999px;top:8px;z-index:99;background:var(--ink);color:var(--paper);padding:10px 14px;border-radius:8px}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:6px}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 82%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
.nav.scrolled{border-bottom-color:var(--line)}
.nav .wrap{display:flex;align-items:center;gap:16px;height:68px}
.mark{display:flex;align-items:center;gap:10px;font-weight:750;font-size:1.15rem;letter-spacing:.08em;text-decoration:none;color:var(--ink);min-height:44px}
.mark svg{width:26px;height:26px}
.nav ul{display:none;gap:4px;list-style:none;margin:0 auto;padding:0}
.nav ul a{display:flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;color:var(--ink-2);text-decoration:none;font-size:.95rem;font-weight:500}
.nav ul a:hover,.nav ul a[aria-current="true"]{color:var(--ink);background:color-mix(in srgb,var(--ink) 7%,transparent)}
.nav-r{display:flex;align-items:center;gap:8px;margin-left:auto}
.icon-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--ink);display:grid;place-items:center;cursor:pointer}
.icon-btn svg{width:20px;height:20px}
.menu-btn{display:grid}
.nav .btn.cta-nav{display:none}
@media(min-width:1024px){.nav ul{display:flex}.menu-btn{display:none}.nav .btn.cta-nav{display:inline-flex}.nav-r{margin-left:0}}
.drawer{position:fixed;inset:68px 0 auto 0;z-index:49;background:var(--paper);border-bottom:1px solid var(--line);padding:12px clamp(20px,4vw,40px) 24px;box-shadow:var(--shadow);
  transform:translateY(-8px);opacity:0;visibility:hidden;transition:transform .25s var(--ease),opacity .25s,visibility 0s .25s}
.drawer.open{transform:none;opacity:1;visibility:visible;transition:transform .25s var(--ease),opacity .25s}
.drawer a{display:flex;align-items:center;min-height:52px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:1.15rem;font-weight:500}
.drawer .btn{margin-top:18px;width:100%;justify-content:center}
@media(min-width:1024px){.drawer{display:none}}

.btn{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;background:var(--cobalt);color:var(--on-cobalt);text-decoration:none;
  font:inherit;font-weight:650;font-size:.98rem;border:0;cursor:pointer;line-height:1.2;transition:transform .2s var(--ease),background .2s,box-shadow .2s;box-shadow:0 6px 18px -8px color-mix(in srgb,var(--cobalt) 70%,transparent)}
.btn:hover{background:var(--cobalt-ink);transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.btn .arr{transition:transform .2s var(--ease)}
.btn:hover .arr{transform:translateX(3px)}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line);box-shadow:none}
.btn.ghost:hover{border-color:var(--ink);background:transparent}
.btn.sm{min-height:44px;padding:0 18px;font-size:.92rem}

/* hero */
.hero{padding:clamp(36px,6vw,80px) 0 clamp(56px,8vw,100px);overflow:hidden}
.hero::before{content:"";position:absolute;inset:-20% -10% auto auto;width:70vw;height:70vw;max-width:900px;max-height:900px;border-radius:50%;
  background:radial-gradient(closest-side,color-mix(in srgb,var(--cobalt) 16%,transparent),transparent);pointer-events:none;z-index:0}
.hero .wrap{display:grid;gap:28px;align-items:center;position:relative;z-index:1}
@media(min-width:900px){.hero .wrap{grid-template-columns:1.05fr 1fr;gap:40px}}
.hero .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hero-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;padding:0;list-style:none}
.hero-pills li{font-size:.86rem;padding:7px 12px;border-radius:999px;border:1px solid var(--line);color:var(--ink-2);background:color-mix(in srgb,var(--card) 60%,transparent)}
.stage{position:relative;aspect-ratio:1/1;width:100%;max-width:580px;margin:0 auto}
.stage canvas{position:absolute;inset:0;width:100%!important;height:100%!important;opacity:0;transition:opacity .8s}
.stage.live canvas{opacity:1}
.stage.live .orbit{opacity:0}
.orbit{position:absolute;inset:0;width:100%;height:100%;transition:opacity .6s}
.orbit .label{font:650 15px "Bricolage Grotesque",sans-serif;fill:var(--ink)}
.orbit .sub{font:400 12.5px "Bricolage Grotesque",sans-serif;fill:var(--ink-2)}
.orbit .ring{fill:none;stroke:var(--line);stroke-width:1.5}
.orbit .path{fill:none;stroke:var(--cobalt);stroke-width:2.2;stroke-dasharray:6 6}
.orbit .node{fill:var(--card);stroke:var(--ink);stroke-width:1.5}
.orbit .hub{fill:var(--cobalt)}
.orbit .hubt{font:700 14px "Bricolage Grotesque",sans-serif;fill:var(--on-cobalt);letter-spacing:.08em}
.orbit .cand{fill:var(--amber)}
.orbit .mem{fill:var(--card);stroke:var(--line);stroke-width:1.5}
.tags{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .6s}
.stage.live .tags{opacity:1}
.tag{position:absolute;transform:translate(-50%,-50%);font-size:.82rem;font-weight:650;padding:6px 11px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);white-space:nowrap}
.tag small{display:block;font-weight:400;color:var(--ink-2);font-size:.74rem}
.tag.t1{left:18%;top:80%}.tag.t2{left:82%;top:18%}
.tag.t2{border-color:var(--amber)}
.tag.t3{border-color:#F07A1A;left:20%;top:20%}
.orbit .outer{stroke:color-mix(in srgb,#F07A1A 45%,var(--line));stroke-dasharray:3 5}
.orbit .broker{fill:#F07A1A}
.stage canvas,.stage .tags,.stage .orbit{pointer-events:none}

/* reveal */
.rv{opacity:1}
.js .rv{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none}}

/* how stepper */
.how-grid{display:grid;gap:32px;margin-top:44px;align-items:start}
@media(min-width:900px){.how-grid{grid-template-columns:1fr 1.05fr;gap:56px}}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.step button{all:unset;box-sizing:border-box;display:grid;grid-template-columns:48px 1fr;gap:14px;width:100%;padding:18px 20px;border-radius:var(--r);border:1px solid var(--line);background:var(--card);cursor:pointer;min-height:44px;transition:border-color .2s,box-shadow .2s,transform .2s var(--ease)}
.step button:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.step button:hover{border-color:color-mix(in srgb,var(--cobalt) 50%,var(--line))}
.step .n{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:700;border:1.5px solid var(--line);color:var(--ink-2);transition:all .25s}
.step h3{margin:8px 0 0}
.step p{color:var(--ink-2);margin-top:8px;font-size:.98rem;display:none}
.step[aria-current="step"] button{border-color:var(--cobalt);box-shadow:var(--shadow)}
.step[aria-current="step"] .n{background:var(--cobalt);border-color:var(--cobalt);color:var(--on-cobalt)}
.step[aria-current="step"] p{display:block}
.no-js .step p{display:block}
.path-card{position:sticky;top:96px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:var(--shadow)}
.path-card svg{width:100%;height:auto;display:block}
.pc-node rect{fill:var(--paper);stroke:var(--line);stroke-width:1.5;transition:fill .3s,stroke .3s}
.pc-node text{font:600 13px "Bricolage Grotesque",sans-serif;fill:var(--ink-2);transition:fill .3s}
.pc-node.on rect{fill:color-mix(in srgb,var(--cobalt) 14%,var(--card));stroke:var(--cobalt)}
.pc-node.on text{fill:var(--ink)}
.pc-line{fill:none;stroke:var(--line);stroke-width:2}
.pc-prog{fill:none;stroke:var(--cobalt);stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .7s var(--ease)}
.pc-token{fill:var(--amber);transition:transform .7s var(--ease)}
.pc-cap{margin-top:14px;font-size:.92rem;color:var(--ink-2);min-height:3em}
.stepper-ctl{display:flex;gap:8px;margin-top:14px}

/* numbers */
.numbers{background:var(--paper-2)}
.figs{display:grid;gap:14px;margin-top:40px}
@media(min-width:620px){.figs{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.figs{grid-template-columns:repeat(4,1fr)}}
.fig{background:var(--card);border-radius:var(--r);padding:24px;border:1px solid var(--line);transition:transform .25s var(--ease),box-shadow .25s}
.fig:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.fig .v{font-size:clamp(2rem,3.2vw,2.6rem);font-weight:550;letter-spacing:-.035em;line-height:1;font-variation-settings:"opsz" 96;font-variant-numeric:tabular-nums}
.fig .k{color:var(--ink-2);margin-top:10px;font-size:.95rem}
.fig.hi{background:var(--cobalt);border-color:var(--cobalt);color:var(--on-cobalt)}
.fig.hi .k{color:color-mix(in srgb,var(--on-cobalt) 82%,transparent)}
.explainer{margin-top:28px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:clamp(20px,3vw,32px)}
.seg{display:inline-flex;padding:4px;border-radius:999px;background:var(--paper);border:1px solid var(--line);flex-wrap:wrap}
.seg button{font:inherit;font-weight:600;font-size:.92rem;min-height:44px;padding:0 18px;border-radius:999px;border:0;background:transparent;color:var(--ink-2);cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.ex-title{margin-top:22px;font-size:1.05rem;font-weight:600}
.bar{display:flex;height:56px;border-radius:14px;overflow:hidden;margin-top:14px;gap:3px}
.bar span{display:flex;align-items:center;padding:0 14px;font-weight:700;font-size:.95rem;white-space:nowrap;overflow:hidden;transition:flex-grow .7s var(--ease);flex-basis:0;min-width:0}
.bar .c1{background:var(--amber);color:#1A2330}
.bar .c2{background:var(--cobalt);color:var(--on-cobalt)}
.bar .c3{background:var(--ink);color:var(--paper)}
.legend{display:grid;gap:10px;margin:16px 0 0;padding:0;list-style:none}
@media(min-width:700px){.legend{grid-template-columns:repeat(3,1fr)}}
.legend li{display:flex;gap:10px;align-items:baseline;color:var(--ink-2);font-size:.95rem}
.legend i{flex:none;width:12px;height:12px;border-radius:3px;transform:translateY(1px)}
.legend b{color:var(--ink);font-variant-numeric:tabular-nums}
.ex-note{margin-top:16px;font-size:.92rem;color:var(--ink-2)}
.context{margin-top:28px;color:var(--ink-2);max-width:46em;padding-left:16px;border-left:3px solid var(--amber)}

/* two col */
.two{display:grid;gap:32px}
@media(min-width:900px){.two{grid-template-columns:5fr 7fr;gap:72px}.two>div:first-child{position:sticky;top:110px;align-self:start}}
.cards{list-style:none;padding:0;margin:0;display:grid;gap:12px}
@media(min-width:620px){.cards.c2{grid-template-columns:1fr 1fr}}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;transition:transform .25s var(--ease),border-color .25s,box-shadow .25s}
.card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--cobalt) 40%,var(--line));box-shadow:var(--shadow)}
.card .ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--cobalt) 12%,transparent);color:var(--cobalt);margin-bottom:12px}
.card .ic svg{width:20px;height:20px}
.card strong{display:block;margin-bottom:6px;font-size:1.04rem}
.card span{color:var(--ink-2);font-size:.96rem}

/* who / network */
.who{background:var(--paper-2)}
.who-grid{display:grid;gap:28px;margin-top:40px;align-items:center}
@media(min-width:900px){.who-grid{grid-template-columns:1fr 1fr;gap:56px}}
.net{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:16px;position:relative}
.net svg{width:100%;height:auto;display:block}
.net .ln{stroke:var(--line);stroke-width:1.5;transition:stroke .3s,opacity .3s}
.net .ln.on{stroke:var(--cobalt);stroke-width:2.2}
.net .nd{cursor:pointer}
.net .nd circle{fill:var(--paper);stroke:var(--ink-2);stroke-width:1.5;transition:fill .25s,stroke .25s}
.net .nd.gold circle{stroke:var(--amber);stroke-width:2.5}
.net .nd.on circle{fill:var(--cobalt);stroke:var(--cobalt)}
.net .nd:focus{outline:none}
.net .nd:focus-visible circle{stroke:var(--amber);stroke-width:4}
.net .hubc{fill:var(--ink)}
.net .hubt{font:700 12px "Bricolage Grotesque",sans-serif;fill:var(--paper);letter-spacing:.08em}
.net-cap{margin-top:10px;font-size:.92rem;color:var(--ink-2);min-height:3em;padding:0 6px}
.tiers{display:grid;gap:12px}
@media(min-width:620px){.tiers{grid-template-columns:1fr 1fr}}
.tier{all:unset;box-sizing:border-box;display:block;border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;background:var(--card);cursor:pointer;transition:border-color .2s,transform .2s var(--ease),box-shadow .2s}
.tier:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.tier:hover,.tier[aria-pressed="true"]{border-color:var(--cobalt);box-shadow:var(--shadow);transform:translateY(-2px)}
.tier b{display:block;font-size:1.06rem;margin-bottom:4px}
.tier span{color:var(--ink-2);font-size:.95rem}
.tier.gold{border-color:var(--amber);box-shadow:inset 4px 0 0 var(--amber)}
.tier.gold[aria-pressed="true"]{box-shadow:inset 4px 0 0 var(--amber),var(--shadow)}

/* founding */
.founding{background:#121A27;color:#EEF1F4;overflow:hidden}
.founding .eyebrow{color:#9DB0FF}
.founding .lede{color:#B9C2CF}
.founding .card{background:#1A2434;border-color:#2E3B4E}
.founding .card span{color:#B9C2CF}
.founding .card .ic{background:rgba(107,134,255,.16);color:#9DB0FF}
.form{background:var(--card);color:var(--ink);border-radius:22px;padding:clamp(20px,3vw,32px);display:grid;gap:16px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
:root[data-theme="light"] .form, .form{--paper-f:var(--paper)}
.form h3{font-size:1.4rem}
.form label{display:grid;gap:6px;font-size:.92rem;font-weight:600}
.form input,.form select,.form textarea{font:inherit;font-weight:400;min-height:48px;padding:11px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);transition:border-color .2s,box-shadow .2s}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--cobalt);box-shadow:0 0 0 4px color-mix(in srgb,var(--cobalt) 22%,transparent)}
.form textarea{min-height:96px;resize:vertical}
.form .row{display:grid;gap:16px}
@media(min-width:560px){.form .row{grid-template-columns:1fr 1fr}}
.form small{color:var(--ink-2);font-weight:400}
.form .btn{justify-content:center}
.found-3d{position:absolute;right:-60px;top:-40px;width:260px;height:260px;pointer-events:none;opacity:.9}
@media(max-width:899px){.found-3d{display:none}}

/* faq */
.faq{display:grid;gap:10px;margin-top:36px;max-width:820px}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;min-height:56px;font-weight:600;font-size:1.04rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:12px;height:12px;border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);transform:rotate(45deg) translate(-3px,-3px);transition:transform .25s var(--ease)}
.faq details[open] summary::after{transform:rotate(225deg)}
.faq .a{padding:0 22px 20px;color:var(--ink-2)}

footer{padding:48px 0 72px;border-top:1px solid var(--line);color:var(--ink-2);font-size:.88rem}
footer .wrap{display:grid;gap:18px}
footer p{max-width:72em}
footer .mark{min-height:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* v3 */
.home section{padding:clamp(56px,7vw,96px) 0}
.home .hero{padding:clamp(28px,5vw,64px) 0 clamp(40px,6vw,72px)}
@media(max-width:899px){.home .path-card{display:none}.home .stage{max-width:420px;margin-top:-10px}}
@media(max-width:899px){.home .net{display:none}.who-grid{margin-top:28px}}
.more{margin-top:12px}
.more summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border-radius:999px;border:1.5px solid var(--line);font-weight:600;background:var(--card)}
.more summary::-webkit-details-marker{display:none}
.more summary::after{content:"+";font-size:1.2rem;line-height:1;color:var(--cobalt)}
.more[open] summary::after{content:"–"}
.more .cards{margin-top:12px}
.teaser-sec{padding-top:0!important}
.teaser{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:clamp(24px,4vw,40px);border-radius:22px;background:var(--card);border:1px solid var(--line);text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .25s var(--ease),border-color .25s}
a.teaser:hover{transform:translateY(-2px);border-color:var(--cobalt)}
.teaser strong{display:block;font-size:clamp(1.2rem,2.2vw,1.6rem);font-weight:550;letter-spacing:-.015em;line-height:1.25;max-width:28em}
.teaser .eyebrow{margin-bottom:10px}
.teaser.dark{background:#121A27;color:#EEF1F4;border-color:#2E3B4E}
.teaser.dark .eyebrow{color:#9DB0FF}
.page-hero{padding:clamp(48px,7vw,96px) 0 clamp(24px,4vw,40px)}
.numbers-page .numbers{padding-top:clamp(48px,6vw,80px)}
.numbers-page #brokers{background:var(--paper)}
.numbers-page #faq{background:var(--paper-2)}
/* v6 workflow */
.stage-col{width:100%;max-width:580px;margin:0 auto}
.orbit .flowp{fill:none;stroke:var(--amber);stroke-width:2.4;stroke-linecap:round}
.orbit .flowp.o{stroke:#F07A1A;stroke-dasharray:5 5}
.orbit .stepn{font:700 13px "Bricolage Grotesque",sans-serif;fill:var(--ink-2)}
.tag{transition:border-color .3s,box-shadow .3s,background .3s}
.tag.t0{font-weight:750;letter-spacing:.08em;font-size:.76rem;border-color:var(--cobalt);color:var(--cobalt)}
.tag.hot{box-shadow:0 0 0 3px color-mix(in srgb,var(--amber) 35%,transparent),var(--shadow)}
.tag.t3.hot{box-shadow:0 0 0 3px rgba(240,122,26,.35),var(--shadow)}
.tag.t0.hot{box-shadow:0 0 0 3px color-mix(in srgb,var(--cobalt) 30%,transparent),var(--shadow)}
.flow{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 8px;pointer-events:none}
.flow li{display:flex;align-items:center;gap:8px;font-size:.86rem;font-weight:600;color:var(--ink);padding:6px 12px 6px 6px;border-radius:999px;border:1px solid var(--line);background:var(--card)}
.flow li b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--paper-2);color:var(--ink-2);font-size:.75rem}
.flow li+li::before{content:"→";margin:0 4px 0 -2px;color:var(--ink-2);order:-1;display:none}
.flow.live li{color:var(--ink-2);transition:color .3s,border-color .3s,background .3s}
.flow.live li.on{color:var(--ink);border-color:var(--amber);background:color-mix(in srgb,var(--amber) 14%,var(--card))}
.flow.live li.on b,.flow.live li.done b{background:var(--amber);color:#1A2330}
.flow.live.to-b li.on:last-child{border-color:#F07A1A;background:color-mix(in srgb,#F07A1A 14%,var(--card))}
.flow.live.to-b li.on:last-child b{background:#F07A1A;color:#1A2330}
@media(max-width:899px){.home .stage{margin-top:0}}
.home .stage,.stage{aspect-ratio:6/5;max-width:none}
.tag.t0{background:transparent;border:0;box-shadow:none!important;color:#fff;font-size:.8rem;padding:0;text-shadow:0 1px 3px rgba(0,0,0,.4)}
:root[data-theme="dark"] .tag.t0{color:#0B1020;text-shadow:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .tag.t0{color:#0B1020;text-shadow:none}}
@media(max-width:600px){.tag{font-size:.74rem;padding:4px 9px}.tag small{font-size:.68rem}}
.flow li{border-radius:18px;text-align:left}
/* v8 apply */
.apply-sec{padding-top:clamp(16px,3vw,32px)!important}
.apply-form fieldset{border:0;margin:0;padding:0;display:grid;gap:14px}
.apply-form fieldset+fieldset{border-top:1px solid var(--line);padding-top:18px}
.apply-form legend{font-weight:700;font-size:1.1rem;margin-bottom:8px;padding:0}
.apply-form fieldset>div{display:grid;gap:6px}
.apply-form label{font-size:.92rem;font-weight:600}
.apply-form .req{color:var(--cobalt)}
.apply-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.apply-form .check{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:12px;background:var(--paper);border:1px solid var(--line)}
.apply-form .check input{width:22px;height:22px;min-height:0;margin:2px 0 0;flex:none;accent-color:var(--cobalt)}
.apply-form .check label{font-weight:500}
.guar{font-size:.92rem;color:var(--ink-2);border-left:3px solid var(--amber);padding-left:12px}
.form-err{color:#B42318;font-weight:600}
:root[data-theme="dark"] .form-err{color:#FF8A80}
.apply-ok h3{font-size:1.5rem}
.apply-teaser p{margin:0}
.apply-teaser .btn{justify-content:center;margin-top:6px}
.apply-page .form{position:relative}
[hidden]{display:none!important}
.apply-form fieldset>div>label{display:block}
