:root{--bg:#05070f;--bg2:#0a1020;--panel:rgba(16,24,48,.72);--line:rgba(120,160,255,.18);--ink:#e8eefc;--mut:#93a1c4;--cyan:#38e8ff;--violet:#9b7bff;--pink:#ff5fd2;--amber:#ffc15a;--good:#39f0a0;--bad:#ff6b7a}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{overflow-x:clip;margin:0;font:16px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg);background-image:radial-gradient(1200px 600px at 80% -10%,rgba(155,123,255,.18),transparent),radial-gradient(900px 500px at -10% 30%,rgba(56,232,255,.10),transparent)}
a{color:var(--cyan)}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;color:#000;padding:8px 12px;z-index:50}
header.top{position:sticky;top:0;z-index:20;background:rgba(5,7,15,.78);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;padding:12px 20px}
.brand{font-weight:800;font-size:1.2rem;color:#fff;text-decoration:none;letter-spacing:.02em}.brand span{background:linear-gradient(90deg,var(--cyan),var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent}
nav a{color:var(--mut);text-decoration:none;font-size:.9rem;margin-left:18px}nav a:hover{color:var(--cyan)}
.menu-btn{display:none;background:none;border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:6px 12px;font:inherit}
.hero{position:relative;min-height:min(88vh,700px);display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--line)}
.hero video,.hero .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,15,.95) 0,rgba(5,7,15,.65) 55%,rgba(5,7,15,.2)),linear-gradient(0deg,var(--bg),transparent 30%)}
.hero .wrap{position:relative;z-index:2;padding-top:60px;padding-bottom:90px}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:700;color:var(--cyan);margin:0}
h1{font-size:clamp(2.2rem,5.6vw,4rem);line-height:1.08;margin:.25em 0 .35em;letter-spacing:-.02em;max-width:820px}
h1 em{font-style:normal;background:linear-gradient(90deg,var(--cyan),var(--violet),var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent}
h2{font-size:clamp(1.6rem,3.4vw,2.3rem);margin:.2em 0 .4em;letter-spacing:-.01em}h3{margin:.2em 0 .3em}
.lead{font-size:1.15rem;max-width:680px;color:#c9d5f2}
.btn{display:inline-block;background:linear-gradient(90deg,var(--cyan),var(--violet));color:#05070f;font-weight:800;padding:13px 24px;border-radius:10px;text-decoration:none;margin:8px 10px 0 0;box-shadow:0 0 28px rgba(56,232,255,.35);transition:transform .2s}
.btn:hover{transform:translateY(-2px)}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-top:-56px;position:relative;z-index:3}
.stat,.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px;backdrop-filter:blur(8px)}
.stat b{display:block;font-size:1.9rem;line-height:1.1;background:linear-gradient(90deg,var(--cyan),var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent}.stat span{color:var(--mut);font-size:.9rem}
section.s{padding:64px 0 8px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.card:hover{border-color:rgba(56,232,255,.5);box-shadow:0 0 30px rgba(56,232,255,.12)}
.card p,.mut{color:var(--mut)}
.loop{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;counter-reset:l;margin-top:18px}
.loop div{counter-increment:l;position:relative;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--panel)}
.loop div:before{content:counter(l);display:block;font-weight:800;color:var(--pink);font-size:1.4rem}
.loop b{display:block}.loop span{color:var(--mut);font-size:.88rem}
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
table{width:100%;border-collapse:collapse;font-size:.95rem}
th,td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line)}th{color:var(--mut);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}tr:last-child td{border:0}
.sim{display:grid;grid-template-columns:340px 1fr;gap:20px}
.sim label,.calc label{display:block;font-weight:600;margin:12px 0 4px;font-size:.9rem}
input,select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;font:inherit;background:#0b1328;color:var(--ink)}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:12px}
.kpi{border:1px solid var(--line);border-radius:12px;padding:12px;background:rgba(5,7,15,.5)}.kpi b{display:block;font-size:1.35rem;color:var(--good)}.kpi span{font-size:.8rem;color:var(--mut)}.kpi b.neg{color:var(--bad)}
svg.chart{width:100%;height:auto;display:block}
.line{fill:none;stroke-width:3;stroke-linecap:round;stroke-dasharray:var(--len,2000);stroke-dashoffset:var(--len,2000)}
.line.on{animation:draw 2.2s ease forwards}@keyframes draw{to{stroke-dashoffset:0}}
.note{border-left:3px solid var(--amber);background:rgba(255,193,90,.08);padding:12px 16px;border-radius:8px;font-size:.9rem;color:#e9dcc0;margin:16px 0}
.stackvid{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line)}.stackvid video{width:100%;display:block}
.split{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}
.calc{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.out{border:1px solid rgba(56,232,255,.35);border-radius:14px;padding:20px;background:rgba(56,232,255,.06)}.out .big{font-size:2.3rem;font-weight:800;color:var(--cyan);line-height:1.1}
.out dl{margin:14px 0 0;display:grid;grid-template-columns:1fr auto;gap:6px 12px;font-size:.95rem}.out dd{margin:0;text-align:right;font-weight:600}
.pay{display:flex;flex-wrap:wrap;gap:10px}.pay span{border:1px solid var(--line);border-radius:999px;padding:7px 16px;font-weight:600;background:var(--panel)}
ul.ck{padding-left:20px}ul.ck li{margin:7px 0}
footer{margin-top:64px;border-top:1px solid var(--line);padding:32px 0;color:var(--mut);font-size:.88rem}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}
@media(max-width:860px){.sim,.split,.calc{grid-template-columns:1fr}}
@media(max-width:700px){.menu-btn{display:block}nav{display:none;position:absolute;top:100%;left:0;right:0;background:#080d1c;border-bottom:1px solid var(--line);padding:10px 20px}nav.open{display:block}nav a{display:block;margin:0;padding:10px 0}.hero{min-height:min(78vh,620px)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.line{stroke-dashoffset:0}}
@media print{header.top,.btn,video{display:none}body{background:#fff;color:#000}}
.band{position:relative;margin:64px calc(50% - 50vw) 0;min-height:min(70vh,560px);display:flex;align-items:center;overflow:hidden;border-block:1px solid var(--line)}
.band video,.band img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.band:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,15,.88),rgba(5,7,15,.35) 70%,rgba(5,7,15,.1))}
.band .in{position:relative;z-index:2;max-width:1120px;width:100%;margin:0 auto;padding:40px 20px}
.band h2{max-width:640px}.band p{max-width:560px;color:#d3def7}
.keyart{border-radius:16px;border:1px solid var(--line);width:100%;height:auto;display:block;box-shadow:0 0 60px rgba(155,123,255,.25)}
.inst{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:18px 0}
.inst .card b{color:var(--cyan)}.tag{display:inline-block;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:999px;border:1px solid var(--line);color:var(--amber);margin-top:6px}
.mix{display:grid;grid-template-columns:1fr 1fr;gap:20px}.mixrow{display:grid;grid-template-columns:1fr 90px;gap:10px;align-items:center;margin:8px 0}.mixrow span{font-size:.92rem}
.meter{height:10px;border-radius:6px;background:rgba(120,160,255,.15);overflow:hidden;margin:6px 0 12px}.meter i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--pink));width:0;transition:width .4s}
@media(max-width:860px){.mix{grid-template-columns:1fr}}
.progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:30;background:linear-gradient(90deg,var(--cyan),var(--violet),var(--pink))}
body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(120,160,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(120,160,255,.045) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(#000,transparent 85%)}
.sectbg{position:relative;isolation:isolate}
.sectbg:before{content:"";position:absolute;inset:24px -20px 0;z-index:-1;background:linear-gradient(180deg,var(--bg),rgba(5,7,15,.72) 40%,var(--bg)),var(--bgimg) center/cover;opacity:.55;border-radius:20px}
.card{transition:transform .25s,border-color .25s,box-shadow .25s}.card:hover{transform:translateY(-4px)}
.stat b,h1 em{filter:drop-shadow(0 0 18px rgba(56,232,255,.25))}
@media(max-width:700px){.sectbg:before{inset:24px -20px 0}}
.price{font-size:2rem;font-weight:800;color:var(--cyan);line-height:1.1;margin:6px 0}.price small{font-size:.9rem;color:var(--mut);font-weight:600}
.draftnote{font-weight:700;color:var(--amber)}
button{font:inherit}
.card.rec{border-color:rgba(56,232,255,.6);box-shadow:0 0 36px rgba(56,232,255,.18)}
@media(max-width:700px){.tw table{min-width:560px}#plantable{min-width:820px}th,td{padding:10px 12px}}

.story{max-width:960px;margin-top:18px}.story-stage{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#02040a;aspect-ratio:16/9}
.story-stage video{width:100%;height:100%;object-fit:cover;display:block;cursor:pointer}
.story-cap{position:absolute;left:0;right:0;bottom:0;padding:44px 18px 14px;background:linear-gradient(transparent,rgba(2,4,10,.88));display:flex;flex-direction:column;gap:2px;pointer-events:none}
.story-cap strong{color:#38e8ff;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.story-cap span{font-size:1.05rem;font-weight:600}
.story-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;border:0;font-size:1.5rem;color:#02040a;background:linear-gradient(135deg,#38e8ff,#9b7bff);cursor:pointer;box-shadow:0 0 30px rgba(56,232,255,.45)}.story-play[hidden]{display:none}
.story-nav{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.story-nav button{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:transparent;color:inherit;font:inherit;cursor:pointer}.story-nav button.on{background:linear-gradient(135deg,#38e8ff,#9b7bff);color:#02040a;border-color:transparent;font-weight:700}
@media(max-width:700px){.story-cap{padding:30px 12px 10px}.story-cap span{font-size:.9rem}}

.btn.pulse{border-color:#38e8ff;animation:btnpulse 2s ease-in-out infinite}
@keyframes btnpulse{0%,100%{box-shadow:0 0 0 0 rgba(56,232,255,.55)}50%{box-shadow:0 0 0 12px rgba(56,232,255,0);}}
@media(prefers-reduced-motion:reduce){.btn.pulse{animation:none;box-shadow:0 0 14px rgba(56,232,255,.45)}}
@media(max-width:700px){.story-nav{gap:6px;flex-wrap:nowrap}.story-nav button{flex:1 1 0;min-width:0;width:auto;height:36px}}

.story-stage.gold{border-color:rgba(255,200,87,.45);box-shadow:0 0 40px rgba(255,190,70,.12)}.story-stage.gold .story-cap strong{color:#ffc857}
.story-stage.gold .story-play{background:linear-gradient(135deg,#ffd978,#c98a1b);box-shadow:0 0 30px rgba(255,200,87,.5)}
#priv .story-nav button.on{background:linear-gradient(135deg,#ffd978,#c98a1b)}
