


:root, [data-theme="dark"] {
  --wd-scrim-soft: var(--color-scrim-soft);
  --wd-scrim-strong: var(--color-scrim-strong);
  --wd-scrim-solid: var(--color-scrim-solid);
  --wd-scrim-clear: var(--color-alpha-black-0);
  --wd-card-shadow: none;
  --wd-card-blur: none;
}
[data-theme="light"] {
  --wd-scrim-soft: color-mix(in srgb, var(--color-bg-canvas) 64%, transparent);
  --wd-scrim-strong: color-mix(in srgb, var(--color-bg-canvas) 86%, transparent);
  --wd-scrim-solid: color-mix(in srgb, var(--color-bg-canvas) 95%, transparent);
  --wd-scrim-clear: color-mix(in srgb, var(--color-bg-canvas) 0%, transparent);
  --wd-card-shadow: var(--elevation-raised);
  --wd-card-blur: blur(var(--blur-backdrop));
  --nav-bg-scrolled: var(--wd-scrim-solid);
}
:root { --wd-scrim-fade: var(--wd-scrim-strong) 0%, var(--wd-scrim-strong) 50%, var(--wd-scrim-clear) 100%; }
[data-theme="light"] .logo--dark, [data-theme="dark"] .logo--light { display: none !important; }

*, *::before, *::after { box-sizing: border-box; }
html { background: var(--color-bg-canvas); -webkit-text-size-adjust: 100%; overflow-x: clip; }
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
body {
  margin: 0;
  background: var(--color-bg-canvas);
  color: var(--color-text-primary);
  font-family: var(--type-body-font-family);
  font-size: var(--type-body-font-size);
  line-height: var(--type-body-line-height);
  font-optical-sizing: auto;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
img, video { display: block; max-width: 100%; height: auto; }
a { color: var(--link-color); text-underline-offset: var(--link-underline-offset); text-decoration-thickness: var(--link-underline-thickness); }
a:hover { color: var(--link-color-hover); }
:focus-visible { outline: var(--focus-ring-width) solid var(--focus-ring-color); outline-offset: var(--focus-ring-offset); }
:focus:not(:focus-visible) { outline: none; }
button { font: inherit; color: inherit; }
ul, ol { margin: 0; padding: 0; list-style: none; }
h1, h2, h3, p, figure { margin: 0; }


h1 {
  font-family: var(--type-h1-font-family);
  font-weight: var(--type-h1-font-weight);
  font-size: var(--font-size-fluid-h1);
  line-height: var(--type-h1-line-height);
  letter-spacing: var(--type-h1-letter-spacing);
}
h2, .h2 {
  font-family: var(--type-h2-font-family);
  font-weight: var(--type-h2-font-weight);
  font-size: var(--font-size-fluid-h2);
  line-height: var(--type-h2-line-height);
  letter-spacing: var(--type-h2-letter-spacing);
  text-wrap: balance;
}
h3 {
  font-family: var(--type-h4-font-family);
  font-weight: var(--type-h4-font-weight);
  font-size: var(--font-size-fluid-h4);
  line-height: var(--type-h4-line-height);
  letter-spacing: var(--type-h4-letter-spacing);
}
.h-xl { font-size: var(--font-size-fluid-h1); line-height: var(--type-h1-line-height); letter-spacing: var(--type-h1-letter-spacing); font-weight: var(--type-h1-font-weight); }
.lede {
  font-size: var(--font-size-fluid-lede);
  line-height: var(--type-lede-line-height);
  letter-spacing: var(--type-lede-letter-spacing);
  color: var(--color-text-secondary);
  max-width: 34em;
}
.label {
  font-family: var(--type-label-font-family);
  font-size: var(--font-size-fluid-label);
  font-weight: var(--type-label-font-weight);
  line-height: var(--type-label-line-height);
  letter-spacing: var(--type-label-letter-spacing);
  text-transform: var(--type-label-text-transform);
  color: var(--color-text-accent);
}
.hud {
  font-family: var(--type-hud-font-family);
  font-size: var(--type-hud-font-size);
  font-weight: var(--type-hud-font-weight);
  line-height: var(--type-hud-line-height);
  letter-spacing: var(--type-hud-letter-spacing);
  text-transform: var(--type-hud-text-transform);
  font-feature-settings: var(--font-feature-tabular);
  color: var(--color-text-secondary);
}
.tnum { font-feature-settings: var(--font-feature-tabular); }
.caption-sm { color: var(--color-text-tertiary); }
p.caption-sm, .caption-sm { font-size: var(--type-hud-font-size); }
.stat {
  font-family: var(--type-stat-font-family);
  font-weight: var(--type-stat-font-weight);
  font-size: var(--font-size-fluid-stat);
  line-height: var(--type-stat-line-height);
  letter-spacing: var(--type-stat-letter-spacing);
  color: var(--color-text-hud);
}
.stat-sm {
  font-family: var(--type-h3-font-family);
  font-weight: var(--type-stat-font-weight);
  font-size: var(--font-size-fluid-h3);
  letter-spacing: var(--type-stat-letter-spacing);
  color: var(--color-text-hud);
}
.eyebrow { margin-bottom: var(--layout-stack-eyebrow-to-heading); }
.text-link {
  display: inline-flex; align-items: center; gap: var(--space-2);
  min-height: var(--button-height-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--link-color);
  text-decoration: none;
}
.text-link:hover { color: var(--link-color-hover); text-decoration: underline; }
.actions { display: flex; flex-wrap: wrap; gap: var(--layout-stack-actions-gap); align-items: center; margin-top: var(--layout-stack-body-to-actions); }
.dot { display: inline-block; width: var(--space-2); height: var(--space-2); border-radius: var(--radius-pill); background: var(--color-live-dot); margin-right: var(--space-2); vertical-align: middle; }
.dawn {
  background: linear-gradient(var(--gradient-dawn-angle), var(--color-gradient-dawn));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.sig {
  background: linear-gradient(var(--gradient-signature-angle), var(--color-gradient-signature));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}

[data-theme="light"] .sig, [data-theme="light"] .dawn {
  color: var(--color-text-primary);
  -webkit-background-clip: border-box; background-clip: border-box;
  -webkit-box-decoration-break: clone; box-decoration-break: clone;
  background-repeat: no-repeat;
  background-size: 100% 0.36em;
  background-position: 0 84%;
  padding-inline: 0.04em;
}
[data-theme="light"] .sig { background-image: linear-gradient(var(--gradient-signature-angle), var(--color-gradient-signature)); }
[data-theme="light"] .dawn { background-image: linear-gradient(var(--gradient-signature-angle), var(--color-gradient-dawn)); }


.hud-link {
  position: relative;
  display: inline-flex; align-items: center; gap: var(--space-2);
  min-height: var(--button-height-sm);
  padding: 0 var(--space-2);
  border: 0; background: none; cursor: pointer;
  font-family: var(--type-hud-font-family);
  font-size: var(--type-hud-font-size);
  font-weight: var(--type-hud-font-weight);
  letter-spacing: var(--type-hud-letter-spacing);
  text-transform: var(--type-hud-text-transform);
  color: var(--color-text-primary);
}
.hud-link::after, .hud-box::after, .format::after, .dial a::after, .toggle__btn::after {
  content: "";
  position: absolute; inset: 0; pointer-events: none;
  --b: var(--button-ghost-bracket); --s: var(--space-2); --w: var(--border-width-hairline);
  background:
    linear-gradient(var(--b), var(--b)) top left / var(--s) var(--w) no-repeat,
    linear-gradient(var(--b), var(--b)) top left / var(--w) var(--s) no-repeat,
    linear-gradient(var(--b), var(--b)) top right / var(--s) var(--w) no-repeat,
    linear-gradient(var(--b), var(--b)) top right / var(--w) var(--s) no-repeat,
    linear-gradient(var(--b), var(--b)) bottom left / var(--s) var(--w) no-repeat,
    linear-gradient(var(--b), var(--b)) bottom left / var(--w) var(--s) no-repeat,
    linear-gradient(var(--b), var(--b)) bottom right / var(--s) var(--w) no-repeat,
    linear-gradient(var(--b), var(--b)) bottom right / var(--w) var(--s) no-repeat;
}
.hud-link::after, .format::after, .dial a::after, .toggle__btn::after { opacity: 0; transform: scale(var(--button-ghost-bracket-scale-from)); transition: opacity var(--motion-duration-fast) var(--motion-easing-standard), transform var(--motion-duration-base) var(--motion-easing-spring); }
.hud-link:hover::after, .hud-link[aria-pressed="true"]::after, .format:hover::after, .format:focus-visible::after, .dial a:hover::after, .toggle__btn:hover::after, .toggle__btn[aria-pressed="true"]::after { opacity: 1; transform: scale(1); }
.hud-box { position: relative; border: var(--border-width-hairline) solid var(--color-border-subtle); background: var(--wd-scrim-strong); box-shadow: var(--wd-card-shadow); -webkit-backdrop-filter: var(--wd-card-blur); backdrop-filter: var(--wd-card-blur); }
.hud-box::after { inset: calc(var(--space-1) * -1); }

.skip {
  position: fixed; z-index: var(--z-skip-link); left: var(--space-4); top: var(--space-4);
  padding: var(--space-3) var(--space-4); background: var(--color-bg-surface); color: var(--color-text-primary);
  transform: translateY(-200%);
}
.skip:focus { transform: none; }


.loader {
  position: fixed; inset: 0; z-index: var(--z-overlay);
  display: grid; place-items: center;
  background: var(--color-bg-brand);
  pointer-events: none;
  transition: opacity var(--motion-duration-slow) var(--motion-easing-standard), visibility 0s linear var(--motion-duration-slow);
}
.loader__inner { display: grid; justify-items: center; gap: var(--space-3); }
.loader__bar { display: block; width: var(--space-32); height: var(--border-width-hairline); background: var(--color-border-default); overflow: hidden; }
.loader__bar i { display: block; height: 100%; width: 100%; background: var(--color-text-accent); transform-origin: left; transform: scaleX(0); }
.loader__pct { color: var(--color-text-hud); }
html:not(.is-booting) .loader, html.is-static .loader { opacity: 0; visibility: hidden; }


.world { position: fixed; inset: 0; z-index: var(--z-base); pointer-events: none; }
.world canvas { width: 100%; height: 100%; display: block; opacity: 0; transition: opacity var(--motion-duration-entrance) var(--motion-easing-standard); }
.world.is-ready canvas { opacity: 1; }
.world.is-pointer { pointer-events: auto; }
html.is-static .world { display: none; }
.labels { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.tag3d {
  position: absolute; left: 0; top: 0;
  display: flex; align-items: flex-end; gap: var(--space-2);
  white-space: nowrap; will-change: transform, opacity;
  opacity: 0;
}
.tag3d__line { width: var(--space-12); height: var(--space-10); border-left: var(--border-width-hairline) solid var(--color-text-accent); border-top: var(--border-width-hairline) solid transparent; transform: skewX(-38deg); transform-origin: bottom left; }
.tag3d__dot { position: absolute; left: calc(var(--space-1) * -1); bottom: calc(var(--space-1) * -1); width: var(--space-2); height: var(--space-2); border: var(--border-width-hairline) solid var(--color-text-accent); }
.tag3d__txt { display: grid; gap: var(--space-1); padding-bottom: var(--space-10); }
.tag3d__txt b { font-weight: var(--font-weight-semibold); color: var(--color-text-primary); }
.tag3d .hud { color: var(--color-text-primary); }
.tag3d .hud em { font-style: normal; color: var(--color-text-hud); }
.tag3d.is-click { pointer-events: auto; cursor: pointer; }
.tag3d.is-click:hover .tag3d__line, .tag3d.is-click:hover .tag3d__dot { border-color: var(--color-text-link-hover); }


.hud-frame { position: fixed; inset: 0; z-index: var(--z-header); pointer-events: none; }
.hud-frame > * { position: absolute; pointer-events: auto; }
.hud-tl { left: var(--layout-gutter-fluid); top: var(--space-6); }
.logo { display: inline-flex; align-items: center; min-height: var(--button-height-sm); }
.logo img { height: var(--logo-height-nav-desktop); width: auto; }
.hud-tr { right: var(--layout-gutter-fluid); top: var(--space-6); display: flex; align-items: center; gap: var(--space-4); }
.nav { display: flex; gap: var(--space-1); }
.nav a {
  display: inline-flex; align-items: center; min-height: var(--button-height-sm); padding: 0 var(--space-3);
  font-size: var(--type-label-font-size); font-weight: var(--type-label-font-weight);
  letter-spacing: var(--type-label-letter-spacing); text-transform: var(--type-label-text-transform);
  color: var(--nav-link); text-decoration: none;
  transition: color var(--motion-duration-fast) var(--motion-easing-standard);
}
.nav a:hover, .nav a.is-active { color: var(--nav-link-active); }
.nav a.is-active { box-shadow: inset 0 calc(var(--nav-indicator-height) * -1) 0 var(--nav-indicator); }
.hud-bl { left: var(--layout-gutter-fluid); bottom: var(--space-5); display: grid; gap: var(--space-1); justify-items: start; }
.scroll-hint { color: var(--color-text-primary);  transition: opacity var(--motion-duration-slow) var(--motion-easing-standard); }
.sound svg { width: var(--space-5); height: var(--space-5); }
.sound .sound__on { display: none; }
.sound[aria-pressed="true"] .sound__on { display: inline; }
.sound[aria-pressed="true"] .sound__off { display: none; }
.sound b { font-weight: var(--font-weight-bold); }
.hud-br { right: var(--layout-gutter-fluid); bottom: var(--space-6); display: grid; gap: var(--space-2); justify-items: end; text-align: right; pointer-events: none; }
.scene-index { color: var(--color-text-primary); }
.scene-index .num { color: var(--color-text-hud); }
.preview-note { color: var(--color-text-tertiary); max-width: 26em; }


.index {
  position: fixed; inset: 0; z-index: var(--z-modal);
  background: var(--wd-scrim-solid);
  backdrop-filter: blur(var(--blur-backdrop)); -webkit-backdrop-filter: blur(var(--blur-backdrop));
  clip-path: inset(0 0 0 0);
}
.index[hidden] { display: none; }
.index.is-anim { animation: wipe-in var(--motion-duration-slow) var(--motion-easing-in-out); }
@keyframes wipe-in { from { clip-path: inset(0 0 100% 0); } to { clip-path: inset(0 0 0 0); } }
.index__inner { height: 100%; overflow: auto; padding: var(--space-6) var(--layout-gutter-fluid) var(--space-12); display: flex; flex-direction: column; gap: var(--space-8); }
.index__top { display: flex; justify-content: space-between; align-items: center; }
.index__list { display: grid; gap: var(--space-1); margin-top: var(--space-8); }
.index__list a {
  display: flex; align-items: baseline; gap: var(--space-5); padding: var(--space-2) 0;
  font-family: var(--type-h3-font-family); font-weight: var(--type-h3-font-weight);
  font-size: var(--font-size-fluid-h3); line-height: var(--type-h3-line-height); letter-spacing: var(--type-h3-letter-spacing);
  color: var(--color-text-primary); text-decoration: none;
}
.index__list a .hud { color: var(--color-text-hud); min-width: var(--space-8); }
.index__list a:hover { color: var(--color-text-accent); }
.index .btn { align-self: flex-start; }


.journey { position: relative; z-index: var(--z-raised); overflow-x: clip; }
.chapter { position: relative; display: flex; align-items: center; padding: var(--space-32) var(--layout-gutter-fluid); }
.still { display: none; }
html.is-3d .chapter { min-height: 55vh; padding-block: var(--space-8); }
html.is-3d .chapter--hero { min-height: 100vh; min-height: 100svh; align-items: flex-end; padding-bottom: var(--space-24); }
html.is-3d .chapter--proof { min-height: 40vh; align-items: flex-end; }
html.is-3d .chapter--intro { min-height: 40vh; }
html.is-3d .chapter--stop { min-height: 46vh; justify-content: flex-end; padding-block: var(--space-4); }
html.is-3d .chapter--pair { min-height: 56vh; }
html.is-3d .chapter--cities { min-height: 55vh; }
html.is-3d .chapter--mark { min-height: 48vh; justify-content: center; text-align: center; align-items: flex-end; }
html.is-3d .chapter--brands { min-height: 55vh; }
html.is-3d .chapter--formats { min-height: 52vh; justify-content: flex-end; }
html.is-3d .chapter--team, html.is-3d .chapter--news { min-height: 60vh; }
html.is-3d .chapter--closing { min-height: 55vh; }
html.is-3d .chapter--end { min-height: 15vh; }
html.is-3d .stop-card { width: min(22rem, 100%); }
html.is-3d .stop-card figure img { aspect-ratio: 16 / 9; }
html.is-3d .manifesto { padding: var(--space-8) var(--space-8); gap: var(--space-6); }
html.is-3d .proof { padding-bottom: 0; }
html.is-3d [data-fade] { opacity: var(--o, 0); transform: translateY(calc((1 - var(--o, 0)) * var(--motion-distance-rise))); }

.scrim-fade { position: relative; }
.scrim-fade::before, .scrim-side::before, .scrim-side-r::before, .scrim-up::before {
  content: ""; position: absolute; z-index: -1; pointer-events: none;
}
.scrim-fade::before { inset: calc(var(--space-24) * -1) calc(var(--layout-gutter-fluid) * -1) calc(var(--space-24) * -1) calc(var(--layout-gutter-fluid) * -1); background: radial-gradient(ellipse at 20% 70%, var(--wd-scrim-strong) 0%, var(--wd-scrim-soft) 45%, var(--wd-scrim-clear) 75%); }
.scrim-side, .scrim-side-r, .scrim-up { position: relative; isolation: isolate; }
.scrim-side::before { inset: calc(var(--space-20) * -1) calc(var(--space-20) * -1) calc(var(--space-20) * -1) calc(var(--layout-gutter-fluid) * -1 - var(--space-10)); background: radial-gradient(ellipse at 30% 50%, var(--wd-scrim-strong) 0%, var(--wd-scrim-soft) 50%, var(--wd-scrim-clear) 72%); }
.scrim-side-r::before { inset: calc(var(--space-20) * -1) calc(var(--layout-gutter-fluid) * -1) calc(var(--space-20) * -1) calc(var(--space-20) * -1); background: radial-gradient(ellipse at 70% 50%, var(--wd-scrim-strong) 0%, var(--wd-scrim-soft) 50%, var(--wd-scrim-clear) 72%); }
.scrim-up::before { inset: calc(var(--space-16) * -1) calc(var(--layout-gutter-fluid) * -1) calc(var(--space-32) * -1); background: linear-gradient(var(--gradient-scrim-strong-fade-angle), var(--wd-scrim-fade)); }


.hero { width: 100%; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: var(--space-10); }
.hero__copy { max-width: 46rem; }
.hero h1 { margin-bottom: var(--layout-stack-heading-to-body); }
.now-playing { width: clamp(15rem, 22vw, 20rem); margin-bottom: var(--space-12); }
.now-playing__media { aspect-ratio: 16 / 9; overflow: hidden; background: var(--color-bg-surface); }
.now-playing video { width: 100%; height: 100%; object-fit: cover; }
.now-playing figcaption { display: flex; justify-content: space-between; align-items: center; padding: 0 var(--space-1) 0 var(--space-3); }
.now-playing figcaption .hud { color: var(--color-text-primary); }
.now-playing .caption-sm { padding: 0 var(--space-3) var(--space-3); }


.proof { width: 100%; padding-bottom: var(--space-8); }
.proof__title { margin-bottom: var(--space-6); color: var(--color-text-primary); }
.readouts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--layout-grid-gap-fluid); border-top: var(--border-width-hairline) solid var(--stat-rule); }
.readout-item { display: grid; align-content: start; gap: var(--space-2); padding-top: var(--space-5); }
.readout-item .label { color: var(--color-text-primary); }
.asof { color: var(--stat-meta); }
.def summary { list-style: none; margin-left: calc(var(--space-2) * -1); color: var(--color-text-accent); }
.def summary::-webkit-details-marker { display: none; }
.def p { font-size: var(--type-body-sm-font-size); line-height: var(--type-body-sm-line-height); color: var(--color-text-secondary); max-width: 26em; padding-bottom: var(--space-2); }
.press-line { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-1) var(--space-6); margin-top: var(--space-8); padding-top: var(--space-4); border-top: var(--border-width-hairline) solid var(--color-border-subtle); }
.press-line .hud { margin-right: var(--space-2); }
.press-line a { display: inline-flex; align-items: center; min-height: var(--button-height-sm); font-family: var(--type-h4-font-family); font-weight: var(--font-weight-bold); font-size: var(--font-size-18); letter-spacing: var(--font-tracking-h4); color: var(--color-text-secondary); text-decoration: none; }
.press-line a:hover { color: var(--color-text-primary); }


.panel { max-width: 36rem; }
.panel h2 { margin-bottom: var(--layout-stack-heading-to-body); }
.panel p + p { margin-top: var(--space-4); }
.panel--center { max-width: 50rem; margin: 0 auto; display: grid; justify-items: center; gap: var(--space-6); }
.panel--right { margin-left: auto; }
.city-list { margin-top: var(--space-8); display: grid; gap: var(--space-3); }
.city-list li { display: flex; gap: var(--space-4); align-items: center; padding-bottom: var(--space-3); border-bottom: var(--border-width-hairline) solid var(--color-border-subtle); font-weight: var(--font-weight-semibold); }
.city-list .hud { min-width: 9rem; }
.live-tag { color: var(--color-live-text); }
.dev-tag { color: var(--color-text-accent); }


.stop-card { width: min(26rem, 100%); padding: var(--space-3) var(--space-3) var(--space-5); display: grid; gap: var(--space-2); background: var(--wd-scrim-solid); }
.stop-card figure { position: relative; margin-bottom: var(--space-2); }
.stop-card figure img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.stop-card figcaption { position: absolute; left: var(--space-2); bottom: var(--space-2); padding: var(--space-1) var(--space-2); background: var(--wd-scrim-strong); color: var(--color-text-secondary); }
.stop-card > :not(figure) { padding-inline: var(--space-3); }
.stop-card p:not(.hud) { color: var(--color-text-secondary); }
.stop-card .text-link { justify-self: start; padding-inline: var(--space-3); }


.pair { width: 100%; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-12); align-items: center; }
.pair__copy h2 { margin-bottom: var(--layout-stack-heading-to-body); }
.pair__copy p { color: var(--color-text-secondary); max-width: 28em; }
.toggle { display: inline-flex; gap: var(--space-2); margin-top: var(--space-8); }
.toggle__btn { position: relative; min-height: var(--button-height-sm); padding: 0 var(--space-5); border: var(--border-width-hairline) solid var(--color-border-default); background: var(--wd-scrim-strong); cursor: pointer; font-weight: var(--font-weight-semibold); }
.toggle__btn[aria-pressed="true"] { border-color: var(--color-text-accent); color: var(--color-text-accent); }
.pair__media { aspect-ratio: 16 / 10; overflow: hidden; }
.pair__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.pair__real { clip-path: inset(0 calc(100% - var(--wipe)) 0 0); }
.pair__edge { position: absolute; top: 0; bottom: 0; left: var(--wipe); width: var(--border-width-thick); background: var(--color-text-accent); }
.pair__tag { position: absolute; top: var(--space-3); padding: var(--space-1) var(--space-2); background: var(--wd-scrim-strong); color: var(--color-text-primary); }
.pair__tag--real { left: var(--space-3); }
.pair__tag--game { right: var(--space-3); }
.pair__media figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: var(--space-6) var(--space-3) var(--space-3); background: linear-gradient(var(--gradient-scrim-strong-fade-angle), var(--wd-scrim-fade)); color: var(--color-text-secondary); }


.formats { display: grid; gap: var(--space-2); margin: var(--space-5) 0; }
.format {
  position: relative; width: 100%; display: grid; grid-template-columns: 6rem 1fr; grid-template-areas: "k n" "k s";
  gap: var(--space-1) var(--space-4); align-items: center; text-align: left; cursor: pointer;
  min-height: var(--space-16); padding: var(--space-3) var(--space-4);
  border: var(--border-width-hairline) solid var(--color-border-subtle); background: var(--wd-scrim-solid);
  transition: background-color var(--motion-duration-fast) var(--motion-easing-standard), border-color var(--motion-duration-fast) var(--motion-easing-standard);
}
.format:hover, .format.is-hot { background: var(--color-bg-surface); border-color: var(--color-border-default); }
.format .hud { grid-area: k; color: var(--color-text-accent); }
.format__name { grid-area: n; font-family: var(--type-h4-font-family); font-weight: var(--type-h4-font-weight); font-size: var(--font-size-20); letter-spacing: var(--font-tracking-h4); }
.format__stat { grid-area: s; color: var(--color-text-hud); font-size: var(--type-body-sm-font-size); font-weight: var(--font-weight-semibold); }

.format__price, .format__dur { display: block; white-space: nowrap; }
.nowrap { white-space: nowrap; }
.format__dur { color: var(--color-text-tertiary); font-weight: var(--font-weight-regular); }


.manifesto { max-width: 52rem; margin: 0 auto; padding: var(--space-12) var(--space-10); background: var(--wd-scrim-solid); box-shadow: var(--wd-card-shadow); -webkit-backdrop-filter: var(--wd-card-blur); backdrop-filter: var(--wd-card-blur); border: var(--border-width-hairline) solid var(--color-border-subtle); display: grid; gap: var(--space-8); }
.manifesto h2 { font-size: var(--font-size-fluid-h3); line-height: var(--type-h3-line-height); letter-spacing: var(--type-h3-letter-spacing); }
.manifesto__cols { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-10); }
.manifesto h3.hud { margin-bottom: var(--space-4); color: var(--color-text-accent); }
.people { display: grid; gap: var(--space-3); }
.people li { color: var(--color-text-secondary); font-size: var(--type-body-sm-font-size); line-height: var(--type-body-sm-line-height); }
.people b { display: block; color: var(--color-text-primary); font-size: var(--type-body-font-size); font-weight: var(--font-weight-semibold); }
.manifesto .caption-sm { margin-top: var(--space-3); }
.funding { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--space-3); padding-top: var(--space-6); border-top: var(--border-width-hairline) solid var(--color-border-subtle); font-weight: var(--font-weight-semibold); }
.manifesto .actions { margin-top: 0; }


.news { width: 100%; }
.news__head { display: flex; justify-content: space-between; align-items: end; gap: var(--space-6); margin-bottom: var(--space-8); }
.news__head .text-link { white-space: nowrap; }
.signals { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--layout-grid-gap-fluid); }
.signal { padding: var(--space-3) var(--space-3) var(--space-5); display: grid; gap: var(--space-3); align-content: start; background: var(--wd-scrim-solid); }
.signal img { width: 100%; aspect-ratio: 1200 / 630; object-fit: cover; }
.signal .tag { color: var(--color-text-accent); margin-right: var(--space-2); }
.signal p, .signal h3 { padding-inline: var(--space-2); }
.signal h3 a { color: var(--color-text-primary); text-decoration: none; }
.signal h3 a:hover { text-decoration: underline; }
.signal h3 a::before { content: ""; position: absolute; inset: 0; }
.signal { position: relative; }
.signal:hover { border-color: var(--color-border-default); }


.chapter--closing { justify-content: center; text-align: center; align-items: flex-end; }
.closing { display: grid; justify-items: center; gap: var(--space-6); padding-bottom: var(--space-8); }
.closing h2 { font-size: var(--font-size-fluid-h1); line-height: var(--type-h1-line-height); letter-spacing: var(--type-h1-letter-spacing); font-weight: var(--type-h1-font-weight); }
.dial { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-2); }
.dial a { position: relative; display: inline-flex; align-items: center; gap: var(--space-2); min-height: var(--button-height-sm); padding: 0 var(--space-4); color: var(--color-text-primary); text-decoration: none; font-weight: var(--font-weight-semibold); white-space: nowrap; }
.dial a::before { content: "["; color: var(--color-text-tertiary); }
.dial li { position: relative; display: flex; align-items: center; }
.dial li::after { content: "]"; margin-left: calc(var(--space-3) * -1); padding-right: var(--space-4); color: var(--color-text-tertiary); pointer-events: none; }
.dial a:hover { color: var(--color-text-accent); }


.footer { position: relative; z-index: var(--z-raised); background: var(--color-bg-canvas); border-top: var(--border-width-hairline) solid var(--color-border-subtle); padding: var(--space-20) var(--layout-gutter-fluid) var(--space-10); display: grid; gap: var(--space-16); }
.footer__top { display: flex; justify-content: space-between; align-items: end; gap: var(--space-6); flex-wrap: wrap; }
.footer__logo { height: var(--logo-height-footer); width: auto; }
.footer__sign { font-family: var(--type-h3-font-family); font-weight: var(--type-h3-font-weight); font-size: var(--font-size-fluid-h3); letter-spacing: var(--type-h3-letter-spacing); color: var(--color-text-secondary); }
.footer__cols { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--layout-grid-gap-fluid); }
.footer__cols h2 { margin-bottom: var(--space-3); font-size: var(--type-hud-font-size); line-height: var(--type-hud-line-height); letter-spacing: var(--type-hud-letter-spacing); }
.footer__cols a { display: inline-flex; align-items: center; min-height: var(--button-height-sm); color: var(--color-text-primary); text-decoration: none; }
.footer__cols a:hover { color: var(--color-text-accent); }
.footer__base { display: flex; justify-content: space-between; flex-wrap: wrap; gap: var(--space-3); padding-top: var(--space-6); border-top: var(--border-width-hairline) solid var(--color-border-subtle); color: var(--color-text-tertiary); font-size: var(--type-body-sm-font-size); }


.detail { position: fixed; inset: 0; z-index: var(--z-modal); display: grid; place-items: center end; padding: var(--space-6) var(--layout-gutter-fluid); background: var(--color-overlay-backdrop); }
.detail[hidden] { display: none; }
.detail__inner {
  width: min(30rem, 100%); max-height: calc(100vh - var(--space-12)); overflow: auto;
  padding: var(--space-6); display: grid; gap: var(--space-4);
  background: var(--color-bg-surface); border: var(--border-width-hairline) solid var(--color-border-default);
  box-shadow: var(--elevation-dialog);
}
.detail.is-anim .detail__inner { animation: panel-in var(--motion-duration-slow) var(--motion-easing-standard); }
@keyframes panel-in { from { opacity: 0; transform: translateX(var(--motion-distance-rise)); } to { opacity: 1; transform: none; } }
.detail__top { display: flex; justify-content: space-between; align-items: center; }
.detail__top .hud { color: var(--color-text-accent); }
.detail h2 { font-size: var(--font-size-fluid-h3); }
.detail__media img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.detail__media figcaption { padding: var(--space-2) var(--space-3); }
.detail__stat { display: flex; align-items: baseline; flex-wrap: wrap; gap: var(--space-2); font-weight: var(--font-weight-semibold); }
#detailBody { color: var(--color-text-secondary); }


html.is-still .journey, html.is-still .footer, html.is-still .hud-frame, html.is-still .labels, html.is-still .loader,
html.is-still .journey *, html.is-still .footer *, html.is-still .hud-frame *, html.is-still .labels * { visibility: hidden !important; }


html.is-static .hud-frame { position: sticky; top: 0; height: auto; display: flex; justify-content: space-between; align-items: center; padding: var(--space-3) var(--layout-gutter-fluid); background: var(--nav-bg-scrolled); border-bottom: var(--border-width-hairline) solid var(--nav-border); backdrop-filter: blur(var(--blur-backdrop)); -webkit-backdrop-filter: blur(var(--blur-backdrop)); }
html.is-static .hud-frame > * { position: static; }
html.is-static .hud-bl, html.is-static .hud-br { display: none; }
html.is-static .chapter { overflow: hidden; isolation: isolate; min-height: 0; padding-block: var(--layout-section-fluid); }
html.is-static .still { display: block; position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; opacity: var(--opacity-muted); }
html.is-static .chapter--hero { min-height: 92vh; min-height: 92svh; align-items: flex-end; padding-top: var(--space-32); }
html.is-static .chapter--hero .still { opacity: var(--opacity-full); object-position: 50% 30%; }
html.is-static .chapter--proof, html.is-static .chapter--team, html.is-static .chapter--news, html.is-static .chapter--closing, html.is-static .chapter--formats, html.is-static .chapter--pair { background: radial-gradient(ellipse at 50% 0%, var(--color-bg-brand) 0%, var(--color-bg-canvas) 70%); }
html.is-static .chapter--proof { background: var(--color-bg-canvas); }
html.is-static .chapter--hero::after, html.is-static .chapter--cities::after, html.is-static .chapter--brands::after, html.is-static .chapter--mark::after, html.is-static .chapter--closing::after, html.is-static .chapter--team::after, html.is-static .chapter--news::after, html.is-static .chapter--formats::after, html.is-static .chapter--intro::after, html.is-static .chapter--proof::after {
  content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(var(--gradient-scrim-strong-fade-angle), var(--wd-scrim-fade));
}
html.is-static .chapter--proof { padding-top: var(--space-12); }
html.is-static .chapter--mark { justify-content: center; text-align: center; }
html.is-static .chapter--end { display: none; }
html.is-static .stops { display: grid; grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr)); gap: var(--layout-grid-gap-fluid); padding: 0 var(--layout-gutter-fluid) var(--layout-section-fluid); }
html.is-static .chapter--stop { padding: 0; }
html.is-static .stop-card { width: 100%; height: 100%; }
html.is-static .chapter--formats { padding-top: 0; }
html.is-static .chapter--brands { padding-bottom: var(--space-12); }


@media (max-width: 1100px) {
  .nav { display: none; }
  .readouts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .signals { grid-template-columns: 1fr 1fr; }
  .signals li:last-child { display: none; }
}
@media (max-width: 900px) {
  .hero { grid-template-columns: 1fr; }
  .now-playing { width: min(22rem, 100%); margin: 0; }
  .pair { grid-template-columns: 1fr; gap: var(--space-8); }
  .manifesto { padding: var(--space-8) var(--space-5); }
  .manifesto__cols { grid-template-columns: 1fr; gap: var(--space-8); }
  .footer__cols { grid-template-columns: 1fr 1fr; }
  .hud-br .preview-note { display: none; }
}
@media (max-width: 600px) {
  .logo img { height: var(--logo-height-nav-mobile); }
  .hud-tr { gap: var(--space-1); }
  .chapter { padding-inline: var(--layout-gutter-mobile); }
  html.is-static .chapter--hero { min-height: 0; padding-top: var(--space-24); padding-bottom: var(--space-12); }
  html.is-static .chapter--hero .still { height: 58%; object-position: 60% 50%; }
  .hero .actions .btn--hero { width: 100%; }
  .hero .actions .btn--hero .btn__face { width: 100%; }
  .signals { grid-template-columns: 1fr; }
  .signals li:last-child { display: grid; }
  .readouts { gap: var(--space-4); }
  .stat { font-size: var(--font-size-mobile-stat); }
  .footer__cols { grid-template-columns: 1fr 1fr; }
  .format { grid-template-columns: 1fr; grid-template-areas: "k" "n" "s"; }
  html.is-static .stops { padding-inline: var(--layout-gutter-mobile); grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 84%; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; padding-bottom: var(--space-12); }
  html.is-static .chapter--stop { scroll-snap-align: start; }
  html.is-static .chapter { padding-block: var(--space-12); }
  html.is-static .chapter--mark .h-xl, .closing h2 { font-size: var(--font-size-mobile-h1); }
  .signals { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 84%; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; padding-bottom: var(--space-2); }
  .signal { scroll-snap-align: start; }
  .people li { font-size: var(--type-body-sm-font-size); }
  .manifesto { gap: var(--space-6); }
  .footer { gap: var(--space-10); padding-top: var(--space-12); }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: var(--motion-duration-entrance) !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; }
  .index.is-anim, .detail.is-anim .detail__inner { animation: fade-in var(--motion-duration-entrance) var(--motion-easing-standard); }
  @keyframes fade-in { from { opacity: 0; } to { opacity: 1; } }
}



[data-theme="light"] .scrim-side::before {
  inset: -100vh calc((var(--space-32) + var(--space-12)) * -1) -100vh calc(var(--layout-gutter-fluid) * -1);
  background: linear-gradient(90deg, var(--wd-scrim-solid) 0, var(--wd-scrim-solid) calc(100% - var(--space-32)), var(--wd-scrim-clear) 100%);
}
[data-theme="light"] .scrim-side-r::before {
  inset: -100vh calc(var(--layout-gutter-fluid) * -1) -100vh calc((var(--space-32) + var(--space-12)) * -1);
  background: linear-gradient(270deg, var(--wd-scrim-solid) 0, var(--wd-scrim-solid) calc(100% - var(--space-32)), var(--wd-scrim-clear) 100%);
}
[data-theme="light"] .scrim-fade::before {
  inset: calc(var(--space-20) * -1) calc(var(--space-32) * -1) calc(var(--space-24) * -1) calc(var(--layout-gutter-fluid) * -1);
  background: linear-gradient(90deg, var(--wd-scrim-solid) 0, var(--wd-scrim-solid) calc(100% - var(--space-24)), var(--wd-scrim-clear) 100%);
  -webkit-mask-image: linear-gradient(180deg, var(--wd-scrim-clear), var(--color-neutral-1000) var(--space-16));
  mask-image: linear-gradient(180deg, var(--wd-scrim-clear), var(--color-neutral-1000) var(--space-16));
}
[data-theme="light"] .scrim-up::before {
  background: linear-gradient(0deg, var(--wd-scrim-solid) 0, var(--wd-scrim-solid) calc(100% - var(--space-16)), var(--wd-scrim-clear) 100%);
}

[data-theme="light"] .chapter--mark .panel, [data-theme="light"] .closing__text, [data-theme="light"] .pair__copy, [data-theme="light"] .news__head { position: relative; isolation: isolate; }
[data-theme="light"] .chapter--mark .panel::before, [data-theme="light"] .closing__text::before, [data-theme="light"] .pair__copy::before, [data-theme="light"] .news__head::before {
  content: ""; position: absolute; z-index: -1; pointer-events: none;
  background: var(--wd-scrim-solid);
  --wd-fade-x: linear-gradient(90deg, var(--wd-scrim-clear), var(--color-neutral-1000) var(--space-24), var(--color-neutral-1000) calc(100% - var(--space-24)), var(--wd-scrim-clear));
  --wd-fade-y: linear-gradient(180deg, var(--wd-scrim-clear), var(--color-neutral-1000) var(--space-10), var(--color-neutral-1000) calc(100% - var(--space-10)), var(--wd-scrim-clear));
  -webkit-mask-image: var(--wd-fade-x), var(--wd-fade-y); -webkit-mask-composite: source-in;
  mask-image: var(--wd-fade-x), var(--wd-fade-y); mask-composite: intersect;
}
[data-theme="light"] .chapter--mark .panel::before, [data-theme="light"] .closing__text::before { inset: calc(var(--space-12) * -1) calc(var(--space-32) * -1); }
[data-theme="light"] .pair__copy::before { inset: calc(var(--space-16) * -1) calc(var(--space-24) * -1) calc(var(--space-16) * -1) calc(var(--layout-gutter-fluid) * -1 - var(--space-24)); }
[data-theme="light"] .news__head::before { inset: calc(var(--space-10) * -1) calc(var(--space-24) * -1) calc(var(--space-4) * -1); }

html.is-3d[data-theme="light"] .hud-frame::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: var(--space-32); background: linear-gradient(180deg, var(--wd-scrim-strong), var(--wd-scrim-soft) 45%, var(--wd-scrim-clear)); pointer-events: none; }

html.is-3d[data-theme="light"] .hud-bl > *, html.is-3d[data-theme="light"] .hud-br { background: var(--wd-scrim-strong); -webkit-backdrop-filter: blur(var(--blur-backdrop)); backdrop-filter: blur(var(--blur-backdrop)); }
html.is-3d[data-theme="light"] .hud-bl > .scroll-hint { padding: var(--space-1) var(--space-2); }
html.is-3d[data-theme="light"] .hud-br { padding: var(--space-2) var(--space-3); right: calc(var(--layout-gutter-fluid) - var(--space-3)); bottom: var(--space-4); }

[data-theme="light"] .chapter--formats .panel > .hud { width: fit-content; padding: var(--space-1) var(--space-2); background: var(--wd-scrim-strong); }

[data-theme="light"] .stat, [data-theme="light"] .stat-sm { color: var(--stat-number); }

[data-theme="light"] .tag3d .hud { justify-self: start; padding: var(--space-0-5) var(--space-2); background: var(--wd-scrim-strong); }
[data-theme="light"] .tag3d__dot { background: var(--color-bg-canvas); }

html.is-static[data-theme="light"] .scrim-side::before, html.is-static[data-theme="light"] .scrim-side-r::before,
html.is-static[data-theme="light"] .scrim-fade::before, html.is-static[data-theme="light"] .scrim-up::before { display: none; }

html.is-3d[data-theme="light"] .hud-br { bottom: max(var(--space-4), env(safe-area-inset-bottom)); max-width: calc(100vw - var(--layout-gutter-fluid) * 2); }
html.is-3d[data-theme="light"] .hud-bl { bottom: max(var(--space-4), env(safe-area-inset-bottom)); }
html.is-3d.is-footer .hud-bl, html.is-3d.is-footer .hud-br { opacity: 0; visibility: hidden; transition: opacity var(--motion-duration-fast) var(--motion-easing-standard), visibility 0s linear var(--motion-duration-fast); }

html.is-3d[data-theme="light"] .hud-frame::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: calc(var(--space-24) + var(--space-10)); background: linear-gradient(180deg, var(--color-bg-canvas) 0, var(--color-bg-canvas) var(--space-24), var(--wd-scrim-clear) 100%); pointer-events: none; opacity: 0; transition: opacity var(--motion-duration-fast) var(--motion-easing-standard); }
html.is-3d.is-under[data-theme="light"] .hud-frame::after { opacity: 1; }
html.is-3d[data-theme="light"] .hud-frame > * { z-index: 1; }

html.is-static[data-theme="light"] .hud-frame { background: var(--color-bg-canvas); }

html.is-static body { overflow-x: visible; }
html.is-static .hud-frame { bottom: auto; }


.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.closing__text { display: grid; justify-items: center; gap: var(--space-6); }
.closer { position: relative; display: grid; justify-items: center; align-content: center; gap: var(--space-4); width: 100%; max-width: 30rem; margin-inline: auto; }
html.is-3d .chapter--closing { min-height: 86vh; align-items: center; justify-content: stretch; text-align: left; }
html.is-3d .closing { width: 100%; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: var(--space-12); padding-bottom: 0; }
html.is-3d .closing__text { justify-items: start; }
html.is-3d .closing .dial { justify-content: flex-start; }
.closer__card { display: grid; justify-items: center; gap: var(--space-1); text-align: center; min-width: min(100%, 18rem); padding: var(--space-3) var(--space-5); background: var(--wd-scrim-solid); border: var(--border-width-hairline) solid var(--color-border-subtle); box-shadow: var(--wd-card-shadow); }
.closer__stop { color: var(--color-text-accent); }
.closer__tool { font-family: var(--type-h4-font-family); font-weight: var(--type-h4-font-weight); font-size: var(--font-size-20); letter-spacing: var(--font-tracking-h4); color: var(--color-text-primary); }
.closer__play { min-height: var(--button-height-sm); }
.closer__note { color: var(--color-text-tertiary); }

.vox { display: block; width: 100%; height: auto; overflow: visible; }
.vx-s { fill: var(--color-neutral-300); }
.vx-f { fill: var(--color-bg-canvas); stroke: var(--color-neutral-300); stroke-width: 0.05; }
.vx-s.vx-k, .mv.vx-k .vx-s { fill: var(--color-neutral-900); }
.vx-f.vx-k, .mv.vx-k .vx-f { fill: var(--color-neutral-700); stroke: none; }
.vx-s.vx-a, .mv.vx-a .vx-s { fill: var(--color-lilac-900); }
.vx-f.vx-a, .mv.vx-a .vx-f { fill: var(--color-lilac-700); stroke: none; }
.vx-s.vx-w, .mv.vx-w .vx-s { fill: var(--color-neutral-400); }
.vx-f.vx-w, .mv.vx-w .vx-f { fill: var(--color-neutral-200); stroke: none; }


.closer__hit { position: relative; display: block; width: 100%; padding: var(--space-4); border: 0; background: none; cursor: pointer; color: inherit; }
html.is-3d .closer--1 .closer__hit { aspect-ratio: 4 / 3; }
.mv { transition: transform var(--motion-duration-slow) var(--motion-easing-spring) var(--d, 0ms); }
.mv rect { transition: fill var(--motion-duration-base) var(--motion-easing-standard) var(--d, 0ms); }
.closer--1 .closer__hit:hover .vox--morph, .closer--1 .closer__hit:focus-visible .vox--morph { filter: drop-shadow(0 var(--space-2) 0 var(--color-border-subtle)); }


.closer--2 { --kc: var(--button-height-sm); --kc-o: calc(var(--kc) + var(--space-2) + var(--space-0-5)); }
.kp { position: relative; width: min(100%, 27.5rem); aspect-ratio: 440 / 240; margin-top: calc(var(--space-32) + var(--space-8)); }
.kp__body { display: block; width: 100%; height: 100%; overflow: visible; }
.kp__slab { fill: var(--color-neutral-900); }
.kp__face { fill: var(--color-bg-canvas); stroke: var(--color-neutral-900); stroke-width: 2; }
.kp__well { fill: var(--color-neutral-50); stroke: var(--color-border-strong); stroke-width: 1; }
.kp__led { fill: var(--color-lilac-700); }
.kp__keys { position: absolute; inset: 0; }
.kc-wrap { position: absolute; transform: translate(-50%, -50%); animation: kc-float 3.4s var(--motion-easing-in-out) infinite alternate; }
.kc-wrap.kc--dpad { left: 26.6%; top: 45%; }
.kc-wrap.kc--n { left: 73.4%; top: calc(45% - var(--kc-o)); animation-delay: -0.4s; }
.kc-wrap.kc--e { left: calc(73.4% + var(--kc-o)); top: 45%; animation-delay: -1.1s; }
.kc-wrap.kc--s { left: 73.4%; top: calc(45% + var(--kc-o)); animation-delay: -1.8s; }
.kc-wrap.kc--w { left: calc(73.4% - var(--kc-o)); top: 45%; animation-delay: -2.5s; }
@keyframes kc-float { from { translate: 0 0; } to { translate: 0 calc(var(--space-1) * -1); } }
.kc {
  display: grid; place-items: center; width: var(--kc); height: var(--kc); padding: 0; cursor: pointer;
  border: var(--border-width-thick) solid var(--color-neutral-900); background: var(--color-bg-canvas); color: var(--color-text-primary);
  font-family: var(--type-hud-font-family); font-weight: var(--font-weight-bold); font-size: var(--font-size-14); letter-spacing: var(--font-tracking-label);
  box-shadow: 0 var(--space-1) 0 var(--color-neutral-900);
  transition: transform var(--motion-duration-fast) var(--motion-easing-spring), box-shadow var(--motion-duration-fast) var(--motion-easing-standard), background-color var(--motion-duration-fast) var(--motion-easing-standard), color var(--motion-duration-fast) var(--motion-easing-standard);
}
.kc:hover { transform: translateY(calc(var(--space-0-5) * -1)); box-shadow: 0 calc(var(--space-1) + var(--space-0-5)) 0 var(--color-neutral-900); }
.kc:active, .kc[aria-pressed="true"] { transform: translateY(var(--space-1)); box-shadow: 0 0 0 var(--color-neutral-900); background: var(--color-action-primary-bg); border-color: var(--color-action-primary-bg); color: var(--color-action-primary-text); }
.kc--dpad .kc { width: calc(var(--kc) * 3); height: calc(var(--kc) * 3); border: 0; background: none; box-shadow: none; }
.kc--dpad .kc::before, .kc--dpad .kc::after { content: ""; position: absolute; inset: var(--kc) 0; border: var(--border-width-thick) solid var(--color-neutral-900); background: var(--color-bg-canvas); box-shadow: 0 var(--space-1) 0 var(--color-neutral-900); transition: inherit; }
.kc--dpad .kc::after { inset: 0 var(--kc); }
.kc--dpad .kc:hover, .kc--dpad .kc:active, .kc--dpad .kc[aria-pressed="true"] { background: none; box-shadow: none; }
.kc--dpad .kc[aria-pressed="true"]::before, .kc--dpad .kc[aria-pressed="true"]::after, .kc--dpad .kc:active::before, .kc--dpad .kc:active::after { background: var(--color-action-primary-bg); border-color: var(--color-action-primary-bg); box-shadow: 0 0 0 var(--color-neutral-900); }
.kp__pop { position: absolute; left: 50%; bottom: calc(100% + var(--space-2)); width: 10rem; transform: translateX(-50%); opacity: 0; pointer-events: none; }
.kp__pop.is-out { opacity: 1; animation: kp-pop var(--motion-duration-slow) var(--motion-easing-spring) both; }
@keyframes kp-pop { from { opacity: 0; transform: translate(calc(-50% + var(--fx, 0px)), var(--fy, 0px)) scale(0.2); } to { opacity: 1; transform: translateX(-50%) scale(1); } }


.closer--3 { --tw-r: 9.5rem; --tw-slot: 4.5rem; }
.tw { position: relative; width: min(100%, 26rem); aspect-ratio: 1 / 1; }
.tw__ring { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.tw__ring circle { fill: none; stroke: var(--color-border-strong); stroke-width: 0.3; transition: opacity var(--motion-duration-slow) var(--motion-easing-standard); }
.tw__ring .tw__ring2 { stroke: var(--color-neutral-300); stroke-dasharray: 1 2; opacity: 0; }
.tw[data-open="true"] .tw__ring .tw__ring2 { opacity: 1; }
.tw__hub {
  position: absolute; left: 50%; top: 50%; width: 38%; aspect-ratio: 1 / 1; transform: translate(-50%, -50%); padding: var(--space-3); cursor: pointer;
  border: var(--border-width-thick) solid var(--color-neutral-900); background: var(--color-bg-canvas);
  box-shadow: var(--space-1) var(--space-1) 0 var(--color-neutral-900);
  transition: transform var(--motion-duration-fast) var(--motion-easing-spring), box-shadow var(--motion-duration-fast) var(--motion-easing-standard);
}
.tw__hub:hover { box-shadow: calc(var(--space-1) + var(--space-0-5)) calc(var(--space-1) + var(--space-0-5)) 0 var(--color-neutral-900); }
.tw__hub:active { transform: translate(calc(-50% + var(--space-1)), calc(-50% + var(--space-1))); box-shadow: 0 0 0 var(--color-neutral-900); }
.tw[data-open="true"] .tw__hub { border-color: var(--color-action-primary-bg); box-shadow: var(--space-1) var(--space-1) 0 var(--color-action-primary-bg); }
.tw__hubart { display: block; }
.tw__hubart.is-swap .vox { animation: tw-swap var(--motion-duration-slow) var(--motion-easing-spring) both; }
@keyframes tw-swap { from { opacity: 0; transform: scale(0.5) rotate(-8deg); } to { opacity: 1; transform: none; } }
.tw__slots li {
  --r: 0px; --s: 0.3;
  position: absolute; left: 50%; top: 50%; opacity: 0; pointer-events: none;
  transition: transform var(--motion-duration-slow) var(--motion-easing-spring), opacity var(--motion-duration-base) var(--motion-easing-standard);
}
.tw__slots li { transform: translate(-50%, -50%) rotate(calc(var(--a) + 90deg)) translateY(calc(var(--r) * -1)) rotate(calc((var(--a) + 90deg) * -1)) scale(var(--s)); }
.tw[data-open="true"] .tw__slots li { --r: var(--tw-r); --s: 1; opacity: 1; pointer-events: auto; }
.tw[data-open="true"] .tw__slots li:nth-child(2) { transition-delay: 40ms; }
.tw[data-open="true"] .tw__slots li:nth-child(3) { transition-delay: 80ms; }
.tw[data-open="true"] .tw__slots li:nth-child(4) { transition-delay: 120ms; }
.tw[data-open="true"] .tw__slots li:nth-child(5) { transition-delay: 160ms; }
.tw__slot {
  position: relative; display: grid; place-items: center; width: var(--tw-slot); height: var(--tw-slot); padding: var(--space-2); cursor: pointer;
  border: var(--border-width-thick) solid var(--color-neutral-900); background: var(--color-bg-canvas);
  box-shadow: var(--space-1) var(--space-1) 0 var(--color-neutral-900);
  transition: box-shadow var(--motion-duration-fast) var(--motion-easing-standard), border-color var(--motion-duration-fast) var(--motion-easing-standard);
}
.tw__slot[aria-pressed="true"] { border-color: var(--color-action-primary-bg); box-shadow: var(--space-1) var(--space-1) 0 var(--color-action-primary-bg); }
.tw__key { position: absolute; top: calc(100% + var(--space-2)); left: 50%; transform: translateX(-50%); white-space: nowrap; color: var(--color-text-secondary); }
.tw__slot[aria-pressed="true"] .tw__key { color: var(--color-text-accent); }
@media (max-width: 600px) {
  .closer--3 { --tw-r: 7.6rem; --tw-slot: 3.75rem; }
  .tw { width: min(100%, 21rem); }
  .kp { margin-top: calc(var(--space-24) + var(--space-8)); }
  .kp__pop { width: 8rem; }
}
@media (prefers-reduced-motion: reduce) {
  .mv, .mv rect, .tw__slots li { transition-duration: 0s !important; transition-delay: 0s !important; }
  .kc-wrap { animation: none; }
  .kp__pop.is-out, .tw__hubart.is-swap .vox { animation: none; }
}

html.is-3d .closing h2 { font-size: min(var(--font-size-fluid-h1), var(--font-size-64)); }
.closer--2 .kp__pop { width: 15rem; }
.tw__hub { padding: var(--space-2); }
.tw__slot { padding: var(--space-1); }
.kp__trim { fill: none; stroke: var(--color-border-strong); stroke-width: 1; }
.kp__led--2 { fill: var(--color-neutral-300); }
.kp__body * { vector-effect: non-scaling-stroke; }
@media (max-width: 600px) { .kp { aspect-ratio: 440 / 300; } }


html.is-3d .chapter--shop { min-height: 80vh; }
html.is-static .chapter--shop { background: var(--color-bg-canvas); }
.store {
  width: 100%; max-width: 76rem; margin: 0 auto; padding: var(--space-10) var(--space-8) var(--space-8);
  display: grid; gap: var(--space-6);
  background: var(--wd-scrim-solid); border: var(--border-width-hairline) solid var(--color-border-subtle);
  box-shadow: var(--wd-card-shadow); -webkit-backdrop-filter: var(--wd-card-blur); backdrop-filter: var(--wd-card-blur);
}
.store__head { display: flex; justify-content: space-between; align-items: end; gap: var(--space-4); }
.store__note { color: var(--color-text-tertiary); }
.store__note[hidden] { display: none; }
.store__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 3fr) minmax(0, 3fr); grid-template-rows: repeat(2, clamp(13rem, 19vw, 18rem)); gap: var(--space-6); }

.bt { position: relative; display: block; overflow: hidden; isolation: isolate; border-radius: var(--radius-md); background: var(--color-brand-white); color: var(--color-brand-black); text-decoration: none; }
.bt img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform var(--motion-duration-slow) var(--motion-easing-standard); }
.bt--big { grid-row: 1 / span 2; }
.bt--wide { grid-column: 2 / span 2; }
.bt__label {
  position: absolute; left: var(--space-4); bottom: var(--space-4); z-index: 1;
  display: inline-flex; align-items: center; gap: var(--space-2); padding: var(--space-2) var(--space-3);
  background: var(--color-brand-paper); color: var(--color-brand-black);
  font-family: var(--font-family-display); font-weight: var(--font-weight-semibold); font-size: var(--font-size-18); line-height: var(--font-line-height-h4); letter-spacing: var(--font-tracking-h4);
}
.bt__label svg { width: var(--space-4); height: var(--space-4); flex: none; transition: transform var(--motion-duration-base) var(--motion-easing-standard); }
.bt__cta { position: absolute; left: var(--space-5); bottom: var(--space-5); z-index: 1; }
.store__all svg { width: var(--space-5); height: var(--space-5); }
@media (hover: hover) {
  .bt:hover img { transform: scale(var(--motion-scale-hover-media)); }
  .bt:hover .bt__label { color: var(--color-brand-lilac-deep); }
  .bt:hover .bt__label svg { transform: translate(var(--motion-distance-nudge), calc(var(--motion-distance-nudge) * -1)); }
  .bt:hover .bt__cta .btn__face { transform: translate(calc(var(--button-lift) * -1), calc(var(--button-lift) * -1)); background-color: var(--_face-hover); }
}
@media (min-width: 768px) and (max-width: 1023px) { .store__grid { gap: var(--space-4); grid-template-rows: repeat(2, clamp(11rem, 24vw, 15rem)); } }
@media (max-width: 767px) {
  
  .store__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: none; gap: var(--space-3); }
  .bt--big { grid-column: 1 / -1; grid-row: auto; aspect-ratio: 4 / 5; }
  .bt--wide { grid-column: 1 / -1; aspect-ratio: 16 / 10; }
  .bt--small { aspect-ratio: 1; }
  .bt__label { left: var(--space-2); bottom: var(--space-2); padding: var(--space-1) var(--space-2); font-size: var(--font-size-14); gap: var(--space-1); }
  .bt__label svg { width: var(--space-3); height: var(--space-3); }
  .bt__cta { left: var(--space-3); bottom: var(--space-3); }
}
@media (max-width: 767px) { .store { padding: var(--space-8) var(--space-4) var(--space-6); gap: var(--space-5); } }


.theme-toggle { justify-content: center; min-width: var(--button-height-sm); padding: 0; }
.theme-toggle svg { width: var(--space-5); height: var(--space-5); }
.theme-toggle__sun { display: none; }
[data-theme="dark"] .theme-toggle__sun { display: block; }
[data-theme="dark"] .theme-toggle__moon { display: none; }
html.is-retheme .loader { display: none; }

[data-theme="dark"] .bt { background: var(--color-bg-surface); }
[data-theme="dark"] .bt__label { background: var(--color-brand-black); color: var(--color-brand-white); }
@media (hover: hover) { [data-theme="dark"] .bt:hover .bt__label { color: var(--color-brand-lilac); } }
.theme-toggle[aria-pressed="true"]::after { opacity: 0; }
.theme-toggle[aria-pressed="true"]:hover::after { opacity: 1; }


html.is-3d .chapter--games { min-height: 80vh; }
html.is-static .chapter--games { background: var(--color-bg-canvas); }
.anchor-alias { position: absolute; top: 0; left: 0; width: 1px; height: 1px; }
.games {
  width: 100%; max-width: 76rem; margin: 0 auto; padding: var(--space-10) var(--space-8) var(--space-8);
  display: grid; gap: var(--space-6);
  background: var(--wd-scrim-solid); border: var(--border-width-hairline) solid var(--color-border-subtle);
  box-shadow: var(--wd-card-shadow); -webkit-backdrop-filter: var(--wd-card-blur); backdrop-filter: var(--wd-card-blur);
}
.games__head { display: flex; justify-content: space-between; align-items: end; gap: var(--space-4); }
.games__all svg { width: var(--space-5); height: var(--space-5); }
.games__grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-6); }
.gc { display: grid; gap: var(--space-4); align-content: start; min-width: 0; }
.gc__media { position: relative; height: clamp(13rem, 20vw, 18rem); overflow: hidden; border-radius: var(--radius-md); background: var(--color-bg-surface); }
.gc__media img { width: 100%; height: 100%; object-fit: cover; }

.gc__media--wire img { transform: scale(2.6); transform-origin: 78% 35%; }
.gc__media--wire-field img { transform: scale(1.15); }
.gc__media--wire::after, .gc__media--wire-field::after { content: ""; position: absolute; inset: var(--space-3); border: var(--border-width-hairline) solid var(--color-brand-lilac-deep); border-radius: var(--radius-sm); pointer-events: none; }
[data-theme="dark"] .gc__media--wire::after, [data-theme="dark"] .gc__media--wire-field::after { border-color: var(--color-brand-lilac); }
.gc__badge {
  position: absolute; left: var(--space-3); top: var(--space-3); z-index: 1;
  display: inline-flex; align-items: center; padding: var(--space-1) var(--space-2);
  background: var(--color-brand-paper); color: var(--color-text-accent);
  font-family: var(--type-hud-font-family); font-size: var(--type-hud-font-size); font-weight: var(--type-hud-font-weight); letter-spacing: var(--type-hud-letter-spacing); text-transform: var(--type-hud-text-transform);
}
.gc--live .gc__badge { color: var(--color-text-primary); }
.gc__dot { display: inline-block; width: var(--space-2); height: var(--space-2); margin-right: var(--space-2); border-radius: var(--radius-pill); background: var(--color-live-dot); }
[data-theme="dark"] .gc__badge { background: var(--color-brand-black); }
.gc__info { display: grid; gap: var(--space-1); }
.gc__kicker { font-family: var(--type-hud-font-family); font-size: var(--type-hud-font-size); font-weight: var(--type-hud-font-weight); letter-spacing: var(--type-hud-letter-spacing); text-transform: var(--type-hud-text-transform); color: var(--color-text-accent); }
.gc__title { font-family: var(--type-h3-font-family); font-weight: var(--type-h3-font-weight); font-size: var(--font-size-fluid-h4); line-height: var(--type-h3-line-height); letter-spacing: var(--type-h3-letter-spacing); color: var(--color-text-primary); }
.gc--live .gc__title { font-size: var(--font-size-fluid-h3); }
.gc__sub { color: var(--color-text-secondary); font-size: var(--type-body-sm-font-size); line-height: var(--type-body-sm-line-height); max-width: 46ch; }
.gc__links { display: flex; flex-wrap: wrap; gap: 0 var(--space-6); align-items: center; }
.gc__play, .gc__more { display: inline-flex; align-items: center; gap: var(--space-2); min-height: var(--button-height-sm); font-weight: var(--font-weight-semibold); text-decoration: none; }
.gc__play { color: var(--link-color); }
.gc__play svg { width: var(--space-5); height: var(--space-5); transition: transform var(--motion-duration-fast) var(--motion-easing-standard); }
.gc__play:hover svg { transform: translateX(var(--motion-distance-nudge)); }
.gc__more { color: var(--color-text-primary); text-decoration: underline; text-underline-offset: var(--link-underline-offset); text-decoration-thickness: var(--link-underline-thickness); }
.gc__play:hover, .gc__more:hover { color: var(--link-color-hover); }
.gc__cap { font-family: var(--type-hud-font-family); font-size: var(--type-hud-font-size); letter-spacing: var(--type-hud-letter-spacing); text-transform: var(--type-hud-text-transform); color: var(--color-text-tertiary); }
@media (max-width: 900px) {
  .games { padding: var(--space-8) var(--space-4) var(--space-6); gap: var(--space-5); }
  .games__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); }
  .gc__media { height: auto; aspect-ratio: 16 / 10; }
  .gc--dev .gc__media, .gc--later .gc__media { aspect-ratio: 2 / 1; }
}


.nav__games { position: relative; }
.nav__menu {
  position: absolute; left: 0; top: 100%; z-index: var(--z-dropdown); min-width: 17rem; padding: var(--space-2);
  display: none; gap: 0;
  background: var(--wd-scrim-solid); border: var(--border-width-hairline) solid var(--color-border-subtle); box-shadow: var(--elevation-overlay);
  -webkit-backdrop-filter: blur(var(--blur-backdrop)); backdrop-filter: blur(var(--blur-backdrop));
}
.nav__games:hover .nav__menu, .nav__games:focus-within .nav__menu { display: grid; }
.nav__menu a { width: 100%; padding: 0 var(--space-3); }
.nav__menu a:hover { color: var(--color-text-accent); }


.platform .lede { margin-bottom: var(--space-5); }
.pillars { display: grid; gap: 0; margin-bottom: var(--space-2); border-top: var(--border-width-hairline) solid var(--color-border-subtle); counter-reset: pillar; }
.pillar { position: relative; display: grid; gap: var(--space-1); padding: var(--space-3) 0 var(--space-3) var(--space-8); border-bottom: var(--border-width-hairline) solid var(--color-border-subtle); counter-increment: pillar; }
.pillar::before { content: "0" counter(pillar); position: absolute; left: 0; top: var(--space-3); font-family: var(--type-hud-font-family); font-size: var(--type-hud-font-size); font-weight: var(--type-hud-font-weight); letter-spacing: var(--type-hud-letter-spacing); line-height: var(--font-line-height-h4); color: var(--color-text-hud); }
.pillar__t { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--space-2); font-family: var(--type-h4-font-family); font-weight: var(--font-weight-semibold); font-size: var(--font-size-18); line-height: var(--font-line-height-h4); letter-spacing: var(--font-tracking-h4); color: var(--color-text-primary); }
.pillar__tag { padding: var(--space-0-5) var(--space-2); border: var(--border-width-hairline) solid var(--color-border-default); color: var(--color-text-accent); }
.pillar p { font-size: var(--type-body-sm-font-size); line-height: var(--type-body-sm-line-height); color: var(--color-text-secondary); }
.pillar .text-link { justify-self: start; }
.platform .actions { margin-top: var(--space-5); }
.pillar { grid-template-columns: minmax(0, 1fr) auto; column-gap: var(--space-4); align-items: center; padding-block: var(--space-2); }
.pillar__t { grid-column: 1; grid-row: 1; min-height: var(--button-height-sm); align-items: center; }
.pillar .text-link { grid-column: 2; grid-row: 1; justify-self: end; }
.pillar p { grid-column: 1 / -1; grid-row: 2; }
.pillar::before { top: calc(var(--space-2) + var(--space-3) + var(--space-0-5)); }
@media (max-width: 600px) { .pillar { grid-template-columns: minmax(0, 1fr); } .pillar .text-link { grid-column: 1; grid-row: 3; justify-self: start; } }
.pillar p { margin-top: calc(var(--space-2) * -1); }


.proof__h { font-size: var(--font-size-fluid-h3); line-height: var(--type-h3-line-height); letter-spacing: var(--type-h3-letter-spacing); margin-bottom: var(--space-6); }
.proof__title { margin-bottom: var(--space-2); }
.ppp { display: grid; gap: var(--space-3); margin-top: var(--space-5); padding-top: var(--space-4); border-top: var(--border-width-hairline) solid var(--color-border-subtle); }
.ppp li { font-size: var(--type-body-sm-font-size); line-height: var(--type-body-sm-line-height); color: var(--color-text-secondary); }
.ppp b { display: block; color: var(--color-text-primary); font-family: var(--type-h4-font-family); font-size: var(--font-size-18); font-weight: var(--font-weight-semibold); }
.stop-card .stops__play { justify-self: start; padding-inline: var(--space-3); }
.pillar__proof { grid-column: 1 / -1; color: var(--color-text-tertiary); }
.manifesto__lede { color: var(--color-text-secondary); max-width: 56ch; margin-top: calc(var(--space-4) * -1); }
.closing__sub { color: var(--color-text-secondary); font-size: var(--font-size-fluid-lede); }
.footer__brand { color: var(--color-text-secondary); }
.store__sub { color: var(--color-text-secondary); margin-top: var(--space-1); }
.games__eyebrow { color: var(--color-text-accent); margin-bottom: var(--space-2); }
.gc__kicker .gc__dot { margin-right: var(--space-2); }
.pillar p.pillar__proof { grid-row: 3; margin-top: 0; font-size: var(--type-hud-font-size); }
@media (max-width: 600px) { .pillar .text-link { grid-row: 4; } }


.chapter--spacer { padding: 0; pointer-events: none; }
html.is-3d .chapter--spacer { min-height: 14vh; }
html.is-static .chapter--spacer { display: none; }
html.is-3d .chapter { min-height: 0; padding-block: var(--space-6); }
html.is-3d .chapter--hero { min-height: 100vh; min-height: 100svh; }
html.is-3d .chapter--proof { min-height: 34vh; }
html.is-3d .chapter--stop { min-height: 30vh; padding-block: var(--space-2); }
html.is-3d .stop-card { width: min(20rem, 100%); padding: var(--space-2) var(--space-2) var(--space-3); gap: var(--space-1); }
html.is-3d .stop-card figure img { aspect-ratio: 2 / 1; }
html.is-3d .chapter--stop:nth-child(even) { justify-content: flex-start; }
html.is-3d .chapter--pair { min-height: 44vh; }
html.is-3d .chapter--closing { min-height: 50vh; }
html.is-3d .chapter--end { min-height: 10vh; }

.chapter-duo { width: 100%; display: flex; align-items: flex-start; justify-content: space-between; gap: var(--layout-grid-gap-fluid); }
.chapter-duo > .panel--right { margin-left: 0; }
.chapter-duo--team { align-items: stretch; }
.chapter-duo--team > .manifesto { flex: 1 1 56%; margin: 0; max-width: none; }
.chapter-duo--team > .news { flex: 1 1 40%; width: auto; padding: var(--space-10) var(--space-8); background: var(--wd-scrim-solid); border: var(--border-width-hairline) solid var(--color-border-subtle); box-shadow: var(--wd-card-shadow); -webkit-backdrop-filter: var(--wd-card-blur); backdrop-filter: var(--wd-card-blur); }
.chapter-duo--team .signals { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
.chapter-duo--team .signal { grid-template-columns: 7rem minmax(0, 1fr); align-items: center; column-gap: var(--space-3); padding: var(--space-2); }
.chapter-duo--team .signal img { grid-row: 1 / span 2; aspect-ratio: 16 / 10; }
.chapter-duo--team .signal p, .chapter-duo--team .signal h3 { padding-inline: 0; }
.chapter-duo--team .signal h3 { font-size: var(--font-size-16); line-height: var(--font-line-height-h4); }
.chapter-duo--team .news__head { margin-bottom: var(--space-5); flex-wrap: wrap; }
.chapter-duo--team .news__head h2 { font-size: var(--font-size-fluid-h3); }
.cities__mark { margin-top: var(--space-6); font-family: var(--type-h3-font-family); font-weight: var(--font-weight-extrabold); font-size: var(--font-size-fluid-h3); line-height: var(--type-h3-line-height); letter-spacing: var(--type-h3-letter-spacing); }
.cities__mark + .lede { margin-top: var(--space-2); font-size: var(--type-body-font-size); }
.manifesto { padding: var(--space-10) var(--space-8); gap: var(--space-6); }
.games, .store { padding: var(--space-8) var(--space-8) var(--space-6); gap: var(--space-5); }
.gc__media { height: clamp(11rem, 16vw, 15rem); }
.store__grid { grid-template-rows: repeat(2, clamp(11.5rem, 15.5vw, 14.5rem)); }
.footer { padding: var(--space-12) var(--layout-gutter-fluid) var(--space-8); gap: var(--space-10); }
.footer__cols ul { display: flex; flex-wrap: wrap; gap: 0 var(--space-5); }
@media (min-width: 1280px) {
  
  .platform { max-width: 46rem; }
  .pillars { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: var(--space-6); }
  .pillar { padding-left: var(--space-8); }
  .pillar .text-link { grid-column: 1; grid-row: 4; justify-self: start; }
  .pillar { grid-template-columns: minmax(0, 1fr); }
  .formats-panel { max-width: 22rem; }
}
@media (max-width: 1100px) {
  .chapter-duo { flex-direction: column; align-items: stretch; }
  .chapter-duo > * { max-width: none; }
  .gc__media, .store__grid { height: auto; }
  .store__grid { grid-template-rows: none; }
}
html.is-3d .chapter.chapter--spacer { min-height: 13vh; padding: 0; }
html.is-3d .chapter { padding-block: var(--space-4); }
html.is-3d .chapter--hero { padding-bottom: var(--space-24); }

html.is-3d .chapter--stop { min-height: 24vh; padding-block: 0; align-items: flex-start; }
html.is-3d .chapter--pair { min-height: 40vh; }
html.is-3d .chapter--stop { height: 24vh; min-height: 0; overflow: visible; }
html.is-3d .chapter--stop:last-child { height: 34vh; } 
html.is-3d .chapter--hero { min-height: 94vh; min-height: 94svh; }
html.is-3d .chapter--closing { min-height: 46vh; }
.store__grid { grid-template-rows: repeat(2, clamp(11rem, 14.5vw, 13.5rem)); }
.gc__media { height: clamp(10.5rem, 15vw, 14rem); }
@media (max-width: 1100px) { .gc__media, .store__grid { height: auto; } .store__grid { grid-template-rows: none; } }

[data-swipe]:focus-visible { outline: var(--focus-ring-width) solid var(--focus-ring-color); outline-offset: var(--focus-ring-offset); }
@media (max-width: 600px) {
  html.is-static .chapter { padding-block: var(--space-8); }
  
  .games__grid[data-swipe], .pillars[data-swipe], .formats[data-swipe], .manifesto__cols[data-swipe], .signals[data-swipe] {
    display: grid !important; grid-template-columns: none !important; grid-auto-flow: column; grid-auto-columns: 84%;
    gap: var(--space-3) !important; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none;
  }
  [data-swipe]::-webkit-scrollbar { display: none; }
  [data-swipe] > * { scroll-snap-align: start; min-width: 0; }
  .pillars[data-swipe] { border-top: 0; }
  .pillars[data-swipe] > .pillar { border: var(--border-width-hairline) solid var(--color-border-subtle); padding: var(--space-3) var(--space-3) var(--space-3) var(--space-8); align-content: start; }
  .manifesto__cols[data-swipe] > div { padding: var(--space-4); border: var(--border-width-hairline) solid var(--color-border-subtle); }
  .formats[data-swipe] > li { display: flex; }
  .formats[data-swipe] .format { width: 100%; }
  .signals[data-swipe] > .signal { display: grid; }
  .signals li:last-child { display: grid; }
  .gc__media, .gc--dev .gc__media, .gc--later .gc__media { aspect-ratio: 16 / 10; }
  .bt--big { aspect-ratio: 16 / 10; }
  .bt--wide { aspect-ratio: 2 / 1; }
  .games, .store { padding: var(--space-6) var(--space-4) var(--space-5); }
  .manifesto { padding: var(--space-6) var(--space-4); gap: var(--space-5); }
  .chapter-duo--team > .news { padding: var(--space-6) var(--space-4); }
  .closing { gap: var(--space-4); padding-bottom: var(--space-4); }
  .footer { padding: var(--space-8) var(--layout-gutter-mobile) var(--space-6); gap: var(--space-6); }
  .footer__cols { gap: var(--space-4) var(--space-4); }
}
@media (max-width: 600px) {
  .manifesto .actions { flex-wrap: wrap; gap: var(--space-2); }
  .manifesto .actions .btn { --_h: var(--button-height-sm); --_px: var(--button-padding-x-sm); --_fs: var(--type-button-sm-font-size); --_ls: var(--type-button-sm-letter-spacing); }
  .press-line { margin-top: var(--space-4); }
  .readouts { gap: var(--space-4) var(--space-4); }
  html.is-static .stops { padding-bottom: var(--space-6); }
  .footer { gap: var(--space-5); }
  .funding { padding-top: var(--space-4); }
}
html.is-3d .chapter:not(.chapter--stop):not(.chapter--spacer) { padding-block: var(--space-3); }
@media (max-width: 600px) { html.is-static .chapter { padding-block: var(--space-6); } }


html.is-3d [data-fade] { opacity: var(--ob, 0); transform: translateY(calc((1 - var(--o, 0)) * var(--motion-distance-rise))); }
html.is-3d [data-fade] > * { opacity: var(--ot, 0); }
html.is-3d .chapter-duo[data-fade] { opacity: 1; }
html.is-3d .chapter-duo[data-fade] > * { opacity: var(--ob, 0); }
html.is-3d .chapter-duo[data-fade] > * > * { opacity: var(--ot, 0); }



html.is-3d .chapter:not(.chapter--stop) { overflow: clip; overflow-clip-margin: var(--space-6); }

.cities__mark { margin-top: var(--space-5); font-size: var(--font-size-fluid-h4); font-weight: var(--font-weight-bold); line-height: var(--type-h4-line-height); letter-spacing: var(--type-h4-letter-spacing); text-wrap: balance; max-width: 28ch; }
.cities__mark .sig { -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.closing h2, .closing__h { text-wrap: balance; }



.footer { position: relative; z-index: var(--z-raised); isolation: isolate; background: var(--color-bg-canvas); border-top: var(--border-width-hairline) solid var(--color-border-subtle); padding: var(--space-16) var(--layout-gutter-fluid) var(--space-8); display: grid; gap: var(--space-10); }
.footer__top { display: grid; gap: var(--space-3); justify-items: start; }
.footer__main { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-8) var(--layout-grid-gap-fluid); align-items: end; padding-top: var(--space-2); }
.footer h2.hud { margin-bottom: var(--space-3); color: var(--color-text-tertiary); }
.footer__talk ul { display: grid; gap: 0; }
.footer__talk a { display: inline-flex; align-items: center; min-height: var(--space-12); font-family: var(--type-h4-font-family); font-size: var(--font-size-fluid-h4); font-weight: var(--font-weight-semibold); letter-spacing: var(--type-h4-letter-spacing); color: var(--color-text-primary); text-decoration: none; }
.footer__follow ul { display: flex; flex-wrap: wrap; gap: 0 var(--space-6); }
.footer__follow { justify-self: end; }
.footer__routes { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 1fr); gap: var(--space-8) var(--layout-grid-gap-fluid); padding-top: var(--space-6); border-top: var(--border-width-hairline) solid var(--color-border-subtle); }
.footer__routes ul { display: flex; flex-wrap: wrap; gap: 0 var(--space-6); }
.footer__routes a, .footer__follow a { display: inline-flex; align-items: center; min-height: var(--button-height-sm); color: var(--color-text-secondary); text-decoration: none; }
.footer a:hover { color: var(--color-text-accent); }
.footer__base { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: var(--space-3) var(--space-6); padding-top: var(--space-6); border-top: var(--border-width-hairline) solid var(--color-border-subtle); color: var(--color-text-tertiary); font-size: var(--type-body-sm-font-size); }
.footer__base > :last-child { justify-self: end; }
.footer__sign { font-family: var(--type-h4-font-family); font-weight: var(--font-weight-semibold); font-size: var(--font-size-18); color: var(--color-text-primary); }
.footer__credits { color: var(--color-text-tertiary); }
@media (max-width: 767px) {
  .footer { padding: var(--space-10) var(--layout-gutter-mobile) var(--space-6); gap: var(--space-8); }
  .footer__main, .footer__routes { grid-template-columns: minmax(0, 1fr); }
  .footer__follow { justify-self: start; }
  .footer__base { grid-template-columns: minmax(0, 1fr); justify-items: start; }
  .footer__base > :last-child { justify-self: start; }
  .footer__routes ul, .footer__follow ul { gap: 0 var(--space-5); }
}

html.is-3d .scrim-side::before, html.is-3d .scrim-side-r::before { top: calc(var(--space-6) * -1); bottom: calc(var(--space-6) * -1); background-size: 100% 100%; }
html.is-3d .scrim-side::before { background: radial-gradient(farthest-side at 30% 50%, var(--wd-scrim-strong) 0%, var(--wd-scrim-strong) 55%, var(--wd-scrim-soft) 78%, var(--wd-scrim-clear) 100%); }
html.is-3d .scrim-side-r::before { background: radial-gradient(farthest-side at 70% 50%, var(--wd-scrim-strong) 0%, var(--wd-scrim-strong) 55%, var(--wd-scrim-soft) 78%, var(--wd-scrim-clear) 100%); }
[data-theme="light"] .pair__copy::before { top: calc(var(--space-6) * -1); bottom: calc(var(--space-6) * -1); }

html.is-3d .panel.scrim-side, html.is-3d .panel.scrim-side-r, html.is-3d .pair__copy {
  padding: var(--space-8) var(--space-8) var(--space-7, var(--space-8));
  background: var(--wd-scrim-solid); border: var(--border-width-hairline) solid var(--color-border-subtle);
  box-shadow: var(--wd-card-shadow); -webkit-backdrop-filter: var(--wd-card-blur); backdrop-filter: var(--wd-card-blur);
}
html.is-3d .panel.scrim-side::before, html.is-3d .panel.scrim-side-r::before, html.is-3d .pair__copy::before { display: none; }
html.is-3d .pair__copy { align-self: center; }
html.is-3d .formats-panel { padding: var(--space-6); }

.footer { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); grid-template-areas: "top main" "routes routes" "base base" "credits credits"; gap: var(--space-6) var(--layout-grid-gap-fluid); padding: var(--space-12) var(--layout-gutter-fluid) var(--space-6); }
.footer__top { grid-area: top; align-content: start; }
.footer__main { grid-area: main; padding-top: 0; align-items: start; }
.footer__talk ul { grid-template-columns: repeat(2, minmax(0, max-content)); column-gap: var(--space-10); }
.footer__routes { grid-area: routes; padding-top: var(--space-4); }
.footer__base { grid-area: base; padding-top: var(--space-4); }
.footer__credits { grid-area: credits; }
.footer h2.hud { margin-bottom: var(--space-1); }
@media (max-width: 767px) {
  .footer { grid-template-columns: minmax(0, 1fr); grid-template-areas: "top" "main" "routes" "base" "credits"; gap: var(--space-5); padding: var(--space-8) var(--layout-gutter-mobile) var(--space-5); }
  .footer__talk ul { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--space-4); }
  .footer__talk a { font-size: var(--font-size-18); }
  .footer__base { gap: var(--space-1); }
}
html.is-3d .chapter--stop { height: 22vh; }
html.is-3d .chapter--stop:last-child { height: 31vh; }
html.is-3d .chapter.chapter--spacer { min-height: 11vh; }
html.is-3d .panel.scrim-side, html.is-3d .panel.scrim-side-r, html.is-3d .pair__copy { padding: var(--space-6); }


.gc__media--cover img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; transform: none; }
.gc__media--cover::before, .gc__media--cover::after { content: none !important; display: none !important; }
.gc__media--cover { background: none; }
.gc__img--dark { display: none; }
[data-theme="dark"] .gc__img--light { display: none; }
[data-theme="dark"] .gc__img--dark { display: block; }
@media (max-width: 600px) { .games__all, .store__all { white-space: nowrap; flex: none; } }

.footer__follow a { min-width: var(--space-12); justify-content: center; }
@media (min-width: 601px) and (max-width: 1100px) { .store__grid { grid-template-rows: repeat(2, clamp(11rem, 24vw, 14rem)) !important; } .bt--big, .bt--wide, .bt--small { aspect-ratio: auto; } }

html.is-3d[data-theme="dark"] .hud-frame::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: calc(var(--space-24) + var(--space-10)); background: linear-gradient(180deg, var(--color-bg-canvas) 0, var(--color-bg-canvas) var(--space-24), var(--wd-scrim-clear) 100%); pointer-events: none; opacity: 0; transition: opacity var(--motion-duration-fast) var(--motion-easing-standard); }
html.is-3d.is-under[data-theme="dark"] .hud-frame::after { opacity: 1; }
html.is-3d[data-theme="dark"] .hud-frame > * { z-index: 1; }
html.is-3d.is-closing .hud-bl { opacity: 0; visibility: hidden; transition: opacity var(--motion-duration-fast) var(--motion-easing-standard), visibility 0s linear var(--motion-duration-fast); }

html.is-3d .closer { opacity: var(--wfade, 1); }


html.is-3d.is-br-clash .hud-br { opacity: 0; visibility: hidden; transition: opacity var(--motion-duration-fast) var(--motion-easing-standard), visibility 0s linear var(--motion-duration-fast); }
.hud-br { transition: opacity var(--motion-duration-fast) var(--motion-easing-standard); }


html.is-3d .hud-frame::after, html.is-3d .hud-frame::before { display: none !important; }
html.is-still .mh, html.is-still .mh__sheet { visibility: hidden !important; }
html.is-static .mh { position: sticky; }
html.is-static .hud-frame { display: none; }
.mh__act .hud-link { min-height: 44px; }


.chapter--hero h1 { font-size: calc(var(--font-size-fluid-h1) * 1.08); }
html.is-3d[data-hero] .hero__copy.scrim-fade::before { display: none; }
html.is-3d[data-hero] .chapter--hero { position: relative; isolation: isolate; }
html.is-3d[data-hero] .chapter--hero::before { 
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: radial-gradient(ellipse 52% 40% at 24% 58%,
    color-mix(in srgb, var(--color-bg-canvas) 62%, transparent) 0%,
    color-mix(in srgb, var(--color-bg-canvas) 50%, transparent) 30%,
    color-mix(in srgb, var(--color-bg-canvas) 26%, transparent) 62%,
    color-mix(in srgb, var(--color-bg-canvas) 8%, transparent) 84%,
    color-mix(in srgb, var(--color-bg-canvas) 0%, transparent) 100%);
}
html.is-3d[data-hero] .chapter--hero .lede { position: relative; isolation: isolate; }
html.is-3d[data-hero] .chapter--hero .lede::before { 
  content: ""; position: absolute; inset: calc(var(--space-6) * -1) calc(var(--space-12) * -1); z-index: -1; pointer-events: none;
  background: radial-gradient(ellipse 50% 50% at 50% 50%, color-mix(in srgb, var(--color-bg-canvas) 86%, transparent) 0%, color-mix(in srgb, var(--color-bg-canvas) 80%, transparent) 55%, color-mix(in srgb, var(--color-bg-canvas) 0%, transparent) 100%);
}
html.is-3d[data-hero] .chapter--hero h1, html.is-3d[data-hero] .chapter--hero .lede, html.is-3d[data-hero] .chapter--hero .eyebrow {
  text-shadow: 0 2px 24px color-mix(in srgb, var(--color-bg-canvas) 60%, transparent), 0 1px 3px color-mix(in srgb, var(--color-bg-canvas) 50%, transparent);
}
html.is-static .chapter.chapter--hero { padding-top: var(--space-10); }


.chapter--cities .cx { max-width: var(--layout-container-wide, 1328px); margin-inline: auto; padding: var(--space-12) var(--space-10);
  background: var(--color-bg-canvas); border: var(--border-width-hairline) solid var(--color-border-subtle); box-shadow: var(--wd-card-shadow); }
@media (max-width: 900px) { html.is-static .chapter--cities .cx { padding: var(--space-8) var(--layout-gutter-fluid); border-inline: 0; margin-inline: calc(var(--layout-gutter-fluid) * -1); width: auto; } }
@media (max-width: 700px) { .chapter--cities .cx { padding: var(--space-8) var(--space-5); } }


html.is-3d[data-hero="a"] .world::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(ellipse 85% 80% at 55% 45%, color-mix(in srgb, var(--color-bg-canvas) 0%, transparent) 55%, color-mix(in srgb, var(--color-bg-canvas) 45%, transparent) 100%);
}


html.is-3d .chapter--hero .hero__copy.scrim-fade::before {
  background: radial-gradient(ellipse 60% 44% at 32% 54%, var(--wd-scrim-strong) 0%, var(--wd-scrim-soft) 42%, color-mix(in srgb, var(--color-bg-canvas) 14%, transparent) 72%, var(--wd-scrim-clear) 100%);
}



html.is-3d .stop-card figure { display: none; }
html.is-3d .stop-card { transition: opacity var(--motion-duration-base) var(--motion-easing-standard); }
html.is-3d .stop-card[data-fade].is-dim { opacity: calc(var(--ob, 0) * 0.35); }
html.is-3d .stop-card.is-active::after { --b: var(--color-text-accent); --s: var(--space-3); --w: 2px; }
.stop-link { position: fixed; inset: 0; width: 100%; height: 100%; pointer-events: none; overflow: visible; opacity: 0; }
.stop-link path { fill: none; stroke: var(--color-text-accent); stroke-width: 1.25; stroke-linejoin: miter; }
.stop-link circle { fill: var(--color-text-accent); transition: opacity var(--motion-duration-fast) var(--motion-easing-standard); }
html.is-static .stop-link { display: none; }
html.is-3d .stop-card[data-fade].is-dim { opacity: 0; } 
html.is-3d .stop-card[data-fade].is-far { opacity: 0; }


html.is-3d .proof.scrim-up::before { display: none; }
.proof { max-width: 76rem; margin-inline: auto; padding: var(--space-12); background: var(--wd-scrim-solid);
  border: var(--border-width-hairline) solid var(--color-border-subtle); box-shadow: var(--wd-card-shadow); }
html.is-3d .proof { padding-bottom: var(--space-10); }
.proof .pmq { margin-top: var(--space-10); padding-top: var(--space-8); border-top: var(--border-width-hairline) solid var(--color-border-subtle); }
.readouts { grid-template-rows: auto auto auto auto; row-gap: 0; }
.readout-item { grid-row: span 4; grid-template-rows: subgrid; row-gap: var(--space-2); align-items: start; }
.readout-item .stat { line-height: 1; }
html.is-3d .chapter:not(.chapter--stop):not(.chapter--spacer):not(.chapter--hero) { padding-block: var(--space-20); }
html.is-3d .chapter--proof { padding-top: var(--space-16); }
@media (max-width: 900px) { html.is-static .proof { padding: var(--space-8) var(--space-5); } }
@media (max-width: 900px) { .readouts { grid-template-rows: auto auto auto auto auto auto auto auto; } }
.proof .readouts { column-gap: var(--space-10); }
.proof .readout-item .stat { font-size: min(calc(var(--font-size-fluid-stat) * 0.86), 4.25rem); white-space: nowrap; }


.meta { font-family: var(--font-family-body); font-size: var(--type-body-sm-font-size); line-height: var(--type-body-sm-line-height); font-weight: var(--font-weight-regular);
  letter-spacing: normal; text-transform: none; color: var(--color-text-secondary); }
.meta-date { display: block; font-size: var(--font-size-12); line-height: 1.4; letter-spacing: normal; text-transform: none; font-weight: var(--font-weight-regular); color: var(--color-text-tertiary); }
.meta .meta-date { margin-top: 2px; }
.asof, .readout-item .label, .cx-foot, .tkt__meta, .store__note { text-transform: none; letter-spacing: normal; }
.asof { font-family: var(--font-family-body); font-size: var(--font-size-12); font-weight: var(--font-weight-regular); color: var(--color-text-tertiary); }
.readout-item .label { font-family: var(--font-family-body); font-size: var(--type-body-sm-font-size); font-weight: var(--font-weight-medium, 500); color: var(--color-text-primary); }
.cx-foot { font-size: var(--type-body-sm-font-size); color: var(--color-text-secondary); }
.tkt__meta { font-family: var(--font-family-body); font-size: var(--font-size-12); font-weight: var(--font-weight-regular); }
.tkt__meta i { font-family: var(--type-hud-font-family); font-size: var(--font-size-11); font-weight: var(--type-hud-font-weight); letter-spacing: var(--type-hud-letter-spacing); text-transform: uppercase; }
.backers__sub { margin: calc(var(--space-1) * -1) 0 var(--space-3); }
.now-playing figcaption .meta { display: inline-flex; align-items: center; gap: var(--space-2); }
.pair__media figcaption.meta { color: var(--color-text-secondary); }
.hud-br .readout { white-space: nowrap; }


.formats-panel .fx-h { margin: 0; font-family: var(--type-h4-font-family); font-weight: var(--type-h4-font-weight); font-size: var(--font-size-20); letter-spacing: var(--font-tracking-h4); }
.formats-panel .fx-asof { margin: 2px 0 0; }
.formats-panel .formats { margin: var(--space-5) 0 var(--space-4); }
.fx { border: var(--border-width-hairline) solid var(--color-border-subtle); background: var(--wd-scrim-solid); transition: border-color var(--motion-duration-fast) var(--motion-easing-standard), background-color var(--motion-duration-fast) var(--motion-easing-standard); }
.fx.is-open { border-color: var(--color-border-strong); background: var(--color-bg-surface); }
.fx .format { display: grid; grid-template-columns: 2rem minmax(0, 1fr); grid-template-areas: "k n" "k s"; align-content: center; gap: 2px var(--space-3);
  min-height: 4.25rem; height: 4.25rem; padding: var(--space-3) var(--space-4); border: 0; background: none; }
.fx .format:hover, .fx .format.is-hot { background: none; }
.fx__n { grid-area: k; align-self: start; padding-top: 3px; font-size: var(--font-size-12); color: var(--color-text-tertiary); }
.fx.is-open .fx__n { color: var(--color-text-accent); }
.fx .format__stat { grid-area: s; color: var(--color-text-secondary); font-weight: var(--font-weight-regular); white-space: nowrap; }
.fx .format__stat b { color: var(--color-text-primary); font-weight: var(--font-weight-semibold); }
.fx__more { display: grid; grid-template-rows: 0fr; transition: grid-template-rows 220ms var(--motion-easing-standard); }
.fx.is-open .fx__more { grid-template-rows: 1fr; }
.fx__in { min-height: 0; overflow: hidden; display: grid; gap: var(--space-2); padding: 0 var(--space-4) 0 calc(2rem + var(--space-3) + var(--space-4)); }
.fx.is-open .fx__in { padding-bottom: var(--space-4); }
.fx__in img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border: var(--border-width-hairline) solid var(--color-border-subtle); }
.fx__in p { margin: 0; font-size: var(--type-body-sm-font-size); color: var(--color-text-secondary); }
.fx__go { justify-self: start; min-height: 44px; padding: 0; border: 0; background: none; font: inherit; font-size: var(--type-body-sm-font-size); cursor: pointer; }
.formats-panel .fx-hint { margin: 0; }
@media (prefers-reduced-motion: reduce) { .fx__more { transition: none; } }
@media (max-width: 900px) { .formats[data-swipe] > li.fx { display: block; } .fx .format { height: auto; } }


html.is-3d .proof, html.is-3d .games, html.is-3d .panel, html.is-3d .manifesto, html.is-3d .chapter-duo--team > .news, html.is-3d .store, html.is-3d .stop-card,
html.is-3d .chapter--cities .cx, html.is-3d .pair__copy, html.is-3d .formats-panel, html.is-3d .fx { background: var(--color-bg-canvas); -webkit-backdrop-filter: none; backdrop-filter: none; }
html.is-3d .fx.is-open { background: var(--color-bg-surface); }

html.is-3d .chapter--stop:last-child { height: 72vh; }


.proof .readout-item .label { font-family: var(--type-label-font-family); font-size: var(--font-size-fluid-label); font-weight: var(--type-label-font-weight); line-height: var(--type-label-line-height); letter-spacing: var(--type-label-letter-spacing); text-transform: uppercase; color: var(--color-text-primary); }
.proof .readout-item .asof { font-family: var(--type-hud-font-family); font-size: var(--type-hud-font-size); font-weight: var(--type-hud-font-weight); line-height: var(--type-hud-line-height); letter-spacing: var(--type-hud-letter-spacing); text-transform: uppercase; color: var(--color-text-tertiary); }


.proof, .games, .store, .chapter--cities .cx, .chapter-duo { margin-inline: auto; }
.chapter--cities .cx, .chapter-duo { width: 100%; } 



.chapter--proof .proof, .chapter--games .games { width: 100%; max-width: none; margin-inline: 0; }


html.is-3d .handoff { position: relative; height: calc(100vh + 95vh); --ho: 0; }
html.is-3d .handoff__stage { position: sticky; top: 0; height: 100vh; overflow: hidden; }
html.is-3d .handoff .chapter { position: absolute; inset: 0; min-height: 0; height: 100%; display: flex; align-items: center;
  padding: calc(var(--mh-hc, 64px) + var(--space-6)) var(--layout-gutter-fluid) var(--space-6) !important; overflow: visible; }
html.is-3d .handoff .chapter--proof .proof { transform: scale(calc(1 - 0.04 * var(--ho))); transform-origin: 50% 50%; filter: brightness(calc(1 - 0.45 * var(--ho))); }
html.is-3d .handoff .chapter--games { z-index: 2; transform: translateX(calc((1 - var(--ho)) * -105%)); will-change: transform; }
html.is-3d .handoff .chapter--games .games { box-shadow: var(--elevation-overlay, var(--wd-card-shadow)); }
html.is-3d .handoff[data-ho-off] .chapter--games { visibility: hidden; }

html.is-3d body { overflow-x: clip; overflow-y: visible; }


html.is-3d .handoff .chapter { align-items: flex-start; padding-top: calc(var(--mh-hc, 64px) + var(--space-16)) !important; }
html.is-3d .chapter.chapter--intro:not(.chapter--stop):not(.chapter--spacer):not(.chapter--hero) { padding-top: var(--space-2); }
html.is-3d .chapter.chapter--cities:not(.chapter--spacer), html.is-3d .chapter.chapter--brands:not(.chapter--spacer),
html.is-3d .chapter.chapter--team:not(.chapter--spacer), html.is-3d .chapter.chapter--shop:not(.chapter--spacer) { min-height: 0; padding-block: var(--space-16); }
html.is-3d .chapter.chapter--closing:not(.chapter--spacer) { padding-top: 0; }
html.is-3d .chapter--spacer { display: none; }
html.is-3d .handoff { margin-bottom: -64px; }
html.is-3d .chapter--stop:last-child { height: 30vh; } 
html.is-3d .chapter.chapter--closing:not(.chapter--spacer) { align-items: flex-start; }
html.is-3d .chapter--closing .closing { align-items: start; }
html.is-3d #closing.chapter { padding-top: var(--space-12) !important; }
html.is-3d #closing .closing__text { align-self: start; align-content: start; }


@media (max-width: 899px) {
  .manifesto__cols { display: grid; grid-template-columns: minmax(0, 1fr); grid-auto-flow: row; align-items: start; gap: var(--space-6); overflow: visible; }
  .manifesto__cols > div { padding: var(--space-4); border: var(--border-width-hairline) solid var(--color-border-subtle); height: auto; align-self: start; }
}


@media (max-width: 1099px) {
  html.is-3d .chapter--closing .closing { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); justify-items: center; text-align: center; }
  html.is-3d #closing .closing__text { justify-items: center; text-align: center; max-width: 36rem; }
  html.is-3d .closing h2 { font-size: clamp(2.25rem, 1rem + 4vw, 3.5rem); text-wrap: balance; }
  html.is-3d .chapter--closing .closer { max-width: 22rem; margin-top: 0; }
  html.is-3d .chapter.chapter--closing:not(.chapter--spacer) { min-height: 0; }
  html.closer-flat .closer--1 .closer__hit { aspect-ratio: auto; }
}


@media (max-width: 1099px) {
  .formats > li.fx, .formats[data-swipe] > li.fx { display: grid !important; grid-template-columns: minmax(0, 1fr); align-content: start; align-self: start; height: auto; }
  .fx .fx__more, .fx .fx__in { display: contents; }
  .fx .fx__in img { order: -1; width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; border-bottom: var(--border-width-hairline) solid var(--color-border-subtle); }
  .fx .format { order: 0; height: auto; min-height: 0; }
  .fx .fx__in p { order: 1; padding: 0 var(--space-4); }
  .fx .fx__go { order: 2; margin: 0 var(--space-4) var(--space-2); }
  .formats[data-swipe] { align-items: start; }
}
@media (min-width: 601px) and (max-width: 1099px) {
  .formats-panel .formats, .formats-panel .formats[data-swipe] { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-auto-flow: row !important; overflow: visible !important; gap: var(--space-3) !important; }
  .formats-panel { max-width: none; }
}

html.is-3d #closing.chapter { padding-bottom: var(--space-8) !important; }
html.is-3d .chapter.chapter--end { min-height: 0 !important; height: calc(var(--space-20) + var(--space-12)) !important; padding: 0 !important; }
html.closer-flat .closer { opacity: 1; }
