@font-face{font-family:"Geist";src:url("assets/fonts/Geist[wght].ttf") format("truetype-variations");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Geist Mono";src:url("assets/fonts/GeistMono[wght].ttf") format("truetype-variations");font-weight:100 900;font-style:normal;font-display:swap}
:root{--bg-0:#0a0a0a;--white:#ffffff;--text-secondary:#a1a1a1;--text-tertiary:#8a8a8a;--font-sans:"Geist",system-ui,-apple-system,sans-serif;--font-mono:"Geist Mono",ui-monospace,SFMono-Regular,monospace}
*{box-sizing:border-box}
html,body{margin:0;padding:0;height:100%}
body{background:var(--bg-0);color:var(--white);font-family:var(--font-sans);overflow:hidden}
#scene{position:fixed;inset:0}
#scene canvas{display:block;width:100%;height:100%}
a{color:var(--white);text-decoration:none}
a:hover{opacity:.65}
/* the sheet typography lives in a canvas texture, so the scene mirrors it here for
   screen readers and for indexing */
.sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.fallback{position:fixed;inset:0;overflow:auto;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:min(8vw,72px);max-width:46ch}
.fallback .eyebrow{margin:0;font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:var(--text-secondary)}
.fallback h1{margin:0;font-size:clamp(40px,8vw,88px);font-weight:600;letter-spacing:-.03em;line-height:1}
.fallback .body{margin:0;font-size:17px;line-height:1.6;color:var(--text-secondary)}
.fallback .foot{margin:0;font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-tertiary)}
