@font-face{font-family:StudioSans;src:local("Arial");font-display:swap}
:root{color-scheme:dark;--bg:#070b14;--surface:#101621;--ink:#f5f4ee;--muted:#a6afbe;--line:#283140;--cyan:#5bdded;--warm:#ffb667;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--bg);color:var(--ink);font-family:StudioSans,Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a,button,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--cyan);outline-offset:6px}a:hover{text-decoration-thickness:1px}button{cursor:pointer}img{display:block;max-width:100%;height:auto}p,h1,h2,h3,figure{margin:0}p{line-height:1.65}::selection{background:var(--cyan);color:var(--bg)}[hidden]{display:none!important}.wrap{width:min(var(--max),calc(100% - 112px));margin-inline:auto}.skip{position:fixed;top:12px;left:12px;z-index:10;padding:12px 20px;background:var(--cyan);color:var(--bg);transform:translateY(-160%)}.skip:focus{transform:translateY(0)}.header{min-height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:28px}.wordmark{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:750;letter-spacing:-1.1px;line-height:1}.wordmark-sub{display:block;font-size:9px;letter-spacing:3.1px;font-weight:500;margin-top:7px}.mark{border:1px solid #50647a;border-radius:9px;padding:8px 7px 10px;letter-spacing:-5px;font-size:30px;font-weight:500;width:44px;height:44px}.mark span{color:var(--cyan)}nav{display:flex;align-items:center;gap:36px;font-size:13px}nav a{padding:12px 0;color:#c4cbd5}nav a:hover{color:var(--cyan)}nav .nav-contact{color:var(--ink);border-bottom:1px solid #64717f}nav span{margin-left:18px}.hero{display:grid;grid-template-columns:1.1fr 1fr;column-gap:12px;position:relative;padding-top:85px}.eyebrow{font-family:monospace;font-size:11px;letter-spacing:1.65px;font-weight:400;line-height:1.5}.hero .eyebrow{color:#bec7d3;display:flex;align-items:center;gap:9px}.signal{width:6px;height:6px;display:inline-block;border-radius:50%;background:var(--warm)}h1{font-size:clamp(68px,7.8vw,113px);font-weight:500;letter-spacing:-7px;line-height:.96;margin:29px 0 27px}h1>span{color:var(--cyan)}.hero-intro{font-size:17px;color:var(--muted);max-width:375px;line-height:1.65}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;font-size:13px;font-weight:600;min-height:52px;padding:0 23px;border-radius:3px;transition:background .18s,transform .18s}.primary{color:#071017;background:var(--cyan)}.primary:hover{background:#95f0f5;transform:translateY(-2px)}.button span{font-size:20px;font-weight:400}.hero .button{margin-top:28px}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:78px;padding-block:21px;color:var(--muted);font-size:11px}.hero-foot a{font:9px monospace;letter-spacing:1px}.hero-foot a span{color:var(--cyan);margin-left:22px;font-size:14px}.section{padding-block:98px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:34px}.section-heading .eyebrow{color:var(--cyan);margin-bottom:20px}h2{font-weight:500;font-size:clamp(33px,3.5vw,48px);line-height:1.1;letter-spacing:-1.8px}.section-heading>p{font-size:13px;color:var(--muted);padding-bottom:2px}.work-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button{border:1px solid transparent;border-radius:100px;background:transparent;color:#aeb8c7;padding:10px 17px;font-size:12px;min-height:40px}.filters button:hover{color:var(--ink);border-color:#506073}.filters button[aria-pressed=true]{background:#e8edf2;color:#101621}.work-count{font:11px monospace;color:var(--muted);white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 28px}.project{border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#0b101a;align-self:start}.project-face{min-height:320px;padding:27px 31px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.face-meta{display:flex;justify-content:space-between;gap:14px;font:9px monospace;letter-spacing:1px}.project-face>p{font-size:13px;line-height:1.4}.never{background:#121d29;color:#d3e2e6}.project-logotype{position:relative;font-size:clamp(50px,6.4vw,84px);letter-spacing:-6px;font-weight:500;line-height:.9;margin:21px 0 8px}.project-logotype>span{display:block;color:#78b0bd}.project-logotype i{position:absolute;right:0;top:26px;font-style:normal;font-size:72px;color:#a7d1d4;font-weight:300}.seattle{background:#e2e4d8;color:#26382f}.calendar-type{font-size:clamp(39px,4.3vw,59px);line-height:1.05;letter-spacing:-2.5px;margin:28px 0}.calendar-type em{font-family:Georgia,serif;font-weight:400}.seattle>p,.worlds>p{font:9px/1.6 monospace;letter-spacing:1px}.dryyp{background:#ead4b9;color:#46392d}.dryyp-type{font-size:clamp(74px,8.5vw,118px);line-height:.9;letter-spacing:-8px;font-family:Georgia,serif;font-weight:700;margin:28px 0}.dryyp-type span{color:#be552c}.worlds{background:#c6c3e2;color:#30304f}.worlds-type{font-size:clamp(56px,6vw,83px);line-height:.8;letter-spacing:-4px;position:relative;margin:27px 0 18px}.worlds-type em{font-family:Georgia,serif;font-weight:400}.worlds-type span{position:absolute;right:0;top:12px;font-size:86px;color:#57518b;font-weight:400}.project-body{padding:25px 29px 0}.project-title{display:flex;justify-content:space-between;gap:15px;align-items:center}.project h3{font-size:21px;font-weight:500;letter-spacing:-.5px}.tag{font:9px monospace;color:#b5c0ce;white-space:nowrap}.project-body>p{color:#aeb9c8;font-size:14px;line-height:1.7;margin-top:13px;min-height:72px;max-width:455px}.project-links{padding-block:21px}.project-links>a{font-size:12px;font-weight:600;display:inline-flex;gap:22px;align-items:center}.project-links>a span{color:var(--cyan);font-size:18px}.project-links>a:hover,.text-link:hover,.github-link:hover,.world-links a:hover{color:var(--cyan)}details{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:11px;color:#b6c2d0;padding:19px 0;display:flex;justify-content:space-between;align-items:center;min-height:50px}summary::-webkit-details-marker{display:none}summary span{font-size:19px;font-weight:300}details[open] summary span{transform:rotate(45deg)}.project-note{padding:0 0 24px}.project-note p{font-size:13px;color:var(--muted);margin:0 0 10px;line-height:1.65}.project-note strong{color:#e1e7ee;font-weight:500}.world-links{list-style:none;margin:16px 0 0;padding:0}.world-links li{margin-bottom:14px}.world-links a{display:block;font-size:13px;color:var(--ink)}.world-links li>span{font-size:11px;color:var(--muted);display:block;margin-top:4px}.studio{background:#eae9e2;color:#1b292d}.studio-top{display:flex;justify-content:space-between;align-items:start}.studio .eyebrow{color:#4b5b60}.studio-label{font:9px/1.6 monospace;letter-spacing:1px}.studio-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:90px;margin-top:52px}.studio-intro h2{font-size:clamp(41px,4.7vw,65px);letter-spacing:-2.7px;line-height:1.06}.studio-intro h2 em{font-family:Georgia,serif;font-weight:400;color:#44696b}.studio-intro>div p{font-size:16px;line-height:1.75;color:#475557;margin-bottom:19px}.text-link{font-size:13px;font-weight:600;display:inline-flex;gap:25px;border-bottom:1px solid #657b7d;padding-bottom:8px;margin-top:6px}.studio .text-link:hover{color:#145b63}.studio a:focus-visible{outline-color:#12636a}.principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;margin-top:69px}.principles>div{border-top:1px solid #b9c3c1;padding-top:21px}.principle-number{font:10px monospace;color:#597478}.principles h3{font-size:18px;font-weight:500;margin:24px 0 11px;letter-spacing:-.3px}.principles p{font-size:13px;color:#566264;max-width:285px}.connect .eyebrow{color:var(--cyan)}.connect-body{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-top:33px}.connect h2{font-size:clamp(41px,4.7vw,65px);letter-spacing:-2.5px;line-height:1.05}.connect h2 span{color:var(--cyan)}.connect-body>div{padding-right:7%;padding-bottom:5px}.connect-body p{font-size:15px;color:var(--muted);margin-bottom:25px}.github-link{font-size:12px;display:block;margin-top:22px}.github-link span{margin-left:10px}.footer{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-block:33px;border-top:1px solid var(--line)}.footer-wordmark{font-size:20px;display:block}.footer-wordmark>span{display:block;font-size:7px;letter-spacing:2.7px;font-weight:400;margin-top:6px}.footer>p{font-size:11px;color:var(--muted)}.footer>div{display:flex;align-items:center;gap:24px;font-size:11px}.footer button{background:none;border:0;color:var(--muted);padding:10px 0;font-size:11px}.footer button:hover{color:var(--cyan)}.footer a:hover{color:var(--cyan)}#share-status:empty{display:none}#share-status{color:var(--cyan);max-width:150px;font-size:10px}.footer>div>a{padding:10px 0;white-space:nowrap}
@media(min-width:1600px){.hero-art{margin-top:-25px}.hero{padding-top:105px}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero{padding-top:64px}h1{letter-spacing:-4.5px}.hero-intro{font-size:15px}.hero-art figcaption{margin-inline:0;font-size:8px}.art-index{display:none}.section{padding-block:75px}.project-face{min-height:290px;padding:23px}.project-body{padding-inline:23px}.project-title{display:block}.tag{display:block;margin-top:8px}.studio-intro{gap:40px}.studio-intro>div p{font-size:14px}.principles{gap:24px}.connect-body>div{padding-right:0}.footer>p{display:none}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.header{min-height:91px;gap:15px}.wordmark{font-size:20px;gap:9px}.mark{width:36px;height:36px;font-size:24px;padding:7px 6px 8px;letter-spacing:-4px}.wordmark-sub{font-size:7px;letter-spacing:2.6px}nav{gap:20px;font-size:11px}nav .nav-contact{display:none}.hero{grid-template-columns:1fr;padding-top:52px}.hero-copy{position:relative;z-index:1}h1{font-size:clamp(67px,14.5vw,99px);letter-spacing:-4.7px;line-height:.96;margin-top:24px}.hero-intro{max-width:330px;font-size:16px}.hero-art{width:min(100%,460px);justify-self:center;margin-top:12px}.hero-art figcaption{margin:5px 12px 0;font-size:8px}.art-index{display:block}.hero-foot{margin-top:34px;padding-block:20px;font-size:10px;gap:20px}.hero-foot a{font-size:8px;white-space:nowrap}.hero-foot a span{margin-left:6px}.section{padding-block:61px}.section-heading{display:block;margin-bottom:24px}.section-heading>p{margin-top:20px;font-size:13px}.section-heading .eyebrow{margin-bottom:17px}h2{font-size:34px;letter-spacing:-1.3px}.work-toolbar{gap:6px;margin-bottom:21px}.filters{gap:0}.filters button{padding:9px 13px;font-size:11px}.work-count{font-size:9px}.project-grid{grid-template-columns:1fr;gap:26px}.project-face{min-height:292px;padding:24px}.project-logotype{font-size:79px}.calendar-type{font-size:54px}.dryyp-type{font-size:108px}.worlds-type{font-size:77px}.project-title{display:flex}.tag{margin-top:0}.project h3{font-size:20px}.project-body>p{min-height:0}.studio-label{font-size:8px}.studio-intro{grid-template-columns:1fr;gap:30px;margin-top:35px}.studio-intro h2{font-size:49px;letter-spacing:-2px}.studio-intro>div p{font-size:15px}.principles{grid-template-columns:1fr;gap:27px;margin-top:40px}.principles>div{display:grid;grid-template-columns:30px 1fr;column-gap:14px;padding-top:20px}.principle-number{padding-top:5px}.principles h3{margin:0 0 10px;font-size:18px}.principles p{grid-column:2;max-width:100%;font-size:13px}.connect-body{display:block;margin-top:26px}.connect h2{font-size:48px;letter-spacing:-2px}.connect-body>div{margin-top:28px}.connect-body p{font-size:14px}.footer{align-items:start;padding-block:27px}.footer>div{gap:3px;align-items:end;flex-direction:column;font-size:10px}.footer button{font-size:10px}#share-status{text-align:right}.footer-wordmark{margin-top:10px}}
@media(max-width:370px){nav{gap:12px}.filters button{padding-inline:10px}.hero .eyebrow{font-size:9px}.hero-foot>span{max-width:120px}.project-title{display:block}.tag{margin-top:8px}.project-logotype i{font-size:56px}.worlds-type span{font-size:66px}.connect h2,.studio-intro h2{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.primary:hover{transform:none}}

/* A cylindrical studio reel, integrated into the existing charcoal/cyan hero. */
.hero-copy{position:relative;z-index:1}
.hero-art{align-self:center;min-width:0;margin: -38px -42px -30px -30px}
.hero-reel{position:relative;width:100%;aspect-ratio:1/1.04;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 68% 46%,#07304a55,transparent 64%)}
.hero-reel::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,var(--bg),transparent 14%,transparent 83%,var(--bg))}
.hero-reel canvas{display:block;width:100%;height:100%}
.hero-art figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 42px 0 30px;font:12px/1.5 monospace;letter-spacing:.5px;color:var(--muted)}
#hero-motion{flex-shrink:0;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:3px;background:var(--bg);color:var(--ink);font:14px/1.3 Arial,sans-serif;letter-spacing:0}
#hero-motion:hover{border-color:var(--cyan);color:var(--cyan)}
.reel-fallback{position:absolute;inset:6% -20%;display:flex;flex-direction:column;justify-content:space-evenly;transform:rotate(-12deg)}
.reel-fallback span{display:block;padding:30px;background:linear-gradient(100deg,#082338,#076a88 65%,#0d9bb5);border-block:1px solid #5bdded66;color:#b9f4fa;font-size:clamp(24px,3vw,42px);white-space:nowrap;letter-spacing:-1px}
.reel-fallback b{margin-left:30px;font-weight:400;color:#80d7e3}
.hero-reel.is-ready .reel-fallback{display:none}
@media(min-width:1600px){.hero-art{margin-top:-48px}}
@media(max-width:1000px){.hero-art{margin-inline:-15px;margin-top:-20px}.hero-art figcaption{margin-inline:15px;flex-wrap:wrap;font-size:12px}.hero-intro{font-size:16px}}
@media(max-width:700px){.hero-art{width:100%;max-width:520px;justify-self:center;margin:28px 0 0}.hero-reel{aspect-ratio:1.18}.hero-art figcaption{margin:0;gap:8px;font-size:12px}.hero-foot{margin-top:28px}}

/* Portfolio additions use the existing typographic project treatments. */
nav{font-size:14px;gap:28px}nav span{margin-left:6px}nav [aria-current=page]{color:var(--cyan)}
.collection-type{font-size:clamp(42px,5vw,68px);line-height:1;letter-spacing:-2.8px;margin:26px 0}
.elements{background:#162f42;color:#a8edf1}.elements .collection-type{font-family:Georgia,serif}
.ccrs{background:#c9dccd;color:#203f36}.ccrs .collection-type{font-family:monospace;letter-spacing:-4px}
.fieldwork{background:#dce3b4;color:#344128}.fieldwork .collection-type{font-family:Georgia,serif;font-style:italic}
.games{background:#373067;color:#f0dafa}.games .collection-type{font-weight:600}
.ditto{background:#cedde5;color:#244657}.ditto .collection-type{font-size:clamp(74px,8vw,104px);letter-spacing:-6px}
.fps{background:#272d38;color:#edbe82}.fps .collection-type{font-weight:700;letter-spacing:-3px}
.project-coming-soon{display:inline-block;font-size:14px;line-height:1.5;color:var(--muted)}
.team-intro{padding-bottom:64px}.team-intro .eyebrow,.team-future .eyebrow{color:var(--cyan)}
.team-intro h1{font-size:clamp(50px,7vw,96px);letter-spacing:-.045em;line-height:1.03}
.team-lead{max-width:720px;font-size:20px;color:var(--muted);margin-top:30px}
.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.team-member{padding:36px;border:1px solid var(--line);background:var(--surface);border-radius:6px}
.team-member .eyebrow{font-size:12px;color:var(--cyan);margin-bottom:34px}
.team-member h2{font-size:36px;letter-spacing:-1.2px}.team-member .member-role{font-size:14px;color:var(--ink);margin:16px 0 26px}
.team-member>p:not(.eyebrow):not(.member-role){font-size:16px;color:var(--muted);margin-top:18px}
.member-links{display:flex;flex-wrap:wrap;gap:22px;margin-top:24px}.member-links .text-link{font-size:14px}
.ai-member{background:#0d1d29}.team-future h2{margin-top:24px}.team-future>p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:17px;margin-top:24px}.team-future .button{margin-top:28px}
@media(max-width:1000px){nav{gap:18px}.team-member{padding:28px}.team-member h2{font-size:30px}}
@media(max-width:700px){.header{flex-wrap:wrap;padding-block:20px;gap:20px}nav{width:100%;flex-wrap:wrap;gap:8px 20px;font-size:14px}nav .nav-contact{display:inline-block}nav a{padding-block:8px}.team-grid{grid-template-columns:1fr}.team-intro{padding-bottom:36px}.team-lead{font-size:18px}.team-member{padding:26px}.team-intro h1{font-size:clamp(42px,10vw,65px)}.filters button{font-size:12px}.work-toolbar{align-items:start}.work-count{padding-top:12px}.collection-type{font-size:50px}}
