/* Reset, typography and global helpers */
*,*::before,*::after{box-sizing:border-box}
html{background:var(--c-bg);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--c-bg);color:var(--c-text);font:400 var(--fs-md)/1.6 var(--f-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;min-height:100vh}
html.gl:not([data-theme="light"]) body{background:transparent}
#bg3d{position:fixed;inset:0;width:100%;height:100%;z-index:-1;display:block;pointer-events:none}
[data-theme="light"] #bg3d{display:none}
img,svg{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{line-height:1.12;margin:0 0 var(--sp-3);letter-spacing:-.02em;font-weight:700}
h1{font-size:var(--fs-hero)}h2{font-size:var(--fs-2xl)}h3{font-size:var(--fs-lg)}
p{margin:0 0 var(--sp-4);color:var(--c-muted)}
:focus-visible{outline:2px solid var(--c-lime);outline-offset:3px;border-radius:6px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;background:var(--c-lime);color:var(--c-ink);padding:8px 14px;border-radius:8px;z-index:300}.skip:focus{top:12px}
.container{width:min(100% - 2*var(--sp-5),var(--w-container));margin-inline:auto}
.narrow{max-width:var(--w-narrow)}.muted{color:var(--c-muted)}.lime{color:var(--c-lime)}.center{text-align:center}
.grad{background:linear-gradient(90deg,#b6a4ff,var(--c-lime));-webkit-background-clip:text;background-clip:text;color:transparent}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
[hidden]{display:none!important}
