@font-face{font-family:Hack;src:url('/fonts/hack-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Hack;src:url('/fonts/hack-bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--paper:#f2eee5;--ink:#202920;--muted:#586052;--line:#c4c8b9;--accent:#ee6c40;--green:#d4dfac;--mono:Hack,'Noto Sans Mono CJK JP','Hiragino Kaku Gothic ProN','Yu Gothic','MS Gothic',monospace;--measure:1320px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font:18px/1.75 var(--mono);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-underline-offset:5px}button{font:inherit;color:inherit}img{max-width:100%;height:auto;display:block}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--ink);outline-offset:5px}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:700;line-height:1.2;letter-spacing:0}h1{font-size:clamp(48px,6.6vw,94px)}h2{font-size:clamp(34px,4vw,58px)}h3{font-size:32px}.wrap{width:min(var(--measure),calc(100% - 96px));margin-inline:auto}.eyebrow{font:12px/1.5 var(--mono);letter-spacing:.13em;text-transform:uppercase}.muted{color:var(--muted)}.skip{position:fixed;top:-90px;left:16px;background:var(--ink);color:var(--paper);padding:14px 22px;z-index:10}.skip:focus{top:16px}.site-header{min-height:102px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.wordmark{font-size:30px;font-weight:700;letter-spacing:0;line-height:1;text-decoration:none;display:inline-flex;gap:4px;align-items:baseline}.wordmark span{color:var(--accent);font-size:38px}.site-header nav{display:flex;gap:30px;align-items:center;font-size:15px}.site-header nav a{text-decoration:none;padding:10px 0;min-height:44px;display:inline-flex;align-items:center}.site-header nav a:hover{text-decoration:underline}.nav-store{border-bottom:2px solid var(--ink)}.home-intro{display:grid;grid-template-columns:1.35fr 1fr;gap:64px;align-items:end;padding:76px 0 54px}.home-intro .eyebrow{margin-bottom:24px}.home-intro h1 span{color:#a64024}.intro-copy{max-width:440px;justify-self:end;padding-bottom:6px}.intro-copy p{font-size:21px;line-height:1.6}.text-link{display:inline-flex;align-items:center;gap:20px;margin-top:23px;font-weight:700;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:5px}.arrow{font-family:Arial,sans-serif;font-weight:400}.featured{border:1px solid var(--ink);background:var(--ink);color:var(--paper)}.feature-image{position:relative;display:block;overflow:hidden;background:#06111f;aspect-ratio:2.75;text-decoration:none}.feature-image>img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.feature-image:hover>img{transform:scale(1.025)}.feature-badge{position:absolute;top:24px;left:24px;background:var(--green);color:var(--ink);padding:9px 13px;font:12px var(--mono);letter-spacing:.06em;text-transform:uppercase}.feature-stamp{position:absolute;bottom:22px;right:24px;color:white;font:12px var(--mono);background:#162322;padding:8px 12px}.feature-info{padding:28px 34px;display:grid;grid-template-columns:1fr 1.1fr auto;gap:36px;align-items:center}.feature-info h2{font-size:46px;letter-spacing:0}.feature-info .eyebrow{color:var(--green);margin-bottom:6px}.feature-info p{font-size:16px;color:#e0e5d8;max-width:320px}.button{display:inline-flex;gap:24px;justify-content:space-between;align-items:center;min-height:50px;padding:13px 22px;text-decoration:none;background:var(--ink);color:var(--paper);border:1px solid var(--ink);font-size:16px;font-weight:700;transition:background .15s,color .15s}.button:hover{background:#3c4939}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.light:hover{background:var(--green)}.featured a:focus-visible{outline-color:var(--green)}.project-section{padding:48px 0 64px;scroll-margin-top:30px}.section-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;padding-bottom:32px;border-bottom:1px solid var(--ink)}.section-heading .eyebrow{margin-bottom:12px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters[hidden]{display:none}.filters button{background:transparent;border:1px solid var(--line);padding:10px 15px;min-height:44px;font-size:14px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.catalogue-count{margin:16px 0 32px;color:var(--muted);font:12px var(--mono)}.project-grid{margin-top:32px;display:grid;grid-template-columns:1fr 1fr;gap:52px 32px}.game-card{display:block;text-decoration:none;min-width:0}.game-card[hidden]{display:none}.card-image{overflow:hidden;aspect-ratio:16/10;background:#18251d;border:1px solid var(--line)}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.game-card:hover .card-image img{transform:scale(1.025)}.game-card[data-cover-fit=contain] .card-image img{object-fit:contain;background:#38541e}.game-card[data-project=litebike] .card-image img{object-position:48% 50%}.card-meta{display:flex;justify-content:space-between;gap:16px;font:11px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.035em;margin:17px 0 14px;color:var(--muted)}.card-status{display:flex;align-items:center;gap:7px;text-align:right}.card-status:before{content:'';width:6px;height:6px;background:#717b68;flex:none}.available .card-status:before{background:#346333}.card-heading{display:flex;align-items:start;gap:16px;justify-content:space-between;margin-bottom:12px}.card-heading .arrow{font-size:28px;transition:transform .2s}.game-card:hover .card-heading .arrow{transform:translate(3px,-3px)}.game-card h2{font-size:clamp(25px,2.6vw,38px)}.game-card p{font-size:16px;line-height:1.65;color:var(--muted);max-width:470px}.about-section{border-top:1px solid var(--ink);padding:66px 0 80px;display:grid;grid-template-columns:1fr 1.3fr;gap:90px}.about-section .eyebrow{margin-bottom:20px}.about-section p{font-size:22px;line-height:1.65}.about-section p+p{margin-top:20px;font-size:17px;color:var(--muted)}.support-strip{background:var(--green);padding:33px 36px;display:flex;justify-content:space-between;align-items:center;gap:26px;margin-bottom:76px;border:1px solid var(--ink)}.support-strip h2{font-size:30px;margin-bottom:8px}.support-strip p{font-size:16px}.support-links{display:flex;gap:24px;flex-wrap:wrap;font-weight:700;font-size:16px}.site-footer{border-top:1px solid var(--line);padding:34px 0 40px;display:flex;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap}.site-footer .wordmark{font-size:24px}.footer-copy{font:11px/1.7 var(--mono);color:var(--muted)}.footer-links{display:flex;gap:24px;font-size:13px}.project-top{padding:37px 0 43px}.breadcrumb{font:12px var(--mono);margin-bottom:42px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.breadcrumb a{color:var(--muted)}.project-title-row{display:flex;justify-content:space-between;align-items:end;gap:40px}.project-top .eyebrow{margin-bottom:18px}.project-top h1{max-width:950px;font-size:clamp(44px,6.9vw,96px)}.project-status{flex:none;border:1px solid var(--line);font:12px var(--mono);padding:10px 13px;margin-bottom:5px}.project-hero{border:1px solid var(--ink);background:#142218;aspect-ratio:16/9;overflow:hidden}.project-hero img{width:100%;height:100%;object-fit:cover}.project-hero.contain img{object-fit:contain;background:#35551e}.project-hero.litebike img{object-fit:cover}.image-caption{display:flex;justify-content:space-between;gap:24px;margin-top:11px;color:var(--muted);font:11px/1.6 var(--mono)}.project-body{display:grid;grid-template-columns:1.5fr 1fr;gap:100px;padding:65px 0 76px}.project-description h2{margin-bottom:28px;font-size:clamp(32px,3.8vw,52px);max-width:700px}.project-description p{max-width:690px;font-size:18px;line-height:1.8}.project-description p+p{margin-top:22px}.project-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.project-facts{border-top:1px solid var(--ink);margin:0;align-self:start}.project-facts div{padding:17px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:90px 1fr;gap:20px}.project-facts dt{font:11px/1.6 var(--mono);text-transform:uppercase;color:var(--muted);padding-top:3px}.project-facts dd{font-size:15px;margin:0}.development-note{border-left:3px solid var(--accent);padding:13px 0 13px 20px;margin-top:26px!important;font-size:14px!important;color:var(--muted)}.feature-list{display:grid;grid-template-columns:repeat(3,1fr);gap:46px;padding:36px 0 70px;border-top:1px solid var(--ink)}.feature-list .eyebrow{margin-bottom:22px;color:var(--muted)}.feature-list h3{font-size:27px;margin-bottom:15px}.feature-list p{font-size:16px;color:var(--muted);line-height:1.7}.gallery-section{padding:15px 0 70px}.gallery-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.gallery-heading h2{font-size:36px}.gallery-heading p{font:12px var(--mono);color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.gallery a{display:block;background:#142218;position:relative;text-decoration:none}.gallery a:first-child:last-child{max-width:680px}.gallery img{width:100%;height:100%;aspect-ratio:4/3;object-fit:contain;image-rendering:pixelated}.gallery a:after{content:'↗';position:absolute;bottom:12px;right:12px;background:var(--paper);color:var(--ink);width:38px;height:38px;text-align:center;line-height:38px}.next-project{padding:35px 0 60px;border-top:1px solid var(--ink);display:flex;justify-content:space-between;gap:24px;align-items:center}.next-project h2{font-size:34px;margin-top:13px}.next-project a{text-decoration:none}.next-project .arrow{font-size:48px}.project-index-link{font:12px var(--mono);text-transform:uppercase;text-decoration:underline!important}.viewer{border:1px solid var(--paper);background:var(--ink);color:var(--paper);padding:18px;max-width:min(94vw,1400px);max-height:94dvh;width:fit-content}.viewer::backdrop{background:#101b15e8}.viewer img{max-height:73dvh;max-width:100%;margin:auto;object-fit:contain;image-rendering:pixelated}.viewer button{display:block;margin:0 0 15px auto;background:var(--paper);border:0;min-width:90px;min-height:44px;font-size:14px}.viewer p{font:13px/1.6 var(--mono);margin-top:14px;max-width:1000px}.not-found{min-height:60vh;padding:80px 0}.not-found p{margin:25px 0 30px;max-width:520px}
@media(min-width:1500px){.feature-image{aspect-ratio:3.1}}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.home-intro{gap:38px}.intro-copy p{font-size:18px}.feature-info{grid-template-columns:1fr auto;gap:20px}.feature-info>p{display:none}.section-heading{align-items:start;flex-direction:column;gap:24px}.project-body{gap:42px;grid-template-columns:1.2fr 1fr}.about-section{gap:40px}.project-title-row{align-items:start;flex-direction:column;gap:23px}.feature-list{gap:25px}}
@media(max-width:650px){body{font-size:16px}.wrap{width:calc(100% - 36px)}.site-header{min-height:114px;align-items:start;justify-content:center;flex-direction:column;gap:14px;padding:22px 0 16px}.wordmark{font-size:28px}.site-header nav{width:100%;gap:0;justify-content:space-between;font-size:13px}.site-header nav a{padding:5px 0}.home-intro{display:block;padding:42px 0 32px}.home-intro h1{font-size:clamp(48px,11.7vw,74px)}.home-intro .eyebrow{font-size:10px;margin-bottom:19px}.intro-copy{margin-top:24px;max-width:100%}.intro-copy p{font-size:17px;max-width:380px}.text-link{margin-top:18px;font-size:15px}.feature-image{aspect-ratio:1.48}.feature-badge{top:12px;left:12px;font-size:10px;padding:8px}.feature-stamp{right:12px;bottom:12px;font-size:10px}.feature-info{padding:22px;display:flex;align-items:start;flex-direction:column;gap:20px}.feature-info h2{font-size:39px}.feature-info>p{display:block;font-size:15px;max-width:100%}.feature-info .button{width:100%}.project-section{padding:55px 0}.section-heading{padding-bottom:24px;gap:21px}.filters{gap:6px}.filters button{font-size:12px;padding:9px 12px}.project-grid{grid-template-columns:1fr;gap:37px}.card-image{aspect-ratio:16/10}.card-meta{font-size:10px;gap:8px;margin:12px 0}.game-card h2{font-size:29px}.game-card p{font-size:15px}.about-section{display:block;padding:40px 0}.about-section h2{font-size:38px;max-width:290px;margin-bottom:28px}.about-section p{font-size:19px}.support-strip{margin-bottom:45px;padding:25px;display:block}.support-strip h2{font-size:28px}.support-links{margin-top:22px}.site-footer{align-items:start;flex-direction:column;gap:19px}.project-top{padding:25px 0 28px}.breadcrumb{margin-bottom:30px;font-size:11px;gap:9px}.project-top h1{font-size:clamp(39px,10vw,60px)}.project-top .eyebrow{font-size:11px}.project-status{font-size:11px}.project-hero{aspect-ratio:4/3}.image-caption{font-size:10px;gap:12px}.project-body{display:flex;flex-direction:column;gap:38px;padding:38px 0 42px}.project-description p{font-size:16px;line-height:1.75}.project-description h2{font-size:34px;margin-bottom:23px}.project-facts{width:100%}.project-actions .button{font-size:14px;gap:16px}.feature-list{grid-template-columns:1fr;gap:30px;padding-bottom:40px}.feature-list .eyebrow{margin-bottom:10px}.feature-list h3{font-size:27px}.gallery-section{padding-bottom:40px}.gallery-heading{align-items:start;flex-direction:column;gap:13px}.gallery{grid-template-columns:1fr;gap:17px}.next-project{padding:26px 0 40px}.next-project h2{font-size:28px}.next-project .arrow{font-size:32px}.next-project .project-index-link{display:none}.viewer{padding:12px;max-width:95vw}.viewer p{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.project-title-meta{display:flex;flex-direction:column;gap:15px;align-items:flex-end;flex-shrink:0}.project-title-meta .project-status{margin:0}.project-title-meta .button{font-size:14px;gap:18px}@media(max-width:1000px){.project-title-meta{align-items:flex-start}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.project-description>p{max-width:60ch}.project-body:not(:has(.project-facts)){display:block}.not-found .button{margin-top:30px}
