@import "https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600&display=swap";
@import "https://fonts.googleapis.com/css2?family=Geist+Mono:wght@400;500;600&display=swap";
@font-face{font-family:Nippo;src:url(/fonts/Nippo-Variable.ttf)format("truetype-variations");font-weight:200 700;font-style:normal;font-display:swap}@font-face{font-family:Nippo;src:url(/fonts/Nippo-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Nippo;src:url(/fonts/Nippo-Medium.otf)format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Nippo;src:url(/fonts/Nippo-Bold.otf)format("opentype");font-weight:700;font-style:normal;font-display:swap}:root{--bg-base:#0a0a0a;--bg-elevated:#2c2c2c;--bg-card:#2c2c2c;--text-primary:#f5f5f4;--text-muted:#a1a1a5;--text-subtle:#6b6b70;--border-subtle:#ffffff14;--border-strong:#ffffff24;--accent:#9e1e1f;--accent-dim:#9e1e1f26;--accent-line:#9e1e1f66;--accent-text:#c93a3b;--surface-page:var(--bg-base);--surface-raised:var(--bg-elevated);--surface-card:var(--bg-card);--text-heading:var(--text-primary);--text-body:var(--text-muted);--text-meta:var(--text-subtle);--hairline:var(--border-subtle);--hairline-strong:var(--border-strong);--focus-ring:var(--accent-line);--font-display:"Nippo", "Inter", system-ui, sans-serif;--font-body:"Nunito", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", monospace;--font-terminal:"Geist Mono", ui-monospace, "SF Mono", monospace;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--type-display-xl:clamp(48px, 8vw, 128px);--type-display-l:clamp(36px, 5vw, 72px);--type-display-m:28px;--type-body-l:20px;--type-body-m:16px;--type-body-s:14px;--type-mono-label:12px;--lh-display-xl:.95;--lh-display-l:1;--lh-tight:1.1;--lh-body-l:1.55;--lh-body:1.6;--lh-body-s:1.5;--ls-display-xl:-.03em;--ls-display-l:-.03em;--ls-display-m:-.02em;--ls-mono:.1em;--ls-mono-wide:.12em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--section-pad-y:clamp(64px, 10vw, 160px);--gutter:clamp(20px, 5vw, 80px);--maxw:1280px;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--border-width:1px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-inout:cubic-bezier(.65, 0, .35, 1);--dur-fast:.15s;--dur-base:.3s;--dur-slow:.6s;--dur-reveal:.9s;--shadow-card:0 1px 0 #ffffff05 inset, 0 24px 60px -30px #000c;--shadow-pop:0 30px 80px -40px #000000e6;--glow-accent:radial-gradient(circle at center, var(--accent-dim) 0%, transparent 70%);--grid-line:#ffffff0a}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}html{scroll-behavior:smooth}a{color:inherit;text-decoration:none}@keyframes roninPulse{0%{opacity:.7;transform:scale(1)}70%{opacity:0;transform:scale(2.6)}to{opacity:0;transform:scale(2.6)}}@keyframes roninBlink{0%,to{opacity:1}50%{opacity:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important}}.noise-overlay{z-index:9999;pointer-events:none;opacity:.025;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.grid-bg{pointer-events:none;background-image:linear-gradient(to right, var(--grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--grid-line) 1px, transparent 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 60% at 50% 40%,#000 0%,#0000 75%);mask-image:radial-gradient(80% 60% at 50% 40%,#000 0%,#0000 75%)}.accent-glow{pointer-events:none;background:var(--glow-accent);filter:blur(20px);width:600px;height:600px;position:absolute}.surface-card{background:var(--surface-card);border:var(--border-width) solid var(--hairline);border-radius:var(--radius-lg)}.surface-card:hover{border-color:var(--hairline-strong)}.t-display-xl{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--type-display-xl);line-height:var(--lh-display-xl);letter-spacing:var(--ls-display-xl);color:var(--text-heading)}.t-display-l{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--type-display-l);line-height:var(--lh-display-l);letter-spacing:var(--ls-display-l);color:var(--text-heading)}.t-display-m{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--type-display-m);line-height:var(--lh-tight);letter-spacing:var(--ls-display-m);color:var(--text-heading)}.t-body-l{font-family:var(--font-body);font-weight:var(--fw-regular);font-size:var(--type-body-l);line-height:var(--lh-body-l);color:var(--text-body)}.t-body-m{font-family:var(--font-body);font-weight:var(--fw-regular);font-size:var(--type-body-m);line-height:var(--lh-body);color:var(--text-body)}.t-body-s{font-family:var(--font-body);font-weight:var(--fw-regular);font-size:var(--type-body-s);line-height:var(--lh-body-s);color:var(--text-body)}.t-mono-label{font-family:var(--font-mono);font-weight:var(--fw-regular);font-size:var(--type-mono-label);letter-spacing:var(--ls-mono);text-transform:uppercase;color:var(--text-meta)}.accent-italic{color:var(--accent-text);font-style:italic}
