@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-variable.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}
:root{--paper:#fff;--ink:#18212b;--muted:#68768a;--accent:#3857f6;--rule:#e4e8ee;--gutter:clamp(24px,3.1vw,48px);font-family:Manrope,Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:24px}
*{box-sizing:border-box}
body{margin:0;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
img,svg{display:block;max-width:100%}
figure,h1,h2,h3,p{margin:0}
a:focus-visible{outline:3px solid var(--accent);outline-offset:6px;border-radius:4px}
.page-width{width:calc(100% - var(--gutter)*2);max-width:1440px;margin-inline:auto}
.skip-link{position:absolute;z-index:10;top:12px;left:12px;padding:12px 18px;background:var(--ink);color:white;border-radius:8px;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.masthead{display:flex;align-items:flex-start;justify-content:space-between;padding-top:13px;padding-bottom:31px}
.brand{display:block;flex-shrink:0}
.animated-wordmark{width:170px;height:auto;overflow:visible}
.wordmark-ball{transform-origin:721.5px 402.5px;transform-box:view-box}
.logo-ready .wordmark-ball{animation:ball-arrives 1.15s cubic-bezier(.2,.7,.3,1) both}
@keyframes ball-arrives{0%{transform:translate(-800px,-75px) rotate(-330deg);opacity:0}12%{opacity:1}72%{transform:translate(0,0) rotate(0deg)}84%{transform:translate(-12px,-5px) rotate(-8deg)}100%{transform:translate(0,0) rotate(0deg)}}
.main-nav{display:flex;align-items:center;gap:48px;padding:16px 10px 0 0;font-size:16px;font-weight:700;line-height:1.5;letter-spacing:-.025em}
.main-nav a{transition:color .18s ease}
.main-nav a:hover,.main-nav .is-active{color:var(--accent)}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.17fr);column-gap:24px;align-items:center}
.hero-copy{padding-bottom:12px}
h1{font-size:clamp(48px,6.5vw,94px);font-weight:800;letter-spacing:-.05em;line-height:.99}
h1 span{display:block;white-space:nowrap}
.hero-copy p{font-size:clamp(17px,2.18vw,29px);font-weight:600;letter-spacing:-.045em;line-height:1.45;margin-top:21px;white-space:nowrap}
.play-button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:61px;padding:15px 32px;margin-top:28px;border-radius:12px;background:var(--accent);color:white;font-size:20px;font-weight:600;letter-spacing:-.035em;line-height:1.4;transition:background .18s ease,transform .18s ease}
.play-button svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.play-button:hover{background:#2846e0;transform:translateY(-2px)}
.play-button:active{transform:translateY(0)}
.featured-game a{display:block;border-radius:16px}
.hero-image{width:100%;height:auto;aspect-ratio:1.68;object-fit:cover;object-position:50% 50%;border-radius:16px}
.featured-game figcaption{font-size:18px;font-weight:750;line-height:1.5;letter-spacing:-.025em;margin-top:8px}
.upcoming{margin-top:57px}
h2{font-size:clamp(40px,6.4vw,90px);font-weight:800;letter-spacing:-.035em;line-height:1.08}
.upcoming-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:22px}
.game-art{aspect-ratio:1.55;overflow:hidden;border-radius:16px;background:radial-gradient(ellipse at 48% 36%,#194784 0%,#0c2444 36%,#060b14 77%)}
.game-art img{width:100%;height:100%;object-fit:contain;padding:4px 8px}
.new-york-art{background:radial-gradient(ellipse at 50% 110%,#6a1b1e 0%,transparent 45%),radial-gradient(ellipse at 50% 37%,#174786 0%,#0a203f 41%,#05090f 78%)}
.tokyo-art{background:radial-gradient(ellipse at 50% 110%,#611c22 0%,transparent 45%),radial-gradient(ellipse at 50% 37%,#123f7a 0%,#0a203f 41%,#05090f 78%)}
.upcoming-game h3{font-size:18px;font-weight:800;line-height:1.5;letter-spacing:-.02em;margin:10px 4px 0}
.upcoming-game p{font-size:16px;font-weight:500;line-height:1.5;letter-spacing:-.01em;color:var(--muted);margin:1px 4px 0}
.about{border-top:1px solid var(--rule);margin:46px 4px 0;padding:27px 0 0;text-align:center}
.about-wordmark{width:195px;height:auto;margin:0 auto}
.about p{font-size:20px;font-weight:500;line-height:1.45;letter-spacing:-.015em;color:#526078;margin-top:22px}
.site-footer{text-align:center;color:var(--muted);font-size:16px;font-weight:500;line-height:1.6;padding-top:29px;padding-bottom:23px;letter-spacing:-.01em}
.site-footer a{display:inline-block;font-size:12px;margin-top:8px;text-underline-offset:3px}
.site-footer a:hover{text-decoration:underline}
.document{max-width:760px;padding-top:40px;padding-bottom:44px}
.document h1{font-size:clamp(40px,6vw,64px);line-height:1.1}
.document .updated{margin:14px 0 38px;font-size:14px;color:var(--muted)}
.document h2{font-size:24px;font-weight:750;letter-spacing:-.035em;line-height:1.35;margin:30px 0 10px}
.document p{font-size:17px;line-height:1.7;color:#526078}
.document a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.document .back-home{display:inline-block;margin-top:32px;font-size:16px;font-weight:700}
@media(min-width:1536px){.masthead{padding-top:20px;padding-bottom:42px}.upcoming{margin-top:80px}.about{margin-top:60px;padding-top:34px}.about p{font-size:20px}}
@media(max-width:960px) and (min-width:761px){.hero-copy p{font-size:16px;letter-spacing:-.05em}.play-button{font-size:17px;gap:16px;min-height:54px;padding:13px 24px}.main-nav{gap:32px}.upcoming{margin-top:50px}}
@media(max-width:760px){:root{--gutter:24px;scroll-padding-top:20px}.masthead{padding-top:20px;padding-bottom:38px;align-items:center}.animated-wordmark{width:145px}.main-nav{padding:0;gap:26px;font-size:15px}.hero{grid-template-columns:minmax(0,1fr);gap:30px}.hero-copy{padding:0}h1{font-size:clamp(48px,9.3vw,72px);letter-spacing:-.06em;line-height:1.01}.hero-copy p{font-size:clamp(17px,3.3vw,23px);margin-top:18px;letter-spacing:-.035em;white-space:normal}.play-button{font-size:18px;min-height:56px;padding:14px 26px;margin-top:23px;gap:22px}.hero-image{aspect-ratio:1.68}.featured-game figcaption{font-size:16px}.upcoming{margin-top:46px}h2{font-size:clamp(34px,5.9vw,45px);line-height:1.13}.upcoming-grid{gap:20px;margin-top:22px}.upcoming-game h3{font-size:16px;margin:10px 1px 0}.upcoming-game p{font-size:14px;margin-left:1px}.game-art{border-radius:12px}.about{margin-top:38px;padding-top:28px}.about p{font-size:16px;margin-top:20px}.about-wordmark{width:170px}.site-footer{padding-top:26px;font-size:14px}.document{padding-top:16px}.document h1{font-size:44px}.document h2{font-size:23px}.document p{font-size:16px}}
@media(max-width:540px){:root{--gutter:20px}.masthead{padding-top:18px;padding-bottom:34px}.animated-wordmark{width:133px}.main-nav{gap:22px;font-size:14px}h1{font-size:clamp(44px,11.6vw,62px)}.upcoming-grid{grid-template-columns:minmax(0,1fr);gap:28px}.upcoming-game h3{font-size:17px}.upcoming-game p{font-size:15px}.about p{font-size:15px}.hero-image{border-radius:13px}.document h1{font-size:40px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.logo-ready .wordmark-ball{animation:none}a,.play-button{transition:none}.play-button:hover{transform:none}}
