@import url('./studio-system.css?v=20260829-1');

html,body{max-width:100%;overflow-x:hidden;overflow-x:clip}

*,*::before,*::after{box-sizing:border-box}html{background:var(--color-canvas);color:var(--color-ink);font-family:var(--font-sans);font-weight:400;font-synthesis:none;scroll-behavior:smooth}body{margin:0;background:var(--color-canvas);font-family:inherit;font-size:var(--text-body);font-weight:400;letter-spacing:var(--tracking-tight)}body,a,button{color:inherit}h1,h2,h3,h4,h5,h6,strong,b,button,input,textarea,select{font-family:inherit;font-weight:400}img{display:block;width:100%;height:100%;object-fit:cover}a{text-decoration-thickness:1px;text-underline-offset:.12em}p,h1,h2,h3,h4,h5,h6,figure,ul{margin:0}ul{padding:0;list-style:none}button{font:inherit;letter-spacing:inherit;background:none;border:0;padding:0}.skip-link{position:fixed;z-index:100;top:8px;left:8px;transform:translateY(-150%);background:var(--color-ink);color:var(--color-canvas);padding:8px 12px}.skip-link:focus{transform:none}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.site-header{position:sticky;top:0;z-index:20;height:48px;padding:16px;display:flex;align-items:flex-start;gap:64px;background:var(--color-canvas);text-transform:uppercase;line-height:1}.wordmark{flex:1;text-decoration:none}.site-header nav ul{display:flex;gap:64px}.site-header nav li{width:80px;text-align:right}.site-header nav a{text-decoration:none;white-space:nowrap}.site-header nav a:hover{text-decoration:underline}.site-footer{min-height:128px;padding:16px;display:flex;gap:64px;align-items:flex-end;text-transform:uppercase;line-height:1}.site-footer>p{flex:1}.footer-links{display:flex;gap:64px}

.work-hero{min-height:708px;padding:256px 16px 128px;display:grid;grid-template-columns:1fr 1fr;gap:16px;text-transform:uppercase}.work-hero h1,.hero-statement p{font-size:48px;font-weight:400;line-height:1}.hero-statement{display:grid;grid-template-columns:39px 1fr;gap:32px}.hero-statement span{font-size:32px;line-height:1}.work-list{display:flex;flex-direction:column;gap:64px}.project-feature{display:flex;flex-direction:column;gap:16px}.project-gallery{display:flex;gap:16px;padding-inline:16px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}.project-gallery::-webkit-scrollbar{display:none}.project-gallery.pair{overflow:visible}.project-gallery.pair .project-media{flex:1;aspect-ratio:406/409}.project-gallery.rail .project-media{height:min(50vw,728px);width:auto;min-width:min(78vw,1130px)}.project-gallery.rail.compact .project-media{height:min(46vw,668px);min-width:min(65vw,900px)}.project-media img{width:100%;height:100%}.project-label{min-height:128px;padding:0 32px;display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.project-label h2{font-size:var(--text-heading);font-weight:400;line-height:1;margin-bottom:8px}.project-label p{line-height:18px;max-width:686px}.project-label>a{justify-self:end}

.selects-page{min-height:calc(100vh - 176px);padding:0 16px}.selects-header{padding:256px 0 128px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.selects-header h1,.selects-header p{font-size:var(--text-heading);font-weight:400;line-height:1;text-align:left}.selects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.select-card{aspect-ratio:1;display:block;overflow:hidden}.select-card:nth-child(4){grid-column:1}.select-card img{transition:transform var(--duration-fast) var(--ease-standard)}.select-card:hover img{transform:scale(1.015)}
.error-page{min-height:calc(100vh - 48px);padding:256px 16px 128px}.error-page h1{font-size:var(--text-heading);line-height:1;margin-bottom:32px}

.about-intro{padding:256px 16px 128px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.about-story{padding-right:160px;display:flex;flex-direction:column;gap:32px}.about-story h1,.about-intro aside h2{font-size:var(--text-heading);font-weight:400;line-height:1}.about-story p,.about-intro aside{line-height:18px}.about-intro aside{display:flex;flex-direction:column;gap:32px}.about-intro aside ul{display:flex;flex-direction:column;gap:16px}.about-portrait{height:800px;margin-inline:16px}.about-portrait img{object-position:center}.section-block{padding:128px 16px}.section-block>h2,.studio-system h2,.resources h2{font-size:32px;font-weight:400;line-height:1;text-transform:uppercase}.philosophy{display:grid;gap:48px}.philosophy-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:48px}.philosophy-tabs button{font-size:var(--text-heading);line-height:1;text-align:left;cursor:pointer}.philosophy-tabs button::after{content:'+';float:right}.philosophy-tabs button[aria-selected=true]::after{content:'−'}.philosophy-panels{display:grid;grid-template-columns:repeat(5,1fr);gap:48px}.philosophy-panels article{grid-column:span 1;min-height:255px}.philosophy-panels h3{font-size:var(--text-heading);font-weight:400;line-height:1;margin-bottom:16px}.philosophy-panels p{line-height:18px}.studio-mark{height:800px;margin:0 16px;background:#d0d0d0}.studio-mark img{object-fit:cover}.studio-system{display:grid;grid-template-columns:1fr 1fr;gap:16px}.studio-system>div:first-child{display:flex;flex-direction:column;gap:16px}.system-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.system-grid img{aspect-ratio:1114/744;object-fit:contain}.resources{display:grid;grid-template-columns:1fr 1fr;gap:16px}.resources>div:first-child{display:flex;flex-direction:column;gap:16px;padding-right:16px}.resource-list{display:flex;flex-direction:column;gap:64px}.resource-list section{display:flex;flex-direction:column;gap:8px}.resource-list h3{font-size:var(--text-heading);font-weight:400;line-height:1}.resource-list p{line-height:18px}

@media(max-width:1023px){.site-header nav ul{gap:32px}.selects-grid{grid-template-columns:repeat(2,1fr)}.select-card:nth-child(4){grid-column:auto}.about-story{padding-right:48px}.philosophy-tabs,.philosophy-panels{gap:24px}.studio-mark{height:55vw}}

@media(max-width:639px){.site-header{height:auto;min-height:80px;flex-direction:column;gap:16px;align-items:stretch}.site-header nav ul{justify-content:space-between;gap:16px}.site-header nav li{width:auto;text-align:left}.site-footer{gap:16px;font-size:var(--text-body)}.site-footer>p{max-width:180px;line-height:1.05}.footer-links{gap:32px;margin-left:auto}.work-hero{min-height:620px;padding:192px 16px 96px;grid-template-columns:1fr;align-content:start;gap:48px}.work-hero h1,.hero-statement p{font-size:32px}.hero-statement{grid-template-columns:24px 1fr;gap:16px}.hero-statement span{font-size:24px}.work-list{gap:48px}.project-gallery.pair{overflow-x:auto}.project-gallery.pair .project-media{flex:0 0 86vw}.project-gallery.rail .project-media,.project-gallery.rail.compact .project-media{height:62vw;min-width:86vw;scroll-snap-align:start}.project-gallery{scroll-snap-type:x proximity}.project-label{min-height:0;padding:0 16px 64px;grid-template-columns:1fr;gap:16px}.project-label>a{justify-self:start}.selects-page{padding:0 16px}.selects-header{gap:32px}.selects-grid{grid-template-columns:1fr}.about-intro{grid-template-columns:1fr;padding:256px 16px 128px}.about-story{padding-right:16px}.about-portrait{height:550px}.about-portrait img{object-position:center}.philosophy{width:100%;min-width:0;padding-inline:0;gap:48px}.philosophy>h2{padding-inline:16px}.philosophy-mobile{width:100%;min-width:0}.philosophy-tabs{display:flex;width:100%;max-width:100%;gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;padding-inline:16px;scrollbar-width:none}.philosophy-tabs button{flex:none;opacity:.4}.philosophy-tabs button[aria-selected=true]{opacity:1}.philosophy-tabs button::after{display:none}.philosophy-panels{display:block;padding-inline:16px;min-height:255px}.philosophy-panels article{min-height:0}.studio-mark{height:auto;aspect-ratio:987/526}.studio-system{grid-template-columns:1fr;gap:32px}.system-grid{gap:32px}.resources{grid-template-columns:1fr;gap:64px}.section-block{padding-block:128px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.select-card img{transition:none}}

/* Center-snapping project rails and pointer navigation. */
.gallery-shell{position:relative;overflow:hidden}
.gallery-shell .project-gallery{padding-left:var(--rail-leading,16px);padding-right:var(--rail-trailing,16px);scroll-padding-inline:16px;scroll-snap-type:x mandatory}
.gallery-shell .project-gallery .project-media{scroll-snap-align:center;scroll-snap-stop:always}
.gallery-shell .project-gallery .project-media.is-first{scroll-snap-align:start}
.gallery-shell .project-gallery .project-media.is-last{scroll-snap-align:end}
.project-gallery.rail.variable .project-media{width:min(var(--media-width),calc(100vw - 32px));min-width:min(var(--media-width),calc(100vw - 32px))}
.placeholder-media{background:#e6e6e6}
.gallery-shell[data-hover-zone="left"]{cursor:url("./assets/cursor-left.svg") 16 16,w-resize}
.gallery-shell[data-hover-zone="right"]{cursor:url("./assets/cursor-right.svg") 16 16,e-resize}
.gallery-shell[data-hover-zone="center"]{cursor:default}
@media(hover:none),(pointer:coarse){.gallery-shell{cursor:auto}}
@media(max-width:639px){.project-gallery.rail.variable .project-media{width:min(var(--media-width),86vw);min-width:min(var(--media-width),86vw)}}
.project-gallery.rail.intrinsic .project-media{flex:0 0 auto;width:auto;min-width:0;aspect-ratio:var(--media-ratio)}
.project-gallery.rail.intrinsic .project-media img{object-fit:contain}
.project-gallery.rail.intrinsic .project-media video{display:block;width:100%;height:100%;object-fit:contain}

/* Desktop Philosophy tenets. */
.philosophy-desktop{display:grid;height:375px;grid-template-columns:repeat(5,minmax(0,1fr));gap:48px;align-items:start;cursor:none}
.philosophy-mobile{display:none}
.philosophy-card{height:375px;min-width:0;overflow:hidden}
.philosophy-toggle{display:flex;width:100%;min-height:112px;flex-direction:column;gap:16px;text-align:left;cursor:none}
.philosophy-name,.philosophy-thesis{display:block;font-size:var(--text-heading);line-height:1}
.philosophy-card-body{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--duration-fade-out) ease-in,visibility 0s linear var(--duration-fade-out)}
.philosophy-card-body>div{overflow:visible}
.philosophy-card-body p{padding-top:16px;line-height:18px}
.philosophy-card[data-open="true"] .philosophy-card-body{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--duration-fade-in) ease-out,visibility 0s linear 0s}
.philosophy-cursor{position:fixed;z-index:50;top:-16px;left:-16px;width:32px;height:32px;border:1px solid rgb(15 15 15 / 12%);border-radius:50%;background:var(--color-canvas);opacity:0;pointer-events:none;transition:opacity 100ms linear}
.philosophy-cursor.is-visible{opacity:1}
.philosophy-cursor>span{position:absolute;inset:0;transition:transform var(--duration-fast) var(--ease-standard)}
.philosophy-cursor>span::before,.philosophy-cursor>span::after{content:"";position:absolute;top:50%;left:50%;width:12px;height:1.5px;border-radius:2px;background:var(--color-ink);transform:translate(-50%,-50%)}
.philosophy-cursor>span::after{transform:translate(-50%,-50%) rotate(90deg)}
.philosophy-cursor.is-close>span{transform:rotate(45deg)}
@media(max-width:639px){.philosophy-desktop{display:none}.philosophy-mobile{display:flex;flex-direction:column;gap:32px}}
@media(hover:none),(pointer:coarse){.philosophy-desktop{cursor:auto}.philosophy-toggle{cursor:pointer}.philosophy-cursor{display:none}}
@media(prefers-reduced-motion:reduce){.philosophy-card-body{transition:none}}

/* Top-level page transitions. Shared navigation and footer remain static. */
.page-transition main{opacity:0}
.page-transition.page-ready main{opacity:1;transition:opacity var(--duration-fade-in) ease-out}
.page-transition.page-ready.page-leaving main{opacity:0;transition-duration:var(--duration-fade-out);transition-timing-function:ease-in}
@media(prefers-reduced-motion:reduce){.page-transition main,.page-transition.page-ready main,.page-transition.page-ready.page-leaving main{opacity:1;transition:none}}
