:root{--bg:#f7f5f0;--surface:#fff;--text:#17181c;--muted:#4d515a;--line:#dcd8cd;--ink:#17181c;--on-ink:#f7f5f0;--focus:#1d4ed8;--brand:#8a4b00;--hi:#f4b73f;--violet:#7c3aed;--overlay:#0a0c1099;--shadow-c:#00000040;--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--serif:ui-serif, "Iowan Old Style", "Palatino Linotype", Georgia, serif;--fs-0:.8rem;--fs-1:.92rem;--fs-2:1rem;--fs-3:1.25rem;--fs-4:1.6rem;--fs-5:clamp(2rem, 5vw, 3rem);--fs-6:clamp(2.6rem, 9vw, 5.6rem);--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2.5rem;--s-7:4rem;--radius:18px;--radius-s:8px;--radius-pill:999px;--shadow-1:0 1px 2px var(--shadow-c);--shadow-2:0 14px 34px -10px var(--shadow-c);--dur-1:.15s;--dur-2:.25s;--dur-3:.5s;--ease:cubic-bezier(.2, .7, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1115;--surface:#171a20;--text:#eef0f4;--muted:#aab0bc;--line:#2b303a;--ink:#eef0f4;--on-ink:#0f1115;--focus:#8ab4ff;--brand:#f4b73f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1115;--surface:#171a20;--text:#eef0f4;--muted:#aab0bc;--line:#2b303a;--ink:#eef0f4;--on-ink:#0f1115;--focus:#8ab4ff;--brand:#f4b73f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-padding-top:1rem}body{background:var(--bg);color:var(--text);font:16px/1.55 var(--font);-webkit-font-smoothing:antialiased;margin:0}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(60rem 30rem at 85% -10%, color-mix(in srgb, var(--hi) 18%, transparent), transparent 70%), radial-gradient(50rem 28rem at -10% 10%, color-mix(in srgb, var(--violet) 12%, transparent), transparent 70%);position:fixed;inset:0}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}button,input{font:inherit;color:inherit}a{color:inherit}.skip{background:var(--ink);color:var(--on-ink);z-index:10;border-radius:8px;padding:.6rem 1rem;position:absolute;top:-4rem;left:.5rem}.skip:focus{top:.5rem}.top,main,.foot{width:min(1120px,100% - 2rem);margin-inline:auto}.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:.5rem;font-weight:700;text-decoration:none;display:inline-flex}.theme{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:3px;display:inline-flex}.theme button{cursor:pointer;min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:0 .6rem}.theme button[aria-pressed=true]{background:var(--ink);color:var(--on-ink)}main:focus{outline:none}.hero{padding:clamp(2.5rem,8vw,6rem) 0 clamp(1.5rem,4vw,3rem)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin:0 0 1rem;font-size:.78rem;font-weight:700}h1{font:700 clamp(2.6rem, 9vw, 5.6rem)/1 var(--serif);letter-spacing:-.03em;text-wrap:balance;margin:0 0 1.25rem}h1 em{background:linear-gradient(transparent 62%, color-mix(in srgb, var(--hi) 70%, transparent) 62%);font-style:italic}.lede{max-width:38rem;color:var(--muted);margin:0 0 1.5rem;font-size:clamp(1.05rem,2.4vw,1.25rem)}.stats{flex-wrap:wrap;gap:.5rem;margin:0 0 1.75rem;padding:0;list-style:none;display:flex}.stats li{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:.35rem .9rem;font-weight:600}.stats .big{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.stats strong{font-variant-numeric:tabular-nums}.cta{background:var(--ink);min-height:48px;color:var(--on-ink);cursor:pointer;border:0;border-radius:999px;padding:0 1.4rem;font-weight:700;transition:transform .2s}.cta:hover{transform:translateY(-2px)}h2{font:700 1.6rem/1.2 var(--serif);letter-spacing:-.01em;margin:2.5rem 0 1rem}.games .row{scroll-snap-type:x mandatory;grid-auto-columns:min(420px,85%);grid-auto-flow:column;gap:1rem;padding-bottom:.75rem;display:grid;overflow-x:auto}.games .row>*{scroll-snap-align:start}.soon{border:2px dashed var(--line);border-radius:var(--radius);color:var(--muted);padding:1.5rem}.soon p{margin:0;font-size:1.05rem}.bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.pills{flex-wrap:wrap;gap:.5rem;display:flex}.pill{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;min-height:44px;padding:0 1rem;font-weight:600}.pill.small{min-height:36px;padding:0 .75rem;font-size:.9rem;font-weight:500}.pill[aria-pressed=true]{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.pill:disabled{opacity:.5;cursor:not-allowed}.pill .n{opacity:.7;font-variant-numeric:tabular-nums;margin-left:.25rem}.tagpills{margin-top:.75rem}input[type=search]{border:1px solid var(--line);background:var(--surface);border-radius:999px;min-width:15rem;min-height:44px;padding:0 1rem}.count{color:var(--muted);margin:1rem 0 .5rem;font-size:.92rem}.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.card{background:var(--wash,var(--surface));border:1px solid var(--edge,var(--line));border-radius:var(--radius);color:inherit;flex-direction:column;height:100%;text-decoration:none;transition:transform .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden}.card:hover{box-shadow:0 14px 34px -10px var(--glow,var(--shadow-c));transform:translateY(-4px)}.card:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.card:active{transform:scale(.98)}.media{aspect-ratio:8/5;background:var(--wash);border-bottom:1px solid var(--edge,var(--line));overflow:hidden}.media img,.d-media img{object-fit:cover;width:100%;height:100%;display:block}.ph{aspect-ratio:8/5;text-align:center;width:100%;height:100%;font:700 1.6rem/1.1 var(--serif);color:var(--accent-text,var(--text));background:repeating-linear-gradient(135deg, var(--chip) 0 12px, var(--wash) 12px 24px);place-items:center;padding:1rem;display:grid}.body{flex-direction:column;gap:.5rem;padding:1rem 1.15rem 1.2rem;display:flex}.meta{color:var(--muted);justify-content:space-between;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.card h3{font:700 1.3rem/1.2 var(--serif);margin:0}.tagline{color:var(--text);margin:0}.chip{background:var(--chip,var(--line));color:var(--text);border-radius:999px;padding:.15rem .65rem;font-size:.8rem;font-weight:600}.tags{flex-wrap:wrap;gap:.35rem;margin:.25rem 0 0;padding:0;list-style:none;display:flex}.tags li{color:var(--muted);border:1px solid var(--edge,var(--line));border-radius:6px;padding:0 .4rem;font-size:.8rem}.empty{text-align:center;border:2px dashed var(--line);border-radius:var(--radius);padding:3rem 1rem}.empty h3{font:700 1.4rem var(--serif);margin:0 0 .5rem}.empty p{color:var(--muted);margin:0 0 1rem}.foot{color:var(--muted);padding:3rem 0 2.5rem}.ns{text-align:center;padding:1rem}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (width<=600px){.grid{grid-template-columns:1fr}input[type=search]{width:100%;min-width:0}.bar{flex-flow:column-reverse;align-items:stretch}.pills{flex-wrap:nowrap;padding-bottom:.25rem;overflow-x:auto}.pills.tagpills{flex-wrap:wrap}.pill{flex:none}.tags li{padding:.1rem .4rem}}.bar>*{min-width:0}main{min-height:100svh}.hero{min-height:26rem}.cell[hidden],.empty[hidden]{display:none}.filters{min-height:7.5rem}.themed{--wash:var(--wash-l);--chip:var(--chip-l);--edge:var(--edge-l);--glow:var(--glow-l);--accent-text:var(--at-l)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .themed{--wash:var(--wash-d);--chip:var(--chip-d);--edge:var(--edge-d);--glow:var(--glow-d);--accent-text:var(--at-d)}}:root[data-theme=dark] .themed{--wash:var(--wash-d);--chip:var(--chip-d);--edge:var(--edge-d);--glow:var(--glow-d);--accent-text:var(--at-d)}a.cta{align-items:center;text-decoration:none;display:inline-flex}.stages{gap:var(--s-2);margin:0 0 var(--s-4);counter-reset:st;flex-wrap:wrap;padding:0;list-style:none;display:flex}.stages li{counter-increment:st;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-pill);animation:lit 1.2s var(--ease) both;animation-delay:calc(var(--n) * .25s);align-items:center;gap:.4rem;padding:.3rem .85rem;font-weight:600;display:inline-flex}.stages li:before{content:counter(st);background:var(--ink);width:1.4rem;height:1.4rem;color:var(--on-ink);font-size:var(--fs-0);border-radius:50%;place-items:center;display:grid}@keyframes lit{0%{background:var(--surface)}40%{background:color-mix(in srgb, var(--hi) 45%, var(--surface))}to{background:var(--surface)}}.built{margin-top:var(--s-7)}.hl{margin:0 0 var(--s-4);padding-left:1.2rem}.hl li{margin:.3rem 0}.back{margin:var(--s-4) 0}.back a{font-weight:600}.project{background:var(--wash);border:1px solid var(--edge);border-radius:var(--radius);padding:0 0 var(--s-5);overflow:hidden}.project>:not(.p-media){margin-inline:clamp(1rem,4vw,2rem)}.p-media{aspect-ratio:8/5;background:var(--chip);margin-bottom:var(--s-4)}.p-media img,.p-media picture,.p-media .ph{object-fit:cover;width:100%;height:100%;display:block}.project h1{font-size:var(--fs-5);margin:0 0 var(--s-2)}.p-tag{font-size:var(--fs-3);margin:0 0 var(--s-4)}.p-open{margin-top:0}.p-open .big-open{text-decoration:none}.big-open{border-radius:var(--radius-pill);background:var(--ink);min-height:52px;color:var(--on-ink);transition:transform var(--dur-2);align-items:center;padding:0 1.75rem;font-weight:700;display:inline-flex}.big-open:hover{transform:translateY(-2px)}.p-meta{gap:var(--s-2);color:var(--muted);flex-wrap:wrap;align-items:center;display:flex}.project h2{font-size:var(--fs-4);margin:var(--s-5) clamp(1rem, 4vw, 2rem) var(--s-2)}.tags.big li{font-size:var(--fs-1);padding:0}.tags.big a{min-height:32px;padding:.3rem .6rem;display:inline-block}.pns{gap:var(--s-4);margin-top:var(--s-5);grid-template-columns:1fr 1fr;display:grid}.pn{padding:var(--s-4);border:1px solid var(--edge);background:var(--wash);border-radius:var(--radius);color:var(--text);flex-direction:column;gap:.2rem;text-decoration:none;display:flex}.pn:last-child{text-align:right}.pn span{color:var(--muted);font-size:var(--fs-1)}@view-transition{navigation:auto}::view-transition-group(*){animation-duration:.35s;animation-timing-function:var(--ease)}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}.media,.p-media{position:relative}.pv{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity var(--dur-2) var(--ease);position:absolute;inset:0}.pv.on{opacity:1}.pp{left:var(--s-3);bottom:var(--s-3);z-index:2;min-height:44px;padding:0 var(--s-4);border-radius:var(--radius-pill);border:1px solid var(--edge);background:var(--surface);cursor:pointer;margin:0;font-weight:600;position:absolute}
