@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+JP:wght@400;500;600;700&display=swap');
@font-face{font-family:'Black Ops One';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/black-ops-one-regular.ttf') format('truetype')}
@font-face{font-family:'Airbus Special';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/airbus-special-italic.ttf') format('truetype')}
:root{--bg:#1a1d20;--fg:#f1f0ec;--muted:#a4aaad;--blue:#3ca5d6;--line:#ffffff20;--mono:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--bg);color:var(--fg);font-family:'Manrope','Noto Sans JP',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:7px}::selection{background:var(--blue);color:var(--bg)}.wrap{width:min(1280px,88%);margin:auto}.header{height:112px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:70px}.brand{display:block;position:relative;width:238px;height:34px;overflow:hidden;flex-shrink:0}.brand img{position:absolute;width:284px;height:auto;left:-19px;top:-18px}.header nav{display:flex;gap:32px;font-size:13px;font-weight:600}.header nav span{color:var(--muted);margin-left:12px}.header nav a:hover,.closing a:hover{color:var(--blue)}.header-note{margin-left:auto;font-size:11px;color:var(--muted)}i{display:inline-block}.header-note i,.dot,.eyebrow i{width:6px;height:6px;background:var(--blue);border-radius:50%;margin-right:8px}.hero{position:relative;min-height:805px;padding-top:43px;isolation:isolate}.hero-label,.hero-bottom,.art-coordinate,.art-label,.section-kicker,.eyebrow,.work-meta,.art-number,.art-corner,.window-top,.window-status,.closing-bottom a{font-family:var(--mono);font-size:10px;letter-spacing:1.3px;font-weight:500}.hero-label{color:#b8bfc2;display:flex;align-items:center;gap:10px}.tiny-cross{font-size:21px;color:var(--blue)}.hero-copy{position:relative;z-index:2;padding-top:30px;width:53%}h1{font-size:clamp(100px,10.4vw,152px);line-height:.98;letter-spacing:-9px;margin:0 0 29px;font-weight:500}.multiply{color:var(--blue);font-weight:400;display:inline-block;font-size:.64em;margin-left:27px;vertical-align:15px}.tech{margin-left:69px}.period{color:var(--blue)}.hero-jp{font-size:24px;line-height:1.65;letter-spacing:2px;font-weight:500;margin:0 0 18px}.hero-description{color:var(--muted);font-size:12px;line-height:2.1;letter-spacing:.7px;margin:0 0 28px}.primary-link{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;border-bottom:1px solid var(--blue);padding:0 0 12px;font-size:12px;font-weight:600}.primary-link span{color:var(--blue);font-size:21px;transition:transform .2s}.primary-link:hover span{transform:translate(3px,-3px)}.hero-art{position:absolute;right:-27px;top:37px;width:58%;aspect-ratio:1;z-index:-1}.art-grid{position:absolute;inset:40px 0 75px;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:51px 51px;mask-image:radial-gradient(ellipse,#000 30%,transparent 70%)}.orb-glow{position:absolute;inset:10%;background:radial-gradient(ellipse,#2180aa16,transparent 65%)}#sculpture{width:100%;height:100%;overflow:visible}.art-coordinate{position:absolute;color:#747e84;font-size:8px;letter-spacing:1.5px}.art-coordinate.top{top:45px;right:75px}.art-coordinate.bottom{bottom:83px;left:90px}.art-plus{position:absolute;color:#879299;font-size:20px;font-weight:400}.plus-one{left:60px;top:115px}.plus-two{right:30px;bottom:130px}.art-label{position:absolute;bottom:16px;right:50px;letter-spacing:0;font-size:12px}.art-label small{display:block;color:var(--muted);font-size:9px;letter-spacing:1px;margin:10px 0 0 15px}.hero-bottom{display:flex;justify-content:space-between;position:absolute;bottom:25px;width:100%;color:#7f898f;font-size:9px;letter-spacing:1.1px}.hero-bottom a span{margin-left:24px;color:var(--fg);font-size:17px}.marquee{overflow:hidden;border-block:1px solid var(--line);padding:24px 0;color:#b1b5b7;white-space:nowrap}.marquee div{width:max-content;font-size:17px;letter-spacing:2px;animation:marquee 45s linear infinite}.marquee span{color:var(--blue);margin:0 45px;font-size:25px;vertical-align:-2px}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:86px 0 90px}.section-kicker{display:flex;justify-content:space-between;color:#879299;font-size:9px;letter-spacing:1.2px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin:38px 0 36px}h2{font-size:48px;letter-spacing:-2px;line-height:1.22;font-weight:500;margin:0}h2 span{color:#8e989e}.section-heading p{font-size:12px;letter-spacing:.7px;line-height:2;color:var(--muted);margin:23px 0 0}.filters{display:flex;gap:8px;padding-bottom:3px}.filters button{border:1px solid transparent;background:transparent;color:var(--muted);font-size:11px;padding:9px 18px;border-radius:2px;cursor:pointer;transition:background .2s,color .2s}.filters button.active{background:var(--fg);color:var(--bg)}.filters button:hover:not(.active){border-color:var(--line);color:var(--fg)}.filters span{font-size:8px;margin-left:7px}.works-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.work[hidden]{display:none}.work-art{height:318px;position:relative;overflow:hidden;border:1px solid #ffffff08;transition:border-color .3s}.work:hover .work-art{border-color:#ffffff25}.art-number{position:absolute;left:24px;top:23px;letter-spacing:1px;font-size:8px;color:#a1aeb4}.tool-art{background:#222a30;background-image:radial-gradient(ellipse at 55% 60%,#3c576544,transparent 70%)}.art-corner{font-size:8px;position:absolute;bottom:22px;left:24px;color:#758791;letter-spacing:1px}.tool-window{position:absolute;left:20%;top:24%;width:62%;height:54%;border:1px solid #728c9c55;background:#20292f;transform:perspective(700px) rotateY(-16deg) rotateZ(-9deg);box-shadow:10px 20px 30px #0003;transition:transform .6s}.work:hover .tool-window{transform:perspective(700px) rotateY(-8deg) rotateZ(-4deg)}.window-top{height:31px;border-bottom:1px solid #ffffff12;display:flex;align-items:center;gap:5px;padding:0 12px;font-size:5px;color:#9ab1bd;letter-spacing:1px}.window-top i{width:4px;height:4px;border-radius:50%;background:#647c88}.window-top i:first-child{background:var(--blue)}.window-top span{margin-left:auto}.window-content{display:flex;align-items:center;padding:22px;gap:23px}.code-tag{font-size:38px;letter-spacing:-4px;color:#56afe0;font-weight:500}.code-lines{flex:1}.code-lines i{display:block;width:88%;height:3px;margin:8px 0;background:#536976}.code-lines i:nth-child(2){width:62%;background:#3e8daf}.code-lines i:nth-child(3){width:74%}.code-lines i:nth-child(4){width:44%}.window-cursor{font-size:37px;position:absolute;right:30px;bottom:26px;color:#d4e5ec;transform:rotate(-10deg)}.window-status{border-top:1px solid #ffffff12;position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:8px 12px;font-size:5px;color:#8ba5b4}.game-art{background:#242b29;background-image:linear-gradient(#b7cfb006 1px,transparent 1px),linear-gradient(90deg,#b7cfb006 1px,transparent 1px);background-size:32px 32px}.game-star{color:#c5d8b8;position:absolute;left:39%;top:12%;font-size:210px;line-height:1;transform:rotate(-16deg);text-shadow:0 12px 55px #c0d9a51a;transition:transform .6s}.work:hover .game-star{transform:rotate(10deg)}.game-orbit{position:absolute;border:1px solid #bdd4b32b;border-radius:50%;width:330px;height:120px;left:24%;top:29%;transform:rotate(-34deg)}.orbit-two{transform:rotate(52deg);width:300px;height:180px;top:24%}.pixel{position:absolute;width:8px;height:8px;background:#c5d8b8}.pixel-one{left:23%;top:32%}.pixel-two{right:17%;top:25%;width:5px;height:5px}.pixel-three{right:20%;bottom:20%;background:#8fa187}.game-caption{position:absolute;left:27px;bottom:54px;font-family:var(--mono);font-size:13px;line-height:1.4;letter-spacing:2px;color:#b2bdaa}.game-art .art-corner{color:#869580}.work-meta{display:flex;justify-content:space-between;margin:22px 0 14px;font-size:9px;color:#afbbc1}.soon{font-size:8px;letter-spacing:.9px;color:#818b92}.soon i{height:4px;width:4px;border-radius:50%;background:#7c8d95;margin-right:6px;vertical-align:2px}h3{font-size:18px;letter-spacing:.7px;font-weight:500;margin:0 0 11px}.work p{font-size:11px;line-height:2;letter-spacing:.5px;color:var(--muted);margin:0}.collection-note{color:#8d979d;font-size:10px;letter-spacing:.8px;border-top:1px solid var(--line);margin:35px 0 0;padding-top:20px}.collection-note span{color:var(--blue);font-size:17px;margin-right:10px}.about{background:#1e2225;border-block:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:54px}.eyebrow{font-size:9px;letter-spacing:1.2px;color:var(--blue)}.about h2{font-family:'Noto Sans JP',sans-serif;font-size:38px;line-height:1.7;letter-spacing:1px;font-weight:500;margin-top:23px}.about-copy{padding-top:20px}.about-copy p{font-size:12px;line-height:2.3;color:var(--muted);letter-spacing:.8px;margin:0 0 22px}.about-copy p:first-child{color:var(--fg);font-size:14px}.formula{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;align-items:center;margin-top:30px;font-size:21px;letter-spacing:-.5px}.formula small{display:block;font-family:'Noto Sans JP',sans-serif;font-size:9px;color:#89959c;letter-spacing:1px;margin-top:9px}.formula b{color:#7a8a93;font-size:16px;font-weight:400}.formula-end{font-size:18px;color:var(--blue)}.closing{padding-top:88px;padding-bottom:50px}.closing .eyebrow{color:#a2adb3;font-size:9px}.closing>p{position:relative;font-size:clamp(65px,7.8vw,108px);line-height:1.12;font-weight:400;letter-spacing:-5px;margin:33px 0 35px}.closing em{font-style:normal;color:var(--blue)}.closing-star{position:absolute;right:7%;top:8%;font-size:145px;color:var(--blue);font-weight:400}.closing-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);letter-spacing:1px}.closing-bottom a{color:var(--fg);font-size:9px}.closing-bottom a span{font-size:18px;margin-left:25px}.footer{display:flex;gap:30px;align-items:center;border-top:1px solid var(--line);padding:29px 0 30px;color:#7f8a90;font-family:var(--mono);font-size:9px}.footer .brand{width:164px;height:28px}.footer .brand img{width:196px;top:-12px;left:-13px}.footer-message{margin-left:auto}
@media(min-width:1500px){.hero-art{width:650px;right:0}.hero{min-height:840px}}@media(max-width:1050px){.header{gap:35px}.header-note{font-size:9px}.hero{min-height:760px}h1{font-size:126px}.hero-art{right:-5%;top:90px;width:62%}.hero-copy{width:60%}.hero-label{font-size:9px}.art-label{right:30px;bottom:-30px}.art-coordinate.bottom{bottom:40px}.section-kicker{font-size:8px}.work-art{height:270px}.window-content{padding:13px;gap:18px}.code-tag{font-size:32px}.game-star{font-size:180px}.about-grid{gap:45px}.about h2{font-size:31px}.formula{font-size:18px}.formula-end{font-size:15px}.closing-star{font-size:125px}}@media(max-width:700px){.wrap{width:88%}.header{height:84px;gap:20px;justify-content:space-between}.brand{width:192px;height:30px}.brand img{width:230px;left:-15px;top:-14px}.header nav{gap:18px;font-size:11px}.header nav span{display:none}.header-note{display:none}.hero{padding-top:26px;min-height:965px}.hero-label{font-size:7px;letter-spacing:1px;gap:7px}.hero-copy{width:100%;padding-top:30px}h1{font-size:116px;letter-spacing:-6px;line-height:.97;margin-bottom:25px}.multiply{margin-left:25px;vertical-align:12px}.tech{margin-left:53px}.hero-jp{font-size:21px;line-height:1.6}.hero-description{font-size:11px;line-height:2;position:relative;z-index:2}.primary-link{font-size:11px;gap:45px}.hero-art{top:500px;right:-5%;width:100%;max-width:450px;aspect-ratio:1;opacity:.94}.art-coordinate.top{top:25px;right:5px;font-size:7px}.art-coordinate.bottom{bottom:45px;left:25px;font-size:6px}.art-label{bottom:0;right:10px;font-size:10px}.art-label small{font-size:8px}.plus-one{left:18px;top:80px}.plus-two{right:10px;bottom:80px}.hero-bottom{bottom:19px;font-size:7px}.hero-bottom>span{max-width:160px;line-height:1.6}.hero-bottom a{font-size:7px;align-self:center}.hero-bottom a span{margin-left:12px}.marquee{padding:17px 0}.marquee div{font-size:12px}.marquee span{font-size:20px;margin:0 27px}.section{padding:55px 0}.section-kicker{font-size:7px;letter-spacing:.8px}.section-kicker>span:last-child{display:none}.section-heading{display:block;margin-top:29px}h2{font-size:36px;letter-spacing:-1.5px}.section-heading p{font-size:11px;margin-top:18px}.filters{margin-top:27px}.filters button{padding:8px 19px}.works-grid{grid-template-columns:1fr;gap:35px}.work-art{height:285px}.tool-window{top:25%;height:52%}.window-content{padding:18px}.game-star{font-size:200px;top:10%}.game-orbit{left:17%;width:290px}.orbit-two{width:265px;left:22%;height:160px}.work-meta{margin-top:18px}h3{font-size:17px}.work p{font-size:11px}.collection-note{font-size:9px;letter-spacing:.3px;line-height:1.7}.about-grid{grid-template-columns:1fr;gap:25px;margin-top:30px}.about h2{font-size:30px;line-height:1.7}.about-copy{padding:0}.about-copy p{font-size:11px}.about-copy p:first-child{font-size:13px}.formula{font-size:20px;max-width:410px}.formula-end{font-size:16px}.closing{padding:55px 0 30px}.closing>p{font-size:61px;letter-spacing:-3px;margin:27px 0}.closing-star{font-size:65px;right:0;top:35%}.closing-bottom{font-size:9px;letter-spacing:.3px}.closing-bottom a{font-size:7px}.closing-bottom a span{margin-left:10px}.footer{gap:10px;flex-wrap:wrap;padding:25px 0;font-size:8px}.footer .brand{margin-right:auto}.footer-message{display:none}}@media(max-width:370px){.brand{width:168px}.brand img{width:202px;top:-12px;left:-13px}.header nav{gap:13px}h1{font-size:100px}.hero{min-height:910px}.hero-art{top:490px}.hero-label{font-size:6px}h2{font-size:32px}.closing>p{font-size:53px}.closing-star{font-size:52px}.formula-end{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee div{animation:none}*,*::before,*::after{transition:none!important}}
.routeaide-art{display:block;background:#20292b;color:#637a7c;isolation:isolate}.routeaide-map{position:absolute;inset:0;width:100%;height:100%;opacity:.5;z-index:-1}.routeaide-art::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,#1a1d2000,#1a1d2040);z-index:-1}.routeaide-icon{position:absolute;top:22px;right:23px;width:30px;height:30px;border-radius:6px}.routeaide-title{position:absolute;left:12%;top:34%;width:76%;height:31%;transition:transform .3s}.routeaide-art:hover .routeaide-title{transform:translateY(-4px)}.routeaide-art:hover{border-color:#3ca5d680}.routeaide-art .art-number{max-width:calc(100% - 90px);line-height:1.7}.routeaide-art .art-corner{color:#9bb0ad}.routeaide-arrow{position:absolute;right:25px;bottom:17px;color:#c6e329;font-size:26px;transition:transform .2s}.routeaide-art:hover .routeaide-arrow{transform:translate(3px,-3px)}.routeaide-type{color:#a5ba94;font-size:8px;letter-spacing:1px}.work-subtitle{display:inline-block;font-size:10px;font-weight:400;color:var(--muted);margin-left:10px;letter-spacing:.3px}.work-link{display:inline-flex;align-items:center;gap:28px;font-family:'Noto Sans JP',sans-serif;font-size:11px;border-bottom:1px solid #3ca5d680;padding:9px 0;margin-top:14px}.work-link span{font-size:19px;color:var(--blue);transition:transform .2s}.work-link:hover span{transform:translate(3px,-3px)}
@media(max-width:370px){.work-subtitle{display:block;margin:6px 0 0}}

/* Match the studio wordmark while keeping the stencil letterforms distinct. */
.hero h1,.works h2,.closing>p{font-family:'Black Ops One','Manrope',sans-serif;font-weight:400;font-synthesis:none;letter-spacing:-.025em}
.hero h1{line-height:1.02}
.hero .multiply{font-family:'Manrope',sans-serif;letter-spacing:0}
.closing>p{line-height:1.15}
.closing-star{font-family:'Manrope',sans-serif;letter-spacing:0}
@media(max-width:700px){.hero h1{font-size:clamp(76px,25vw,112px);letter-spacing:-.035em}.hero .multiply{margin-left:16px;vertical-align:9px}.hero .tech{margin-left:40px}.closing>p{font-size:clamp(36px,10.8vw,74px);letter-spacing:-.025em}.closing-star{display:none}}

/* A single, uninterrupted closing statement at every screen size. */
.closing{padding-block:70px}.closing>p{font-size:min(6vw,86px);line-height:1.2;letter-spacing:-.025em;white-space:nowrap;margin:0}
@media(max-width:700px){.closing{padding-block:45px}}

/* Airbus Special includes its own italic letterforms. */
.works h2,.formula{font-family:'Airbus Special','Manrope',sans-serif;font-style:italic;font-weight:400;font-synthesis:none}
.works h2{letter-spacing:0;color:var(--blue)}
.formula{font-size:clamp(22px,2.4vw,32px);gap:10px;letter-spacing:0}
.formula-end{font-size:.85em}
.formula b{font-family:'Manrope',sans-serif;font-style:normal;font-size:.65em}
.formula small{font-family:'Noto Sans JP',sans-serif;font-style:normal}
.closing>p{font-size:min(5vw,72px);font-style:italic;font-synthesis:style}
.closing em{font-style:inherit}
@media(max-width:700px){.works h2{font-size:clamp(24px,8vw,48px)}.formula{gap:8px}}
@media(max-width:1050px){.formula{flex-wrap:wrap;row-gap:20px}.formula-end{flex-basis:100%;font-size:1em;text-align:right}}

.marquee div{font-family:"Airbus Special","Manrope",sans-serif;font-style:italic;font-weight:400;font-synthesis:none}.marquee span{font-family:"Noto Sans JP",sans-serif;font-style:normal;font-weight:400;font-size:1em;vertical-align:0}

/* A smaller three-line studio signature, entirely in Black Ops One. */
.hero h1{display:grid;grid-template-columns:max-content;justify-items:center;text-align:center;width:max-content;font-size:clamp(79px,8.2vw,119px);line-height:.94;letter-spacing:-.025em}
.hero .multiply{font-family:inherit;font-size:.65em;font-weight:400;line-height:.85;letter-spacing:0;margin:3px 0 5px;justify-self:center;vertical-align:baseline}
.hero .tech{margin-left:0}
@media(max-width:700px){.hero h1{font-size:clamp(61px,19.8vw,90px);letter-spacing:-.025em}}

.hero-jp{white-space:nowrap;font-size:clamp(15px,2.1vw,24px)}
.formula b{font-family:inherit;font-style:inherit;font-weight:400;font-size:.85em}
@media(max-width:700px){.hero-jp{font-size:clamp(14px,4.2vw,21px);letter-spacing:.04em}.formula b{font-size:1em}}

/* Studio introduction follows a single reading column. */
.about #about-title{font-family:"Airbus Special","Manrope",sans-serif;font-size:clamp(24px,3.2vw,42px);font-style:italic;font-weight:400;font-synthesis:none;line-height:1.35;letter-spacing:0;color:var(--blue);margin:0 0 32px}
.about .about-copy{max-width:760px;padding-top:0}
.about .formula{max-width:760px}
@media(min-width:701px){.about .formula{flex-wrap:nowrap}.about .formula-end{flex-basis:auto;font-size:.85em;text-align:left}}

/* Remove the space reserved for the former hero illustration. */
.hero{min-height:0;padding-bottom:100px}.hero-copy{width:100%}

/* A neutral placeholder for work that has not been announced yet. */
.game-art{background:#292c2f;background-image:none}
.work[data-category="games"] .work-meta{justify-content:flex-end}
.work-art+h3{margin-top:22px}
.work .work-platform{margin-top:8px}
@media(max-width:700px){.work-art+h3{margin-top:18px}}

/* Place the introduction beside the studio signature on wider screens. */
.hero-copy{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:clamp(32px,8vw,128px)}
.hero h1{margin:0}
.hero-intro{min-width:0;max-width:520px}
@media(max-width:700px){.hero-copy{grid-template-columns:minmax(0,1fr);gap:28px}.hero-intro{max-width:100%}}
