:root{--bg:#060914;--bg2:#0b1024;--ink:#ecebf5;--mut:#a3a7c4;--dim:#7d82a6;--gold:#d8b25c;--gold2:#f1d48c;--line:rgba(160,170,230,.14);--line2:rgba(216,178,92,.35);
--good:#4fc28a;--bad:#e2685f;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--r:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased;background:
 radial-gradient(1200px 700px at 75% -10%,rgba(70,90,200,.22),transparent 60%),radial-gradient(900px 600px at 0% 30%,rgba(216,178,92,.07),transparent 60%),var(--bg);min-height:100vh;overflow-x:hidden}
#stars{position:fixed;inset:0;z-index:-1;pointer-events:none}
a{color:inherit}.wrap{width:min(1200px,100% - 48px);margin-inline:auto}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;z-index:99;background:var(--gold);color:#111;padding:8px 12px;border-radius:8px}
.muted{color:var(--mut)}.small{font-size:13.5px}
h1,h2,h3{font-family:var(--serif);font-weight:600;letter-spacing:-.01em;margin:0;color:#f6f0dd}
h1{font-size:clamp(44px,5.4vw,76px);line-height:1.02}h1 em{font-style:italic;font-weight:500;background:linear-gradient(90deg,var(--gold2),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
h2{font-size:clamp(32px,3.8vw,52px);line-height:1.08}h3{font-size:26px;line-height:1.2}
.eyebrow{font:600 12.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 18px;display:flex;align-items:center;gap:10px}
.dot{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px var(--gold)}
/* nav */
.nav{position:sticky;top:0;z-index:20;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}
.nav.scrolled{background:rgba(6,9,20,.72);backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);border-color:var(--line)}
.navin{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:inline-flex;align-items:center;gap:10px;font:600 24px var(--serif);color:var(--gold2);text-decoration:none;letter-spacing:.01em}
.brand.small{font-size:19px}
.links{display:flex;gap:30px}.links a{text-decoration:none;color:var(--mut);font-size:14.5px;transition:color .2s}.links a:hover{color:var(--ink)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:999px;font:600 15px var(--sans);text-decoration:none;color:#1a1406;
 background:linear-gradient(180deg,#f3d995,#d4a94c);box-shadow:0 1px 0 rgba(255,255,255,.4) inset,0 8px 28px rgba(216,178,92,.25);transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-1px);box-shadow:0 1px 0 rgba(255,255,255,.4) inset,0 12px 36px rgba(216,178,92,.35)}
.btn:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line2)}.btn.ghost:hover{box-shadow:inset 0 0 0 1px var(--gold)}
.btn-sm{padding:9px 18px;font-size:14px}
.glass{background:linear-gradient(180deg,rgba(24,30,64,.62),rgba(12,16,36,.62));border:1px solid var(--line);border-radius:var(--r);box-shadow:0 30px 80px -30px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.04)}
/* hero */
.hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:48px;align-items:center;padding:72px 0 56px}
.lead{font-size:19px;color:var(--mut);max-width:540px;margin:24px 0 32px}
.ctas{display:flex;gap:14px;flex-wrap:wrap}
.ticks{display:flex;gap:22px;flex-wrap:wrap;list-style:none;padding:0;margin:30px 0 0;color:var(--dim);font-size:13.5px}
.ticks li::before{content:"✓";color:var(--gold);margin-right:7px}
.chartcard{padding:18px}.cardhead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:2px 4px 12px}
.pill{font:600 11.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gold2);border:1px solid var(--line2);border-radius:999px;padding:5px 11px;background:rgba(216,178,92,.08)}
.chartgrid{display:grid;grid-template-columns:minmax(0,1fr) 196px;gap:16px;align-items:stretch}
#demo{width:100%;height:auto;display:block}
#demo .hz{fill:transparent;cursor:pointer;transition:fill .25s,stroke .2s;outline:none;stroke:transparent;stroke-width:2.5;stroke-linejoin:round}#demo .hz:focus{outline:none}#demo .hz:focus-visible{stroke:var(--gold2);fill:rgba(216,178,92,.1)}#demo .hz:hover{fill:rgba(216,178,92,.07)}#demo .hz.sel{fill:rgba(216,178,92,.15)}
#demo .ln{fill:none;stroke:var(--gold);stroke-width:1.3;opacity:.85}
#demo .draw{stroke-dasharray:2000;stroke-dashoffset:2000;animation:draw 2.2s cubic-bezier(.6,.1,.2,1) forwards}
@keyframes draw{to{stroke-dashoffset:0}}
#demo .pl{cursor:pointer;opacity:0;animation:fade .6s forwards}#demo .pl text{fill:var(--gold2);font:600 23px var(--serif)}#demo .pl:hover text{fill:#fff}
#demo .sn{fill:var(--dim);font:500 13px var(--sans);pointer-events:none}
@keyframes fade{to{opacity:1}}
.hpanel{border-left:1px solid var(--line);padding:6px 4px 6px 16px;font-size:14px;min-height:240px}
.hpanel h3{font-size:24px;margin:2px 0 6px}.hpanel dl{margin:10px 0;display:grid;grid-template-columns:auto 1fr;gap:4px 10px}.hpanel dt{color:var(--dim)}.hpanel dd{margin:0}
.hpanel ul{padding-left:16px;margin:8px 0 0;color:var(--mut);font-size:13px}
.meter{display:flex;height:6px;border-radius:6px;overflow:hidden;background:#222a4a;margin:10px 0 4px}.meter i{display:block;transition:width .6s}
.mrow{display:flex;justify-content:space-between;font-size:12.5px}.g{color:var(--good)}.b{color:var(--bad)}
#tip{position:fixed;pointer-events:none;z-index:50;background:rgba(14,18,42,.96);border:1px solid var(--line2);border-radius:12px;padding:10px 13px;font-size:13.5px;line-height:1.5;opacity:0;transform:translateY(4px);transition:opacity .15s,transform .15s;max-width:250px;box-shadow:0 14px 40px rgba(0,0,0,.5)}
#tip.on{opacity:1;transform:none}#tip b{font:600 18px var(--serif);color:var(--gold2)}
/* stats */
.stats{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:var(--r);background:rgba(12,16,36,.5);margin-bottom:40px}
.stats div{padding:26px 22px;border-left:1px solid var(--line)}.stats div:first-child{border-left:0}
.stats b{display:block;font:600 40px/1 var(--serif);color:var(--gold2);margin-bottom:8px}.stats span{color:var(--mut);font-size:13.5px;line-height:1.45;display:block}
/* sections */
.sec{padding:96px 0}.sechead{max-width:720px;margin-bottom:44px}.sechead h2{margin-bottom:14px}
.flow{display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.steps button{width:100%;text-align:left;background:transparent;border:1px solid transparent;border-radius:14px;padding:14px 16px;color:var(--mut);font:600 17px var(--sans);cursor:pointer;display:grid;grid-template-columns:36px 1fr;row-gap:2px;transition:.2s}
.steps button i{font:500 14px var(--serif);font-style:normal;color:var(--dim);grid-row:span 2;padding-top:3px}
.steps button small{font-weight:400;font-size:13px;color:var(--dim)}
.steps button:hover{color:var(--ink);background:rgba(255,255,255,.02)}
.steps button[aria-selected=true]{color:var(--ink);border-color:var(--line2);background:linear-gradient(90deg,rgba(216,178,92,.12),rgba(216,178,92,.02))}
.steps button[aria-selected=true] i{color:var(--gold)}
.stage{padding:30px;min-height:360px;position:relative;overflow:hidden}
.stage>*{animation:rise .45s ease both}@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.progress{grid-column:2;height:2px;background:var(--line);border-radius:2px;overflow:hidden;margin-top:-14px}.progress span{display:block;height:100%;width:0;background:var(--gold)}
.chain{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0}
.node{border:1px solid var(--line2);background:rgba(216,178,92,.06);border-radius:12px;padding:10px 14px;font-size:14.5px}
.arrow{color:var(--gold);opacity:.8}
.bars{display:grid;gap:12px;margin-top:10px}.bars .row{display:grid;grid-template-columns:150px 1fr 110px;gap:14px;align-items:center;font-size:14px}
.tl{display:flex;height:42px;border-radius:10px;overflow:hidden;margin:18px 0 8px;border:1px solid var(--line)}
.tl div{display:flex;align-items:center;justify-content:center;font-size:12px;color:#0d0f1e;font-weight:600;white-space:nowrap;overflow:hidden}
.mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:16px}
.mini div{border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:13.5px}.mini b{display:block;color:var(--gold2);font:600 18px var(--serif)}
.win{border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-top:12px}.win h4{margin:0 0 6px;font:600 20px var(--serif);color:#f6f0dd}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:26px;border-bottom:1px solid var(--line)}
.tabs button{background:none;border:0;color:var(--mut);font:500 15px var(--sans);padding:12px 14px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:.2s}
.tabs button:hover{color:var(--ink)}.tabs button[aria-selected=true]{color:var(--gold2);border-color:var(--gold)}
.show{display:grid;grid-template-columns:330px minmax(0,1fr);gap:40px;align-items:start}
.showtext h3{margin-bottom:10px}.showtext ul{padding:0;list-style:none;margin:18px 0 0}.showtext li{padding:9px 0 9px 26px;border-top:1px solid var(--line);position:relative;color:var(--mut);font-size:15px}
.showtext li::before{content:"";position:absolute;left:4px;top:17px;width:8px;height:8px;border:1.5px solid var(--gold);transform:rotate(45deg)}
.browser{margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#0a0e20;box-shadow:0 40px 100px -30px rgba(0,0,0,.8),0 0 0 1px rgba(216,178,92,.06)}
.browser .bar{display:flex;align-items:center;gap:7px;padding:11px 14px;border-bottom:1px solid var(--line);background:#0d1228}
.browser .bar i{width:10px;height:10px;border-radius:50%;background:#2b3256}.browser .bar span{margin-left:14px;font-size:12px;color:var(--dim);background:#0a0e20;padding:3px 12px;border-radius:6px}
.browser img{display:block;width:100%;height:auto;transition:opacity .3s}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.grid2 h2{margin-bottom:16px}
.checks{list-style:none;padding:0;margin:24px 0 0}.checks li{padding:6px 0;color:var(--ink)}.checks li::before{content:"✓";color:var(--gold);margin-right:10px}
.acc{width:100%;border-collapse:collapse;font-size:14.5px}.acc caption{text-align:left;padding:18px 20px 6px}
.acc th,.acc td{padding:12px 20px;text-align:left;border-top:1px solid var(--line)}.acc th{color:var(--dim);font-weight:500;font-size:13px}
.acc td:last-child{color:var(--gold2);font-weight:600}.glass>p.small{padding:0 20px 16px}
.p3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.p3 .glass{padding:28px}.p3 h3{margin-bottom:10px}
.principles{padding-top:20px}
.final{text-align:center;padding:90px 0 110px}.final h2{margin-bottom:12px}.final .btn{margin-top:22px}
.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:28px 0 40px;border-top:1px solid var(--line)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}#demo .pl{opacity:1}#demo .draw{stroke-dashoffset:0}}
@media (max-width:1020px){.hero{grid-template-columns:1fr;padding-top:40px;gap:40px}.flow{grid-template-columns:1fr}.steps{flex-direction:row;overflow-x:auto;padding-bottom:4px}.steps li{flex:0 0 auto}.steps button{width:auto}.progress{grid-column:1}
 .show{grid-template-columns:1fr}.grid2{grid-template-columns:1fr}.stats{grid-template-columns:repeat(3,1fr)}.stats div:nth-child(4){border-left:0}.stats div:nth-child(n+4){border-top:1px solid var(--line)}}
@media (max-width:680px){.links{display:none}.wrap{width:calc(100% - 32px)}.chartgrid{grid-template-columns:1fr}.hpanel{border-left:0;border-top:1px solid var(--line);padding:14px 4px 4px;min-height:0}
 .stats{grid-template-columns:1fr 1fr}.stats div{border-left:0!important;border-top:1px solid var(--line)}.stats div:nth-child(-n+2){border-top:0}.stats div:last-child{grid-column:span 2}
 .p3{grid-template-columns:1fr}.sec{padding:64px 0}.lead{font-size:17px}.bars .row{grid-template-columns:1fr;gap:4px}.stage{padding:20px}.steps button small{display:none}}
#demo .pl .rx{font:600 12px var(--sans);fill:var(--gold)}
#demo .arw .alab{opacity:0;font:600 12px system-ui,sans-serif;paint-order:stroke;stroke:#0a0d1c;stroke-width:3px;pointer-events:none}
#demo .arw:hover .alab{opacity:1}#demo .arrows{pointer-events:visibleStroke}
.lchain ul{padding-left:16px;margin:4px 0}.lchain li{font-size:13.5px;margin:2px 0}.lleg{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--muted,#9aa)}.lleg span{display:inline-flex;gap:4px;align-items:center}
.hero{align-items:start}.chartgrid{align-items:start}
.hpanel{max-height:min(520px,72vh);overflow:auto;overscroll-behavior:contain}
.lchain summary{cursor:pointer;margin-top:8px}
#demo .arrows path{opacity:.85}
@media (max-width:680px){.hpanel{max-height:360px}}
.tnote{margin:12px 4px 0;font-size:12px;line-height:1.5;opacity:.8}
