:root{--bg:#090909;--bg-2:#111;--fg:#f5f5f5;--muted:#999;--line:#292929;--ease:cubic-bezier(.2, .7, .1, 1);--gutter:clamp(20px, 4vw, 64px);--max:1520px;--sans:"Geist", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--display:"Archivo", "Geist", system-ui, sans-serif;--bone:#f6e9df;--ember:#ff4d36;--mono:"Geist Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--nav-h:68px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);color:var(--fg);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.5}img,canvas{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}h1,h2,h3,p{margin:0}:focus-visible{outline:1px solid var(--fg);outline-offset:4px}::selection{background:var(--fg);color:var(--bg)}.wrap{width:100%;max-width:var(--max);padding-inline:var(--gutter);margin-inline:auto}.mono{font-family:var(--mono)}.skip{left:var(--gutter);z-index:100;background:var(--fg);color:var(--bg);padding:8px 14px;font-size:13px;position:absolute;top:-100px}.skip:focus{top:12px}.display,.headline,.game__title,.menu a{font-family:var(--display);text-transform:uppercase;font-weight:900;font-stretch:125%}.display{letter-spacing:-.035em;font-size:clamp(2.4rem,8vw,9rem);line-height:.95}.display--lg{font-size:clamp(2.2rem,5.4vw,6.4rem)}.display--md{font-size:clamp(2.4rem,6.4vw,7.4rem)}.headline{letter-spacing:-.035em;font-size:clamp(2.4rem,6.4vw,7rem);line-height:.95}.t-stroke,.t-dots,.t-grid{--ink:#fff;-webkit-text-stroke:var(--sw,2px) var(--ink);paint-order:stroke fill;text-shadow:none}.t-stroke{-webkit-text-fill-color:transparent;transition:-webkit-text-fill-color .6s var(--ease)}.t-dots{background:radial-gradient(circle at center, var(--ink) 1.5px, transparent 2px) 0 0 / 9px 9px;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.t-grid{background:linear-gradient(var(--ink) 1.5px, transparent 1.5px) 0 0 / 11px 11px, linear-gradient(90deg, var(--ink) 1.5px, transparent 1.5px) 0 0 / 11px 11px;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.philosophy .t-grid,.philosophy .t-stroke{--ink:var(--bg)}.lede{color:#f5f5f5b8;max-width:36ch;font-size:15px;line-height:1.6}.eyebrow{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px}.lit{letter-spacing:-.025em;max-width:30ch;color:var(--fg);font-size:clamp(1.35rem,2.7vw,2.5rem);font-weight:500;line-height:1.28}.lit span{opacity:.2;transition:opacity .5s var(--ease)}.lit span.on{opacity:1}.lit--dark{color:var(--bg);max-width:34ch}.nav{z-index:60;transition:transform .6s var(--ease);background:#0b0b0b;position:fixed;inset:0 0 auto}.nav.is-hidden{transform:translateY(-101%)}.nav:after{content:"";background:var(--line);height:1px;position:absolute;inset:auto 0 0}.nav__progress{z-index:1;height:1px;position:absolute;inset:auto 0 0}.nav__progress span{background:var(--fg);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.nav__inner{height:var(--nav-h);justify-content:space-between;align-items:center;gap:24px;display:flex}.brand{letter-spacing:.16em;align-items:center;gap:12px;font-size:14px;font-weight:700;display:inline-flex}.brand__mark{width:22px;height:22px;transition:transform .6s var(--ease)}.brand:hover .brand__mark{transform:rotate(90deg)}.nav__main{align-items:center;gap:clamp(28px,3.4vw,52px);display:flex}.nav__links{gap:clamp(26px,3vw,44px);display:flex}.roll{color:var(--fg);align-items:baseline;gap:8px;font-size:14px;font-weight:500;display:inline-flex}.roll i{color:var(--muted);letter-spacing:.06em;font-size:10px;font-style:normal}.roll span{color:#0000;height:1.3em;line-height:1.3;display:inline-block;position:relative;overflow:hidden}.roll span:before,.roll span:after{content:attr(data-t);color:var(--fg);transition:transform .5s var(--ease);position:absolute;top:0;left:0}.roll span:after{transform:translateY(105%)}.roll:hover span:before{transform:translateY(-105%)}.roll:hover span:after{transform:translateY(0)}.nav__cta{transition:background-color .4s var(--ease), color .4s var(--ease), border-color .4s var(--ease);background:0 0;border:1px solid #f5f5f573;align-items:center;gap:10px;padding:11px 18px;font-size:13px;font-weight:600;display:inline-flex}.nav__svc{background:var(--fg);color:var(--bg);border:1px solid var(--fg);transition:background-color .4s var(--ease), color .4s var(--ease);align-items:center;gap:10px;padding:11px 18px;font-size:13px;font-weight:600;display:inline-flex}.nav__svc span{transition:transform .4s var(--ease);display:inline-block}.nav__svc:hover{color:var(--fg);background:0 0}.nav__svc:hover span{transform:translate(2px,-2px)}.nav__cta span{transition:transform .4s var(--ease);display:inline-block}.nav__cta:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}.nav__cta:hover span{transform:translate(2px,-2px)}.nav__toggle{color:var(--fg);font:600 13px var(--sans);cursor:pointer;background:0 0;border:1px solid #f5f5f573;padding:10px 16px;display:none}.menu{z-index:55;background:var(--bg);padding:calc(var(--nav-h) + 32px) var(--gutter) 40px;visibility:hidden;opacity:0;transition:opacity .5s var(--ease), visibility .5s;align-items:flex-end;display:flex;position:fixed;inset:0}.menu.is-open{visibility:visible;opacity:1}.menu ul{width:100%}.menu li{border-top:1px solid var(--line);overflow:hidden}.menu a{letter-spacing:-.03em;align-items:baseline;gap:16px;padding:18px 0;font-size:clamp(2.4rem,11vw,4.8rem);line-height:.95;display:flex}.menu a i{letter-spacing:.08em;color:var(--muted);font-size:11px;font-style:normal}.hero{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:pan-y;cursor:crosshair;isolation:isolate;background:#0d0d0d;align-items:flex-end;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero__media{z-index:-2;will-change:transform;position:absolute;inset:0}.hero__media canvas,.hero__media video,.hero__media img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero__fx{pointer-events:none}.hero__shade{z-index:-1;pointer-events:none;background:linear-gradient(#09090900 45%,#0909098c 78%,#090909f2 100%),linear-gradient(#09090999 0%,#09090900 22%);position:absolute;inset:0}.brand--hero{margin-bottom:clamp(20px,3vw,36px)}.hero__content{padding-block:calc(var(--nav-h) + 40px) clamp(28px, 4.5vw, 60px)}.hero .display{white-space:nowrap;color:#fff;--sw:2.5px;font-size:clamp(1.4rem,7.7vw,7.2rem)}.hero__grid{z-index:-1;pointer-events:none;background:radial-gradient(#ffffff4d 1px,#0000 1.6px) 0 0/32px 32px,linear-gradient(#ffffff0f 1px,#0000 1px) 0 0/160px 160px,linear-gradient(90deg,#ffffff0f 1px,#0000 1px) 0 0/160px 160px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#0000008c 55%,#0000 92%);mask-image:linear-gradient(#000 0%,#0000008c 55%,#0000 92%)}.hero__foot{position:relative}.hero__foot:before,.hero__foot:after{content:"+";font:400 18px/1 var(--mono);color:#fffc;position:absolute;top:-11px}.hero__foot:before{left:-6px}.hero__foot:after{right:-6px}.hero .display .line{margin-bottom:-.08em;padding-bottom:.08em;display:block;overflow:hidden}.hero .display .line>span{animation:rise 1.5s var(--ease) .7s forwards;display:block;transform:translateY(108%)}.hero .display .line:nth-child(2)>span{animation-delay:.85s}.hero__foot{border-top:1px solid #f5f5f533;justify-content:space-between;align-items:flex-end;gap:32px;margin-top:clamp(28px,4vw,56px);padding-top:22px;display:flex}.cta{letter-spacing:.01em;white-space:nowrap;transition:background-color .45s var(--ease), color .45s var(--ease), border-color .45s var(--ease);border:1px solid #f5f5f566;align-items:center;gap:14px;padding:15px 24px;font-size:13px;font-weight:500;display:inline-flex}.cta__arrow{transition:transform .45s var(--ease);display:inline-block}.cta:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}.cta:hover .cta__arrow{transform:translateY(3px)}.hero__scroll{right:max(var(--gutter), calc((100vw - var(--max)) / 2 + var(--gutter)));background:#f5f5f52e;width:1px;height:72px;display:none;position:absolute;top:50%;overflow:hidden}.hero__scroll span{background:var(--fg);height:24px;animation:cue 2.6s var(--ease) infinite;position:absolute;inset:0 0 auto}@media (width>=900px){.hero__scroll{display:block}}@keyframes rise{to{transform:translateY(0)}}@keyframes cue{0%{transform:translateY(-100%)}70%,to{transform:translateY(300%)}}.section{padding-block:clamp(110px,18vw,260px)}.grid{grid-template-columns:repeat(12,1fr);gap:40px 24px;display:grid}.grid>.eyebrow{grid-column:1/span 3;padding-top:1em}.intro__body,.philosophy__body{grid-column:4/-1;gap:clamp(48px,7vw,120px);display:grid}.games{border-top:1px solid var(--line);padding-block:clamp(80px,12vw,160px) clamp(60px,8vw,120px)}.games__head{gap:22px;margin-bottom:clamp(56px,9vw,130px);display:grid}.game{margin-bottom:clamp(72px,11vw,160px)}.game__media{aspect-ratio:21/9;background:var(--bg-2);border-block:1px solid var(--line);max-height:86vh;display:block;position:relative;overflow:hidden}.game__media canvas,.game__media img,.game__media video{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1.6s var(--ease), transform 2.2s var(--ease);transform:scale(1.04)}.game__media canvas.is-live,.game__media img,.game__media video{opacity:1;transform:scale(1)}.game:hover .game__media canvas,.game:hover .game__media img,.game:hover .game__media video{transform:scale(1.03)}.game__veil{pointer-events:none;background:linear-gradient(#09090900 45%,#090909c7);position:absolute;inset:0}.game__title{left:var(--gutter);bottom:clamp(20px,3.5vw,48px);right:var(--gutter);letter-spacing:-.035em;transition:transform 1.2s var(--ease);font-size:clamp(2.4rem,7.4vw,8.6rem);line-height:.95;position:absolute}.game:hover .game__title{transform:translate(10px)}.game:hover .game__title.t-stroke{-webkit-text-fill-color:#fff}.ph{top:16px;right:var(--gutter);letter-spacing:.14em;text-transform:uppercase;color:#f5f5f580;font-size:10px;position:absolute}.game__meta{grid-template-columns:repeat(12,1fr);align-items:baseline;gap:14px 24px;padding-top:26px;display:grid}.game__idx{letter-spacing:.1em;color:var(--muted);grid-column:1/span 3;font-size:11px}.game__desc{color:var(--muted);grid-column:4/span 5;max-width:46ch;font-size:15px;line-height:1.6}.status{letter-spacing:.1em;text-transform:uppercase;color:var(--fg);grid-column:9/span 2;align-items:center;gap:9px;font-size:11px;display:inline-flex}.status i{background:var(--fg);border-radius:50%;width:6px;height:6px;animation:2.8s ease-in-out infinite pulse}.link{border-bottom:1px solid var(--line);transition:border-color .4s var(--ease);grid-column:11/span 2;justify-self:end;padding-bottom:3px;font-size:14px;font-weight:500}.link span{transition:transform .4s var(--ease);display:inline-block}.link:hover{border-color:var(--fg)}.link:hover span{transform:translate(4px)}@keyframes pulse{50%{opacity:.3}}.philosophy{background:var(--fg);color:var(--bg)}.philosophy .eyebrow{color:#6a6a6a}.footer{background:var(--bg);padding-block:clamp(56px,8vw,96px) 32px}.footer__top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding-bottom:56px;display:flex}.footer__bottom{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:24px;font-size:12px;display:flex}.footer__social{gap:24px;display:flex}.footer__social a{color:var(--muted);font-size:12px}.js .reveal{opacity:0;transition:opacity 1.2s var(--ease) var(--d,0s), transform 1.2s var(--ease) var(--d,0s);transform:translateY(26px)}.js .reveal.is-in{opacity:1;transform:none}@media (width<=1024px){.game__idx{grid-column:1/span 3}.game__desc{grid-area:2/4/auto/-1}.status{grid-area:1/4/auto/span 4}.link{grid-area:1/9/auto/-1}}@media (width<=720px){:root{--nav-h:60px}.nav__main{display:none}.nav__toggle{display:inline-flex}.grid>.eyebrow,.intro__body,.philosophy__body{grid-column:1/-1}.hero__foot{flex-direction:column;align-items:flex-start}.game__media{aspect-ratio:4/5}.game__meta{grid-template-columns:1fr 1fr}.game__idx{grid-column:1/-1}.game__desc{grid-area:auto/1/auto/-1}.status{grid-area:auto/1}.link{grid-area:auto/2}.footer__top,.footer__bottom{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;transition-delay:0s!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.hero .display .line>span{transform:none}.js .reveal{opacity:1;transform:none}.game__media canvas{transform:none}}.hero__hint{z-index:2;left:max(var(--gutter), calc((100vw - var(--max)) / 2 + var(--gutter)));top:calc(var(--nav-h) + 22px);letter-spacing:.1em;text-transform:uppercase;color:#f5f5f5cc;pointer-events:none;opacity:0;animation:hint-in 1s var(--ease) 3.2s forwards;transition:opacity .6s var(--ease);align-items:center;gap:10px;font-size:11px;display:flex;position:absolute}.hero__hint i{background:#ff5a40;border-radius:50%;width:6px;height:6px;animation:1.6s ease-in-out infinite pulse}.hint-touch{display:none}@media (hover:none){.hint-mouse{display:none}.hint-touch{display:inline}}.hero.has-fired .hero__hint{opacity:0;animation:none}@keyframes hint-in{to{opacity:1}}@media (prefers-reduced-motion:reduce){.hero__hint{display:none}}
