@font-face{
    font-family:"Nova Europa";
    src:url("assets/novaeuropa.woff") format("woff"),
    url("assets/novaeuropa.ttf") format("truetype");
    font-weight:normal; font-style:normal; font-display:swap;
}

:root{
    --bg:#03070b;
    --ink:#F4F4F4;
    --muted:#BEBCBC;
    --faint:#54707a;
    --soma:#1FE2C9;
    --flux:#9b6cff;
    --amber:#ffbf57;
    --line:rgba(47,233,230,.16);
    --line-strong:rgba(47,233,230,.34);

    --display:"Nova Europa","Courier New",monospace;
    --body:ui-monospace,"SFMono-Regular",Menlo,"DejaVu Sans Mono",Consolas,monospace;

    --scan:0.32;     /* scanline opacity 0..1 */
    --grain:0.55;    /* grain opacity */
    --spark:1;       /* flux/purple presence 0..1 */
    --maxw:1360px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    background:var(--bg);
    color:var(--ink);
    font-family:var(--body);
    font-size:16px;
    line-height:1.6;
    letter-spacing:.01em;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
}
::selection{background:var(--soma);color:#021}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

/* ---------- type ---------- */
.display{font-family:var(--display);text-transform:uppercase;line-height:.96;letter-spacing:.04em}
.kicker{
    font-family:var(--display);text-transform:uppercase;letter-spacing:.42em;
    font-size:12px;color:var(--soma);
}
.mono-label{font-family:var(--display);text-transform:uppercase;letter-spacing:.28em;font-size:11px}
[data-type="all"] body, body[data-type="all"]{}
body[data-type="all"]{font-family:var(--display);letter-spacing:.02em;line-height:1.5}
body[data-type="all"] p{letter-spacing:.02em}

/* ---------- fixed background / parallax ---------- */
.bg-stage{position:fixed;inset:0;z-index:-3;overflow:hidden;background:#000}
.bg-layer{position:absolute;inset:-8% -4%;background-size:cover;background-position:center;
    will-change:transform;transition:opacity .6s ease}
.bg-deep{
    background-image:url("assets/sc-corridor.jpg");
    filter:brightness(.46) saturate(.95) contrast(1.05);
}
.bg-mid{
    background-image:url("assets/sc-depth.jpg");
    opacity:.5;mix-blend-mode:screen;
    filter:brightness(.55) saturate(.95);
}
.bg-tint{position:fixed;inset:0;z-index:-2;pointer-events:none;
    background:
            radial-gradient(120% 80% at 50% 0%, rgba(47,233,230,.10), transparent 55%),
            radial-gradient(120% 90% at 50% 110%, rgba(155,108,255,calc(.10*var(--spark))), transparent 50%),
            linear-gradient(180deg, rgba(3,7,11,.40), rgba(3,7,11,.70) 42%, rgba(3,7,11,.93));
}
.vignette{position:fixed;inset:0;z-index:-1;pointer-events:none;
    box-shadow:inset 0 0 240px 60px rgba(0,0,0,.9), inset 0 0 60px rgba(0,0,0,.6);}

/* scanlines + grain overlay (kept off form via data-clean) */
.fx{position:fixed;inset:0;z-index:60;pointer-events:none;mix-blend-mode:overlay}
.fx::before{content:"";position:absolute;inset:0;opacity:var(--scan);
    background:repeating-linear-gradient(0deg, rgba(0,0,0,0) 0px, rgba(0,0,0,0) 2px, rgba(0,0,0,.5) 3px, rgba(0,0,0,0) 4px);
    background-size:100% 4px;}
.fx::after{content:"";position:absolute;inset:-50%;opacity:calc(var(--grain)*.5);
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/></svg>");
    animation:grain 1.2s steps(3) infinite;}
@keyframes grain{0%{transform:translate(0,0)}33%{transform:translate(-6%,3%)}66%{transform:translate(4%,-5%)}100%{transform:translate(0,0)}}
@media (prefers-reduced-motion:reduce){.fx::after{animation:none}}

/* ---------- HUD frame ---------- */
.frame{
    position:relative;
    border:1px solid var(--line);
    background:linear-gradient(180deg, rgba(6,16,20,.5), rgba(3,8,11,.66));
    --cl:18px; --cw:2px; --cc:var(--soma);
    background-image:
            linear-gradient(var(--cc),var(--cc)),linear-gradient(var(--cc),var(--cc)),
            linear-gradient(var(--cc),var(--cc)),linear-gradient(var(--cc),var(--cc)),
            linear-gradient(var(--cc),var(--cc)),linear-gradient(var(--cc),var(--cc)),
            linear-gradient(var(--cc),var(--cc)),linear-gradient(var(--cc),var(--cc)),
            linear-gradient(180deg, rgba(6,16,20,.5), rgba(3,8,11,.66));
    background-repeat:no-repeat;
    background-size:
            var(--cl) var(--cw),var(--cw) var(--cl),
            var(--cl) var(--cw),var(--cw) var(--cl),
            var(--cl) var(--cw),var(--cw) var(--cl),
            var(--cl) var(--cw),var(--cw) var(--cl),
            auto;
    background-position:
            top left,top left,
            top right,top right,
            bottom left,bottom left,
            bottom right,bottom right,
            center;
    box-shadow:0 0 0 1px rgba(0,0,0,.4), inset 0 0 30px rgba(47,233,230,.05), 0 18px 50px rgba(0,0,0,.55);
}
.frame--glow{box-shadow:0 0 0 1px rgba(0,0,0,.4), inset 0 0 36px rgba(47,233,230,.09), 0 0 40px rgba(47,233,230,.10), 0 18px 60px rgba(0,0,0,.6)}

/* ---------- layout ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;width:100%}
@media(max-width:600px){.wrap{padding:0 16px}}
section{position:relative;z-index:1}

/* ---------- nav ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;
    display:flex;align-items:center;justify-content:space-between;gap:24px;
    padding:24px max(28px, calc((100% - 1360px) / 2));
    background:linear-gradient(180deg, rgba(3,7,11,.82), rgba(3,7,11,0));
    backdrop-filter:blur(2px);
    transition:background .3s ease,border-color .3s ease;
    border-bottom:1px solid transparent;}
.nav.solid{background:rgba(3,7,11,.92);border-bottom:1px solid var(--line)}
.nav-logo{height:40px;width:auto;color:var(--ink);filter:drop-shadow(0 0 8px rgba(47,233,230,.25));
    opacity:0;pointer-events:none;transition:opacity .3s ease}
.nav-logo.visible{opacity:1;pointer-events:auto}
.nav-logo svg,.nav-logo img{height:100%;width:auto;display:block}
.nav-right{display:flex;align-items:center;gap:96px}
.nav-stat{display:none;align-items:center;gap:24px}
@media(min-width:880px){.nav-stat{display:flex}}
.stat{display:flex;flex-direction:column;gap:8px;min-width:56px}
.stat .mono-label{font-family:var(--display);text-transform:uppercase;font-size:16px;letter-spacing:.01em;color:#e9e9e9;line-height:1.5}
.stat .bar{height:6px;border:1px solid #585656;position:relative;overflow:hidden;background:rgba(0,0,0,.4)}
.stat .bar i{position:absolute;inset:0;transform-origin:left;display:block}
.stat.soma .bar i{background:var(--soma);width:71%;box-shadow:0 0 8px var(--soma)}
.stat.flux{opacity:var(--spark)}
.stat.flux .bar i{background:var(--flux);width:36%;box-shadow:0 0 8px var(--flux)}
.nav-cta{font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;font-size:16px;
    color:var(--soma);border:1px solid var(--soma);padding:16px 24px;position:relative;
    transition:.2s ease;white-space:nowrap}
.nav-cta:hover{background:rgba(47,233,230,.1);box-shadow:0 0 16px rgba(47,233,230,.2)}

/* ---------- hero ---------- */
.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;
    padding:140px 0 60px;position:relative}
.hero-grid{display:grid;gap:40px;align-items:center}
.hero-emblem{height:60px;margin-bottom:8px;color:var(--soma);
    filter:drop-shadow(0 0 14px rgba(47,233,230,.4))}
.hero-logo{width:min(560px,82%);max-width:100%;color:var(--ink);
    filter:drop-shadow(0 0 26px rgba(47,233,230,.22));margin:0 auto 0;display:block}
.hero-logo svg{width:100%;height:auto;display:block}
.genre{font-family:var(--body);font-size:16px;color:var(--ink);margin:24px 0 0}
.tagline{font-family:var(--display);font-size:clamp(28px,3.9vw,48px);line-height:1.2;
    color:var(--ink);max-width:848px;margin:24px 0 0;font-weight:400;text-wrap:balance}
.tagline b{color:var(--soma);font-weight:400;}

/* signup form (clean — no scanlines over it) */
.signup{padding:22px 22px 20px;margin-top:30px;max-width:480px;position:relative;isolation:isolate}
.signup .sig-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:4px}
.signup h3{font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;
    font-size:16px;margin:0;color:var(--ink)}
.signup .tag{font-size:10px;letter-spacing:.2em;color:var(--amber);font-family:var(--display);
    border:1px solid color-mix(in oklch,var(--amber) 40%,transparent);padding:3px 7px;white-space:nowrap}
.signup p.sub{margin:0 0 16px;color:var(--muted);font-size:13.5px;line-height:1.5}
.form-row{display:flex;gap:10px}
.form-row input[type=email]{flex:1;min-width:0;background:rgba(0,0,0,.5);border:1px solid var(--line-strong);
    color:var(--ink);font-family:var(--body);font-size:14px;padding:13px 14px;outline:none;transition:.2s}
.form-row input[type=email]::placeholder{color:var(--faint)}
.form-row input[type=email]:focus{border-color:var(--soma);box-shadow:0 0 0 1px var(--soma),0 0 18px rgba(61,240,194,.25)}
.btn{font-family:var(--display);text-transform:uppercase;letter-spacing:.12em;font-size:13px;
    background:var(--soma);color:#021410;border:1px solid var(--soma);padding:0 22px;cursor:pointer;
    white-space:nowrap;transition:.18s ease;position:relative;font-weight:400}
.btn:hover{box-shadow:0 0 22px rgba(61,240,194,.5);transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.consent{display:flex;gap:9px;align-items:flex-start;margin-top:13px}
.consent input{margin-top:3px;accent-color:var(--soma);width:14px;height:14px;flex-shrink:0}
.consent label{font-size:11px;color:var(--faint);line-height:1.5}
.consent a{color:var(--muted);text-decoration:underline;text-underline-offset:2px}
.form-msg{font-size:12.5px;margin-top:12px;min-height:18px;letter-spacing:.02em}
.form-msg.ok{color:var(--soma)}
.form-msg.err{color:#ff7b7b}
.signup.done .form-body{display:none}
.signup-done{display:none}
.signup.done .signup-done{display:block}
.signup-done .chk{color:var(--soma);font-family:var(--display);letter-spacing:.1em;font-size:15px;
    text-transform:uppercase;margin-bottom:8px;display:flex;align-items:center;gap:10px}
.signup-done p{color:var(--muted);font-size:14px;margin:0;max-width:38ch}

/* hero side viewport (split layout) */
.hero-port{display:none;position:relative;aspect-ratio:16/10;overflow:hidden;padding:0}
.hero-port .shot{position:absolute;inset:0;background-image:url("assets/sc-corridor.jpg");
    background-size:cover;background-position:center;filter:brightness(.62) saturate(1.05)}
.hero-port .scan{position:absolute;inset:0;opacity:.4;
    background:repeating-linear-gradient(0deg,transparent 0 2px,rgba(0,0,0,.4) 3px 4px)}
.hero-port .lvl{position:absolute;left:18px;bottom:16px;font-family:var(--display);
    letter-spacing:.2em;font-size:11px;color:var(--soma);text-transform:uppercase}
.hero-port .corner-emblem{position:absolute;right:14px;top:12px;height:20px;color:var(--soma);opacity:.8}

/* layout: centered (default) */
.hero[data-hero="centered"] .hero-grid{grid-template-columns:1fr;justify-items:center;text-align:center}
.hero[data-hero="centered"] .tagline{margin-left:auto;margin-right:auto;}
.hero[data-hero="centered"] .signup{text-align:left}
.hero[data-hero="centered"] .hero-port{display:none}

/* layout: split */
.hero[data-hero="split"] .hero-grid{grid-template-columns:1.05fr .95fr;text-align:left}
.hero[data-hero="split"] .hero-logo{width:min(520px,100%)}
@media(min-width:900px){.hero[data-hero="split"] .hero-port{display:block}}

/* layout: panel (form inside a big HUD console, content left) */
.hero[data-hero="panel"] .hero-grid{grid-template-columns:1fr;justify-items:start;text-align:left;max-width:760px}
.hero[data-hero="panel"] .signup{max-width:560px;width:100%}
.hero[data-hero="panel"] .hero-logo{width:min(620px,100%)}
.hero[data-hero="panel"] .hero-port{display:none}

/* scroll cue */
.scroll-cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);
    font-family:var(--display);letter-spacing:.2em;font-size:12px;color:#929090;
    text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:8px}
.scroll-cue .ln{width:1px;height:32px;background:linear-gradient(var(--soma),transparent);animation:cue 1.8s ease-in-out infinite}
@keyframes cue{0%,100%{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}

/* ---------- generic section header ---------- */
.sec{padding:64px 0}
@media(max-width:600px){
    .nav{padding:16px}
    .nav-logo{height:24px}
    .nav-cta{padding:16px 24px}
    .hero{justify-content:flex-start;padding-top:128px}
    .genre{margin-top:0;font-size:14px}
    .sec-head h2{letter-spacing:0}
    .tagline{font-size:32px}
    .sec{padding:40px 0}
}
.sec-head{display:flex;align-items:center;gap:16px;margin-bottom:40px}
.sec-head .idx{font-family:var(--display);color:var(--soma);font-size:24px;letter-spacing:normal}
.sec-head h2{font-family:var(--display);text-transform:uppercase;font-size:clamp(32px,3.3vw,48px);
    margin:0;color:#f4f4f4;font-weight:400}
.sec-head .rule{flex:1;height:1px;background:linear-gradient(90deg,var(--line-strong),transparent)}

/* ---------- trailer ---------- */
.video-frame{position:relative;aspect-ratio:16/9;overflow:hidden;padding:0;cursor:pointer}
.video-frame .poster{position:absolute;inset:0;background-image:url("assets/sc-combat.jpg");
    background-size:cover;background-position:center;filter:brightness(.5) saturate(1.1);transition:.4s}
.video-frame:hover .poster{filter:brightness(.62) saturate(1.15)}
.video-frame .scan{position:absolute;inset:0;opacity:.32;pointer-events:none;
    background:repeating-linear-gradient(0deg,transparent 0 2px,rgba(0,0,0,.45) 3px 4px)}
.video-frame .play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}
.play .disc{width:78px;height:78px;border:1px solid var(--soma);display:grid;place-items:center;
    background:rgba(3,10,14,.55);box-shadow:0 0 30px rgba(47,233,230,.25);transition:.25s}
.video-frame:hover .play .disc{background:rgba(47,233,230,.16);box-shadow:0 0 44px rgba(47,233,230,.4)}
.play .disc svg{width:26px;height:26px;margin-left:4px;fill:var(--soma)}
.play .lab{font-family:var(--display);text-transform:uppercase;letter-spacing:.28em;font-size:12px;color:var(--soma)}
.video-frame .badge{position:absolute;top:14px;left:14px;font-family:var(--display);font-size:16px;
    letter-spacing:.01em;color:#e27a1f;border:1px solid #e27a1f;
    padding:8px 16px;text-transform:uppercase;background:#000;line-height:1.5}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ---------- about ---------- */
.about-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:start}
@media(min-width:820px){.about-grid{grid-template-columns:1fr 1fr;gap:40px}}
.about-copy p{font-size:24px;line-height:32px;color:#e9e9e9;margin:0 0 16px}
.about-copy .lede{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;
    font-size:24px;line-height:1.3;color:var(--ink)}
@media(max-width:600px){
    .about-copy .lede{font-size:24px;margin-bottom:40px}
    .about-copy p{font-size:20px;line-height:26px}
}
.about-copy em{color:var(--soma);font-style:normal}
.about-shot{aspect-ratio:3456/2234;overflow:hidden;padding:0;position:relative;width:100%}
.about-shot .shot{position:absolute;inset:0;background-image:url("assets/sc-draft.jpg");
    background-size:cover;background-position:30% center;filter:brightness(.66) saturate(1.05)}
.about-shot .scan{position:absolute;inset:0;opacity:.3;
    background:repeating-linear-gradient(0deg,transparent 0 2px,rgba(0,0,0,.4) 3px 4px)}
.about-shot .cap{position:absolute;left:14px;bottom:13px;font-family:var(--display);font-size:10px;
    letter-spacing:.2em;color:var(--soma);text-transform:uppercase}

/* ---------- features ---------- */
.feat-list{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
@media(max-width:760px){.feat-list{grid-template-columns:1fr}}
.feat{padding:24px 22px;display:flex;flex-direction:column;gap:12px;min-height:150px;
    transition:.25s ease;position:relative;overflow:hidden}
.feat:hover{border-color:var(--line-strong);transform:translateY(-3px)}
.feat .fi{font-family:var(--display);font-size:16px;letter-spacing:.18em;color:var(--soma)}
.feat h4{font-family:var(--display);text-transform:uppercase;font-size:24px;letter-spacing:.03em;
    margin:0;color:var(--ink);line-height:1.2}
.feat p{margin:0;font-size:16px;color:var(--muted);line-height:1.55}
.feat.tease{--cc:#cebeff}
.feat.tease .fi{color:#8741ef;opacity:1}
.feat.tease h4{color:#8741ef}
.feat.wide{grid-column:1/-1;min-height:0;flex-direction:row;align-items:center;justify-content:center;
    text-align:center;gap:16px;padding:22px}
.feat.wide h4{font-size:32px;letter-spacing:.04em}
.feat.wide .glitch{color:var(--soma)}

/* ---------- gallery ---------- */
.gal{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;
    grid-template-rows:208px 208px 264px}
.gal a{position:relative;overflow:hidden;border:1px solid #3a3a3a;display:block;
    filter:saturate(1.02);transition:.3s ease}
.gal a::after{content:"";position:absolute;inset:0;
    background:repeating-linear-gradient(0deg,transparent 0 2px,rgba(0,0,0,.32) 3px 4px);opacity:.4;pointer-events:none}
.gal a::before{content:attr(data-cap);position:absolute;left:10px;bottom:8px;z-index:2;
    font-family:var(--display);font-size:9px;letter-spacing:.18em;color:var(--soma);text-transform:uppercase;
    opacity:0;transform:translateY(6px);transition:.25s;text-shadow:0 1px 4px #000}
.gal a:hover::before{opacity:1;transform:translateY(0)}
.gal a:hover{border-color:var(--soma);filter:saturate(1.15) brightness(1.08);z-index:3}
.gal img{width:100%;height:100%;object-fit:cover}
.gal .g1{grid-column:span 4;grid-row:span 2}
.gal .g2{grid-column:span 2;grid-row:span 1}
.gal .g3{grid-column:span 2;grid-row:span 1}
.gal .g4{grid-column:span 2;grid-row:span 1}
.gal .g5{grid-column:span 2;grid-row:span 1}
.gal .g6{grid-column:span 2;grid-row:span 1}
@media(max-width:760px){.gal{grid-template-columns:repeat(2,1fr);grid-template-rows:none;grid-auto-rows:200px}
    .gal .g1{grid-column:span 2;grid-row:span 2}.gal>a{grid-column:span 1!important}}
@media(max-width:600px){.gal{grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:222px;gap:24px}
    .gal img{height:100%;aspect-ratio:unset}
    .gal>a{grid-column:span 1!important;grid-row:span 1!important}}
.gal-note{margin-top:16px;font-size:16px;color:var(--faint);letter-spacing:.04em;font-family:var(--display)}

/* ---------- CTA ---------- */
.cta{padding:110px 0 120px;text-align:center;position:relative}
.cta .panel{max-width:620px;margin:0 auto;padding:44px 40px}
.cta h2{font-family:var(--display);text-transform:uppercase;font-size:clamp(24px,3.4vw,40px);
    margin:0 0 10px;letter-spacing:.04em;line-height:1.05}
.cta .sub{color:var(--muted);font-size:15px;margin:0 0 26px}
.cta .signup{margin:0 auto;max-width:100%;padding:0}
.cta .form-row{justify-content:center}
.cta .consent{justify-content:center;max-width:420px;margin-left:auto;margin-right:auto}
.cta .form-msg{text-align:center}

/* ---------- footer ---------- */
footer{border-top:1px solid var(--line);padding:40px 0;margin-top:30px;
    background:linear-gradient(180deg,transparent,rgba(2,5,8,.7))}
.foot{display:flex;align-items:center;justify-content:space-between;gap:24px}
.foot-logo{display:block;height:24px;width:auto}
.foot-logo img,.foot-logo svg{height:100%;width:auto;display:block;
    filter:brightness(0) invert(1) brightness(0.573)}
.foot-right{display:flex;align-items:center;gap:96px}
.foot-mid{display:flex;flex-direction:column;gap:4px}
.foot-names{display:flex;flex-direction:row;align-items:center;gap:24px}
.foot-mid .line1{font-family:var(--display);text-transform:uppercase;font-size:16px;letter-spacing:.01em;color:var(--ink)}
.foot-mid .studio{font-family:var(--body);font-size:14px;color:#929090;letter-spacing:.01em}
.foot-powered{display:flex;flex-direction:column;gap:4px}
.powered-label{font-family:var(--display);text-transform:uppercase;font-size:16px;letter-spacing:.01em;color:#e9e9e9}
.powered-link{font-family:var(--body);font-size:14px;color:#929090;letter-spacing:.01em;text-decoration:underline;text-underline-offset:3px}
.powered-link:hover{color:#fff}
@media(max-width:600px){
    footer{padding:40px 0}
    .foot{flex-direction:column;align-items:flex-start;gap:0}
    .foot-logo{margin-bottom:24px}
    .foot-right{flex-direction:column;align-items:flex-start;gap:0;width:100%}
    .foot-mid{gap:4px;width:100%;margin-bottom:16px}
    .foot-names{flex-direction:column;align-items:flex-start;gap:16px}
    .foot-mid .line1{font-size:16px}
    .foot-mid .studio{font-size:14px}
    .foot-powered{margin-bottom:40px}
    .socials{gap:16px}
    .socials a{width:40px;height:40px;border:1px solid #585656}
}
.socials{display:flex;gap:16px}
.socials a{width:40px;height:40px;border:1px solid #585656;display:grid;place-items:center;
    color:var(--muted);transition:.2s}
.socials a:hover{border-color:var(--soma);color:var(--soma);box-shadow:0 0 16px rgba(61,240,194,.2)}
.socials a svg{width:20px;height:20px;fill:currentColor}

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

/* tweaks root sits above everything */
#tweaks-root{position:fixed;z-index:100}

/* ---------- logo glitch ---------- */
.glitch-on .hero-logo{animation:logoflick 6s steps(1) infinite}
@keyframes logoflick{
    0%,97%,100%{opacity:1;filter:drop-shadow(0 0 26px rgba(47,233,230,.22))}
    97.4%{opacity:.7;transform:translateX(-2px);filter:drop-shadow(2px 0 0 var(--flux)) drop-shadow(-2px 0 0 var(--soma))}
    98%{opacity:1;transform:translateX(2px)}
    98.4%{transform:translateX(0)}
}
@media (prefers-reduced-motion:reduce){.glitch-on .hero-logo{animation:none}}
