:root{
  --ink:#090909;
  --ink-2:#111111;
  --ink-3:#191919;
  --paper:#f2efe7;
  --paper-2:#d9d4c9;
  --muted:#8d8a84;
  --line:rgba(242,239,231,.17);
  --line-dark:rgba(9,9,9,.16);
  --signal:#ff4b12;
  --signal-soft:#ff6d3f;
  --acid:#d9ff43;
  --max:1420px;
  --header:88px;
  --sans:Arial,"Helvetica Neue",Helvetica,sans-serif;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.55;overflow-x:hidden}
body.nav-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
::selection{background:var(--signal);color:#fff}
.frame{width:min(calc(100% - 64px),var(--max));margin-inline:auto}
.narrow{max-width:880px}
.site-shell{min-height:100vh;isolation:isolate}
.site-main{position:relative;z-index:1}
.skip-link{position:fixed;left:20px;top:-120px;z-index:99999;background:var(--paper);color:var(--ink);padding:12px 18px;font:800 12px/1 var(--mono)}
.skip-link:focus{top:0}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .72s cubic-bezier(.2,.7,.2,1),transform .72s cubic-bezier(.2,.7,.2,1)}
.reveal.is-visible{opacity:1;transform:none}
.section{padding:150px 0}

/* Header */
.site-header{position:fixed;z-index:1000;inset:0 0 auto;height:var(--header);border-bottom:1px solid transparent;transition:background .25s,border-color .25s,backdrop-filter .25s}
.site-header.is-scrolled{background:rgba(9,9,9,.86);border-color:var(--line);backdrop-filter:blur(18px)}
.site-header__inner{height:100%;display:flex;align-items:center;gap:34px}
.brand-lockup{flex:0 0 auto}
.custom-logo-link{display:block}
.custom-logo{max-height:54px;width:auto}
.brand{display:flex;align-items:center;gap:14px;position:relative}
.brand__mark{width:50px;height:42px;display:flex;align-items:center;border-right:1px solid var(--line);padding-right:13px}
.brand__mark img{width:45px;height:auto}
.brand__type{display:grid;grid-template-columns:auto auto auto;align-items:end;column-gap:6px;row-gap:2px;line-height:.82}
.brand__type strong{font-size:13px;letter-spacing:-.04em;font-weight:950}
.brand__type i{font-style:normal;color:var(--signal);font-size:14px;font-weight:950}
.brand__type small{grid-column:1/-1;font:700 7px/1 var(--mono);letter-spacing:.16em;color:#8e8e8e;margin-top:4px}
.site-nav{margin-left:auto}
.site-nav__list{display:flex;gap:26px;align-items:center;list-style:none;margin:0;padding:0}
.site-nav__list a{font:800 10px/1 var(--mono);letter-spacing:.12em;color:#c7c3bb;position:relative;padding:15px 0;text-transform:uppercase}
.site-nav__list a::before{content:"";position:absolute;left:0;bottom:8px;width:0;height:2px;background:var(--signal);transition:width .22s}
.site-nav__list a:hover::before,.site-nav__list a:focus-visible::before{width:100%}
.header-contact{min-height:38px;border:1px solid var(--line);padding:0 13px;display:inline-flex;align-items:center;gap:20px;font:900 9px/1 var(--mono);letter-spacing:.14em;transition:background .2s,color .2s,border-color .2s}
.header-contact i{font-style:normal;color:var(--signal);font-size:15px}
.header-contact:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.menu-toggle{display:none;border:0;background:none;color:var(--paper);align-items:center;gap:12px;padding:10px 0;cursor:pointer}
.menu-toggle__label{font:900 10px/1 var(--mono);letter-spacing:.12em}
.menu-toggle__icon{width:24px;height:16px;position:relative;display:block}
.menu-toggle__icon i{position:absolute;left:0;width:100%;height:2px;background:currentColor;transition:transform .25s,top .25s}
.menu-toggle__icon i:first-child{top:3px}.menu-toggle__icon i:last-child{top:11px}
.nav-open .menu-toggle__icon i:first-child{top:7px;transform:rotate(45deg)}
.nav-open .menu-toggle__icon i:last-child{top:7px;transform:rotate(-45deg)}

/* Hero */
.hero{min-height:100svh;position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:var(--ink);padding-top:var(--header);border-bottom:1px solid var(--line)}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.25;background-image:radial-gradient(circle at 20% 20%,rgba(255,255,255,.045) 0 1px,transparent 1px),radial-gradient(circle at 75% 65%,rgba(255,255,255,.035) 0 1px,transparent 1px);background-size:17px 17px,23px 23px;mix-blend-mode:screen}
.hero__cursor-light{--mx:50%;--my:50%;position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle 370px at var(--mx) var(--my),rgba(255,75,18,.075),transparent 68%);opacity:.95}
.hero__backword{position:absolute;left:-.035em;top:35%;transform:translateY(-50%);font-size:min(37vw,560px);line-height:.68;font-weight:1000;letter-spacing:-.095em;color:transparent;-webkit-text-stroke:1px rgba(242,239,231,.075);white-space:nowrap;user-select:none}
.hero__layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,.72fr);align-items:end;gap:80px;padding-top:70px;padding-bottom:70px}
.hero__copyblock{padding-bottom:24px}
.hero__eyebrow{display:flex;align-items:center;gap:12px;font:800 9px/1 var(--mono);letter-spacing:.16em;color:#9b9790;text-transform:uppercase;margin-bottom:30px}
.hero__eyebrow span{width:34px;height:3px;background:var(--signal)}
.hero h1{font-size:clamp(62px,7.7vw,130px);line-height:.78;letter-spacing:-.075em;margin:0;max-width:850px;font-weight:1000;text-wrap:balance;text-transform:uppercase}
.hero__copyblock>p{max-width:670px;font-size:clamp(16px,1.25vw,20px);line-height:1.55;color:#aaa59d;margin:34px 0 32px}
.hero__actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:54px;padding:0 18px;font:900 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;transition:transform .2s,background .2s,color .2s,border-color .2s}
.btn i{font-style:normal;font-size:18px}
.btn:hover{transform:translateY(-2px)}
.btn--solid{min-width:190px;background:var(--signal);color:#fff;border:1px solid var(--signal)}
.btn--solid:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.btn--text{border-bottom:1px solid var(--line);padding-inline:0;min-height:44px;color:#c8c3bb}
.btn--text i{color:var(--signal)}
.hero__poster{transform-style:preserve-3d;transition:transform .32s cubic-bezier(.2,.75,.2,1)}
.poster{height:min(68vh,700px);min-height:510px;position:relative;display:block;overflow:hidden;background:#131313;border:1px solid rgba(242,239,231,.13);box-shadow:0 40px 100px rgba(0,0,0,.35)}
.poster::after{content:"";position:absolute;inset:0;pointer-events:none;border:9px solid rgba(9,9,9,.18)}
.poster__image,.poster__image img{width:100%;height:100%}
.poster__image img{object-fit:cover;filter:saturate(.92) contrast(1.05)}
.poster__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18),transparent 38%,rgba(0,0,0,.88) 92%)}
.poster__top{position:absolute;z-index:3;left:0;right:0;top:0;padding:16px 18px;display:flex;justify-content:space-between;font:900 9px/1 var(--mono);letter-spacing:.14em;border-bottom:1px solid rgba(255,255,255,.18);color:#f2efe7}
.poster__bottom{position:absolute;z-index:3;left:20px;right:20px;bottom:20px;display:grid;gap:5px}
.poster__bottom small{font:900 8px/1 var(--mono);letter-spacing:.15em;color:var(--signal-soft)}
.poster__bottom strong{font-size:clamp(29px,3.1vw,54px);font-weight:1000;letter-spacing:-.055em;text-transform:uppercase;line-height:.9}
.poster__bottom i{font:800 9px/1 var(--mono);font-style:normal;letter-spacing:.12em;margin-top:10px;color:#bcb7ae}
.poster--empty{background:var(--paper);color:var(--ink)}
.poster--empty::after{border-color:rgba(9,9,9,.08)}
.poster__cut{position:absolute;background:var(--signal);transform:rotate(-17deg)}
.poster__cut--a{width:58%;height:120%;left:48%;top:-10%}
.poster__cut--b{width:16%;height:130%;left:16%;top:-16%;background:var(--ink)}
.poster__brand{position:absolute;z-index:3;left:20px;top:58px;display:flex;align-items:center;gap:12px}
.poster__brand img{width:78px;height:auto;filter:brightness(0)}
.poster__brand span{font:900 8px/1 var(--mono);letter-spacing:.15em;writing-mode:vertical-rl}
.poster--empty .poster__top{color:var(--ink);border-color:rgba(9,9,9,.18)}
.poster__empty-type{position:absolute;z-index:3;left:21px;top:43%;transform:translateY(-50%)}
.poster__empty-type span{display:block;font:900 9px/1 var(--mono);letter-spacing:.17em;margin-bottom:9px}
.poster__empty-type strong{display:block;font-size:clamp(58px,7.1vw,114px);line-height:.72;letter-spacing:-.085em;font-weight:1000}
.poster--empty .poster__bottom{color:var(--paper)}
.poster--empty .poster__bottom small{color:var(--acid)}
.hero__rail{position:relative;z-index:4;height:54px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);align-items:center}
.hero__rail div{font:800 8px/1 var(--mono);letter-spacing:.13em;color:#75716b;border-right:1px solid var(--line);height:100%;display:flex;align-items:center;gap:10px;padding:0 16px}
.hero__rail div:first-child{padding-left:0}.hero__rail div:last-child{border-right:0}.hero__rail span{color:var(--signal)}

/* Ticker */
.ticker{height:104px;background:var(--signal);color:#fff;overflow:hidden;display:flex;align-items:center;border-bottom:1px solid #7e1f04}
.ticker__track{--ticker-skew:0deg;width:max-content;display:flex;align-items:center;gap:24px;white-space:nowrap;animation:ticker 26s linear infinite;transform:skewX(var(--ticker-skew));transition:transform .25s}
.ticker__track span{font-size:56px;font-weight:1000;letter-spacing:-.055em;line-height:1}
.ticker__track i{font-style:normal;font-size:18px}
@keyframes ticker{to{transform:translateX(-50%) skewX(var(--ticker-skew))}}

/* Section shared */
.section-index{display:grid;grid-template-columns:54px max-content 1fr max-content;align-items:center;gap:18px;margin-bottom:72px;font:900 9px/1 var(--mono);letter-spacing:.15em;text-transform:uppercase}
.section-index>span{width:54px;height:32px;display:grid;place-items:center;border:1px solid currentColor;color:var(--signal)}
.section-index>strong{font-weight:900}.section-index>i{height:1px;background:currentColor;opacity:.2}.section-index>small{font:inherit;color:#75716b}

/* Manifesto */
.manifesto{background:var(--paper);color:var(--ink)}
.manifesto .section-index>i{background:var(--ink)}
.manifesto__grid{display:grid;grid-template-columns:1.15fr .72fr;gap:120px;align-items:end;padding-bottom:90px}
.manifesto__grid h2{font-size:clamp(60px,8.1vw,142px);line-height:.76;letter-spacing:-.08em;font-weight:1000;margin:0;text-transform:uppercase}
.manifesto__grid h2 em{font-style:normal;color:var(--signal)}
.manifesto__copy{max-width:520px;padding-bottom:12px}
.manifesto__copy p{font-size:18px;line-height:1.55;margin:0 0 24px;color:#3e3b36}
.inline-arrow{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line-dark);padding-top:15px;margin-top:40px;font:900 9px/1 var(--mono);letter-spacing:.14em}
.inline-arrow span{font-size:18px;color:var(--signal)}
.discipline-list{border-top:1px solid var(--line-dark)}
.discipline{display:grid;grid-template-columns:70px 1fr 1.2fr 40px;align-items:center;gap:24px;min-height:118px;border-bottom:1px solid var(--line-dark);position:relative;transition:padding .22s,background .22s}
.discipline:hover{padding-inline:18px;background:#e7e2d8}
.discipline>span{font:900 10px/1 var(--mono);color:var(--signal)}
.discipline h3{font-size:30px;letter-spacing:-.05em;margin:0;font-weight:1000}
.discipline p{color:#666159;margin:0;max-width:520px}
.discipline>i{font-style:normal;font-size:24px;text-align:right;color:var(--signal)}

/* Showroom */
.showroom{background:var(--ink);color:var(--paper)}
.showroom__heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:60px}
.showroom__heading h2{font-size:clamp(58px,7.2vw,120px);line-height:.76;letter-spacing:-.075em;margin:0;font-weight:1000}
.showroom__heading>a{font:900 9px/1 var(--mono);letter-spacing:.15em;border-bottom:1px solid var(--signal);padding-bottom:8px;margin-bottom:6px}
.games-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 22px}
.games-grid--home .game-card:first-child{grid-column:span 2;display:grid;grid-template-columns:1.45fr .55fr;border-top:1px solid var(--line);padding-top:22px;gap:24px}
.games-grid--home .game-card:first-child .game-card__media{aspect-ratio:16/7}
.game-card__media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#151515;border:1px solid var(--line)}
.game-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.75,.2,1),filter .6s}
.game-card:hover .game-card__media img{transform:scale(1.025);filter:contrast(1.03) saturate(1.08)}
.game-card__corner{position:absolute;right:0;bottom:0;background:var(--paper);color:var(--ink);padding:10px 12px;font:900 8px/1 var(--mono);letter-spacing:.14em;transform:translateY(101%);transition:transform .25s}
.game-card:hover .game-card__corner{transform:none}
.game-card__placeholder{position:absolute;inset:0;background:linear-gradient(135deg,#151515 0 48%,var(--signal) 48% 62%,#242424 62%);display:grid;place-items:center;overflow:hidden}
.game-card__placeholder span{position:absolute;left:20px;top:18px;font:900 9px/1 var(--mono);letter-spacing:.12em}
.game-card__placeholder strong{font-size:clamp(70px,9vw,170px);letter-spacing:-.08em;line-height:1;font-weight:1000}
.game-card__placeholder i{position:absolute;width:210%;height:1px;background:rgba(255,255,255,.22);transform:rotate(-27deg)}
.game-card__media--demo{background:var(--paper);color:var(--ink);display:flex;flex-direction:column;justify-content:flex-end;padding:22px}
.demo-no{position:absolute;left:20px;top:16px;font:900 10px/1 var(--mono)}
.demo-slash{position:absolute;background:var(--signal);width:38%;height:160%;right:17%;top:-28%;transform:rotate(18deg)}
.game-card__media--demo strong{font-size:clamp(44px,6vw,92px);line-height:.78;letter-spacing:-.07em;position:relative;z-index:2;font-weight:1000}
.game-card__media--demo small{position:relative;z-index:2;font:900 8px/1 var(--mono);letter-spacing:.15em;margin-top:12px}
.game-card__body{padding-top:18px}
.game-card__meta{display:flex;gap:14px;align-items:center;justify-content:space-between;color:#77736c;font:800 8px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase}
.status-pill{display:inline-flex;align-items:center;gap:7px;color:#bcb7af}
.status-pill i{width:6px;height:6px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 3px rgba(255,75,18,.12)}
.status-pill--live i{background:var(--acid);box-shadow:0 0 0 3px rgba(217,255,67,.12)}
.game-card__body h3{font-size:clamp(30px,3.4vw,58px);line-height:.86;letter-spacing:-.06em;text-transform:uppercase;margin:18px 0 12px;font-weight:1000}
.game-card__body p{color:#8e8981;margin:0 0 18px;max-width:650px;font-size:15px}
.text-link{display:inline-flex;align-items:center;gap:18px;font:900 9px/1 var(--mono);letter-spacing:.13em;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:7px}
.text-link span{color:var(--signal);font-size:14px}
.progress-track{height:3px;background:#242424;margin:20px 0;overflow:hidden}.progress-track span,.progress-track i{display:block;height:100%;width:var(--progress,0%);background:var(--signal)}

/* Legal band */
.legal-band{background:#1b1a18;color:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.legal-band__grid{display:grid;grid-template-columns:1fr .78fr;gap:100px;align-items:center}
.legal-band__title{position:relative}
.section-no{display:inline-grid;place-items:center;width:54px;height:32px;border:1px solid var(--signal);color:var(--signal);font:900 9px/1 var(--mono);margin-bottom:30px}
.legal-band h2{font-size:clamp(54px,6.4vw,106px);line-height:.79;letter-spacing:-.072em;margin:0;font-weight:1000}
.legal-band__content>p{font-size:20px;color:#aaa59d;max-width:550px;margin:0 0 48px}
.legal-stack{position:relative;min-height:270px}
.legal-stack>a{position:absolute;z-index:4;inset:0 28px 28px 0;background:var(--paper);color:var(--ink);padding:28px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;align-items:start;border:1px solid #fff;transition:transform .25s}
.legal-stack>a:hover{transform:translate(-6px,-6px)}
.legal-stack>a span{font:900 8px/1 var(--mono);letter-spacing:.15em}.legal-stack>a strong{font-size:38px;letter-spacing:-.05em;align-self:end}.legal-stack>a i{grid-row:1/3;grid-column:2;font-style:normal;font-size:28px;color:var(--signal)}
.legal-stack__sheet{position:absolute;z-index:2;inset:14px 14px 14px 14px;border:1px solid #6d6962;background:#2d2b28}.legal-stack__sheet--2{z-index:1;inset:28px 0 0 28px;background:var(--signal);border-color:var(--signal)}

/* Contact */
.contact-section{background:var(--signal);color:#fff;padding:130px 0;position:relative;overflow:hidden}
.contact-section::after{content:"HJD";position:absolute;right:-.05em;bottom:-.12em;font-size:31vw;line-height:.7;font-weight:1000;letter-spacing:-.1em;color:rgba(255,255,255,.055);pointer-events:none}
.contact-section__grid{position:relative;z-index:2;display:grid;grid-template-columns:1.25fr .75fr;gap:100px;align-items:end}
.contact-kicker{font:900 9px/1 var(--mono);letter-spacing:.16em}
.contact-section h2{font-size:clamp(62px,8.7vw,145px);line-height:.75;letter-spacing:-.08em;margin:20px 0 0;font-weight:1000}
.contact-section h2 em{font-style:normal;color:var(--acid)}
.contact-section__action{border-top:1px solid rgba(255,255,255,.38);padding-top:18px;display:grid;gap:16px}
.contact-section__action>span,.contact-section__action>small{font:900 8px/1 var(--mono);letter-spacing:.15em}
.contact-section__action a{font-size:clamp(24px,2.3vw,40px);font-weight:1000;letter-spacing:-.04em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.38);padding-bottom:18px;word-break:break-word}
.contact-section__action a i{font-style:normal;color:var(--acid)}
.contact-section__action>small{opacity:.7}

/* Footer */
.site-footer{background:var(--ink);color:var(--paper);padding:72px 0 28px;border-top:1px solid var(--line)}
.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;padding-bottom:58px;border-bottom:1px solid var(--line)}
.footer-brand{display:flex;align-items:center;gap:18px}
.footer-brand img{width:76px;height:auto}
.footer-brand span{display:grid;gap:7px}.footer-brand strong{font-size:23px;letter-spacing:-.04em}.footer-brand small{font:900 8px/1 var(--mono);letter-spacing:.15em;color:#77736d}
.footer-top>p{max-width:560px;color:#88837c;margin:0;font-size:17px}
.footer-middle{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:52px 0}
.footer-label{display:block;font:900 8px/1 var(--mono);letter-spacing:.16em;color:#77736d;margin-bottom:14px}.footer-email{font-size:clamp(24px,3.2vw,50px);letter-spacing:-.055em;font-weight:1000;border-bottom:2px solid var(--signal)}
.footer-links{display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:18px}.footer-links a{font:900 9px/1 var(--mono);letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid var(--line);padding-bottom:10px}.footer-links a:hover{border-color:var(--signal)}
.footer-bottom{display:grid;grid-template-columns:1fr auto auto;gap:24px;border-top:1px solid var(--line);padding-top:24px;font:800 8px/1 var(--mono);letter-spacing:.12em;color:#68645e}

/* Archives */
.archive-main{background:var(--ink)}
.archive-hero,.standard-hero,.policy-hero{position:relative;padding:calc(var(--header) + 110px) 0 100px;border-bottom:1px solid var(--line);overflow:hidden;background:var(--ink)}
.archive-hero::after,.standard-hero::after,.policy-hero::after{content:"HJD";position:absolute;right:-.03em;bottom:-.15em;font-size:30vw;line-height:.7;font-weight:1000;letter-spacing:-.1em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.06);pointer-events:none}
.archive-hero__grid{display:none}
.archive-hero__inner,.standard-hero>.frame,.policy-hero__inner{position:relative;z-index:2}
.kicker{display:flex;align-items:center;gap:10px;font:900 9px/1 var(--mono);letter-spacing:.15em;color:var(--signal);text-transform:uppercase}.kicker::before{content:"";width:28px;height:3px;background:currentColor}
.archive-hero h1,.standard-hero h1,.policy-hero h1{font-size:clamp(64px,8.4vw,140px);line-height:.76;letter-spacing:-.08em;text-transform:uppercase;margin:28px 0 20px;max-width:1100px;font-weight:1000}
.archive-hero p,.standard-hero p{color:#908b84;max-width:700px;font-size:20px;margin:0}
.games-grid--archive{grid-template-columns:repeat(2,minmax(0,1fr))}
.empty-state{border:1px solid var(--line);padding:70px;min-height:360px;display:flex;flex-direction:column;justify-content:flex-end;background:#111}.empty-state>span{font:900 8px/1 var(--mono);letter-spacing:.15em;color:var(--signal)}.empty-state h2{font-size:48px;letter-spacing:-.06em;margin:15px 0 10px}.empty-state p{color:#858078;max-width:560px}
.pagination-wrap{margin-top:70px}.nav-links{display:flex;gap:8px}.page-numbers{min-width:42px;height:42px;border:1px solid var(--line);display:grid;place-items:center;font:900 9px/1 var(--mono)}.page-numbers.current,.page-numbers:hover{background:var(--signal);border-color:var(--signal);color:#fff}

/* Policy archive */
.legal-archive{background:var(--paper);color:var(--ink)}
.archive-hero--legal{background:var(--ink);color:var(--paper)}
.legal-layout{display:grid;grid-template-columns:330px 1fr;gap:70px;align-items:start}.legal-sidebar{position:sticky;top:120px;border-top:4px solid var(--signal);padding-top:22px}.legal-sidebar__mark{display:block;font-size:58px;line-height:1;color:var(--signal)}.legal-sidebar h2{font-size:30px;letter-spacing:-.05em;margin:12px 0}.legal-sidebar p{color:#656159}.legal-sidebar__status{margin-top:26px;display:flex;align-items:center;gap:9px;font:900 8px/1 var(--mono);letter-spacing:.12em}.legal-sidebar__status i{width:7px;height:7px;border-radius:50%;background:#6acb67}
.policy-grid{display:grid;gap:12px}.policy-card{background:#e6e1d7;border:1px solid var(--line-dark);padding:25px;display:grid;grid-template-columns:48px 1fr;gap:18px;transition:transform .2s,background .2s}.policy-card:hover{transform:translateX(5px);background:#ece7de}.policy-card__icon{width:48px;height:48px;border:1px solid var(--signal);display:grid;place-items:center;color:var(--signal);font-size:22px}.policy-card__meta{font:900 8px/1 var(--mono);letter-spacing:.13em;color:#7a756e}.policy-card h3{font-size:27px;letter-spacing:-.045em;margin:7px 0 9px}.policy-card p{color:#69645d;margin:0}.policy-card__footer{margin-top:17px;display:flex;align-items:center;justify-content:space-between;gap:20px}.policy-card__footer time{font:800 8px/1 var(--mono);letter-spacing:.12em}.policy-card .text-link{border-color:rgba(9,9,9,.25)}

/* Game single */
.game-hero{min-height:82vh;position:relative;display:flex;align-items:flex-end;padding:calc(var(--header) + 80px) 0 90px;background:#111;overflow:hidden;border-bottom:1px solid var(--line)}
.game-hero__cover{position:absolute;inset:0}.game-hero__cover img{width:100%;height:100%;object-fit:cover}.game-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.66) 48%,rgba(0,0,0,.16)),linear-gradient(0deg,rgba(0,0,0,.75),transparent 55%)}
.game-hero__content{position:relative;z-index:2}.back-link{display:inline-block;font:900 9px/1 var(--mono);letter-spacing:.13em;color:#aaa59e;margin-bottom:40px}.game-hero__meta{display:flex;gap:18px;align-items:center;font:800 9px/1 var(--mono);letter-spacing:.12em;color:#aaa59e;text-transform:uppercase}.game-hero h1{font-size:clamp(70px,10vw,170px);line-height:.72;letter-spacing:-.09em;margin:24px 0;text-transform:uppercase;font-weight:1000;max-width:1120px}.game-hero__content>p{max-width:700px;font-size:22px;color:#c0bbb3}.game-hero__actions{display:flex;gap:12px;margin-top:35px}.game-hero .btn--ghost{border:1px solid rgba(255,255,255,.35);padding:0 18px}.game-detail-section{background:var(--paper);color:var(--ink)}.game-detail-grid{display:grid;grid-template-columns:1fr 360px;gap:110px;align-items:start}.game-specs{position:sticky;top:120px;border-top:4px solid var(--signal);padding-top:20px}.game-specs dl{margin:30px 0}.game-specs dl>div{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:15px 0;border-bottom:1px solid var(--line-dark)}.game-specs dt{font:900 8px/1 var(--mono);letter-spacing:.12em;color:#817c74}.game-specs dd{margin:0;font-weight:800}.spec-progress{margin-top:28px}.spec-progress>span,.spec-progress>strong{font:900 8px/1 var(--mono);letter-spacing:.12em}.spec-progress>strong{float:right}.game-specs .progress-track{background:#d0cbc2}.game-specs .progress-track i{background:var(--signal)}

/* Policy single / generic */
.policy-single{background:var(--paper);color:var(--ink)}.policy-hero{background:var(--ink);color:var(--paper)}.policy-hero__meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}.policy-hero__meta>span{border:1px solid var(--line);min-width:170px;padding:12px 14px;display:grid;gap:4px}.policy-hero__meta small{font:900 7px/1 var(--mono);letter-spacing:.12em;color:#77736d}.policy-hero__meta strong{font-size:14px}.policy-content-section{background:var(--paper)}.policy-document-wrap{display:grid;grid-template-columns:100px minmax(0,860px);gap:70px;justify-content:center}.policy-doc-rail{border-right:1px solid var(--line-dark);display:flex;flex-direction:column;align-items:center;gap:16px;font:900 8px/1 var(--mono);letter-spacing:.12em}.policy-doc-rail strong{writing-mode:vertical-rl}.policy-doc-rail i{width:1px;height:120px;background:var(--signal)}
.entry-content{font-size:18px;line-height:1.75}.entry-content h2,.entry-content h3,.entry-content h4{line-height:1.05;letter-spacing:-.045em;margin-top:1.7em}.entry-content h2{font-size:42px}.entry-content h3{font-size:30px}.entry-content a{text-decoration:underline;text-decoration-color:var(--signal);text-underline-offset:3px}.entry-content blockquote{margin:34px 0;padding:20px 25px;border-left:4px solid var(--signal);background:rgba(0,0,0,.035)}.entry-content hr{border:0;border-top:1px solid var(--line-dark);margin:45px 0}.standard-page{background:var(--paper);color:var(--ink)}.standard-hero{background:var(--ink);color:var(--paper)}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.post-card{border:1px solid var(--line);padding:24px;background:#111;min-height:330px;display:flex;flex-direction:column}.post-card__date{font:900 8px/1 var(--mono);letter-spacing:.13em;color:var(--signal)}.post-card h2{font-size:31px;letter-spacing:-.045em;margin:20px 0 10px}.post-card p{color:#89847d}.post-card .text-link{margin-top:auto;align-self:flex-start}.comments-area{margin-top:70px;border-top:1px solid var(--line-dark);padding-top:30px}
.error-page{min-height:100vh;background:var(--signal);color:#fff}.error-panel{min-height:100vh;display:flex;align-items:center;padding:calc(var(--header) + 70px) 0 90px}.error-code{display:block;font-size:clamp(130px,29vw,460px);line-height:.55;font-weight:1000;letter-spacing:-.1em;color:rgba(255,255,255,.13)}.error-page h1{font-size:clamp(50px,7vw,110px);line-height:.82;letter-spacing:-.07em;margin:30px 0 18px}.error-page p{font-size:20px}.error-page .btn--primary{background:#fff;color:var(--ink);display:inline-flex;margin-top:20px}

/* Mobile */
@media(max-width:1100px){
  .frame{width:min(calc(100% - 40px),var(--max))}
  .site-nav{position:fixed;inset:var(--header) 0 0;background:var(--ink);display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .25s,visibility .25s,transform .25s}.nav-open .site-nav{opacity:1;visibility:visible;transform:none}.site-nav__list{display:grid;gap:6px;text-align:center}.site-nav__list a{font-size:26px;letter-spacing:-.04em;padding:16px}.header-contact{display:none}.menu-toggle{display:flex;margin-left:auto}
  .hero__layout{grid-template-columns:1fr .7fr;gap:34px}.hero h1{font-size:clamp(58px,8.5vw,105px)}.hero__poster{align-self:center}.poster{min-height:470px}
  .manifesto__grid{gap:60px}.legal-band__grid,.contact-section__grid{gap:60px}.footer-top,.footer-middle{gap:40px}.game-detail-grid{gap:55px}
}
@media(max-width:820px){
  :root{--header:72px}.frame{width:min(calc(100% - 28px),var(--max))}.section{padding:92px 0}.site-header__inner{gap:16px}.brand__type small{display:none}.brand__type strong{font-size:11px}.brand__mark{width:44px}.brand__mark img{width:38px}
  .hero{min-height:auto}.hero__layout{grid-template-columns:1fr;padding-top:86px;padding-bottom:30px}.hero__copyblock{padding-bottom:0}.hero h1{font-size:clamp(52px,15vw,88px);max-width:720px}.hero__copyblock>p{font-size:16px}.hero__poster{width:100%;max-width:620px}.poster{height:62vh;min-height:500px}.hero__rail{height:auto;grid-template-columns:1fr 1fr}.hero__rail div{min-height:44px;border-bottom:1px solid var(--line)}
  .ticker{height:76px}.ticker__track span{font-size:40px}
  .section-index{grid-template-columns:46px max-content 1fr}.section-index>span{width:46px}.section-index>small{display:none}.manifesto__grid{grid-template-columns:1fr;gap:40px;padding-bottom:60px}.manifesto__grid h2{font-size:clamp(55px,14vw,92px)}.discipline{grid-template-columns:44px 1fr 32px;padding:20px 0}.discipline p{grid-column:2/3}.discipline>i{grid-column:3;grid-row:1/3}.discipline h3{font-size:25px}
  .showroom__heading{align-items:start;flex-direction:column}.showroom__heading h2{font-size:clamp(52px,14vw,88px)}.games-grid,.games-grid--archive{grid-template-columns:1fr}.games-grid--home .game-card:first-child{grid-column:auto;display:block;padding-top:0;border-top:0}.games-grid--home .game-card:first-child .game-card__media{aspect-ratio:16/10}
  .legal-band__grid,.contact-section__grid,.footer-top,.footer-middle,.game-detail-grid,.legal-layout,.policy-document-wrap{grid-template-columns:1fr}.legal-band h2{font-size:clamp(50px,13vw,84px)}.legal-band__content>p{font-size:17px}.contact-section h2{font-size:clamp(56px,14vw,92px)}
  .footer-links{grid-template-columns:1fr}.footer-bottom{grid-template-columns:1fr;gap:12px}.legal-sidebar,.game-specs{position:static}.policy-doc-rail{display:none}.post-grid{grid-template-columns:1fr}.archive-hero,.standard-hero,.policy-hero{padding:calc(var(--header) + 70px) 0 70px}.archive-hero h1,.standard-hero h1,.policy-hero h1{font-size:clamp(58px,15vw,94px)}.game-hero{min-height:72vh}.game-hero h1{font-size:clamp(65px,17vw,110px)}.game-hero__actions{flex-wrap:wrap}.empty-state{padding:40px 25px}
}
@media(max-width:520px){
  .brand__type{display:none}.brand__mark{border-right:0;padding-right:0}.hero__eyebrow{font-size:7.5px}.hero h1{font-size:clamp(50px,16.5vw,78px)}.hero__actions{align-items:flex-start;flex-direction:column}.btn--text{width:auto}.poster{min-height:440px}.poster__empty-type strong{font-size:72px}.hero__rail{grid-template-columns:1fr}.hero__rail div{border-right:0}.ticker__track span{font-size:34px}.section-index{margin-bottom:48px}.manifesto__grid h2{font-size:clamp(49px,15.5vw,76px)}.showroom__heading h2{font-size:clamp(48px,15vw,78px)}.game-card__body h3{font-size:40px}.legal-stack{min-height:230px}.legal-stack>a strong{font-size:28px}.contact-section__action a{font-size:21px}.footer-email{font-size:25px}.game-hero__meta{flex-wrap:wrap}.policy-hero__meta>span{width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.ticker__track{animation:none}.hero__poster,.game-card__media img,.discipline{transition:none}}
/* Compatibility buttons used by game/detail templates */
.btn--primary{min-width:190px;background:var(--signal);color:#fff;border:1px solid var(--signal)}
.btn--primary:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.btn--ghost{border:1px solid var(--line);color:var(--paper)}
.btn--ghost:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
