@font-face{font-family:Manrope;src:url('./assets/manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
@font-face{font-family:Instrument Serif;src:url('./assets/instrument-serif.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--canvas:#151312;--ink:#f2ece2;--muted:#b9ada0;--surface:#24201e;--accent:#6a303d;--rule:#655c54;--margin:clamp(24px,5vw,80px);--gap:clamp(56px,9vw,144px);--ease:cubic-bezier(.16,1,.3,1);color-scheme:dark;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:not-allowed}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a,input,textarea,select{outline-offset:6px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--ink)}button{background:none;border:0}img,video{display:block;width:100%;height:100%;object-fit:cover}figure{margin:0}p{line-height:1.65;margin:0}h1,h2,h3{font-weight:500;margin:0;letter-spacing:-.04em}h2{font-size:clamp(38px,5.5vw,80px);line-height:1.1}h3{font-size:clamp(25px,3vw,40px);line-height:1.2}::selection{background:var(--accent);color:var(--ink)}[hidden]{display:none!important}.skip{position:fixed;left:24px;top:-100px;padding:14px;background:var(--ink);color:var(--canvas);z-index:50}.skip:focus{top:16px}.header{height:80px;padding:0 var(--margin);position:absolute;inset:0 0 auto;z-index:5;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(#15131288,transparent)}.brand{font-size:19px;font-weight:600;letter-spacing:.23em}.header nav{display:flex;align-items:center;gap:34px;font-size:13px}.header nav a{padding-block:15px}.header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}.header a:hover,.text-link:hover{color:#fff}.menu-toggle{display:none;min-height:44px;padding:10px 0 10px 20px}.hero{height:min(100svh,1080px);min-height:620px;position:relative;isolation:isolate;background:var(--surface);overflow:hidden}.hero-media{position:absolute;inset:0;z-index:-2}.hero-image{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;object-position:center 43%}.hero-image.is-active{opacity:1}.hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#15131224 25%,#15131216 43%,#151312cc 80%,#151312 100%)}.hero-bottom{position:absolute;left:var(--margin);right:var(--margin);bottom:clamp(54px,8vh,90px)}.hero-title{font-size:clamp(64px,14.4vw,235px);line-height:.94;letter-spacing:.015em;font-weight:500;margin-left:-.01em}.hero-description{font-size:clamp(21px,2.5vw,36px);line-height:1.25;margin-top:22px}.hero-caption-row{display:flex;justify-content:space-between;align-items:end;gap:24px}.hero-tools{display:flex;gap:12px;align-items:center;flex-shrink:0}.control{min-height:44px;padding:10px 14px;border:1px solid #f2ece27a;background:#15131265;font-size:12px;line-height:1.5}.control:hover{background:#151312b3}.control:disabled{opacity:.7}.hero-meta{margin-top:14px;font-size:11px;letter-spacing:.04em;color:var(--muted)}.wrap{padding-inline:var(--margin)}.intro{max-width:1100px;padding-block:var(--gap);margin-inline:auto}.intro p{font-size:clamp(25px,3.35vw,48px);line-height:1.4;letter-spacing:-.025em}.intro .word{transition:opacity .25s ease}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px}.section-heading .text-link{margin-bottom:8px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:44px;font-size:14px;border-bottom:1px solid var(--rule);padding:10px 0;white-space:nowrap}.arrow{font-size:24px;line-height:1}.worlds{padding-bottom:var(--gap)}.world-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px;align-items:start}.world:nth-child(2){padding-top:100px}.world:nth-child(3){padding-top:40px}.world-image{aspect-ratio:4/5;overflow:hidden;background:var(--surface)}.world img,.project-tile img{transition:transform .8s var(--ease)}.world:hover img,.project-tile:hover img{transform:scale(1.035)}.world-label{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:20px;font-size:21px}.world-copy{font-size:14px;color:var(--muted);margin-top:8px;max-width:32ch}.section-note{font-size:12px;color:var(--muted);margin-top:32px;max-width:70ch}.selected{padding-bottom:var(--gap)}.feature-image{aspect-ratio:16/8.7;overflow:hidden;background:var(--surface)}.feature-image img{object-position:center 48%}.feature-caption{display:flex;align-items:start;justify-content:space-between;gap:32px;padding-top:24px}.feature-caption p{font-size:13px;color:var(--muted);margin-top:9px}.feature-caption .text-link{margin-top:0}.project-strip{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:64px;align-items:start}.project-strip .project-tile:last-child{padding-top:100px}.project-strip .tile-image{aspect-ratio:4/3;overflow:hidden}.tile-caption{display:flex;justify-content:space-between;align-items:start;margin-top:20px;gap:16px}.tile-caption h3{font-size:clamp(23px,2.5vw,34px)}.tile-caption p{font-size:12px;color:var(--muted);margin-top:8px}.studio-section{position:relative;padding-block:clamp(80px,10vw,160px);border-top:1px solid var(--rule)}.studio-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:start}.studio-heading{max-width:9ch}.studio-layout .copy{max-width:46ch;font-size:17px;color:var(--muted);padding-top:8px}.studio-layout .copy p+p{margin-top:20px}.serif{font-family:Instrument Serif,Georgia,serif;font-weight:400;letter-spacing:-.025em}.studio-statement{font-size:clamp(40px,7.7vw,114px);margin-top:100px;line-height:1.1}.inquiry-footer{padding-block:var(--gap) 48px;background:var(--accent)}.inquiry-footer .footer-lead{max-width:8ch;font-size:clamp(52px,9.4vw,144px);line-height:1.02}.inquiry-footer .text-link{border-color:#f2ece288;margin-top:40px;font-size:18px;min-width:200px}.footer-bottom{margin-top:100px;display:flex;align-items:start;justify-content:space-between;gap:32px;font-size:12px}.footer-bottom .brand{font-size:15px}.footer-meta{color:var(--ink);max-width:43ch}.footer-bottom nav{display:flex;gap:24px}.review-note{padding:20px var(--margin);color:var(--muted);font-size:11px;display:flex;justify-content:space-between;gap:24px;background:var(--canvas)}.review-note button{font-size:11px;text-decoration:underline;text-underline-offset:3px;padding:0;min-height:32px}.page-top{padding:160px var(--margin) 64px}.page-top h1{font-size:clamp(58px,9vw,136px);line-height:1.05;max-width:11ch}.page-top .lede{font-size:clamp(19px,2vw,26px);margin-top:32px;max-width:47ch;color:var(--muted)}.project-hero{height:90svh;min-height:620px;position:relative;isolation:isolate;overflow:hidden}.project-hero img{position:absolute;inset:0;z-index:-2}.project-hero::after{position:absolute;inset:0;content:'';z-index:-1;background:linear-gradient(transparent 25%,#151312d9)}.project-hero-copy{position:absolute;bottom:60px;left:var(--margin);right:var(--margin)}.project-hero h1{font-size:clamp(56px,9vw,136px);line-height:1.05;max-width:10ch}.project-hero-copy p{margin-top:20px;font-size:14px}.project-body{padding-block:var(--gap)}.project-facts{display:grid;grid-template-columns:1fr 1fr;gap:80px}.project-facts h2{font-size:clamp(32px,4vw,56px);max-width:15ch}.project-facts .concept{font-size:18px;color:var(--muted);max-width:48ch}.facts{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:48px 0 0}.facts dt{font-size:12px;color:var(--muted)}.facts dd{margin:10px 0 0;font-size:15px}.project-media{margin-top:var(--gap)}.project-media img{aspect-ratio:16/9}.project-media figcaption{margin-top:18px;color:var(--muted);font-size:12px}.project-detail{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;margin-block:var(--gap);align-items:center}.project-detail figure{max-width:600px}.project-detail img{aspect-ratio:4/5}.project-detail .copy p{max-width:38ch;margin-top:24px;color:var(--muted)}.next-project{display:block;padding:64px 0;border-top:1px solid var(--rule)}.next-project small{font-size:12px;color:var(--muted)}.next-project h2{margin-top:24px;display:flex;justify-content:space-between;gap:24px}.filters{display:flex;flex-wrap:wrap;gap:12px;margin-block:0 48px}.filter{border:1px solid var(--rule);padding:12px 20px;min-height:44px;font-size:13px}.filter[aria-pressed=true]{background:var(--ink);color:var(--canvas);border-color:var(--ink)}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px 32px;margin-bottom:var(--gap)}.work-grid .tile-image{aspect-ratio:4/3;overflow:hidden}.empty{padding:80px 0;color:var(--muted)}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw;padding-bottom:var(--gap)}.contact-copy{max-width:32ch;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 24px}.field{display:grid;gap:12px;font-size:13px}.field.full{grid-column:1/-1}.field input,.field textarea,.field select{border:1px solid var(--rule);background:var(--surface);color:var(--ink);padding:14px;min-width:0;min-height:50px;border-radius:0}.field textarea{resize:vertical;min-height:140px}.primary{background:var(--accent);border:1px solid #b9ada0;padding:16px 24px;min-height:52px;justify-self:start;white-space:nowrap}.primary:hover{background:#783745}.form-note{font-size:13px;color:var(--muted);margin-bottom:32px}.form-status{margin-top:24px;font-size:14px;border-left:3px solid var(--muted);padding-left:20px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-block:64px var(--gap)}.principles p{margin-top:20px;color:var(--muted);max-width:32ch}.studio-full-image{aspect-ratio:16/8;overflow:hidden;margin-bottom:var(--gap)}dialog{background:var(--canvas);color:var(--ink);border:1px solid var(--rule);padding:40px;max-width:min(640px,calc(100vw - 32px));max-height:85dvh;overflow:auto}dialog::backdrop{background:#151312c9;backdrop-filter:blur(8px)}dialog h2{font-size:34px;margin:24px 0}dialog p{color:var(--muted);font-size:15px}dialog p+p{margin-top:18px}.dialog-close{display:block;margin-left:auto;min-height:44px;font-size:14px;text-decoration:underline}.mobile-nav{border:0;position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:none;padding:24px}.mobile-nav nav{display:flex;flex-direction:column;gap:14px;margin-top:48px}.mobile-nav nav a{font-size:clamp(36px,8vw,58px);padding:10px 0}.image-error{background:var(--surface)}.image-error::after{content:'Media unavailable';display:block;padding:24px;color:var(--muted)}
@media all{@supports(animation-timeline:view()){.intro .word{animation:word-in linear both;animation-timeline:view();animation-range:entry 0% cover 50%}@keyframes word-in{from{opacity:.58}to{opacity:1}}.chapter-title{animation:chapter-exit linear both;animation-timeline:view();animation-range:exit 0% exit 100%}@keyframes chapter-exit{to{opacity:.58;transform:scale(.96)}}.parallax img{animation:image-settle linear both;animation-timeline:view();animation-range:entry 0% cover 70%}@keyframes image-settle{from{transform:scale(1.07) translateY(2%)}to{transform:scale(1) translateY(0)}}}.reveal.is-ready{opacity:0;transform:translateY(28px);transition:opacity .65s var(--ease),transform .65s var(--ease)}.reveal.is-ready.is-visible{opacity:1;transform:none}@view-transition{navigation:auto}::view-transition-old(root){animation:.25s ease both fade-out}::view-transition-new(root){animation:.5s var(--ease) both fade-in}@keyframes fade-out{to{opacity:0}}@keyframes fade-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
@media(min-width:1800px){.wrap,.header,.page-top,.review-note{padding-inline:max(80px,calc((100vw - 1640px)/2))}.hero-bottom{left:max(80px,calc((100vw - 1640px)/2));right:max(80px,calc((100vw - 1640px)/2))}}
@media(max-width:767px){.header{height:72px}.brand{font-size:16px}.header nav{gap:22px}.header nav .desktop-link{display:none}.menu-toggle{display:block}.hero{height:88svh;min-height:570px;max-height:850px}.hero-image{object-position:57% 40%}.hero-bottom{bottom:48px}.hero-title{font-size:14vw;letter-spacing:.025em}.hero-description{font-size:21px;max-width:18ch;margin-top:20px}.hero-caption-row{display:block}.hero-tools{margin-top:28px}.hero-meta{max-width:36ch;font-size:10px}.intro{padding-block:72px}.intro p{font-size:28px}.section-heading{display:block;margin-bottom:32px}.section-heading .text-link{margin-top:20px}.world-grid{grid-template-columns:1fr;gap:44px}.world:nth-child(2),.world:nth-child(3){padding-top:0}.world-image{aspect-ratio:5/4}.world-label{margin-top:16px}.world-copy{max-width:100%}.section-note{margin-top:28px}.feature-image{aspect-ratio:4/5}.feature-image img{object-position:60% center}.feature-caption{display:block}.feature-caption .text-link{margin-top:24px}.project-strip{gap:40px;grid-template-columns:1fr;margin-top:48px}.project-strip .project-tile:last-child{padding-top:0}.project-strip .tile-image{aspect-ratio:5/4}.studio-layout{grid-template-columns:1fr;gap:32px}.studio-heading{max-width:12ch}.studio-layout .copy{font-size:16px;max-width:100%}.studio-statement{margin-top:64px;font-size:52px}.footer-bottom{margin-top:64px;flex-direction:column;gap:28px}.footer-bottom nav{flex-wrap:wrap}.review-note{display:block;font-size:11px}.review-note button{margin-top:8px}.page-top{padding-top:128px;padding-bottom:48px}.page-top h1{font-size:62px}.page-top .lede{font-size:20px}.project-hero{height:85svh;min-height:550px}.project-hero img{object-position:57% center}.project-hero-copy{bottom:48px}.project-hero h1{font-size:60px}.project-facts{grid-template-columns:1fr;gap:32px}.project-facts .concept{font-size:16px}.facts{gap:24px}.project-media img{aspect-ratio:4/5;object-position:60% center}.project-detail{grid-template-columns:1fr;gap:40px}.project-detail figure{max-width:none}.work-grid{grid-template-columns:1fr;gap:48px}.contact-layout{grid-template-columns:1fr;gap:40px}.form-grid{grid-template-columns:1fr;gap:24px}.field{grid-column:1/-1}.principles{grid-template-columns:1fr;gap:40px}.studio-full-image{aspect-ratio:4/5}.studio-full-image img{object-position:55% center}dialog{padding:24px}.inquiry-footer .footer-lead{font-size:66px}}

.hero-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.project-media video{width:100%;height:auto;aspect-ratio:16/9;background:var(--surface)}

/* Shared Phosphor vector icon: no platform-dependent text or emoji glyph. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.inquiry-context{font-size:13px;line-height:1.7;color:var(--muted);border-left:2px solid var(--accent);padding-left:18px}
.arrow{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:0 0 22px;font-size:0;line-height:0;align-self:center;background:none;border:0;color:inherit}
.arrow svg{display:block;width:100%;height:100%;fill:currentColor}
.project-tile .arrow,.text-link .arrow{transition:transform .2s var(--ease)}
.project-tile:hover .arrow,.text-link:hover .arrow{transform:translate(2px,-2px)}

/* Category navigation stays on one editorial baseline on narrow screens. */
.filters{display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:clamp(24px,4vw,60px);margin:0 0 20px;border-bottom:1px solid var(--rule)}
.filter{position:relative;flex:0 0 auto;border:0;background:transparent;color:var(--muted);font-size:16px;font-weight:400;padding:16px 0 20px;min-height:56px;min-width:44px;text-align:left;white-space:nowrap;transition:color .2s ease}
.filter::after{content:'';position:absolute;bottom:-1px;inset-inline:0;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.filter[aria-pressed=true]{background:transparent;color:var(--ink);border:0}
.filter[aria-pressed=true]::after{transform:scaleX(1)}
.filter:hover{color:var(--ink)}
.work-caption{font-size:12px;color:var(--muted);margin-bottom:48px;line-height:1.6}
@media(max-width:767px){.filters{justify-content:space-between;gap:12px}.filter{font-size:14px;padding-block:14px 18px;min-height:52px}.work-caption{margin-bottom:36px;max-width:32ch}.arrow{width:20px;height:20px;flex-basis:20px}}

/* Shared sector discovery: native disclosure links, with ordinary keyboard navigation. */
.worlds-navigation{position:relative}
#worlds-toggle{display:flex;align-items:center;gap:9px;min-height:48px;padding:12px 0;font-size:13px}
#worlds-toggle svg{width:16px;height:16px}
.worlds-menu{position:absolute;right:-24px;top:100%;width:260px;padding:24px;background:var(--canvas);border:1px solid var(--rule)}
.worlds-menu p,.mobile-worlds p,.footer-navigation>div>p{font-size:11px;line-height:1.6;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.header nav .worlds-menu a{display:block;padding:12px 0;min-height:48px;font-size:16px}
.worlds-menu a+a{border-top:1px solid var(--rule)}
.mobile-nav nav{gap:4px;margin-top:24px}
.mobile-nav nav>a{font-size:30px;line-height:1.3;min-height:48px;padding:8px 0}
.mobile-worlds{padding-block:24px;margin-block:12px;border-block:1px solid var(--rule)}
.mobile-nav .mobile-worlds a{display:block;font-family:var(--display);font-weight:300;font-size:46px;line-height:1.1;min-height:56px;padding:6px 0;text-transform:uppercase;letter-spacing:-.015em}
.footer-navigation{display:flex;gap:64px}
.footer-navigation nav{flex-direction:column;gap:0}
.footer-navigation nav a{display:block;min-height:44px;padding-block:10px}
.footer-navigation a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}
.world-stage{scroll-margin-top:0}
@media(max-width:767px){.worlds-navigation.desktop-link{display:none}.footer-navigation{width:100%;justify-content:space-between;gap:32px}}
