:root{--bg:#05080f;--bg2:#0a1020;--card:#0c1426;--card2:#101a30;--line:rgba(140,175,255,.10);--line2:rgba(150,185,255,.2);--tx:#eef3ff;--mute:#97a4c0;--mute2:#6f7c99;
--bl:#2f7bff;--bl2:#5b9bff;--yl:#ffd21f;--am:#ffb21a;--red:#e8392b;--ok:#3ddc84;--r:22px;--hh:76px;
--fd:'Bricolage Grotesque',Arial Black,system-ui,sans-serif;--fb:'Plus Jakarta Sans',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;--fm:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
--grad:linear-gradient(95deg,var(--yl),#ffe58a 40%,var(--bl2) 75%,var(--bl));--gy:linear-gradient(95deg,#fff0a6,var(--yl) 45%,var(--am))}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--hh) + 10px)}
body{background:var(--bg);color:var(--tx);font:400 16.5px/1.62 var(--fb);overflow-x:clip;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}
svg{display:block}
.wrap{width:min(1240px,100% - 40px);margin-inline:auto}
h1,h2,h3{font-family:var(--fd);font-weight:800;line-height:1.02;letter-spacing:-.025em}
h1 em,h2 em{font-style:normal;background:var(--gy);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.04em;filter:drop-shadow(0 0 22px rgba(255,210,31,.25))}
h2{font-size:clamp(34px,4.5vw,62px)}
.k{font:600 12.5px var(--fm);letter-spacing:.16em;text-transform:uppercase;color:var(--bl2);display:flex;align-items:center;gap:10px}
.k i{width:26px;height:2px;background:linear-gradient(90deg,var(--bl),var(--yl));display:inline-block;box-shadow:0 0 12px rgba(47,123,255,.8)}
.lead{font-size:clamp(17px,1.35vw,19.5px);color:#cfd8ec}
p{color:#b9c4dc}
.sec{position:relative;padding:clamp(80px,10vw,150px) 0}
.hide-m{display:inline-flex;align-items:center;gap:6px}
::selection{background:var(--bl);color:#fff}

/* ---------- living background: night glow, PCB traces, electrons ---------- */
.bgfx{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(1100px 760px at 88% -12%,#0f1f44 0,transparent 60%),radial-gradient(900px 700px at -12% 112%,#1a1430 0,transparent 60%),var(--bg)}
.bgfx .glow{position:absolute;width:70vmax;height:70vmax;left:50%;top:40%;margin:-35vmax 0 0 -35vmax;background:radial-gradient(closest-side,rgba(47,123,255,.10),transparent);animation:gl 20s ease-in-out infinite alternate;will-change:transform}
@keyframes gl{to{transform:translate3d(-14vw,10vh,0) scale(1.15)}}
.bgfx .pcb{position:absolute;inset:-200px 0 0;opacity:.55;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400' fill='none' stroke='%235b9bff' stroke-opacity='.13' stroke-width='1.4'%3E%3Cpath d='M0 60h90l30 30h120l20-20h140M40 0v40l20 20M200 90v80l-30 30H60l-30 30v170M260 70V0M330 70v90l30 30h40M120 400v-90l40-40h110l30-30v-60M400 300h-60l-20 20v80M0 340h50l20-20'/%3E%3Cg fill='%235b9bff' fill-opacity='.22' stroke='none'%3E%3Ccircle cx='90' cy='60' r='3.5'/%3E%3Ccircle cx='240' cy='90' r='3.5'/%3E%3Ccircle cx='60' cy='200' r='3.5'/%3E%3Ccircle cx='330' cy='160' r='3.5'/%3E%3Ccircle cx='160' cy='270' r='3.5'/%3E%3Ccircle cx='340' cy='300' r='3.5'/%3E%3C/g%3E%3C/svg%3E");background-size:400px 400px;-webkit-mask:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent);mask:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent);animation:pc 60s linear infinite;will-change:transform}
@keyframes pc{to{transform:translate3d(0,200px,0)}}
#emb{position:absolute;inset:0;width:100%;height:100%}

/* ---------- buttons, chips ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 24px;border-radius:999px;font:700 15.5px var(--fb);letter-spacing:.01em;border:1px solid transparent;cursor:pointer;transition:transform .25s,box-shadow .25s,background .25s,border-color .25s;white-space:nowrap;position:relative;overflow:hidden}
.btn svg{width:19px;height:19px;flex:none}
.btn.pri{background:linear-gradient(100deg,#ffe36b,var(--yl) 45%,#ffb81a);color:#151000;box-shadow:0 10px 30px -8px rgba(255,200,30,.6),inset 0 1px 0 rgba(255,255,255,.5)}
.btn.pri::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.6) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s}
.btn.pri:hover::after{transform:translateX(120%)}
.btn.gh{background:rgba(120,160,255,.06);border-color:var(--line2);color:var(--tx)}
.btn.gh:hover{border-color:rgba(91,155,255,.7);background:rgba(47,123,255,.14)}
.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0) scale(.98)}
.btn.sm{padding:10px 16px;font-size:14px}.btn.sm svg{width:16px;height:16px}
.ctas{display:flex;flex-wrap:wrap;gap:12px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(5,8,15,.6);border:1px solid var(--line2);font:600 13px var(--fb);color:#dbe3f5}
.chip svg{width:15px;height:15px;color:var(--yl)}
.stars{display:inline-flex;gap:2px;color:var(--yl)}.stars svg{width:16px;height:16px}
:focus-visible{outline:2px solid var(--yl);outline-offset:3px;border-radius:6px}
.logo{width:44px;height:44px;flex:none;filter:drop-shadow(0 0 10px rgba(232,57,43,.45))}

/* ---------- topbar + header ---------- */
.topbar{position:relative;z-index:30;background:#03050a;border-bottom:1px solid var(--line);font:500 12.5px var(--fm);color:var(--mute)}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:34px;gap:12px}
.topbar a:hover{color:var(--tx)}
.tb-r{display:flex;gap:20px;align-items:center;flex:none}
.st{display:inline-flex;align-items:center;gap:8px;min-width:0}.st>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st i{width:8px;height:8px;border-radius:50%;flex:none;background:var(--ok);box-shadow:0 0 0 3px rgba(61,220,132,.2);animation:pu 2s infinite}
@keyframes pu{50%{box-shadow:0 0 0 6px rgba(61,220,132,0)}}
.hdr{position:sticky;top:0;z-index:40;height:var(--hh);transition:background .35s,border-color .35s;border-bottom:1px solid transparent}
.hdr.sc{background:rgba(5,8,15,.84);border-color:var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;height:100%;gap:20px}
.hdr .pg{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:linear-gradient(90deg,var(--bl),var(--yl));transform-origin:0 50%;transform:scaleX(var(--pg,0));box-shadow:0 0 12px rgba(255,210,31,.7)}
.brand{display:flex;align-items:center;gap:12px}
.brand b{display:block;font:800 21px/1 var(--fd);letter-spacing:.01em;color:#fff}
.brand b em{font-style:normal;color:var(--bl2);text-shadow:0 0 16px rgba(47,123,255,.7)}
.brand small{display:block;font:500 11.5px var(--fm);color:var(--mute);letter-spacing:.08em;margin-top:4px;text-transform:uppercase}
.nav{display:flex;gap:4px}
.nav a{padding:9px 13px;border-radius:999px;font:600 14.5px var(--fb);color:#d3dbee;transition:.25s}
.nav a:hover{color:#fff;background:rgba(120,160,255,.1)}
.hcta{display:flex;align-items:center;gap:10px}
.burger{display:none;width:46px;height:46px;border-radius:14px;border:1px solid var(--line2);background:rgba(120,160,255,.06);cursor:pointer;position:relative}
.burger span,.burger span::before,.burger span::after{position:absolute;left:13px;width:20px;height:2px;background:var(--tx);border-radius:2px;transition:.3s;content:""}
.burger span{top:22px}.burger span::before{top:-7px;left:0}.burger span::after{top:7px;left:0}
.burger[aria-expanded="true"] span{background:transparent}.burger[aria-expanded="true"] span::before{transform:translateY(7px) rotate(45deg)}.burger[aria-expanded="true"] span::after{transform:translateY(-7px) rotate(-45deg)}
.mnav{position:fixed;inset:0;z-index:35;background:#05080f;padding:calc(var(--hh) + 50px) 24px 30px;display:flex;flex-direction:column;gap:6px;opacity:0;visibility:hidden;transition:.35s}
.mnav.on{opacity:1;visibility:visible}
.mnav a:not(.btn){font:800 34px/1.15 var(--fd);padding:8px 0;border-bottom:1px solid var(--line)}
.mnav .btn{margin-top:22px}

/* ---------- hero ---------- */
.hero{position:relative;height:640vh;margin-top:calc(-1 * var(--hh))}
.hero .stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:var(--bg)}
#gl{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .8s}
#gl.on{opacity:1}
.poster{position:absolute;inset:0;background:#05080f center/cover no-repeat;transition:opacity .8s}
.poster.d{background-image:url(m/poster-d.webp)}.poster.m{display:none;background-image:url(m/poster-m.webp)}
#gl.on~.poster{opacity:0}
.hero .shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(5,8,15,.9) 0,rgba(5,8,15,.55) 30%,transparent 56%),linear-gradient(0deg,rgba(5,8,15,.8),transparent 24%),linear-gradient(180deg,rgba(5,8,15,.7),transparent 20%)}
.intro{position:absolute;left:0;right:0;top:calc(var(--hh) + 9vh);transition:opacity .5s,transform .6s cubic-bezier(.2,.8,.2,1)}
.intro.off{opacity:0;transform:translateY(-40px);pointer-events:none}
.intro .wrap>div{max-width:610px}.intro .k{white-space:nowrap}
.intro h1{font-size:clamp(46px,5.4vw,84px);margin:18px 0 22px;text-shadow:0 8px 40px rgba(0,0,0,.5)}
.intro h1 .ln{display:block}
.intro p{color:#d6def0;font-size:clamp(16.5px,1.4vw,19px);max-width:530px;margin-bottom:28px}
.hint{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);font:600 11.5px var(--fm);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);display:flex;flex-direction:column;align-items:center;gap:10px;transition:opacity .4s}
.hint i{width:24px;height:38px;border:2px solid var(--line2);border-radius:14px;position:relative}.hint i::after{content:"";position:absolute;left:50%;top:7px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--yl);box-shadow:0 0 8px var(--yl);animation:wh 1.6s infinite}
@keyframes wh{60%{transform:translateY(12px);opacity:0}61%{transform:none;opacity:0}100%{opacity:1}}
.hint.off{opacity:0}
.beats{list-style:none;position:absolute;left:0;right:0;top:52%;pointer-events:none}
.beat{position:absolute;left:max(20px,calc((100% - 1240px)/2));top:0;width:min(480px,40vw);opacity:0;transform:translate3d(-24px,-46%,0);filter:blur(6px);transition:opacity .45s,transform .7s cubic-bezier(.16,1,.3,1),filter .5s}
.beat.on{opacity:1;transform:translate3d(0,-50%,0);filter:none;pointer-events:auto}.beat.past{transform:translate3d(0,-56%,0)}
.beat .card{position:relative;background:linear-gradient(160deg,rgba(14,22,40,.94),rgba(6,10,20,.92));border:1px solid var(--line2);border-radius:var(--r);padding:28px 30px;box-shadow:0 30px 70px rgba(0,0,0,.5);overflow:hidden}
.beat .card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--yl),var(--bl));box-shadow:0 0 18px rgba(255,210,31,.7)}
.beat .card::after{content:"";position:absolute;left:0;top:-30%;width:3px;height:30%;background:#fff;box-shadow:0 0 14px #fff,0 0 30px var(--yl);opacity:0}
.beat.on .card::after{animation:zap 1.1s .15s cubic-bezier(.4,0,.2,1)}
@keyframes zap{0%{opacity:1;top:-30%}100%{opacity:0;top:100%}}
.beat .n{font:600 12.5px var(--fm);color:var(--bl2);letter-spacing:.12em;text-transform:uppercase;display:flex;gap:10px;align-items:center}
.beat .n b{font:800 15px var(--fd);color:#151000;background:var(--yl);border-radius:6px;padding:1px 7px;box-shadow:0 0 14px rgba(255,210,31,.5)}
.beat h2{font-size:clamp(30px,2.9vw,44px);margin:12px 0 14px}
.beat p{color:#cbd5ea;font-size:16px}
.beat .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}
.beat .tags span{font:600 12px var(--fm);letter-spacing:.04em;padding:6px 11px;border-radius:8px;background:rgba(47,123,255,.12);border:1px solid rgba(91,155,255,.35);color:#cfe0ff}
.beat .ctas{margin-top:20px}
/* multimeter-style HUD */
.hud{position:absolute;right:max(20px,calc((100% - 1240px)/2));bottom:30px;display:flex;align-items:stretch;border-radius:18px;background:rgba(5,9,18,.86);border:1px solid var(--line2);opacity:0;transform:translateY(14px);transition:.5s;font-family:var(--fm);overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.45)}
.hud.on{opacity:1;transform:none}
.hud .scope{width:132px;border-right:1px solid var(--line);background:repeating-linear-gradient(90deg,rgba(91,155,255,.08) 0 1px,transparent 1px 22px),repeating-linear-gradient(0deg,rgba(91,155,255,.08) 0 1px,transparent 1px 14px);display:flex;align-items:center;padding:0 6px}
.hud .scope svg{width:100%;height:46px;overflow:visible}
.hud .scope path{fill:none;stroke:var(--yl);stroke-width:2;filter:drop-shadow(0 0 4px var(--yl));vector-effect:non-scaling-stroke}
.hud .rd{padding:11px 18px;min-width:220px;display:flex;flex-direction:column;justify-content:center}
.hud .rd span{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.hud .rd b{font:600 26px/1.15 var(--fm);font-variant-numeric:tabular-nums;color:#dff0ff;text-shadow:0 0 14px rgba(91,155,255,.6);margin:3px 0}
.hud .rd b.r{color:#ff6b5a;text-shadow:0 0 14px rgba(255,60,40,.6)}.hud .rd b.g{color:#5dff9d;text-shadow:0 0 14px rgba(60,255,140,.55)}.hud .rd b.y{color:var(--yl);text-shadow:0 0 14px rgba(255,210,31,.6)}
.hud .rd small{font-size:11.5px;color:var(--mute2)}
.hud .rd small.ok{color:var(--ok)}
/* breaker progress */
.brks{position:absolute;left:max(20px,calc((100% - 1240px)/2));bottom:34px;display:flex;gap:8px;align-items:center;opacity:0;transition:.4s}
.brks.on{opacity:1}
.brks i{width:20px;height:34px;border-radius:5px;background:#0b1222;border:1px solid var(--line2);position:relative;overflow:hidden}
.brks b{position:absolute;left:3px;right:3px;height:14px;bottom:3px;border-radius:3px;background:#3a4560;transition:transform .35s cubic-bezier(.5,1.6,.4,1),background .3s,box-shadow .3s}
.brks i.on b{transform:translateY(-12px);background:var(--yl);box-shadow:0 0 12px rgba(255,210,31,.8)}
.brks em{font:600 12px var(--fm);color:var(--mute);font-style:normal;margin-left:8px;letter-spacing:.1em}

/* ---------- marquee ---------- */
.mq{position:relative;overflow:hidden;border-block:1px solid var(--line);background:linear-gradient(90deg,#050a16,#0a1430,#050a16);padding:16px 0}
.mq .tr{display:flex;width:max-content;animation:mq 40s linear infinite}
.mq span{font:800 clamp(20px,2.2vw,30px) var(--fd);padding:0 26px;white-space:nowrap;color:#dbe6ff;display:flex;align-items:center;gap:26px}
.mq span::after{content:"";width:12px;height:20px;background:var(--yl);clip-path:polygon(60% 0,0 58%,45% 58%,30% 100%,100% 38%,55% 38%);filter:drop-shadow(0 0 6px var(--yl))}
@keyframes mq{to{transform:translateX(-50%)}}

/* ---------- reveal ---------- */
[data-rv]{opacity:0;transform:translate3d(0,26px,0);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0)*70ms)}
[data-rv].in{opacity:1;transform:none}
.splt .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.splt .w>span{display:inline-block;transform:translate3d(0,105%,0);transition:transform .8s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d)*45ms)}
.splt.in .w>span{transform:none}
.splt em .w>span{background:var(--gy);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- about ---------- */
.ab{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,5vw,80px);align-items:center}
.abt h2{margin:16px 0 22px}.abt p+p{margin-top:14px}
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:34px}
.sx{padding:18px 18px 16px;border-radius:18px;background:linear-gradient(160deg,var(--card2),var(--card));border:1px solid var(--line)}
.sx .seg{display:flex;font:600 clamp(30px,3vw,42px)/1 var(--fm);color:#1a2234;letter-spacing:-.02em}
.sx .sg{font-style:normal;transition:color .2s,text-shadow .2s}
.sx.lit .sg{color:var(--yl);text-shadow:0 0 18px rgba(255,210,31,.55)}
.sx span{display:block;font-size:13.5px;color:var(--mute);margin-top:8px;line-height:1.4}
.abp{position:relative;border-radius:26px;overflow:hidden;border:1px solid var(--line2);box-shadow:0 40px 80px rgba(0,0,0,.5)}
.abp img{width:100%;aspect-ratio:4/4.6;object-fit:cover}
.abp figcaption{position:absolute;left:14px;right:14px;bottom:14px;padding:12px 14px;border-radius:14px;background:rgba(5,8,15,.86);font-size:13.5px;color:#d5def0;display:flex;flex-direction:column;gap:4px}
.rec{font:600 11px var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--bl2);display:flex;align-items:center;gap:7px}.rec i{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 8px var(--red);animation:pu2 1.4s infinite}
@keyframes pu2{50%{opacity:.25}}

/* ---------- services: the board, live bus + breakers ---------- */
.shd{max-width:780px;margin-bottom:clamp(40px,6vw,70px)}.shd h2{margin:16px 0 18px}
.board{position:relative;padding-left:70px}
.bus{position:absolute;left:22px;top:0;bottom:0;width:6px;border-radius:4px;background:#0d1628;border:1px solid var(--line)}
.bus i{position:absolute;left:-1px;right:-1px;top:0;height:var(--bp,0%);border-radius:4px;background:linear-gradient(180deg,var(--bl),var(--yl));box-shadow:0 0 16px rgba(255,210,31,.55)}
.bus b{position:absolute;left:50%;top:var(--bp,0%);width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;background:radial-gradient(circle,#fff 0,#fff3b0 25%,rgba(255,210,31,.5) 45%,transparent 70%);opacity:var(--bo,0)}
.svs{display:flex;flex-direction:column;gap:clamp(28px,4vw,46px)}
.sv{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(22px,3.5vw,48px);align-items:center;padding:clamp(18px,2.4vw,26px);border-radius:28px;background:linear-gradient(160deg,rgba(16,26,48,.8),rgba(8,13,26,.8));border:1px solid var(--line);transition:border-color .6s,box-shadow .6s}
.sv:nth-child(even){grid-template-columns:1fr 1.05fr}.sv:nth-child(even) .sh{order:2}
.sv::before{content:"";position:absolute;left:-49px;top:50%;width:48px;height:2px;background:#16223a}
.sv.on{border-color:rgba(255,210,31,.35);box-shadow:0 30px 70px -30px rgba(255,210,31,.25)}
.sv.on::before{background:var(--yl);box-shadow:0 0 10px var(--yl)}
.brk{position:absolute;left:-62px;top:calc(50% - 26px);width:26px;height:52px;border-radius:7px;background:#0b1222;border:1px solid var(--line2);z-index:2}
.brk .lev{position:absolute;left:4px;right:4px;bottom:5px;height:20px;border-radius:4px;background:#3a4560;transition:transform .45s cubic-bezier(.5,1.7,.4,1),background .3s,box-shadow .3s}
.brk em{position:absolute;left:50%;top:-18px;transform:translateX(-50%);font:600 9.5px var(--fm);letter-spacing:.1em;color:var(--mute2);font-style:normal}
.sv.on .brk .lev{transform:translateY(-18px);background:var(--yl);box-shadow:0 0 12px var(--yl)}
.sv.on .brk em{color:var(--yl)}
.sh{position:relative;border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#050810}
.sh img{width:100%;aspect-ratio:16/10.5;object-fit:cover;filter:brightness(.25) saturate(.2);transform:scale(1.04);transition:filter .3s,transform 1.4s cubic-bezier(.2,.8,.2,1)}
.sv.on .sh img{filter:none;transform:none;animation:flick 1s steps(1) 1}
@keyframes flick{0%{filter:brightness(.25) saturate(.2)}12%{filter:brightness(1.1)}18%{filter:brightness(.35) saturate(.4)}30%{filter:brightness(1)}36%{filter:brightness(.6)}48%,100%{filter:none}}
.sh .no{position:absolute;right:14px;top:10px;font:800 54px/1 var(--fd);color:rgba(255,255,255,.1);transition:color .6s,text-shadow .6s}
.sv.on .sh .no{color:rgba(255,210,31,.85);text-shadow:0 0 24px rgba(255,210,31,.5)}
.sb .ic{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:rgba(47,123,255,.12);border:1px solid rgba(91,155,255,.3);color:var(--bl2);transition:.5s}
.sv.on .sb .ic{background:rgba(255,210,31,.14);border-color:rgba(255,210,31,.45);color:var(--yl);box-shadow:0 0 24px rgba(255,210,31,.25)}
.sb .ic svg{width:26px;height:26px}
.sb h3{font-size:clamp(26px,2.4vw,34px);margin:16px 0 12px}
.sb ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:18px 0 20px}
.sb li{display:flex;gap:8px;align-items:flex-start;font-size:14.5px;color:#d4dcee;line-height:1.35}.sb li svg{width:17px;height:17px;color:var(--yl);flex:none;margin-top:1px}
.lnk{display:inline-flex;align-items:center;gap:8px;font:700 15px var(--fb);color:var(--yl)}.lnk svg{width:17px;height:17px;transition:transform .3s}.lnk:hover svg{transform:translateX(4px)}

/* ---------- shop: lamps power on ---------- */
.mgh{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:40px}
.mgh>div{max-width:760px}.mgh h2{margin:16px 0 18px}
.sw{flex:none;display:flex;flex-direction:column;align-items:center;gap:10px;background:none;border:0;cursor:pointer;color:var(--mute);font:600 12px var(--fm);letter-spacing:.12em;text-transform:uppercase}
.sw .plate{width:78px;height:110px;border-radius:16px;background:linear-gradient(160deg,#f3f4f6,#c9ccd3);box-shadow:0 18px 40px rgba(0,0,0,.5),inset 0 -3px 0 rgba(0,0,0,.15);display:grid;place-items:center}
.sw .rock{width:40px;height:66px;border-radius:9px;background:linear-gradient(180deg,#fdfdfd,#d9dce2 50%,#bfc3cb);box-shadow:inset 0 -14px 0 rgba(0,0,0,.08),0 3px 6px rgba(0,0,0,.25);transition:background .2s,box-shadow .2s;position:relative}
.sw .rock::after{content:"";position:absolute;left:50%;bottom:9px;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:#e8392b;opacity:.4}
.sw[aria-pressed="true"] .rock{background:linear-gradient(180deg,#bfc3cb,#d9dce2 50%,#fdfdfd);box-shadow:inset 0 14px 0 rgba(0,0,0,.08),0 -2px 6px rgba(0,0,0,.2)}
.sw[aria-pressed="true"] .rock::after{background:#ffd21f;opacity:1;box-shadow:0 0 8px #ffd21f}
.sw[aria-pressed="true"]{color:var(--yl)}
.lamps{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(150px,17vw,230px);grid-auto-flow:dense;gap:12px}
.lp{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:#03050a}
.lp.big{grid-column:span 2;grid-row:span 2}.lp.tall{grid-row:span 2}
.lp img{width:100%;height:100%;object-fit:cover;filter:brightness(.12) saturate(0) contrast(1.2);transform:scale(1.05);transition:filter .5s,transform 1.2s cubic-bezier(.2,.8,.2,1)}
.lamps.on .lp img{filter:none;transform:none}
.lamps.on .lp img{animation:tube 1.2s steps(1) 1;animation-delay:calc(var(--i)*90ms)}
@keyframes tube{0%{filter:brightness(.12) saturate(0)}10%{filter:brightness(.9)}14%{filter:brightness(.15) saturate(0)}26%{filter:brightness(1.1)}30%{filter:brightness(.3) saturate(.3)}42%,100%{filter:none}}
.lamps.on .lp{box-shadow:0 0 0 1px rgba(255,210,31,.12),0 20px 50px -20px rgba(255,190,60,.35)}
.lp .glare{position:absolute;inset:0;background:radial-gradient(400px 260px at var(--mx,50%) var(--my,30%),rgba(255,230,150,.18),transparent 60%);opacity:0;transition:opacity .4s;pointer-events:none}
.lp:hover .glare{opacity:1}
.mgf{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:24px;padding:16px 18px;border-radius:18px;background:rgba(10,16,32,.8);border:1px solid var(--line)}
.mgf>span{display:flex;align-items:center;gap:8px;font-weight:600;margin-right:auto}.mgf>span svg{width:18px;height:18px;color:var(--yl)}

/* ---------- non-stop ---------- */
.ns{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,90px);align-items:center}
.ns h2{margin:16px 0 20px}
.clock{position:relative;max-width:400px;width:100%;margin-inline:auto}
.clock svg{width:100%;height:auto;overflow:visible}
.clock .c0{fill:rgba(10,16,32,.85);stroke:#14203a;stroke-width:14}
.clock .c1{fill:none;stroke:url(#none);stroke:var(--yl);stroke-width:14;stroke-linecap:round;filter:drop-shadow(0 0 10px rgba(255,210,31,.7));transform:rotate(-90deg);transform-origin:120px 120px;stroke-dasharray:629;stroke-dashoffset:629;transition:stroke-dashoffset 2.2s cubic-bezier(.3,.7,.2,1)}
.clock.in .c1{stroke-dashoffset:0}
.clock #ticks line{stroke:rgba(200,215,255,.35);stroke-width:2}.clock #ticks line.b{stroke:rgba(255,255,255,.8);stroke-width:3}
.clock #ticks text{fill:var(--mute);font:600 11px var(--fm);text-anchor:middle;dominant-baseline:middle}
.clock #hand path{stroke:#fff;stroke-width:4;stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(255,255,255,.5))}
.clock #hand{transform-origin:120px 120px;transition:transform 1.6s cubic-bezier(.3,.7,.2,1)}
.clock .hub{fill:var(--red);filter:drop-shadow(0 0 6px var(--red))}
.cv{text-align:center;margin-top:16px}
.cv b{display:block;font:600 clamp(26px,3vw,36px)/1 var(--fm);color:#fff}.cv span{font-size:12.5px;color:var(--ok);font-weight:600}
.story{margin:26px 0 28px;padding:20px 22px;border-left:3px solid var(--yl);border-radius:0 16px 16px 0;background:rgba(255,210,31,.06)}
.story q{display:block;font:500 clamp(17px,1.4vw,20px)/1.5 var(--fb);color:#f1f4fb;quotes:"„" "”"}
.story cite{display:block;margin-top:10px;font:600 12px var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);font-style:normal}
.map{position:relative;margin-top:clamp(40px,6vw,70px);border-radius:24px;overflow:hidden;border:1px solid var(--line2);height:clamp(240px,28vw,360px);background:#060b17}
.mapart,.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mapart svg{width:100%;height:100%}
.rd0{fill:none;stroke:#1b2846;stroke-width:16}.rd1{fill:none;stroke:#16223b;stroke-width:12}.rv0{fill:none;stroke:#132d55;stroke-width:9;opacity:.8}
.pulse{fill:rgba(255,210,31,.15);stroke:rgba(255,210,31,.6);animation:pl 2.2s infinite;transform-origin:center;transform-box:fill-box}
@keyframes pl{0%{transform:scale(.3);opacity:1}100%{transform:scale(1.4);opacity:0}}
.lbl{position:absolute;left:calc(51.5% + 26px);top:40%;font:800 18px var(--fd);background:rgba(5,8,15,.88);border:1px solid var(--line2);padding:8px 14px;border-radius:12px}.lbl small{display:block;font:500 12px var(--fm);color:var(--mute)}
.map .ld{position:absolute;right:16px;bottom:16px}

/* ---------- steps ---------- */
.stepsl{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;position:relative}
.stepsl::before{content:"";position:absolute;left:30px;right:30px;top:30px;height:2px;background:#16223a}
.stepsl::after{content:"";position:absolute;left:30px;top:30px;height:2px;width:calc((100% - 60px)*var(--sp,0));background:linear-gradient(90deg,var(--bl),var(--yl));box-shadow:0 0 12px var(--yl);transition:width .2s linear}
.step{position:relative;z-index:1;opacity:.45;transition:opacity .5s}.step.in{opacity:1}
.gn{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;font:800 24px var(--fd);background:#0b1222;border:2px solid #1d2a46;transition:.5s;margin-bottom:18px}
.step.in .gn{background:var(--yl);color:#151000;border-color:#fff3a6;box-shadow:0 0 0 6px rgba(255,210,31,.12),0 0 28px rgba(255,210,31,.55)}
.step h3{font-size:22px;margin-bottom:8px}.step p{font-size:15px}

/* ---------- reviews ---------- */
.rvh{display:grid;grid-template-columns:300px 1fr;gap:clamp(30px,5vw,70px);align-items:center;margin-bottom:40px}
.rvh h2{margin:16px 0 16px}
.meter{padding:24px;border-radius:24px;background:linear-gradient(160deg,var(--card2),var(--card));border:1px solid var(--line2);text-align:center}
.mv b{font:600 64px/1 var(--fm);color:var(--yl);text-shadow:0 0 24px rgba(255,210,31,.5)}.mv span{font:600 14px var(--fm);color:var(--mute);margin-left:6px}
.bars{display:flex;gap:5px;justify-content:center;margin:16px 0 14px}
.bars i{width:16px;height:28px;border-radius:4px;background:#14203a;transition:background .2s,box-shadow .2s}
.bars i.on{background:var(--ok);box-shadow:0 0 10px rgba(61,220,132,.6)}.bars i.on:nth-child(n+7){background:var(--yl);box-shadow:0 0 10px rgba(255,210,31,.6)}
.meter .stars{justify-content:center}.meter p{font-size:13.5px;margin-top:8px;color:var(--mute)}
.rvs{columns:3 300px;column-gap:16px}
.rv{break-inside:avoid;margin-bottom:16px;padding:22px;border-radius:20px;background:linear-gradient(160deg,var(--card2),var(--card));border:1px solid var(--line);position:relative;overflow:hidden}
.rv::before{content:"";position:absolute;left:0;top:0;height:2px;width:0;background:linear-gradient(90deg,var(--bl),var(--yl));box-shadow:0 0 10px var(--yl);transition:width 1.1s cubic-bezier(.3,.7,.2,1) .2s}
.rv.in::before{width:100%}
.rv.big q{font-size:17.5px;color:#eef2fb}
.rv q{display:block;margin:12px 0 16px;color:#cfd8ec;quotes:"„" "”";font-size:15.5px;line-height:1.55}
.who{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--mute)}.who b{display:block;color:var(--tx);font-size:15px}
.av{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font:800 16px var(--fd);background:rgba(47,123,255,.18);color:var(--bl2);border:1px solid rgba(91,155,255,.35)}

/* ---------- contact ---------- */
.bk{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,5vw,70px);align-items:start}
.bkh h2{margin:16px 0 18px}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}
.cc{display:flex;align-items:center;gap:12px;padding:14px;border-radius:16px;background:rgba(12,20,38,.85);border:1px solid var(--line);transition:.3s;min-width:0}
.cc.wide{grid-column:1/-1}.cc:hover{border-color:rgba(255,210,31,.45);transform:translateY(-2px)}
.cc svg{width:22px;height:22px;color:var(--yl);flex:none}.cc span{min-width:0;font-weight:700;font-size:14.5px;overflow-wrap:anywhere;line-height:1.3}.cc small{display:block;font:500 11px var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-bottom:2px}
.locs{display:grid;gap:10px;margin-top:12px}
.loc{padding:16px 18px;border-radius:16px;border:1px solid var(--line);background:rgba(12,20,38,.6);display:flex;flex-direction:column;gap:4px}
.loc .lt{display:flex;align-items:center;gap:8px;font:600 11.5px var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}.loc .lt svg{width:16px;height:16px}.loc .lt.on{color:var(--ok)}
.loc b{font-size:16.5px}.loc a{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:14px;color:var(--yl)}.loc a svg{width:15px;height:15px}
.form{padding:clamp(20px,3vw,32px);border-radius:26px;background:linear-gradient(160deg,rgba(16,26,48,.92),rgba(8,13,26,.92));border:1px solid var(--line2);display:flex;flex-direction:column;gap:16px}
.brs{border:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.brs legend{font:600 12px var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--bl2);margin-bottom:10px}
.br input{position:absolute;opacity:0;pointer-events:none}
.br span{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;border:1px solid var(--line2);background:rgba(5,8,15,.5);font-weight:600;font-size:14.5px;cursor:pointer;transition:.25s;height:100%}
.br span svg{width:20px;height:20px;color:var(--mute);flex:none}
.br input:checked+span{border-color:var(--yl);background:rgba(255,210,31,.1);box-shadow:0 0 0 3px rgba(255,210,31,.12)}.br input:checked+span svg{color:var(--yl)}
.br input:focus-visible+span{outline:2px solid var(--yl);outline-offset:2px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.f{display:flex;flex-direction:column;gap:6px}.f>span{font-size:13px;font-weight:600;color:#c9d3e8}
.f input,.f select,.f textarea{width:100%;padding:13px 14px;border-radius:12px;border:1px solid var(--line2);background:#060b17;font-size:16px;transition:border-color .25s}
.f textarea{resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--yl)}
.f .bad{border-color:#ff5b4d}
.brp{display:flex;flex-direction:column;gap:12px}.brp[hidden]{display:none}
.cks{display:flex;flex-wrap:wrap;gap:8px}.cl{width:100%;font-size:13px;font-weight:600;color:#c9d3e8}
.ck input{position:absolute;opacity:0;pointer-events:none}
.ck span{display:inline-flex;padding:8px 13px;border-radius:999px;border:1px solid var(--line2);font-size:14px;cursor:pointer;transition:.2s;background:rgba(5,8,15,.5)}
.ck input:checked+span{border-color:var(--yl);background:rgba(255,210,31,.14);color:#fff3b8}
.ck input:focus-visible+span{outline:2px solid var(--yl);outline-offset:2px}
.err{color:#ff8a7c;font-size:14px;min-height:0}.err:empty{display:none}
.fbtn{display:flex;gap:10px;flex-wrap:wrap}
.fnote{font-size:12.5px;color:var(--mute2)}

/* ---------- final ---------- */
.fin{padding:clamp(80px,10vw,140px) 0;text-align:center;position:relative;overflow:hidden}
.finc{max-width:820px;margin-inline:auto;display:flex;flex-direction:column;align-items:center}
.fl .logo{width:96px;height:96px}
.fin h2{margin:22px 0 26px}
.bigtel{display:inline-block;font:600 clamp(40px,8vw,104px)/1 var(--fm);letter-spacing:-.03em;color:#2a3550;padding:10px 6px}
.fin .in .neon,.finc.in .neon{animation:neon 1.6s steps(1) .4s 1 forwards}
@keyframes neon{0%{color:#2a3550;text-shadow:none}8%{color:#fff;text-shadow:0 0 18px var(--yl),0 0 50px rgba(255,210,31,.6)}12%{color:#2a3550;text-shadow:none}22%{color:#fff8d0;text-shadow:0 0 18px var(--yl)}26%{color:#4a5570;text-shadow:none}40%,100%{color:#fff6c2;text-shadow:0 0 14px var(--yl),0 0 46px rgba(255,210,31,.55),0 0 90px rgba(255,180,30,.3)}}
.fin p{margin-top:18px;color:var(--mute);font-size:14.5px}

/* ---------- footer ---------- */
footer{border-top:1px solid var(--line);background:#03050a;padding:60px 0 28px}
.ft{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
.fdesc{margin-top:16px;font-size:14px;max-width:340px}
footer h4{font:600 12px var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--bl2);margin-bottom:14px}
footer ul{list-style:none;display:flex;flex-direction:column;gap:7px;font-size:14px;color:#b9c4dc}footer li.mt{margin-top:8px}footer a:hover{color:var(--yl)}
.legal{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;margin-top:44px;padding-top:22px;border-top:1px solid var(--line);font-size:13px;color:var(--mute2)}
.legal a{text-decoration:underline;text-underline-offset:3px}.anpc{display:flex;gap:14px}
.made a{color:var(--yl);font-weight:700;text-decoration:none}
.fab{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:30;display:flex;align-items:center;gap:8px;padding:13px 18px;border-radius:999px;background:var(--yl);color:#151000;font-weight:800;box-shadow:0 12px 30px rgba(255,200,30,.4);transform:translateY(120px);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.fab svg{width:19px;height:19px}.fab.on{transform:none}.fab.on.hid{transform:translateY(120px)}
.terms{padding-top:60px}.terms h2{margin:16px 0 20px}.th{font-size:24px;margin:30px 0 10px}.back{margin-top:40px}

/* ---------- responsive ---------- */
@media (max-width:1100px){.nav{display:none}.burger{display:block}.ft{grid-template-columns:1fr 1fr}.lamps{grid-template-columns:repeat(3,1fr)}}
@media (max-width:860px){
 :root{--hh:64px}
 .wrap{width:calc(100% - 32px)}
 body{font-size:16px}
 .hdr.sc{-webkit-backdrop-filter:none;backdrop-filter:none;background:#05080f}
 .hcta .btn span{display:none}.hcta .btn.sm{padding:12px}
 .brand b{font-size:18px}.brand small{font-size:10px}.logo{width:38px;height:38px}
 .topbar{font-size:11.5px}.topbar .wrap{height:30px}
 .bgfx .pcb{opacity:.4;animation:none}.bgfx .glow{animation:none}
 .hero{height:600vh}
 .poster.d{display:none}.poster.m{display:block}
 .hero .shade{background:linear-gradient(180deg,rgba(5,8,15,.94) 0,rgba(5,8,15,.8) 24%,rgba(5,8,15,.25) 40%,transparent 48%,rgba(5,8,15,.5) 64%,rgba(5,8,15,.94) 84%)}
 .intro{top:calc(var(--hh) + 14px);bottom:0}.intro h1{font-size:clamp(38px,11vw,52px);margin:10px 0 12px}
 .intro .k{font-size:11px;letter-spacing:.12em}
 .intro p{font-size:14.5px;line-height:1.5;margin-bottom:0;max-width:none;color:#d0d9ec}
 .intro .ctas{position:absolute;left:16px;right:16px;bottom:calc(76px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr;gap:10px}
 .intro .chips{position:absolute;left:16px;right:16px;bottom:calc(20px + env(safe-area-inset-bottom));margin:0;flex-wrap:nowrap;overflow:hidden}
 .intro .chips .chip{font-size:12px;padding:7px 11px;white-space:nowrap}
 .intro .chips .chip:nth-child(2){display:none}
 .intro.off .ctas,.intro.off .chips{opacity:0;pointer-events:none}
 .intro .ctas,.intro .chips{transition:opacity .4s}
 .intro .btn{padding:14px 18px;font-size:15px}
 .beats{top:auto;bottom:0;height:0}
 .beat{left:12px;right:12px;width:auto;top:auto;bottom:calc(66px + env(safe-area-inset-bottom));transform:translate3d(0,24px,0);filter:none}
 .beat.on{transform:none}.beat.past{transform:translate3d(0,-14px,0)}
 .beat .card{padding:18px 18px 18px 20px;border-radius:18px;background:rgba(7,11,22,.97)}
 .beat h2{font-size:25px;margin:8px 0 8px}.beat p{font-size:14.5px;line-height:1.5}.beat .tags{margin-top:12px}.beat .tags span{font-size:11px;padding:5px 9px}
 .beat .ctas{display:grid;grid-template-columns:1fr;gap:8px;margin-top:14px}.beat .ctas .btn{padding:12px 10px;font-size:14px}
 .beat .ctas .btn span{white-space:nowrap}
 .hud{right:auto;left:12px;bottom:auto;top:calc(var(--hh) + 10px);border-radius:14px}
 .hud .scope{width:70px}.hud .scope svg{height:32px}
 .hud .rd{padding:7px 12px;min-width:0}.hud .rd b{font-size:17px}.hud .rd span{font-size:9px}.hud .rd small{font-size:10.5px}
 .brks{left:auto;right:12px;bottom:auto;top:calc(var(--hh) + 18px)}.brks i{width:14px;height:26px}.brks b{height:10px}.brks i.on b{transform:translateY(-9px)}.brks em{display:none}
 .hint{display:none}
 .mq{padding:12px 0}.mq span{font-size:19px;padding:0 16px;gap:16px}
 .ab,.ns,.bk,.rvh{grid-template-columns:1fr}
 .abp{order:-1}.abp img{aspect-ratio:4/3.6}
 .stats{gap:10px}.sx{padding:14px}.sx span{font-size:12.5px}
 .board{padding-left:26px}.bus{left:3px;width:4px}.bus b{width:20px;height:20px;margin:-10px 0 0 -10px}
 .sv,.sv:nth-child(even){grid-template-columns:1fr;padding:14px;gap:16px}.sv:nth-child(even) .sh{order:0}
 .sv::before{left:-23px;width:22px}
 .sh .no{right:auto;left:12px;font-size:40px}
 .brk{left:auto;right:12px;top:12px;width:20px;height:40px;z-index:3}.brk .lev{height:15px;bottom:4px}.sv.on .brk .lev{transform:translateY(-14px)}.brk em{display:none}
 .sb ul{grid-template-columns:1fr}
 .mgh{flex-direction:column;align-items:flex-start}.sw{flex-direction:row}.sw .plate{width:58px;height:82px}.sw .rock{width:30px;height:50px}
 .lamps{grid-template-columns:repeat(2,1fr);grid-auto-rows:42vw;gap:8px}.lp.big{grid-column:span 2;grid-row:span 2}
 .mgf>span{width:100%}
 .clock{max-width:300px}
 .lbl{left:auto;right:12px;top:14px}
 .stepsl{grid-template-columns:1fr;gap:26px}.stepsl::before{left:29px;right:auto;top:30px;bottom:30px;width:2px;height:auto}.stepsl::after{left:29px;top:30px;width:2px;height:calc((100% - 60px)*var(--sp,0))}
 .step{display:flex;gap:16px}.gn{flex:none;margin:0}
 .meter{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 16px;text-align:left}.meter .bars{grid-column:1/-1;justify-content:flex-start;margin:10px 0 4px}.meter .stars{justify-content:flex-start}.meter p{margin:0}
 .cards{grid-template-columns:1fr}
 .brs{grid-template-columns:1fr}.row2{grid-template-columns:1fr}
 .fbtn .btn{flex:1}
 .ft{grid-template-columns:1fr}.legal{flex-direction:column}
 .rvs{columns:1}
 [data-sv],.sv{content-visibility:visible}
}
@media (max-width:380px){.hud .scope{display:none}.intro h1{font-size:36px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.splt .w>span{transform:none}[data-rv],.rv,.step{opacity:1!important;transform:none!important;filter:none!important}.sh img,.lp img{filter:none!important;transform:none!important}.bigtel{color:#fff6c2}}
