:root{--bg: #000000;--ink: #ffffff;--muted: #8c8c8c;--line: rgba(255, 255, 255, .18);--serif: "Instrument Serif", "Times New Roman", Georgia, serif;--sans: "Inter Tight", "Helvetica Neue", Arial, sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--bg);overflow-x:hidden}.page{position:relative;min-height:100vh;min-height:100dvh;font-family:var(--sans);font-weight:400;font-size:12px;letter-spacing:.1em;text-transform:lowercase;overflow:hidden}.grain{pointer-events:none;position:fixed;top:-50%;right:-50%;bottom:-50%;left:-50%;width:200%;height:200%;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain .6s steps(4) infinite;z-index:3}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(-1%,-1%)}to{transform:translate(2%,2%)}}.corner{position:fixed;display:flex;align-items:center;gap:10px;padding:28px 32px;z-index:2;animation:fade 1.2s .4s ease both}.corner--tr{top:0;right:0}.corner--bl{bottom:0;left:0}.corner--br{bottom:0;right:0}.sep{color:var(--muted)}.tabular{font-variant-numeric:tabular-nums}.center{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px 24px;position:relative;z-index:1}.hero-logo{height:clamp(140px,30vh,260px);width:auto;margin-bottom:clamp(32px,6vh,56px);animation:rise 1.4s cubic-bezier(.2,.8,.2,1) both}.title{margin:0;font-family:var(--serif);font-weight:400;font-style:italic;text-transform:none;letter-spacing:0;line-height:1;font-size:clamp(28px,3.2vw,44px);animation:fade 1.2s .3s ease both}.sub{margin:14px 0 0;color:var(--muted);animation:fade 1.2s .5s ease both}@keyframes rise{0%{opacity:0;transform:translateY(.25em)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (max-width: 640px){.corner{padding:20px}.center{padding:100px 16px}}@media (prefers-reduced-motion: reduce){.grain,.hero-logo,.title,.corner,.sub{animation:none}}
