:root{--bg:#140a30;--bg2:#1d1042;--ink:#efeaff;--mute:#a79fcb;--pink:#ff2e9a;--cyan:#22e4f0;--amber:#ffb020;--line:#3a2a73}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 "Hind",system-ui,sans-serif}
h1,h2,h3{font-family:"Rajdhani",system-ui,sans-serif;line-height:1.1;margin:0 0 .5em;letter-spacing:.01em}
h1{font-size:clamp(3rem,10vw,6.5rem);font-weight:700}h2{font-size:clamp(2rem,5vw,3rem)}h3{font-size:1.4rem;color:var(--cyan)}
a{color:var(--cyan)}:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
nav{position:sticky;top:0;z-index:5;background:#140a30ee;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);display:flex;gap:1rem;overflow-x:auto;padding:.7rem 1rem;white-space:nowrap}
nav b{font-family:Rajdhani,sans-serif;font-size:1.3rem;color:var(--pink);margin-right:auto}nav a{text-decoration:none;color:var(--ink)}
.hero{position:relative;min-height:88vh;display:flex;flex-direction:column;justify-content:center;padding:4rem 1.2rem 14rem;overflow:hidden}
.hero img{position:absolute;inset:auto 0 0 0;width:100%;height:50%;object-fit:cover;object-position:bottom}
.hero>*{position:relative}.hero h1 span{color:var(--pink);text-shadow:0 0 28px var(--pink)}
.hero p{max-width:34rem;color:var(--mute);font-size:1.15rem}
.btn{display:inline-block;background:var(--pink);color:#fff;padding:.8rem 1.5rem;border-radius:4px;text-decoration:none;font-weight:600;margin:.4rem .5rem .4rem 0}.btn.o{background:none;border:2px solid var(--cyan);color:var(--cyan)}
section{padding:4.5rem 1.2rem}section>*{max-width:1040px;margin-left:auto;margin-right:auto}section.alt{background:var(--bg2)}
.lead{color:var(--mute);max-width:42rem}
.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{border:1px solid var(--line);border-left:4px solid var(--pink);padding:1.1rem 1.2rem;background:#1a0e3a}
.card:nth-child(2n){border-left-color:var(--cyan)}.card:nth-child(3n){border-left-color:var(--amber)}
.card p,.card li{color:var(--mute);margin:.3em 0}.card ul{padding-left:1.1rem;margin:0}
.tw{overflow-x:auto;margin:1rem 0}table{border-collapse:collapse;width:100%;min-width:480px}
th,td{text-align:left;padding:.6rem .8rem;border-bottom:1px solid var(--line)}th{color:var(--amber);font-family:Rajdhani,sans-serif;font-size:1.1rem}
.tot td{font-weight:700;color:var(--cyan)}
svg.arch{width:100%;height:auto;background:#10082a;border:1px solid var(--line)}
.calc{border:1px solid var(--cyan);padding:1.2rem;margin-top:1rem}.calc input{width:100%;accent-color:var(--pink)}.calc output{display:block;font:700 1.6rem Rajdhani,sans-serif;color:var(--amber)}
.tl{border-left:3px solid var(--pink);padding-left:1.2rem}.tl h3{margin-top:1.2rem}
.note{color:var(--amber);font-size:.95rem}
footer{text-align:center;padding:3rem 1rem;color:var(--mute);border-top:1px solid var(--line)}
@media (prefers-reduced-motion:no-preference){.hero h1 span{animation:glow 2.4s ease-in-out infinite alternate}@keyframes glow{to{text-shadow:0 0 6px var(--pink)}}}

.top .banner{display:block;width:100%;height:auto}
.intro{max-width:1040px;margin:auto;padding:2rem 1.2rem;display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}
.intro .logo{width:170px;height:170px;flex:none}.intro p{color:var(--mute);font-size:1.15rem;margin-top:0;max-width:34rem}
.how{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:1.5rem 0 2.5rem}
.lesson{display:grid;gap:1.2rem;grid-template-columns:1fr;align-items:center;margin:2.5rem 0}
.lesson figure{margin:0;border:2px solid var(--line);box-shadow:0 0 22px #ff2e9a33}.lesson img{display:block;width:100%;height:auto}
.lesson p{color:var(--mute);margin:0}.lesson h3{margin-bottom:.3em}
@media(min-width:800px){.lesson{grid-template-columns:1.2fr 1fr}.lesson:nth-of-type(even) figure{order:2}}

/* ---- v3 investor edition ---- */
#bar{position:fixed;top:0;left:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--pink),var(--amber),var(--cyan));z-index:9}
nav{top:0}nav b img{height:26px;vertical-align:middle;margin-right:.4rem}
.bn{position:relative;overflow:hidden;background:#000}.bn .banner{transform-origin:60% 50%;animation:kb 22s ease-in-out infinite alternate}
@keyframes kb{to{transform:scale(1.09)}}
.scan{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0 45%,#22e4f022 50%,transparent 55% 100%);background-size:100% 200%;animation:sc 5s linear infinite;pointer-events:none}
@keyframes sc{from{background-position:0 -100%}to{background-position:0 100%}}
.intro h1{font-size:clamp(2rem,6vw,3.6rem);color:var(--ink)}.intro .logo{animation:fl 5s ease-in-out infinite;filter:drop-shadow(0 0 18px #ff2e9a88)}
@keyframes fl{50%{transform:translateY(-10px)}}
.kpis{max-width:1040px;margin:0 auto;padding:0 1.2rem 2rem;display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.kpis div{border:1px solid var(--line);padding:1rem;text-align:center;background:#1a0e3a}.kpis b{display:block;font:700 2.6rem Rajdhani,sans-serif;color:var(--cyan);text-shadow:0 0 14px #22e4f088}.kpis span{color:var(--mute);font-size:.95rem}
.marq{overflow:hidden;border-block:1px solid var(--line);background:#0f0726;white-space:nowrap}.marq div{display:inline-block;padding:.7rem 0;animation:mq 30s linear infinite;font:600 1.1rem Rajdhani,sans-serif;color:var(--pink)}.marq span{margin:0 1.4rem}.marq span:nth-child(even){color:var(--cyan)}
@keyframes mq{to{transform:translateX(-50%)}}
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.js .rv.in{opacity:1;transform:none}
.card{transition:transform .25s,box-shadow .25s}.card:hover{transform:translateY(-4px);box-shadow:0 0 24px #ff2e9a44}
.lesson figure{overflow:hidden}.lesson img{transition:transform .8s}.lesson:hover img{transform:scale(1.06)}
.two{display:grid;gap:2rem;grid-template-columns:1fr;align-items:center}@media(min-width:800px){.two{grid-template-columns:1fr 1fr}}
.loop{width:100%;max-width:380px;margin:auto;display:block}.ring{transform-origin:180px 180px;animation:rot 24s linear infinite}@keyframes rot{to{transform:rotate(360deg)}}
.pk{filter:drop-shadow(0 0 5px #22e4f0)}
.arch path.f{stroke-dasharray:6 6;animation:fw 1s linear infinite}@keyframes fw{to{stroke-dashoffset:-12}}
.sim{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:800px){.sim{grid-template-columns:1fr 1fr}}
.sim label{display:block;color:var(--mute);font-size:.95rem;margin:.6rem 0 0}.sim label b{color:var(--ink)}.sim input[type=range]{width:100%;accent-color:var(--pink)}
.res{border:1px solid var(--cyan);padding:1.2rem;background:#1a0e3a}.res .big{font:700 2.4rem Rajdhani,sans-serif}.pos{color:#4dffa0}.neg{color:#ff6b8b}
.bars div{height:14px;margin:.3rem 0 .8rem;background:#2a1a5a}.bars i{display:block;height:100%;width:0;transition:width .6s}
.sc button{background:none;border:1px solid var(--pink);color:var(--ink);padding:.45rem .9rem;margin:0 .4rem .4rem 0;font:inherit;cursor:pointer}.sc button:hover,.sc button.on{background:var(--pink)}
.donut{width:100%;max-width:300px;margin:auto;display:block}.donut circle{fill:none;stroke-width:34;transition:stroke-dasharray 1.4s ease}
.lg{list-style:none;padding:0;margin:0}.lg li{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0;border-bottom:1px solid var(--line)}.lg i{display:inline-block;width:12px;height:12px;margin-right:.6rem}
.tl{position:relative;border:0;padding-left:2rem}.tl::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--line)}.tl::after{content:"";position:absolute;left:0;top:0;width:4px;height:calc(var(--p,0)*100%);background:linear-gradient(var(--pink),var(--cyan));box-shadow:0 0 12px var(--pink)}
.tl .ph{position:relative;margin:0 0 2rem}.tl .ph::before{content:"";position:absolute;left:-2.5rem;top:.5rem;width:16px;height:16px;border-radius:50%;background:var(--bg);border:3px solid var(--pink)}
.tl .k{color:var(--amber);font-size:.95rem}
details{border:1px solid var(--line);margin:.6rem 0;background:#1a0e3a}summary{cursor:pointer;padding:.9rem 1.1rem;font:700 1.2rem Rajdhani,sans-serif;color:var(--cyan)}details p{margin:0;padding:0 1.1rem 1rem;color:var(--mute)}details[open] summary{color:var(--pink)}
.cta{text-align:center}.cta h2{font-size:clamp(2rem,6vw,3.4rem)}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.js .rv{opacity:1;transform:none}}
