@charset "UTF-8";
:root {
  --ink:#191c17;
  --surface:#22261f;
  --green:#a4cf43;
  --green-deep:#7eaa35;
  --paper:#f0eddd;
  --muted:#b9bdae;
  --red:#d94938;
  --line:#444a3b;
  --display:Impact,"Arial Narrow","Avenir Next Condensed",sans-serif;
  --body:Arial,Helvetica,sans-serif;
}
* {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:24px;
}
body {
  margin:0;
  background:var(--ink);
  color:var(--paper);
  font-family:var(--body);
  font-size:16px;
  line-height:1.55;
  isolation:isolate;
}
body::before {
  position:fixed;
  inset:0;
  z-index:10;
  pointer-events:none;
  content:"";
  opacity:.045;
  background-image:repeating-linear-gradient(17deg,transparent 0 2px,#f8ffe8 2px 3px,transparent 3px 6px);
  background-size:7px 9px;
}
::selection {
  background:var(--green);
  color:var(--ink);
}
a {
  color:inherit;
  text-decoration:none;
}
button,a {
  -webkit-tap-highlight-color:transparent;
}
a:focus-visible {
  outline:3px solid var(--red);
  outline-offset:6px;
}
img {
  display:block;
  max-width:100%;
  height:auto;
}
picture {
  display:contents;
}
h1,h2,h3,p,figure {
  margin:0;
}
h1,h2,h3 {
  font-family:var(--display);
  font-weight:400;
  line-height:1.03;
  letter-spacing:.015em;
  overflow-wrap:anywhere;
}
.wrap {
  width:min(1240px,calc(100% - 96px));
  margin-inline:auto;
}
.skip-link {
  position:absolute;
  top:10px;
  left:16px;
  transform:translateY(-160%);
  background:var(--paper);
  color:var(--ink);
  padding:12px 18px;
  z-index:20;
}
.skip-link:focus {
  transform:none;
}
.site-header {
  min-height:112px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid var(--line);
  gap:24px;
  padding-block:18px;
}
.brand {
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}
.brand-emblem {
  width:88px;
  height:72px;
  flex:none;
  object-fit:contain;
}
.brand-type {
  min-width:0;
}
.brand-wordmark {
  display:block;
  font:900 clamp(24px,2.4vw,34px)/1.05 "Arial Black",Arial,sans-serif;
  letter-spacing:-.05em;
  white-space:nowrap;
}
.brand-wordmark>span {
  color:var(--green);
}
.brand-dot {
  margin-left:2px;
}
.brand-caption {
  display:block;
  margin-top:7px;
  color:var(--muted);
  font:8px/1.5 "SFMono-Regular",Consolas,monospace;
  letter-spacing:.25em;
  white-space:nowrap;
}
.brand-note {
  grid-column:3;
  grid-row:1;
  justify-self:end;
  color:var(--muted);
  font-size:12px;
  text-align:right;
}
.brand-note::before {
  content:"";
  display:inline-block;
  width:6px;
  height:6px;
  margin-right:7px;
  background:var(--green);
  border-radius:50%;
  vertical-align:middle;
}
.main-nav {
  grid-column:2;
  grid-row:1;
  justify-self:center;
  display:flex;
  align-items:center;
  gap:28px;
  flex-wrap:wrap;
  font-size:13px;
  font-weight:700;
}
.main-nav a:not(.nav-join):hover {
  color:var(--green);
}
.nav-join {
  display:flex;
  align-items:center;
  gap:30px;
  border:1px solid var(--green);
  padding:11px 21px;
  text-transform:uppercase;
  color:var(--green);
}
.nav-join:hover {
  background:var(--green);
  color:var(--ink);
}
.hero {
  position:relative;
  overflow-x:clip;
}
.hero-grid {
  min-height:641px;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);
  align-items:center;
  gap:18px;
  position:relative;
  padding-block:56px 57px;
}
.hero-copy {
  position:relative;
  z-index:2;
}
.hero-copy,.game-copy,.download-intro,.stats-copy {
  min-width:0;
  container-type:inline-size;
}
.hero-grid>*,.game-feature>*,.other-games>*,.download-inner>*,.steps li>* {
  min-width:0;
}
.eyebrow {
  font-size:10px;
  font-weight:700;
  letter-spacing:.13em;
  line-height:1.5;
}
.hero .eyebrow {
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--muted);
  margin-bottom:24px;
}
.tiny-star {
  color:var(--red);
  font-size:18px;
  line-height:1;
}
h1 {
  font-size:clamp(40px,6.55vw,96px);
  font-size:clamp(40px,15.5cqi,96px);
  line-height:.98;
  letter-spacing:.005em;
}
h1>span {
  color:var(--green);
}
.hero-description {
  max-width:440px;
  margin-top:24px;
  color:#d3d4c8;
  font-size:15px;
  line-height:1.6;
}
.hero-actions {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:27px;
  margin-top:27px;
}
.button {
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:27px;
  padding:15px 22px;
  font-size:11px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.04em;
  box-shadow:4px 4px 0 #0b0d09;
  transition:transform .16s,box-shadow .16s;
}
.button>span:last-child:not(:first-child) {
  font-size:22px;
  line-height:14px;
}
.button:hover {
  transform:translate(-2px,-2px);
  box-shadow:6px 6px 0 #0b0d09;
}
.button:active {
  transform:translate(2px,2px);
  box-shadow:2px 2px 0 #0b0d09;
}
.button-green {
  background:var(--green);
  color:var(--ink);
}
.text-link {
  font-size:12px;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:6px;
  text-decoration-color:#69715d;
}
.text-link:hover {
  color:var(--green);
  text-decoration-color:var(--green);
}
.hero-footnote {
  font-size:10px;
  margin-top:24px;
  color:var(--muted);
}
.hero-footnote strong {
  font-weight:400;
  color:var(--paper);
}
.hero-art {
  height:540px;
  position:relative;
  min-width:0;
  align-self:center;
}
.poster-sheet {
  position:absolute;
  inset:12px -80px 4px 20px;
  background:var(--green-deep);
  clip-path:polygon(13% 0,100% 6%,96% 99%,0 91%);
  transform:rotate(-4deg);
}
.poster-sheet::after {
  position:absolute;
  content:"";
  inset:0;
  background-image:radial-gradient(#17231177 .8px,transparent .9px);
  background-size:6px 6px;
  opacity:.6;
}
.hero-star {
  position:absolute;
  top:60px;
  right:-16px;
  width:450px;
  height:450px;
  background:var(--red);
  clip-path:polygon(50% 0,61% 34%,98% 35%,69% 57%,79% 95%,50% 73%,20% 95%,31% 57%,2% 35%,39% 34%);
  transform:rotate(12deg);
}
.hero-mascot {
  position:absolute;
  width:570px;
  max-width:110%;
  bottom:13px;
  left:-10px;
  transform:rotate(-6deg);
  filter:drop-shadow(5px 6px 0 var(--paper)) drop-shadow(-3px -3px 0 var(--paper));
}
.art-caption {
  position:absolute;
  z-index:1;
  right:7px;
  top:30px;
  color:#182016;
  font-size:9px;
  font-weight:800;
  letter-spacing:.22em;
  transform:rotate(0deg);
}
.speech-bubble {
  position:absolute;
  top:0;
  left:-17px;
  z-index:3;
  background:var(--paper);
  color:var(--ink);
  border:3px solid var(--ink);
  font-family:var(--display);
  font-size:31px;
  line-height:1.03;
  text-align:center;
  padding:17px 23px;
  transform:rotate(-9deg);
  box-shadow:5px 5px 0 var(--ink);
}
.speech-bubble::after {
  content:"";
  position:absolute;
  right:19px;
  bottom:-25px;
  width:26px;
  height:27px;
  background:var(--paper);
  clip-path:polygon(0 0,100% 0,65% 100%);
}
.test-stamp {
  position:absolute;
  z-index:3;
  right:8px;
  bottom:9px;
  border:3px solid var(--paper);
  outline:1px solid var(--paper);
  outline-offset:4px;
  color:var(--paper);
  background:var(--ink);
  width:133px;
  min-height:87px;
  transform:rotate(9deg);
  text-align:center;
  padding:8px;
}
.test-stamp b {
  font-family:var(--display);
  font-size:22px;
  line-height:1.1;
  font-weight:400;
}
.test-stamp span {
  display:block;
  font-size:14px;
  letter-spacing:.1em;
  font-weight:700;
}
.ticker-frame {
  overflow-x:clip;
  padding-block:24px;
  margin-top:-9px;
}
.ticker {
  overflow-x:clip;
  background:var(--green);
  color:var(--ink);
  border-block:4px solid var(--ink);
  box-shadow:0 -1px 0 var(--green),0 1px 0 var(--green);
  transform:rotate(-1.2deg);
  margin:0;
  padding:12px 0;
}
.ticker>div {
  font-family:var(--display);
  font-size:23px;
  letter-spacing:.03em;
  white-space:nowrap;
  word-spacing:6px;
  width:max-content;
  animation:ng-ticker 60s linear infinite;
}
@keyframes ng-ticker {
  from { transform:translateX(0); }
  to { transform:translateX(-50%); }
}
.ticker span {
  padding:0 22px;
  color:#34471d;
}
.section-space {
  padding-block:91px 88px;
}
.section-heading {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:30px;
}
.section-number {
  color:var(--green);
  margin-bottom:13px;
}
h2 {
  font-size:52px;
}
h2>span {
  color:var(--red);
}
.section-aside {
  font-size:12px;
  color:var(--muted);
  line-height:1.65;
  text-align:right;
  padding-bottom:2px;
}
.game-feature {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  background:var(--surface);
  border:1px solid var(--line);
  box-shadow:7px 7px 0 #10120e;
  min-height:468px;
}
.game-copy {
  padding:32px 35px 27px;
}
.status {
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-size:8px;
  line-height:1.4;
  font-weight:800;
  letter-spacing:.1em;
  padding:6px 9px;
}
.status-green {
  color:var(--ink);
  background:var(--green);
}
.status i {
  width:5px;
  height:5px;
  background:currentColor;
  border-radius:50%;
}
.game-overline {
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
  color:var(--muted);
  margin:24px 0 6px;
}
.game-copy h3 {
  font-size:clamp(36px,15cqi,57px);
  line-height:.99;
}
.game-copy h3 span {
  color:var(--green);
}
.game-description {
  font-size:12px;
  line-height:1.65;
  color:#d2d5c8;
  margin-top:17px;
}
.feature-list {
  list-style:none;
  padding:0;
  margin:19px 0 25px;
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);
  gap:10px 17px;
  font-size:10px;
  color:#d2d5c8;
}
.feature-list li {
  position:relative;
  padding-left:12px;
}
.feature-list li::before {
  content:"+";
  position:absolute;
  left:0;
  color:var(--green);
  font-weight:700;
}
.game-links {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:25px;
}
.game-links .button {
  font-size:10px;
  min-height:43px;
  padding:13px 17px;
  gap:18px;
}
.development-note {
  margin-top:19px;
  font-size:9px;
  color:#c3c8b7;
}
.development-note span {
  color:#f07968;
  margin-right:5px;
  font-size:10px;
}
.game-visual {
  position:relative;
  min-width:0;
  overflow:clip;
  background:#464737;
}
.game-visual img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:47% center;
  filter:saturate(.65);
}
.game-visual::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 40%,#141810e8 100%);
  pointer-events:none;
}
.image-sticker {
  position:absolute;
  top:28px;
  left:24px;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--display);
  font-size:25px;
  line-height:1.05;
  transform:rotate(-6deg);
  padding:13px 16px;
  box-shadow:4px 4px 0 #191c1799;
  z-index:1;
  max-width:calc(100% - 48px);
  overflow-wrap:anywhere;
}
.game-visual figcaption {
  position:absolute;
  bottom:28px;
  left:30px;
  right:24px;
  z-index:1;
}
.game-visual figcaption span {
  font-size:8px;
  font-weight:700;
  letter-spacing:.15em;
  color:var(--green);
  display:block;
  margin-bottom:8px;
}
.game-visual figcaption b {
  font-size:17px;
  line-height:1.35;
  display:block;
  font-weight:600;
}
.other-games {
  display:grid;
  grid-template-columns:minmax(0,1.16fr) minmax(0,1fr);
  gap:24px;
  margin-top:25px;
}
.legacy-game,.next-game {
  min-height:261px;
  position:relative;
  overflow:clip;
  border:1px solid var(--line);
  padding:27px 30px;
}
.legacy-background {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:60% 27%;
  filter:grayscale(.5);
  opacity:.43;
}
.legacy-game::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,#171b17f5 2%,#171b1799 65%,#171b1755);
}
.legacy-copy {
  position:relative;
  z-index:1;
}
.status-paper {
  background:var(--paper);
  color:var(--ink);
}
.legacy-game h3 {
  font-size:38px;
  margin-top:24px;
}
.legacy-game h3 span {
  color:var(--green);
}
.legacy-game p,.next-game p {
  font-size:12px;
  color:#d3d7c8;
  line-height:1.6;
  margin-top:12px;
}
.quiet-status {
  display:inline-block;
  margin-top:24px;
  font-size:8px;
  font-weight:800;
  letter-spacing:.13em;
  color:#cbd0c1;
}
.next-game {
  background:repeating-linear-gradient(135deg,transparent 0 10px,#a4cf4308 10px 11px),#20251b;
}
.status-outline {
  color:var(--muted);
  border:1px solid #69715d;
}
.next-game h3 {
  font-size:34px;
  margin-top:20px;
}
.next-question {
  position:absolute;
  right:25px;
  bottom:-33px;
  font-family:var(--display);
  font-size:265px;
  line-height:1;
  color:#a4cf4320;
  transform:rotate(9deg);
}
.next-game>p,.next-game>h3,.next-game>.quiet-status {
  position:relative;
}
.next-game .quiet-status {
  margin-top:17px;
}
.download-section {
  background:var(--paper);
  color:var(--ink);
  position:relative;
  overflow-x:clip;
  border-top:7px solid var(--green);
  clip-path:polygon(0 2%,100% 0,100% 98%,0 100%);
  padding:70px 0 72px;
}
.download-section::before {
  position:absolute;
  content:"";
  inset:0;
  pointer-events:none;
  opacity:.2;
  background-image:radial-gradient(#515844 .65px,transparent .8px);
  background-size:5px 5px;
}
.download-inner {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:90px;
}
.download-section .section-number {
  color:#4c6521;
}
.download-intro h2 {
  font-size:clamp(32px,15cqi,61px);
}
.join-art {
  position:relative;
  width:290px;
  max-width:100%;
  height:237px;
  margin:18px 0 -29px 5px;
}
.join-art img {
  width:186px;
  mix-blend-mode:multiply;
  transform:rotate(-7deg);
  position:absolute;
  top:0;
  left:18px;
}
.join-bubble {
  position:absolute;
  right:-15px;
  top:63px;
  font-family:var(--display);
  font-size:clamp(18px,2vw,24px);
  line-height:1.05;
  transform:rotate(8deg);
  border:2px solid var(--ink);
  padding:12px;
  background:var(--green);
  box-shadow:4px 4px 0 var(--ink);
}
.steps {
  list-style:none;
  padding:0;
  margin:0;
}
.steps li {
  display:grid;
  grid-template-columns:47px minmax(0,1fr);
  gap:20px;
  padding:20px 0;
  border-bottom:1px solid #b6bba8;
}
.steps li:first-child {
  padding-top:0;
}
.steps li:last-child {
  border-bottom:0;
  padding-bottom:0;
}
.step-number {
  font-family:var(--display);
  font-size:41px;
  line-height:1.1;
  color:#556f27;
}
.steps h3 {
  font-size:26px;
  letter-spacing:.025em;
  margin-bottom:9px;
}
.steps p {
  font-size:12px;
  line-height:1.65;
  max-width:450px;
  color:#41483a;
}
.platforms {
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:13px;
}
.platforms a {
  border:1px solid #525c43;
  padding:7px 13px;
  font-size:11px;
  font-weight:700;
  display:flex;
  align-items:center;
  gap:9px;
  min-height:36px;
}
.platform-logo {
  width:18px;
  height:18px;
  flex:none;
}
.platforms a:hover {
  background:var(--ink);
  color:var(--paper);
}
.platforms small {
  font-size:8px;
  font-weight:400;
}
.steps .availability {
  font-size:10px;
  line-height:1.5;
  max-width:360px;
  margin-top:9px;
  color:#535d47;
}
.stats-section {
  display:grid;
  grid-template-columns:190px minmax(0,1fr) auto;
  gap:39px;
  align-items:center;
  padding-block:64px 61px;
}
.stats-art {
  background:var(--paper);
  transform:rotate(-7deg);
  padding:8px;
  box-shadow:6px 6px 0 #0e100c;
  border:2px solid var(--ink);
  position:relative;
}
.stats-art::before {
  content:"";
  width:58px;
  height:17px;
  background:#a8b197b3;
  transform:rotate(9deg);
  position:absolute;
  left:calc(50% - 29px);
  top:-9px;
  z-index:1;
}
.stats-art img {
  width:100%;
  height:auto;
}
.stats-copy .section-number {
  margin-bottom:11px;
}
.stats-copy h2 {
  font-size:clamp(28px,18cqi,48px);
}
.stats-copy p:last-child {
  margin-top:12px;
  font-size:12px;
  color:var(--muted);
}
.button-paper {
  color:var(--ink);
  background:var(--paper);
  gap:30px;
  text-align:left;
  min-height:70px;
  padding:18px 23px;
}
.button-paper small {
  display:block;
  margin-top:8px;
  font-size:10px;
  font-weight:400;
  letter-spacing:0;
}
.button-paper .button-star {
  color:#b83227!important;
  font-size:32px!important;
}
.site-footer {
  border-top:1px solid var(--line);
}
.footer-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding-block:27px;
}
.footer-brand {
  font-family:var(--display);
  font-size:29px;
  line-height:1;
  letter-spacing:.03em;
}
.footer-brand span {
  display:block;
  color:var(--green);
  font-family:var(--body);
  font-size:6px;
  font-weight:700;
  letter-spacing:.16em;
  margin-top:6px;
}
.footer-top>p {
  font-size:11px;
  color:var(--muted);
}
.footer-top nav {
  display:flex;
  gap:28px;
  font-size:11px;
}
.footer-top nav a:hover,.footer-bottom a:hover {
  color:var(--green);
}
.footer-bottom {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-block:17px 25px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:9px;
}
.footer-bottom p {
  max-width:550px;
}
@media(min-width:1600px) {
  .hero-grid {
    min-height:700px;
  }
  .hero-art {
    height:570px;
  }
  h1 {
    font-size:clamp(40px,16cqi,100px);
  }
  .hero-star {
    width:500px;
    height:500px;
  }
  .hero-mascot {
    bottom:25px;
  }
}
@media(max-width:1100px) {
  .site-header {
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px 24px;
  }
  .main-nav {
    grid-column:1 / -1;
    grid-row:2;
    justify-self:end;
  }
  .brand-note {
    grid-column:2;
  }
  .test-stamp b {
    font-size:18px;
  }
  .wrap {
    width:calc(100% - 64px);
  }
  .hero-grid {
    grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);
    min-height:610px;
  }
  .hero-art {
    height:460px;
  }
  .hero-mascot {
    width:500px;
    bottom:35px;
  }
  .hero-star {
    width:370px;
    height:370px;
    right:-40px;
  }
  .art-caption {
    font-size:8px;
    right:0;
  }
  .speech-bubble {
    font-size:25px;
    top:9px;
    left:8px;
  }
  .test-stamp {
    width:112px;
    right:8px;
    bottom:20px;
    min-height:72px;
  }
  .hero-actions {
    gap:17px;
  }
  .hero-actions .button {
    font-size:10px;
    gap:16px;
    padding:15px 16px;
  }
  .game-copy {
    padding:28px;
  }
  .game-copy h3 {
    font-size:clamp(36px,15cqi,49px);
  }
  .feature-list {
    grid-template-columns:1fr;
    gap:6px;
  }
  .game-links {
    gap:16px;
  }
  .game-links .button {
    font-size:9px;
    gap:12px;
  }
  .download-inner {
    gap:45px;
  }
  .download-intro h2 {
    font-size:clamp(32px,15cqi,54px);
  }
  .stats-section {
    grid-template-columns:160px minmax(0,1fr) auto;
    gap:25px;
  }
  .stats-copy h2 {
    font-size:clamp(28px,18cqi,42px);
  }
  .button-paper {
    padding:17px;
    gap:16px;
    font-size:10px;
  }
  .main-nav {
    gap:27px;
  }
  .footer-top {
    gap:20px;
  }
  .footer-top nav {
    gap:18px;
  }
}
@media(max-width:800px) {
  .brand-emblem {
    width:76px;
    height:auto;
  }
  .brand-wordmark {
    font-size:30px;
  }
  .wrap {
    width:calc(100% - 40px);
  }
  .main-nav {
    gap:18px;
    font-size:11px;
  }
  .nav-join {
    padding:10px 12px;
    gap:14px;
  }
  .hero-grid {
    min-height:585px;
    padding-block:43px;
  }
  .hero .eyebrow {
    font-size:8px;
    margin-bottom:20px;
    letter-spacing:.07em;
  }
  h1 {
    font-size:clamp(32px,15.5cqi,61px);
  }
  .hero-description {
    font-size:13px;
    margin-top:21px;
  }
  .hero-art {
    height:415px;
  }
  .hero-star {
    width:310px;
    height:340px;
    top:55px;
  }
  .hero-mascot {
    bottom:45px;
    left:-10px;
  }
  .speech-bubble {
    font-size:21px;
    padding:12px 16px;
    left:25px;
    top:15px;
  }
  .art-caption {
    display:none;
  }
  .hero-actions {
    gap:19px;
    align-items:start;
    flex-direction:column;
    margin-top:22px;
  }
  .hero-actions .button {
    padding:15px 17px;
  }
  .hero-footnote {
    font-size:9px;
    margin-top:22px;
  }
  .test-stamp {
    bottom:20px;
    width:112px;
  }
  .section-space {
    padding-block:66px;
  }
  .section-heading h2 {
    font-size:42px;
  }
  .section-aside {
    font-size:10px;
  }
  .game-copy {
    padding:25px;
  }
  .game-copy h3 {
    font-size:clamp(32px,15cqi,44px);
  }
  .game-description {
    font-size:11px;
  }
  .game-description br {
    display:none;
  }
  .game-links {
    align-items:flex-start;
    flex-direction:column;
    gap:19px;
  }
  .game-links .button {
    font-size:10px;
  }
  .image-sticker {
    font-size:21px;
    top:21px;
    left:19px;
  }
  .game-visual figcaption {
    left:22px;
  }
  .game-visual figcaption b {
    font-size:15px;
  }
  .other-games {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
  }
  .legacy-game,.next-game {
    padding:24px;
  }
  .legacy-game h3 {
    font-size:32px;
  }
  .legacy-game h3 span {
    display:block;
  }
  .next-question {
    right:0;
    font-size:230px;
  }
  .download-inner {
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:30px;
  }
  .download-intro h2 {
    font-size:clamp(32px,15cqi,44px);
  }
  .download-section .eyebrow {
    font-size:8px;
  }
  .join-art {
    width:220px;
    margin-left:0;
  }
  .join-art img {
    width:160px;
    left:0;
    top:10px;
  }
  .join-bubble {
    right:-8px;
    font-size:20px;
    top:112px;
  }
  .steps li {
    grid-template-columns:35px minmax(0,1fr);
    gap:16px;
  }
  .step-number {
    font-size:34px;
  }
  .steps h3 {
    font-size:23px;
  }
  .steps p {
    font-size:11px;
  }
  .stats-section {
    grid-template-columns:135px minmax(0,1fr);
    gap:25px;
  }
  .stats-copy h2 {
    font-size:clamp(28px,18cqi,44px);
  }
  .stats-section>.button {
    grid-column:2;
    justify-self:start;
    margin-top:-5px;
  }
  .stats-art {
    grid-row:1 / 3;
    align-self:center;
  }
  .footer-top {
    flex-wrap:wrap;
  }
  .footer-top nav {
    margin-left:auto;
  }
  .footer-top>p {
    margin-right:auto;
  }
  .footer-bottom {
    flex-wrap:wrap;
  }
  .footer-bottom p {
    max-width:60%;
  }
}
@media(max-width:767px) {
  .site-header {
    gap:14px 12px;
    padding-block:16px;
  }
  .brand {
    grid-column:1 / -1;
    gap:12px;
  }
  .brand-emblem {
    width:72px;
  }
  .brand-wordmark {
    font-size:clamp(26px,8.2vw,34px);
  }
  .brand-caption {
    font-size:.625rem;
    letter-spacing:.1em;
  }
  .brand-note {
    grid-column:1;
    grid-row:2;
    justify-self:start;
    text-align:left;
    font-size:1rem;
    line-height:1.5;
  }
  .main-nav {
    grid-column:2;
  }
  .main-nav a:not(.nav-join) {
    display:none;
  }
  .nav-join {
    font-size:.875rem;
    gap:11px;
    padding:9px 11px;
    min-height:44px;
  }
  .hero-grid {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding-block:28px 22px;
    min-height:0;
  }
  .hero .eyebrow {
    font-size:.75rem;
    gap:7px;
    margin-bottom:19px;
    letter-spacing:.055em;
  }
  .hero .tiny-star {
    font-size:15px;
  }
  h1 {
    font-size:clamp(2.5rem,15.5cqi,4.875rem);
    line-height:.99;
    letter-spacing:0;
  }
  .hero-description {
    font-size:1rem;
    line-height:1.55;
    margin-top:18px;
    max-width:34rem;
  }
  .hero-actions {
    flex-direction:row;
    align-items:center;
    gap:8px 24px;
    margin-top:21px;
  }
  .hero-actions .button {
    font-size:.875rem;
    gap:16px;
    padding:14px;
    min-height:44px;
  }
  .hero-actions .text-link {
    font-size:.875rem;
  }
  .hero-footnote {
    font-size:.75rem;
    margin-top:18px;
  }
  .hero-art {
    height:309px;
    width:100%;
    margin-top:14px;
  }
  .poster-sheet {
    inset:25px 0 10px 9px;
    transform:rotate(-4deg);
    clip-path:polygon(10% 0,100% 9%,94% 100%,0 92%);
  }
  .hero-star {
    width:290px;
    height:290px;
    top:10px;
    right:0;
  }
  .hero-mascot {
    width:330px;
    max-width:95%;
    left:10px;
    bottom:6px;
    transform:rotate(-6deg);
    filter:drop-shadow(3px 4px 0 var(--paper)) drop-shadow(-2px -2px 0 var(--paper));
  }
  .speech-bubble {
    top:10px;
    left:7px;
    font-size:22px;
    padding:11px 15px;
    box-shadow:3px 3px 0 var(--ink);
  }
  .speech-bubble::after {
    bottom:-20px;
    height:23px;
    width:20px;
  }
  .test-stamp {
    width:112px;
    min-height:62px;
    right:9px;
    bottom:14px;
    padding:5px;
    border-width:2px;
    outline-offset:3px;
  }
  .ticker-frame {
    margin-top:-16px;
  }
  .ticker {
    padding:9px 0;
    transform:rotate(-1deg);
  }
  .ticker>div {
    font-size:19px;
  }
  .ticker span {
    padding:0 14px;
  }
  .section-space {
    padding-block:49px;
  }
  .section-heading {
    margin-bottom:23px;
    display:block;
  }
  .section-heading h2 {
    font-size:36px;
    line-height:1.08;
  }
  .section-number {
    font-size:.75rem;
    margin-bottom:12px;
  }
  .section-aside {
    display:none;
  }
  .game-feature {
    grid-template-columns:minmax(0,1fr);
    box-shadow:5px 5px 0 #10120e;
  }
  .game-copy {
    padding:23px 21px 23px;
  }
  .game-copy h3 {
    font-size:clamp(2.375rem,16cqi,3.3125rem);
  }
  .game-overline {
    margin-top:22px;
    font-size:.75rem;
    letter-spacing:.1em;
  }
  .game-description {
    font-size:1rem;
    margin-top:17px;
    line-height:1.55;
  }
  .feature-list {
    grid-template-columns:minmax(0,1fr);
    gap:8px;
    font-size:1rem;
    margin:18px 0 23px;
    line-height:1.55;
  }
  .game-links {
    flex-direction:row;
    align-items:center;
    gap:8px 22px;
  }
  .game-links .button {
    font-size:.875rem;
    gap:10px;
    padding:13px 12px;
    min-height:44px;
  }
  .game-links .text-link {
    font-size:.875rem;
  }
  .development-note {
    font-size:.75rem;
    margin-top:20px;
  }
  .game-visual {
    height:268px;
    min-height:0;
    border-top:1px solid var(--line);
  }
  .game-visual>img {
    object-position:50% 48%;
  }
  .image-sticker {
    font-size:19px;
    left:18px;
    top:18px;
    padding:10px 13px;
  }
  .game-visual figcaption {
    left:21px;
    bottom:20px;
  }
  .game-visual figcaption b {
    font-size:1rem;
    line-height:1.5;
  }
  .game-visual figcaption span {
    font-size:.75rem;
    letter-spacing:.08em;
  }
  .other-games {
    grid-template-columns:minmax(0,1fr);
    margin-top:22px;
    gap:18px;
  }
  .legacy-game,.next-game {
    padding:25px 22px;
    min-height:248px;
  }
  .legacy-game h3 {
    font-size:34px;
    margin-top:24px;
  }
  .legacy-game h3 span {
    display:inline;
  }
  .legacy-game p,.next-game p {
    font-size:1rem;
  }
  .legacy-background {
    object-position:60% 30%;
  }
  .next-game {
    min-height:245px;
  }
  .next-game h3 {
    font-size:35px;
  }
  .next-question {
    right:25px;
    bottom:-25px;
    font-size:245px;
  }
  .download-section {
    clip-path:polygon(0 1%,100% 0,100% 99%,0 100%);
    padding-block:49px;
  }
  .download-inner {
    display:block;
  }
  .download-intro {
    position:relative;
    padding-bottom:30px;
  }
  .download-section .eyebrow {
    font-size:.75rem;
    letter-spacing:.08em;
  }
  .download-intro h2 {
    font-size:clamp(2rem,12cqi,2.625rem);
    max-width:240px;
    position:relative;
    z-index:1;
  }
  .join-art {
    width:105px;
    height:125px;
    position:absolute;
    right:-1px;
    bottom:20px;
    margin:0;
  }
  .join-art img {
    width:105px;
    left:0;
    top:0;
    transform:rotate(9deg);
  }
  .join-bubble {
    display:none;
  }
  .steps li {
    grid-template-columns:35px minmax(0,1fr);
    gap:16px;
    padding-block:23px;
  }
  .step-number {
    font-size:35px;
  }
  .steps h3 {
    font-size:25px;
    margin-bottom:10px;
  }
  .steps p {
    font-size:1rem;
    line-height:1.6;
  }
  .platforms {
    gap:8px;
  }
  .platforms a {
    padding:8px 11px;
    min-height:44px;
    gap:7px;
    font-size:.875rem;
  }
  .platforms small {
    font-size:.75rem;
  }
  .steps .availability {
    font-size:1rem;
  }
  .stats-section {
    grid-template-columns:minmax(0,1fr) 104px;
    gap:22px 14px;
    padding-block:42px;
  }
  .stats-art {
    grid-row:1;
    grid-column:2;
    align-self:center;
    padding:5px;
  }
  .stats-copy {
    grid-row:1;
    grid-column:1;
  }
  .stats-copy .eyebrow {
    font-size:.75rem;
    letter-spacing:.07em;
  }
  .stats-copy h2 {
    font-size:clamp(1.75rem,18cqi,2.375rem);
  }
  .stats-copy p:last-child {
    font-size:1rem;
    line-height:1.6;
  }
  .stats-section>.button {
    grid-column:1 / 3;
    margin:0;
    justify-self:stretch;
    justify-content:space-between;
    padding:17px 16px;
    min-height:67px;
    font-size:.875rem;
    gap:12px;
  }
  .footer-top {
    padding-block:24px;
    gap:18px;
  }
  .footer-brand {
    font-size:28px;
  }
  .footer-top>p {
    font-size:1rem;
    margin:0;
    line-height:1.5;
  }
  .footer-top nav {
    margin:0;
    width:100%;
    justify-content:space-between;
    font-size:.875rem;
    padding-top:8px;
    gap:8px;
    flex-wrap:wrap;
  }
  .footer-bottom {
    font-size:.75rem;
    padding-block:20px 25px;
    gap:14px;
    align-items:center;
  }
  .footer-bottom p {
    max-width:none;
    order:3;
    width:100%;
    line-height:1.6;
    font-size:1rem;
  }
  .footer-bottom a {
    margin-left:auto;
    font-size:.875rem;
  }
  /* Readable labels and touch targets share the mobile breakpoint. */
  .status,.quiet-status,.button-paper small {
    font-size:.75rem;
    letter-spacing:.05em;
  }
  .status i {
    flex:none;
  }
  .development-note span {
    font-size:inherit;
  }
  .text-link,.footer-top nav a,.footer-bottom a {
    display:inline-flex;
    align-items:center;
    min-height:44px;
  }
  .footer-brand span {
    font-size:.75rem;
    line-height:1.5;
    letter-spacing:.05em;
  }
}
@media(max-width:374px) {
  .wrap {
    width:calc(100% - 32px);
  }
  .nav-join {
    padding:9px;
    gap:9px;
  }
  .hero-actions {
    gap:18px;
  }
  .hero-art {
    height:290px;
  }
  .hero-mascot {
    width:310px;
  }
  .hero-star {
    width:265px;
    height:265px;
  }
  .game-copy {
    padding-inline:19px;
  }
  .game-links {
    gap:17px;
  }
  .stats-section {
    grid-template-columns:minmax(0,1fr) 95px;
  }
}
/* Было и стало */
.compare-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.compare-card {
  margin:0;
  background:var(--panel, #20241d);
  border:1px solid rgba(232,226,207,.14);
  display:flex;
  flex-direction:column;
}
.compare-image {
  display:block;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#20232b;
}
.compare-image img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .3s ease;
}
.compare-image:hover img,
.compare-image:focus-visible img {
  transform:scale(1.03);
}
.compare-card figcaption {
  padding:20px 22px 24px;
}
.compare-card h3 {
  font-family:var(--display);
  font-size:28px;
  line-height:1;
  margin:0 0 10px;
}
.compare-card p {
  margin:0 0 14px;
  font-size:1rem;
  line-height:1.5;
  color:var(--muted, #b9b6a8);
}
.compare-zoom {
  font-size:.875rem;
  font-weight:700;
  color:var(--green);
  text-decoration:none;
  border-bottom:2px solid currentColor;
  padding-bottom:2px;
}
.compare-note {
  margin:20px 0 0;
  font-size:.875rem;
  color:var(--muted, #b9b6a8);
}
@media(max-width:1100px) {
  .compare-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:767px) {
  .compare-grid { grid-template-columns:minmax(0,1fr); gap:18px; }
  .compare-card h3 { font-size:24px; }
  .compare-zoom { display:inline-block; min-height:44px; line-height:44px; padding-bottom:0; }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
  *,*::before,*::after {
    animation:none!important;
    transition:none!important;
  }
}
