@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-wght-normal.BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-vietnamese-wght-normal.6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-ext-wght-normal.DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-wght-normal.BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Serif;src:url(/fonts/GeistSerif-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--bg:#ededed;--sheet:#fff;--ink:#111;--muted:#6f6f6f;--accent:#f2c200;--tile:#ededed;--font:"Geist Variable", "Geist", system-ui, sans-serif;--font-display:"Geist Serif", Georgia, serif;--text:17px;--leading:28px;--title:24px;--title-leading:32px;--space-section:128px;--space-follow:64px;--space-media:64px;--space-tight:32px;color-scheme:light}*,:before,:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--text);line-height:var(--leading);font-synthesis:none;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}h1,h2,h3,p,ul,figure,blockquote,dl,dd{margin:0;padding:0}ul{list-style:none}h1,h2,h3{font-weight:inherit}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:2px}.underline{text-underline-position:from-font;text-decoration:underline 1px}a.underline:hover,a:hover .underline{color:var(--muted)}.nav a:hover,.contact-list a:not(.underline):hover{text-underline-position:from-font;text-decoration:underline 1px}.muted{color:var(--muted)}.title{font-family:var(--font-display);font-size:var(--title);line-height:var(--title-leading)}.strong{font-weight:500}.small{font-size:13px;line-height:20px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page{--page-pad:96px;padding:128px var(--page-pad);overflow-x:clip}.sheet{background:var(--sheet);max-width:1152px;margin:0 auto;padding:96px 48px 64px}.content{max-width:896px;margin:0 auto}.cols{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.cols>.narrow{padding-right:32px}.only-mobile{display:none}.header{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid;position:relative}.brand{justify-self:start;align-items:center;gap:12px;height:28px;font-weight:500;display:flex}.brand-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:14px;height:14px}.menu-button{display:none}.nav{flex-direction:column;align-items:flex-start;display:flex}.rulers{z-index:12;pointer-events:none;position:absolute;top:0;left:0}.ruler,.ruler-corner{background:#f7f7f7;border:0 solid #dadada}.ruler{color:#8a8a8a;font-variant-numeric:tabular-nums;font-size:10px;line-height:12px}.ruler-top{border-bottom-width:1px;height:20px;position:fixed;top:0;left:0;right:0}.ruler-left{border-right-width:1px;width:20px;position:absolute;top:0;left:0;overflow:hidden}.ruler-corner{border-bottom-width:1px;border-right-width:1px;width:20px;height:20px;position:fixed;top:0;left:0}.ruler-mark{white-space:nowrap;position:absolute}.ruler-mark:after{content:"";background:currentColor;position:absolute}.ruler-top .ruler-mark{top:3px;transform:translate(-50%)}.ruler-top .ruler-mark:after{width:1px;height:4px;bottom:-5px;left:50%}.ruler-left .ruler-mark{writing-mode:vertical-rl;left:3px;transform:translateY(-50%)rotate(180deg)}.ruler-left .ruler-mark:after{width:4px;height:1px;top:50%;left:-5px}@media (width<=767px){.rulers{display:none}}.intro{padding-top:64px;scroll-margin-top:32px}.portrait{padding-top:64px}.portrait-stage{aspect-ratio:896/504;justify-content:center;align-items:center;display:flex}.print{background:#fff;width:580px;max-width:94%;padding:32px;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s cubic-bezier(.2,.7,.2,1);transform:rotate(-2deg);box-shadow:0 0 0 1px #0000000a,0 1px 2px #00000014,0 6px 12px -4px #0000001a,0 22px 40px -16px #0000003d}@media (hover:hover){.print:hover{transform:rotate(-.6deg)translateY(-4px);box-shadow:0 0 0 1px #0000000a,0 2px 3px #00000014,0 10px 18px -6px #0000001f,0 34px 56px -20px #00000047}}@media (prefers-reduced-motion:reduce){.print{transition:none}}.print-photo{aspect-ratio:3/2;background:#1a1a1a;position:relative;overflow:hidden}.print-photo img{object-fit:cover;filter:saturate(1.2)contrast(1.06)brightness(1.04)sepia(.14);width:100%;height:100%}.print-photo:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(118deg,#ffffff24 0%,#fff0 38%);position:absolute;inset:0;box-shadow:inset 0 0 70px #00000047}.print-photo:after{content:"";z-index:2;mix-blend-mode:overlay;opacity:.32;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.section{padding-top:var(--space-section);scroll-margin-top:32px}.works{padding-top:116px}.works-head .title{padding-bottom:16px}.works-head p{max-width:640px}.cases-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px;padding-top:64px;display:grid}.case-card{flex-direction:column;gap:20px;display:flex}.case-card img{aspect-ratio:432/243;object-fit:cover;background:var(--tile);border-radius:8px;width:100%;height:auto}.case-card-text{flex-direction:column;gap:8px;display:flex}.stack-32{flex-direction:column;gap:32px;display:flex}.job-left,.job-right{flex-direction:column;display:flex}.game-intro{flex-direction:column;gap:16px;display:flex}.game-intro .lead{padding-right:32px}.board{grid-template-columns:repeat(3,88px);gap:4px;display:grid}.cell{aspect-ratio:1;background:var(--tile);color:var(--ink);font:inherit;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:52px;line-height:44px;transition:background-color .15s;display:flex}.cell[data-mark=o]{font-size:0}.cell[data-mark=o]:before{content:"";border:2px solid;border-radius:50%;width:26px;height:26px}.cell:disabled{cursor:default}.cell.is-hot{background:var(--accent)}@media (hover:hover){.cell:not(:disabled):hover{background:#e3e3e3}}.contact-left{flex-direction:column;gap:16px;display:flex}.contact-list{flex-direction:column;align-items:flex-start;padding-top:44px;display:flex}.footer{padding-top:128px}.case-head{padding-top:64px}.case-head-left{flex-direction:column;gap:16px;display:flex}.case-head-left a{align-self:flex-start}.case-head-left a:hover{color:var(--ink)}.case-lead{padding-top:44px}.facts{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.facts>div{flex-direction:column;display:flex}@media (width>=768px) and (width<=1439px){.facts>div{padding-right:16px}}@media (width<=389px){.facts>div{padding-right:8px}}.meta{padding-block:64px}.numbers{padding-top:64px}.media img{background:var(--tile);border-radius:8px;width:100%;height:auto}.pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;display:grid}.space-section{padding-top:var(--space-section)}.space-follow{padding-top:var(--space-follow)}.space-media{padding-top:var(--space-media)}.space-tight{padding-top:var(--space-tight)}.case-text{flex-direction:column;gap:16px;display:flex}.next-card{flex-direction:column;gap:20px;display:flex}.next-card img{aspect-ratio:448/252;object-fit:cover;background:var(--tile);border-radius:8px;width:100%;height:auto}@media (width<=1099px){.page{--page-pad:32px;padding:64px var(--page-pad)}}@media (width<=767px){:root{--text:16px;--leading:24px;--title:22px;--title-leading:28px;--space-section:96px;--space-follow:48px;--space-media:32px;--space-tight:8px}.only-desktop{display:none}.only-mobile{display:block}.page{--page-pad:16px;padding:var(--page-pad)}.sheet{padding:32px 24px 40px}.cols{flex-direction:column;display:flex}.cols>.narrow{padding-right:0}.header{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.brand{gap:10px;height:24px}.brand-dot{width:12px;height:12px}.menu-button{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:block}.nav{flex-basis:100%;padding-top:24px;display:none}.header.is-open .nav{display:flex}.intro{gap:24px;padding-top:48px}.portrait{padding-top:48px}.portrait-stage{aspect-ratio:auto;padding-block:16px 24px}.print{padding:14px;transform:rotate(-1.5deg)}.print-photo:before{box-shadow:inset 0 0 40px #00000047}.works{padding-top:96px}.works-head{flex-direction:column;gap:12px;display:flex}.works-head .title{padding-bottom:0}.cases-grid{grid-template-columns:minmax(0,1fr);row-gap:48px;padding-top:48px}.case-card{gap:16px}.case-card img,.next-card img{aspect-ratio:310/194}.job-right .strong{padding-top:4px}.game,.contact,.game-intro{gap:12px}.game-intro .lead{padding-right:0}.board{grid-template-columns:repeat(3,minmax(0,100px));padding-top:12px}.game-intro{display:contents}.game-title{order:1}.game .lead{order:2}.board{order:3}.score{order:4}.contact-left{gap:12px}.contact-list{padding-top:12px;line-height:28px}.footer{flex-direction:row;justify-content:space-between;gap:16px;padding-top:96px;display:flex}.case-head{padding-top:48px}.case-head,.case-head-left{gap:12px}.case-lead{padding-top:0}.facts{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.meta{padding-block:32px 48px}.numbers{padding-top:48px}.case-row{gap:12px}.pair{grid-template-columns:minmax(0,1fr);gap:8px}.next,.next-card{gap:16px}}.comments-ui{z-index:20;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:32px;right:32px}.comments-toggle{background:var(--sheet);height:40px;color:var(--ink);font:inherit;cursor:pointer;border:0;border-radius:20px;align-items:center;gap:8px;padding:0 14px 0 12px;font-size:15px;line-height:20px;display:inline-flex;box-shadow:0 0 0 1px #0000000f,0 6px 16px -6px #0000003d}.comments-toggle svg{width:20px;height:20px}.comments-toggle[aria-pressed=true]{background:var(--ink);color:#fff}.comments-count{background:var(--accent);min-width:20px;height:20px;color:var(--ink);text-align:center;border-radius:10px;padding:0 6px;font-size:12px;font-weight:500;line-height:20px}.comments-hint{background:var(--ink);color:#fff;border-radius:8px;padding:6px 12px;font-size:14px;line-height:20px}.is-commenting body,.is-commenting body *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cpath d='M3 25V14a11 11 0 1 1 11 11H3Z' fill='%23F2C200' stroke='%23111111' stroke-width='1.5'/%3E%3C/svg%3E") 3 25,crosshair}.is-commenting .comments-ui *,.is-commenting .comment-card,.is-commenting .comment-card *,.is-commenting .comments-backdrop{cursor:auto}.is-commenting .comments-ui button,.is-commenting .comment-card button,.is-commenting .comment-pin{cursor:pointer}.comments-layer{z-index:30;position:absolute;top:0;left:0}.comment-pin{cursor:pointer;background:var(--ink);color:#fff;width:28px;height:28px;font:inherit;letter-spacing:.02em;border:2px solid #fff;border-radius:14px 14px 14px 2px;justify-content:center;align-items:center;padding:0;font-size:11px;font-weight:600;line-height:1;display:flex;position:absolute;transform:translateY(-100%);box-shadow:0 2px 6px #00000040}.comment-pin.is-open,.comment-pin.is-draft{background:var(--accent);color:var(--ink)}.comment-pin:focus-visible,.comments-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.comment-card{background:var(--sheet);border-radius:12px;flex-direction:column;gap:16px;width:320px;padding:16px;font-size:15px;line-height:22px;display:flex;position:absolute;box-shadow:0 0 0 1px #0000000f,0 12px 32px -8px #00000047}.comment-close{width:32px;height:32px;color:var(--muted);font:inherit;background:0 0;border:0;border-radius:8px;padding:0;font-size:22px;line-height:32px;position:absolute;top:8px;right:8px}.comment-thread{flex-direction:column;gap:16px;max-height:360px;padding-right:24px;display:flex;overflow-y:auto}.comment-entry{flex-direction:column;gap:6px;display:flex}.comment-meta{align-items:center;gap:8px;min-width:0;display:flex}.comment-avatar{background:var(--ink);color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:10px;font-weight:600;line-height:1;display:flex}.comment-meta .strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.comment-meta .muted{flex-shrink:0;font-size:13px}.comment-text{white-space:pre-wrap}.comment-delete{color:#c4321f;font:inherit;background:0 0;border:0;margin-left:auto;padding:0;font-size:13px;text-decoration:underline}.comment-form{flex-direction:column;gap:8px;display:flex;position:relative}.comment-thread+.comment-form{border-top:1px solid var(--tile);padding-top:16px}.comment-input{width:100%;color:var(--ink);font:inherit;resize:vertical;background:#fff;border:1px solid #d6d6d6;border-radius:8px;padding:8px 10px;font-size:16px;line-height:22px}.comment-input:focus{border-color:var(--ink);outline:none}.comment-trap{opacity:0;width:1px;height:1px;position:absolute;left:-10000px}.comment-note{color:var(--muted);font-size:13px;line-height:18px}.comment-error{color:#c4321f;font-size:13px;line-height:18px}.comment-actions{justify-content:flex-end;gap:8px;display:flex}.comment-button{background:var(--tile);height:36px;color:var(--ink);font:inherit;border:0;border-radius:8px;padding:0 14px;font-size:15px}.comment-button.is-primary{background:var(--ink);color:#fff}.comment-button:disabled{opacity:.5}.comments-backdrop{background:#0000003d;position:fixed;inset:0}.comment-card.is-sheet{width:auto;max-height:80vh;padding:20px 16px calc(16px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;position:fixed;inset:auto 0 0;overflow-y:auto}@media (width<=767px){.comments-ui{bottom:16px;right:16px}.comment-thread{max-height:none}}
