:root{--bg: #05070d;--fg: #f5f5f0;--fg-dim: rgba(245, 245, 240, .65);--accent: #9bb6ff;--font-display: "Major Mono Display", ui-monospace, monospace;--font-mono: "Space Mono", ui-monospace, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;background:var(--bg);color:var(--fg);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden}a{color:inherit;text-decoration:none}::selection{background:var(--accent);color:var(--bg)}#bg-canvas-wrap{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none;overflow:hidden;background:var(--bg)}#bg-grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;mix-blend-mode:overlay;opacity:.12;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.45 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}.stage{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:0 24px;text-align:center;pointer-events:none;z-index:2;transition:opacity .4s ease,transform .5s cubic-bezier(.2,.8,.2,1)}.welcome{font-family:var(--font-mono);font-size:clamp(14px,1.6vw,20px);letter-spacing:.04em;color:var(--fg);opacity:1}.title{font-family:var(--font-display);font-size:clamp(56px,11vw,168px);font-weight:400;letter-spacing:0;text-transform:uppercase;line-height:1;color:var(--fg);opacity:1}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}body.animate-in .welcome{opacity:0;animation:fadeUp 1.2s ease-out .2s both}body.animate-in .title{opacity:0;animation:fadeUp 1.2s ease-out .5s both}body.menu-open .stage{opacity:.32;transform:scale(.94)}.burger{position:fixed;top:24px;right:24px;z-index:50;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--fg);border:0;border-radius:50%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;transition:background .25s,transform .35s cubic-bezier(.2,.8,.2,1)}.burger:hover{background:#f5f5f014}.burger-icon{display:block;transition:opacity .2s ease}.burger-icon--cross,.burger.is-open .burger-icon--lines{display:none}.burger.is-open .burger-icon--cross{display:block}.menu{position:fixed;top:0;right:0;bottom:0;z-index:40;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding:0 56px 0 24px;pointer-events:none}.menu ul{list-style:none;display:flex;flex-direction:column;gap:18px;text-align:right}.menu li{opacity:0;transform:translate(12px);transition:opacity .5s ease,transform .5s cubic-bezier(.2,.8,.2,1)}.menu.is-open{pointer-events:auto}.menu.is-open li{opacity:1;transform:none}.menu a{font-family:var(--font-mono);font-size:clamp(15px,1.4vw,18px);letter-spacing:.02em;color:var(--fg-dim);display:inline-block;padding:6px 0;position:relative;max-width:18ch;text-wrap:balance;transition:color .25s}.menu a:hover{color:var(--fg)}.menu a:after{content:"";position:absolute;right:0;bottom:2px;width:0;height:1px;background:var(--fg);transition:width .35s cubic-bezier(.2,.8,.2,1)}.menu a:hover:after{width:100%}@media(max-width:640px){.menu{left:0;padding:0 24px;align-items:center;justify-content:center;background:#05070da6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:0;transition:opacity .35s}.menu.is-open{opacity:1}.menu ul{align-items:center;text-align:center;gap:24px}.menu a{font-size:22px}}@media(prefers-reduced-motion:reduce){body.animate-in .welcome,body.animate-in .title{animation:none;opacity:1}.stage,.menu li,.menu a,.menu a:after,.burger,.burger-icon{transition:none}}.galaxy-container{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;pointer-events:auto;touch-action:none}.galaxy-container canvas{display:block;width:100%;height:100%}
