@font-face{font-family:'Clash Display';src:url('assets/ClashDisplay-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Clash Display';src:url('assets/ClashDisplay-Medium.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:'Switzer';src:url('assets/Switzer-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Switzer';src:url('assets/Switzer-Medium.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}




:root{--cream:#F2EFE7;--forest:#252A25;--terra:#733C2B;--display:'Clash Display',sans-serif;--body:'Switzer',sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{margin:0;background:var(--cream);scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--forest);font-family:var(--body);font-weight:400;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
button{font-family:inherit}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:6px}
/* FIGMA / Navigation: 1440×88, inset 48, brand Clash Display Medium 24px. */
.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 48px;background:var(--cream);width:100%;position:relative;z-index:10}
.brand{font-family:var(--display);font-weight:500;font-size:24px;line-height:27px;letter-spacing:-.24px;white-space:nowrap;width:300px}
.site-nav{display:flex;gap:32px;align-items:center;width:400px;height:44px;font-family:var(--body);font-size:17px;line-height:24px}
.site-nav a{display:block;width:100px;flex:0 0 100px}
.site-nav a:hover{text-decoration:underline;text-underline-offset:5px}
/* FIGMA / Opening: top 88, height 812. Everything absolute in the 1440 design grid. */
.opening{height:812px;background:var(--cream);position:relative;overflow:hidden}
.opening-disciplines{margin:0;position:absolute;top:42px;left:50%;transform:translateX(-50%);width:1000px;text-align:center;font:500 13px/20px var(--body);letter-spacing:.78px;color:var(--terra)}
.opening-image{margin:0;position:absolute;top:109px;left:50%;transform:translateX(-50%);width:360px;height:203px;overflow:hidden}
.opening-image img{display:block;width:100%;height:100%;object-fit:cover}
.opening-title{margin:0;position:absolute;top:350px;left:50%;transform:translateX(-50%);width:1100px;text-align:center;font:500 88px/86px var(--display);letter-spacing:-1.76px}
.opening-title span{display:block;white-space:nowrap}
.opening-caption{margin:0;position:absolute;top:744px;font:500 13px/20px var(--body);letter-spacing:.78px;white-space:nowrap}
.opening-caption.left{left:48px;color:var(--terra)}
.opening-caption.right{right:48px;text-align:right}
/* FIGMA / Practice & Perspective: fixed 330px height, x64 + x524. */
.practice{min-height:330px;background:var(--terra);color:var(--cream);padding:64px;display:grid;grid-template-columns:360px minmax(0,780px);column-gap:100px;align-content:start}
.practice-label{font:500 13px/20px var(--body);letter-spacing:.78px;margin:0}
.practice-description{font:400 21px/31px var(--body);margin:0;max-width:780px}
/* FIGMA / Six-state sequence 1440×760. Split at x600. */
.work{position:relative;height:760px;overflow:hidden;background:var(--cream)}
.project-slide{position:absolute;inset:0;display:none}
.project-slide.is-active{display:flex}
.theme-cream{background:var(--cream);color:var(--forest)}
.theme-green{background:var(--forest);color:var(--cream)}
.theme-terracotta{background:var(--terra);color:var(--cream)}
.project-info{width:41.6666666667%;height:100%;flex:0 0 41.6666666667%;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:64px 48px 48px;min-width:0}
.project-topline{width:100%;height:44px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.project-index{font:500 13px/20px var(--body);letter-spacing:.78px;min-width:0;white-space:nowrap}
.project-controls{display:flex;gap:12px;flex:0 0 auto}
.project-arrow{width:44px;height:44px;border:0;background:transparent;color:inherit;display:grid;place-items:center;font:400 17px/24px var(--body);cursor:pointer}
.project-arrow:hover:not(:disabled){opacity:.6}
.project-arrow:disabled{opacity:.22;cursor:default}
.project-heading{margin:0;font:500 80px/80px var(--display);letter-spacing:-1.6px;width:100%;max-width:504px;overflow-wrap:normal}
.project-image{height:100%;width:58.3333333333%;flex:0 0 58.3333333333%;overflow:hidden}
.project-image img{display:block;width:100%;height:100%;object-fit:cover}
/* FIGMA / Contact: x64 y64, 490px high, 28px vertical gaps. */
.contact{height:490px;background:var(--forest);color:var(--cream);padding:64px;display:flex;flex-direction:column;align-items:flex-start;gap:28px}
.contact-label,.contact-location{font:500 13px/20px var(--body);letter-spacing:.78px;margin:0}
.contact-title{font:500 80px/80px var(--display);letter-spacing:-1.6px;margin:0}
.contact-email{font:400 21px/31px var(--body)}
.contact-social{font:400 17px/24px var(--body)}
.contact a:hover{text-decoration:underline;text-underline-offset:5px}
/* Faithful 1440px desktop layout above; separate responsive decisions under this breakpoint. */
@media(max-width:1199px){
.site-header{padding:0 4vw}
.opening-title{font-size:clamp(52px,6.11vw,88px);line-height:.978;width:95%}
.opening-title span{white-space:normal}
.opening-disciplines{max-width:95%}
.opening-caption.left{left:4vw}.opening-caption.right{right:4vw}
.practice{grid-template-columns:minmax(180px,32%) minmax(0,1fr);column-gap:6vw;padding:5vw}
.project-info{padding:5vw 4vw 4vw}.project-heading{font-size:clamp(48px,5.55vw,80px);line-height:1}
.contact{padding:5vw}.contact-title{font-size:clamp(48px,5.55vw,80px);line-height:1}
}
@media(max-width:760px){
.site-header{height:70px;padding:0 20px}
.brand{font-size:17px;line-height:20px;width:auto}
.site-nav{width:auto;height:auto;gap:14px;font-size:12px;line-height:20px}
.site-nav a{width:auto;flex:auto}
.opening{height:calc(100svh - 70px);min-height:610px;max-height:870px}
.opening-disciplines{top:56px;max-width:90%;font-size:10px;line-height:16px;letter-spacing:.5px}
.opening-image{top:135px;width:64%;height:auto;aspect-ratio:360/203}
.opening-title{top:370px;width:calc(100% - 32px);font-size:clamp(43px,10vw,70px);line-height:.98;letter-spacing:-.02em}
.opening-title span{white-space:normal}
.opening-caption{top:auto;bottom:24px;font-size:9px;letter-spacing:.2px;line-height:16px}
.opening-caption.left{left:20px}.opening-caption.right{right:20px}
.practice{padding:50px 24px 65px;min-height:320px;display:flex;flex-direction:column;gap:28px}
.practice-description{font-size:18px;line-height:27px}
.work{height:auto;overflow:visible}
.project-slide{position:relative;inset:auto;height:620px;display:flex!important;flex-direction:column;transform:none!important;transition:none!important}
.project-image{order:0;width:100%;height:390px;flex:0 0 390px}
.project-info{order:1;width:100%;flex:1;padding:26px 24px 30px;justify-content:space-between}
.project-heading{font-size:clamp(43px,9vw,64px);line-height:.98}
.project-topline{height:24px}.project-controls{display:none}
.contact{height:auto;min-height:445px;padding:55px 24px 60px;gap:28px}
.contact-title{font-size:clamp(47px,10vw,70px);line-height:.98}
.contact-email{font-size:18px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-slide{transition:none}}

/* Shared refinements to the original V5 stylesheet, matching the current Figma. */
:root{--site-header-height:88px;--gutter:clamp(24px,3.3333vw,64px);--section-gutter:clamp(24px,4.4444vw,80px)}
html{scroll-behavior:auto}body{font-synthesis:none}h1,h2,p,figure{margin:0}img{display:block;max-width:100%}a,button{touch-action:manipulation}button{font-weight:400}
.site-header{position:sticky;top:0;z-index:40}.skip-link{position:fixed;top:8px;left:12px;z-index:100;padding:12px;background:var(--cream);transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}
.label{font:500 13px/20px var(--body);letter-spacing:.78px}
.opening-scroll{position:relative}.opening{height:calc(100svh - var(--site-header-height));min-height:650px}
.opening-caption{top:auto;bottom:48px}.opening-image{z-index:3}.opening-image img{width:148%;height:147.72%;max-width:none;position:absolute;left:-23.91%;top:-26.04%}
.motion-enabled .opening-scroll{height:calc(100svh - var(--site-header-height) + 75svh)}
.motion-enabled .opening{position:sticky;top:var(--site-header-height);min-height:0;overflow:hidden}
.motion-enabled .opening-image{inset:0;width:100%;height:100%;transform:none;clip-path:inset(109px calc(50% - 180px) calc(100% - 312px));will-change:clip-path}
.motion-enabled .opening-image img{left:0;top:0;width:100%;height:100%;object-fit:cover;will-change:transform;transform-origin:0 0}
.practice{min-height:0;grid-template-columns:minmax(180px,360px) minmax(0,780px);column-gap:clamp(40px,6.944vw,100px);padding:64px var(--section-gutter) 62px}
.work-scroll{position:relative}.work-columns{display:none}.work-mobile{display:block}
.work-mobile .project-slide{position:relative;display:flex;height:760px}.work-mobile .project-info{width:41.6667%}.work-mobile .project-image{width:58.3333%}
.motion-enabled .work-scroll{height:calc(100svh - var(--site-header-height) + 390svh)}
.sequence-info .project-heading{margin-top:auto}
body[data-page="index"] .work-mobile .project-topline{display:none}
body[data-page="index"] .work-mobile .project-heading{margin-top:auto}
.motion-enabled .work-stage{height:calc(100svh - var(--site-header-height));position:sticky;top:var(--site-header-height);overflow:hidden}
.motion-enabled .work-columns{height:100%;display:grid;grid-template-columns:41.6667% 58.3333%}
.motion-enabled .work-mobile{display:none}.work-left,.work-right{position:relative;height:100%;min-width:0;overflow:hidden}
.sequence-info,.sequence-image{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;will-change:clip-path}
.sequence-info .project-info{width:100%;padding:64px var(--gutter) 48px;will-change:transform}
.sequence-image img{width:100%;height:100%;object-fit:cover}.sequence-image:not(:first-child),.sequence-info:not(:first-child){clip-path:inset(100% 0 0)}
.project-image{position:relative}.project-image img.brochure-hero{position:absolute;width:177%;height:134.34%;max-width:none;left:-28.68%;top:-21.09%}
img.brochure-home{object-fit:contain!important}img.sp-home{position:absolute;width:153.8%;height:100%;max-width:none;left:-26.85%;top:-.04%}
.work-mobile .project-image{position:relative}.project-heading a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}
.contact{height:auto;min-height:490px;padding:64px var(--section-gutter)}.contact-page{min-height:calc(100svh - 88px);padding-top:160px}
.work-intro{height:450px;padding:64px var(--section-gutter);display:flex;flex-direction:column;gap:26px}
.work-intro h1,.about-intro h1{font:500 clamp(52px,6.111vw,110px)/.9773 var(--display);letter-spacing:-.02em}
.categories{display:flex;gap:22px;flex-wrap:wrap}.work-gallery{padding:0 var(--gutter) 64px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 24px}
.work-card{min-width:0;min-height:490px}.work-cover{width:100%;aspect-ratio:660/390;position:relative;overflow:hidden}
.work-cover img{width:100%;height:100%;object-fit:cover}.work-cover img.work-brochure{position:absolute;width:117.03%;height:136%;left:-8.48%;top:-23.11%;max-width:none}.work-cover img.work-nyc{position:absolute;width:100%;height:211.54%;left:-.01%;top:-108.28%;max-width:none}
.work-card h2{font:500 32px/38px var(--display);letter-spacing:-.32px;margin-top:14px}.work-card p{font:400 14px/20px var(--body);color:#686b60;margin-top:8px}.work-card:hover h2{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.about-intro{min-height:510px;padding:88px var(--section-gutter) 64px;display:flex;flex-direction:column;gap:40px}.about-intro>.label{color:var(--terra)}
.about-bio{min-height:720px;background:var(--terra);color:var(--cream);padding:64px var(--section-gutter);display:grid;grid-template-columns:360px minmax(0,1fr);gap:clamp(40px,6.944vw,100px)}
.about-copy .body-copy{max-width:700px}.about-copy .body-copy p+p{margin-top:0}
.portrait{width:360px;height:560px;object-fit:cover}.about-copy{display:flex;flex-direction:column;gap:32px}.about-copy h2,.next-title{font:400 60px/62px var(--display);letter-spacing:-.84px}.body-copy{font:400 21px/31px var(--body);max-width:740px}.body-copy p+p{margin-top:31px}
.project-opening{display:flex;height:760px}.project-opening .project-info{padding:64px var(--gutter) 48px}.project-opening .project-heading{font-size:clamp(48px,5.5556vw,100px);line-height:1}
.project-story{display:grid;grid-template-columns:minmax(0,400px) minmax(0,740px);gap:clamp(40px,6.944vw,100px);padding:96px var(--section-gutter)}
.project-story aside{display:flex;flex-direction:column;gap:24px;color:var(--terra);font:400 17px/24px var(--body)}
.project-external{max-width:390px}.project-external.button{display:flex;align-items:center;min-height:52px;padding:14px 20px;background:var(--terra);color:var(--cream)}.project-external:hover{text-decoration:underline;text-underline-offset:4px}
.project-gallery{padding:0 var(--gutter) 64px;display:flex;flex-direction:column;gap:24px}.gallery-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.gallery-pair figure{aspect-ratio:660/590;overflow:hidden}.project-gallery img{width:100%;height:100%;object-fit:cover}.project-gallery .contain img{object-fit:contain}.gallery-wide{aspect-ratio:1344/720}.gallery-devices{display:grid;grid-template-columns:960fr 336fr;gap:48px}.gallery-devices figure{height:51.389vw;max-height:1000px}.gallery-study{aspect-ratio:1344/740}
.next-project{min-height:300px;padding:48px var(--section-gutter);background:var(--forest);color:var(--cream);display:flex;flex-direction:column;align-items:flex-start;gap:24px}.next-project>a:last-child{font-size:17px;line-height:24px}.next-project a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
@media(min-width:761px) and (max-height:780px){.opening-disciplines{top:5%}.opening-title{top:44%;font-size:clamp(48px,5.8vw,80px);line-height:.98}.opening-caption{bottom:24px}.opening-image{top:13.4%;width:300px;height:169px}.sequence-info .project-info{padding-top:32px;padding-bottom:32px}}
@media(min-width:761px) and (max-width:1100px){.about-bio{grid-template-columns:32% 1fr;gap:5vw}.portrait{width:100%;height:auto;aspect-ratio:360/560}.about-copy h2,.next-title{font-size:48px;line-height:1.05}.project-story{grid-template-columns:32% minmax(0,1fr);gap:5vw}.project-opening{height:660px}.work-card{min-height:0}.work-intro{height:auto;min-height:390px}}
@media(max-width:760px){
 :root{--site-header-height:70px}.site-header{padding:0 20px}.site-nav{gap:14px}.site-nav a{padding:12px 0}.brand{font-size:17px}
 .opening{height:auto;min-height:calc(100svh - 70px);max-height:none;padding:48px 20px 28px;display:flex;flex-direction:column;align-items:center;gap:32px}
 .opening-disciplines,.opening-title,.opening-image,.opening-caption{position:static;inset:auto;transform:none;width:auto;max-width:none}
 .opening-disciplines{font-size:12px;letter-spacing:.5px;line-height:20px}.opening-image{width:64%;height:auto;aspect-ratio:360/203;position:relative;flex-shrink:0;margin-top:20px}.opening-image img{position:absolute}
 .opening-title{font-size:clamp(39px,9.5vw,66px);line-height:.98;letter-spacing:-.02em;margin:6px -4px 30px}.opening-title span{white-space:normal}.opening-caption{font-size:9px;line-height:16px;margin-top:auto;align-self:flex-start}.opening-caption.right{align-self:flex-end;margin-top:-48px}
 .practice{padding:50px 24px 65px;display:flex;gap:28px;min-height:320px}
 .work-mobile .project-slide{display:flex;height:auto;min-height:0}.work-mobile .project-info{width:100%;flex:auto;min-height:220px;padding:26px 24px 30px;gap:44px}.work-mobile .project-image{width:100%;height:100vw;max-height:570px;flex:auto}.project-index{font-size:11px;white-space:normal}.work-mobile .project-topline{height:auto}.project-heading{font-size:clamp(43px,9vw,64px);line-height:1}
 .contact{padding:55px 24px 60px;min-height:445px}.contact-page{min-height:calc(100svh - 70px);padding-top:90px}.contact-title{font-size:clamp(46px,10vw,70px)}
 .work-intro{height:auto;min-height:360px;padding:64px 24px 50px;gap:32px}.work-intro h1,.about-intro h1{font-size:clamp(46px,10vw,70px)}.categories{display:block;font-size:12px;line-height:22px}.categories span{margin:0 8px}
 .work-gallery{padding:0 24px 48px;grid-template-columns:1fr;gap:40px}.work-card{min-height:0}.work-card h2{font-size:29px;line-height:34px}.work-card p{font-size:13px}
 .about-intro{min-height:390px;padding:64px 24px;gap:40px}.about-bio{padding:48px 24px;grid-template-columns:1fr;gap:42px}.portrait{width:100%;height:auto;max-width:420px;aspect-ratio:360/560}.about-copy h2{font-size:46px;line-height:1}.body-copy{font-size:18px;line-height:27px}.body-copy p+p{margin-top:27px}
 .project-opening{height:auto;display:flex;flex-direction:column}.project-opening .project-info{width:100%;min-height:310px;padding:40px 24px;gap:70px;flex:auto}.project-opening .project-heading{font-size:clamp(46px,10vw,70px);max-width:600px}.project-opening .project-image{width:100%;height:100vw;max-height:650px;flex:auto}
 .project-story{padding:56px 24px;grid-template-columns:1fr;gap:36px}.project-story aside{font-size:15px;line-height:22px;gap:20px}.project-gallery{padding:0 24px 48px;gap:24px}.gallery-pair{grid-template-columns:1fr;gap:24px}.gallery-devices{grid-template-columns:1fr;gap:32px}.gallery-devices figure{height:auto;aspect-ratio:16/10}.gallery-devices figure:last-child{height:600px;max-height:110svh;aspect-ratio:auto}.next-project{padding:48px 24px;min-height:280px}.next-title{font-size:42px;line-height:1.05}
}
@media(max-width:360px){.site-header{padding:0 14px}.brand{font-size:15px}.site-nav{gap:10px;font-size:11px}.opening-title{font-size:36px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@keyframes page-enter{from{opacity:.6}to{opacity:1}}
main{animation:page-enter 160ms ease-out both}
.history-restored main{animation:none}
@media(prefers-reduced-motion:reduce){main{animation:none}}
@media(min-width:761px){.work-mobile .project-info{order:0}.work-mobile .project-image{order:1}}
.project-media{padding:0 var(--gutter) 64px}.media-window{position:relative;aspect-ratio:16/9;background:var(--forest);overflow:hidden}
.media-window iframe{position:absolute;inset:0;width:100%;height:100%;border:0} .tour-window>img{width:100%;height:100%;object-fit:cover}
.tour-launch{position:absolute;left:50%;top:50%;transform:translate(-50%,-40px);display:flex;flex-direction:column;align-items:center;gap:12px;width:120px;padding:0;border:0;background:transparent;color:#F2EFE7;cursor:pointer;-webkit-tap-highlight-color:transparent}
.tour-play{display:grid;place-items:center;width:80px;height:80px;flex-shrink:0;border-radius:50%;background:#F2EFE7;color:#252A25;transition:transform 180ms ease,background-color 180ms ease}
.tour-caption{font:500 12px/20px var(--body);letter-spacing:.06em;white-space:nowrap;padding:4px 10px;border-radius:3px;background:#252A25;color:#F2EFE7}
@media(hover:hover) and (pointer:fine){.tour-launch:hover .tour-play{transform:scale(1.05);background:#fffdf6}}
.tour-launch:focus-visible{outline:none}.tour-launch:focus-visible .tour-play{outline:2px solid #252A25;outline-offset:4px;box-shadow:0 0 0 7px #F2EFE7}
.tour-launch:active .tour-play{transform:scale(.96)}
@media(prefers-reduced-motion:reduce){.tour-play{transition:none}.tour-launch:hover .tour-play,.tour-launch:active .tour-play{transform:none}}
@media(forced-colors:active){.tour-play{border:2px solid ButtonText}.tour-launch:focus-visible{outline:2px solid Highlight;outline-offset:4px}}

.experience-detail{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-bottom:40px}.experience-detail figure{aspect-ratio:660/590}.experience-detail .body-copy{padding-right:24px}.additional-images{padding-top:0}.image-placeholder{display:flex;align-items:center;justify-content:center;background:rgba(37,42,37,.05);border:1px solid rgba(37,42,37,.16);color:var(--forest)}.image-placeholder span{font:500 13px/20px var(--body);letter-spacing:.78px}
@media(max-width:760px){.project-media{padding:0 24px 40px}.experience-detail{grid-template-columns:1fr;gap:32px;margin-bottom:8px}.experience-detail .body-copy{padding-right:0}.tour-window{aspect-ratio:4/3}}
/* Latest Figma project compositions — scoped to project pages. */
.project-opening .project-heading{margin-top:auto}
.project-image img.brochure-hero{width:100%;height:75.9%;left:-.01%;top:15.84%}
body[data-page="new-york-city"] .project-opening .project-image img{position:absolute;width:115.81%;height:160%;left:.04%;top:-.06%;max-width:none}
.figma-gallery-row{display:grid;grid-template-columns:var(--columns);gap:24px;aspect-ratio:var(--row-ratio);min-width:0}
.figma-image{position:relative;min-width:0;height:100%;overflow:hidden}
.figma-image img{position:absolute;inset:0}
.figma-image img.figma-crop{inset:auto;max-width:none}
.experience-detail{margin-bottom:0}.experience-detail figure{aspect-ratio:648/590}.experience-detail .body-copy{padding-right:0}
@media(max-width:760px){.figma-gallery-row{grid-template-columns:1fr;aspect-ratio:auto}.figma-image{height:auto;aspect-ratio:var(--image-ratio)}}
/* About and Contact — current Figma compositions. */
body[data-page="future-mirear"] .project-opening .project-image img{position:absolute;max-width:none;width:164%;height:101.16%;left:-33.24%;top:-.55%}
.about-intro{height:182px;min-height:0;padding:49px var(--section-gutter) 47px;display:block}
.about-intro h1{font:500 88px/86px var(--display);letter-spacing:1.76px}
.about-bio{min-height:764px;grid-template-columns:415px minmax(0,1fr);gap:100px;padding:64px var(--section-gutter) 66px}
.portrait-frame{position:relative;width:415px;height:634px;overflow:hidden}
.portrait-frame .portrait{position:absolute;max-width:none;width:100%;height:116.31%;top:-12.89%;left:.1%;object-fit:cover;aspect-ratio:auto}
.about-copy{gap:48px}.about-copy h2{font:400 60px/62px var(--display);letter-spacing:1.2px}
.about-copy .body-copy{font-size:22px;line-height:31px;letter-spacing:.22px;max-width:700px}
.about-copy .body-copy p+p{margin-top:31px}
body[data-page="about"] .contact,body[data-page="work"] .contact{min-height:400px;height:auto;padding-bottom:49px}
.contact-heading{height:183px;padding:29px var(--section-gutter) 0}
.contact-heading h1{font:500 88px/88px var(--display);letter-spacing:-1.76px}
.contact-content{background:var(--forest);color:var(--cream);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:88px;padding:80px var(--section-gutter) 60px;min-height:656px}
.contact-details{display:flex;flex-direction:column;justify-content:space-between;min-height:516px}
.contact-details h2{font:500 72px/72px var(--display);letter-spacing:-1.44px;margin-top:28px}
.contact-direct{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:28px}
.contact-direct a{display:inline-flex;align-items:center;gap:6px;font:400 17px/24px var(--body)}
.contact-direct .contact-mail{font-size:22px;line-height:30px}
.contact-direct img,.contact-send img{flex:none}
.contact-place{font:500 12px/20px var(--body);letter-spacing:.72px}
.contact-form{min-width:0}.contact-fields{display:flex;flex-direction:column;gap:24px;margin-top:28px}
.contact-fields label{display:flex;flex-direction:column;gap:8px;font:400 16px/22px var(--body)}
.contact-fields input,.contact-fields textarea{width:100%;min-width:0;border:1px solid rgba(242,239,231,.35);background:transparent;border-radius:0;color:var(--cream);padding:15px 16px;font:400 17px/24px var(--body);height:56px}
.contact-fields textarea{height:136px;resize:vertical}
.contact-fields input::placeholder,.contact-fields textarea::placeholder{color:var(--cream);opacity:.6}
.contact-fields input:focus-visible,.contact-fields textarea:focus-visible{outline:1px solid var(--cream);outline-offset:2px}
.contact-send{display:flex;align-items:center;justify-content:space-between;width:216px;min-height:58px;padding:18px 20px;margin-top:24px;border:0;border-radius:0;background:var(--cream);color:var(--forest);font:400 16px/22px var(--body);cursor:pointer}
.contact-send:hover{background:#fffaf0}.contact-status{font:400 14px/22px var(--body);margin-top:16px;max-width:580px}
@media(min-width:761px) and (max-width:1200px){.about-bio{grid-template-columns:34% minmax(0,1fr);gap:6vw;min-height:0}.portrait-frame{width:100%;height:auto;aspect-ratio:415/634}.about-copy{gap:40px}.about-copy .body-copy{font-size:21px;line-height:30px}.contact-content{gap:6vw}.contact-details h2{font-size:60px;line-height:1}}
@media(max-width:760px){.about-intro{height:auto;min-height:180px;padding:42px 24px}.about-intro h1,.contact-heading h1{font-size:56px;line-height:1;letter-spacing:-1px}.about-bio{grid-template-columns:1fr;gap:40px;min-height:0;padding:40px 24px 48px}.portrait-frame{width:100%;height:auto;aspect-ratio:415/634;max-width:415px}.about-copy{gap:28px}.about-copy h2{font-size:44px;line-height:1.08;letter-spacing:.5px}.about-copy .body-copy{font-size:18px;line-height:27px;letter-spacing:0}.about-copy .body-copy p+p{margin-top:27px}.contact-heading{height:180px;padding:42px 24px}.contact-content{grid-template-columns:1fr;gap:52px;padding:40px 24px 48px}.contact-details{min-height:0;gap:36px}.contact-details h2{margin-top:0;font-size:54px;line-height:1;letter-spacing:-1px}.contact-direct{margin-top:32px}.contact-direct .contact-mail{font-size:19px}.contact-place{font-size:10px;letter-spacing:.4px}.contact-fields input,.contact-fields textarea{font-size:16px}.contact-form{min-height:0}}

/* Final finish audit — values recorded in Figma, 19 Oct 2026. */
/* Match the Casa do Canto Vimeo's native 392:240 proportions without cropping. */
body[data-page="casa-do-canto"] .media-window{aspect-ratio:392/240;background:transparent}
@media(min-width:1101px){.work-intro{height:336px;padding-bottom:54px}}
@media(min-width:761px){.work-gallery{padding-top:48px;padding-bottom:48px}}
@media(max-width:760px){.contact-place{font-size:12px;line-height:20px}}
@media(max-width:360px){.site-nav{font-size:12px}.work-intro h1{font-size:44px}}

/* Approved 390 px Figma layouts. Desktop rules and motion stay unchanged. */
@media(max-width:760px){
 :root{--site-header-height:100px}
 .site-header{height:100px;padding:16px 24px 8px;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px}
 .brand{font-size:18px;line-height:24px;letter-spacing:.36px}
 .site-nav{width:100%;height:44px;display:flex;justify-content:space-between;gap:0;font-size:14px;line-height:20px}
 .site-nav a{display:flex;align-items:center;width:90px;flex:0 0 90px;height:44px;padding:0}
 .opening-scroll,.opening-scroll .opening{height:auto;min-height:0;position:relative;top:auto}
 .opening{padding:24px 24px 32px;align-items:stretch;gap:24px}
 .opening-disciplines{width:100%;text-align:left;font-size:11px;line-height:16px;letter-spacing:.66px}
 .opening-image{width:100%;height:280px;aspect-ratio:auto;margin:0;overflow:hidden;clip-path:none;transform:none}
 .opening-image img{position:static;width:100%;height:100%;max-width:100%;object-fit:cover;transform:none}
 .opening-title{width:100%;margin:0;text-align:left;font-size:40px;line-height:40px;letter-spacing:-.8px}
 .opening-title span{display:inline;white-space:normal}.opening-title span:not(:last-child)::after{content:' '}
 .practice{padding:32px 24px 36px;min-height:0;gap:20px}
 .practice-label{font-size:11px;line-height:16px;letter-spacing:.66px}.practice-description{font-size:17px;line-height:25px}
 .work-scroll{height:auto;min-height:0;overflow:visible}.work-stage{display:none}
 .work-mobile{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 .work-mobile::-webkit-scrollbar{display:none}
 .work-mobile .project-slide{flex:0 0 100%;width:100%;height:590px;scroll-snap-align:start;scroll-snap-stop:always;min-width:0}
 .work-mobile .project-info{order:0;flex:0 0 142px;height:142px;min-height:0;width:100%;padding:28px 24px 24px;gap:0}
 .work-mobile .project-heading{font-size:36px;line-height:38px;letter-spacing:-.72px;margin-top:0;width:100%}
 .work-mobile .project-image{order:1;flex:0 0 448px;width:100%;height:448px;max-height:none}
 .work-mobile img.sp-home{position:static;inset:auto;width:100%;height:100%;object-fit:cover}
 .work-intro{min-height:0;height:auto;padding:32px 24px;gap:24px}.work-intro h1{font-size:40px;line-height:42px;letter-spacing:-.8px}
 .categories{font-size:11px;line-height:20px;letter-spacing:.66px}
 .work-gallery{padding:24px;gap:32px}.work-card{min-height:0}.work-cover{height:300px;aspect-ratio:auto}
 .work-card h2{font-size:26px;line-height:29px;letter-spacing:-.26px;margin-top:10px}.work-card p{font-size:12px;line-height:18px;margin-top:10px}
 .work-cover img.work-brochure{width:117.03%;height:136%;left:-8.48%;top:-23.11%}
 .about-intro,.contact-heading{height:auto;min-height:0;padding:32px 24px}.about-intro h1,.contact-heading h1{font-size:44px;line-height:46px}
 .about-intro h1{letter-spacing:.88px}.contact-heading h1{letter-spacing:-.88px}
 .about-bio{padding:24px 24px 40px;gap:32px;min-height:0}.portrait-frame{width:100%;height:440px;max-width:none;aspect-ratio:auto}
 .portrait-frame .portrait{position:static;width:100%;height:100%;max-width:100%;object-fit:cover}
 .about-copy{gap:24px}.about-copy h2{font-size:36px;line-height:40px;letter-spacing:.72px}
 .about-copy .body-copy,.body-copy{font-size:17px;line-height:26px}.about-copy .body-copy{letter-spacing:.22px}
 .body-copy p+p,.about-copy .body-copy p+p{margin-top:26px}
 body[data-page="about"] .contact,body[data-page="work"] .contact{min-height:0;height:auto;padding:32px 24px;gap:18px}
 .contact-title{font-size:36px;line-height:38px;letter-spacing:-.72px}.contact-label,.contact-location{font-size:11px;line-height:16px;letter-spacing:.66px}
 .contact-email{font-size:17px;line-height:25px}.contact-social{font-size:16px;line-height:25px}
 .contact-content{padding:32px 24px 40px;gap:36px;min-height:0}.contact-details{gap:24px;min-height:0}
 .contact-details h2{font-size:40px;line-height:42px;letter-spacing:-.8px;margin:0}
 .contact-direct{margin-top:24px;gap:4px}.contact-direct a,.contact-direct .contact-mail{font-size:16px;line-height:24px;min-height:44px}
 .contact-mail img{margin-left:auto}.contact-mail{width:272px;max-width:100%}.contact-place{font-size:11px;line-height:16px;letter-spacing:.66px}
 .contact-form>.label{font-size:11px;line-height:16px;letter-spacing:.66px}.contact-fields{margin-top:24px;gap:20px}
 .contact-fields label{font-size:13px;line-height:20px}.contact-fields input,.contact-fields textarea{height:52px;padding:13px;font-size:16px;line-height:24px}
 .contact-fields textarea{height:140px}.contact-send{width:100%;min-height:52px;padding:15px 16px;font-size:14px;line-height:22px;margin-top:24px}
 .project-opening .project-info{order:0;min-height:0;height:auto;padding:32px 24px;gap:0;flex:auto}.project-opening .project-heading{font-size:40px;line-height:42px;letter-spacing:-.8px;margin:0}
 .project-opening .project-image{order:1;height:430px;max-height:none;flex:auto}
 body[data-page] .project-opening .project-image img{position:static;inset:auto;width:100%;height:100%;max-width:100%;object-fit:cover}
 body[data-page="interactive-brochure"] .project-opening .project-image{height:300px}
 body[data-page="interactive-brochure"] .project-opening .project-image img{object-fit:contain}
 .project-story{padding:32px 24px 36px;gap:24px}.project-story aside{font-size:12px;line-height:18px;gap:24px}
 .project-media{padding:0 0 24px}.tour-window{aspect-ratio:1}.project-gallery{padding:16px 24px 32px;gap:20px}
 .figma-gallery-row{display:flex;flex-direction:column;gap:20px;aspect-ratio:auto}.figma-image{height:auto;aspect-ratio:auto}
 .figma-image img,.figma-image img.figma-crop{position:static;width:100%!important;height:auto!important;min-height:190px;max-height:470px;inset:auto!important;object-fit:cover}
 .figma-image.contain img{object-fit:contain}.experience-detail{gap:20px}.experience-detail figure{aspect-ratio:342/198}
 .project-gallery .gallery-wide{aspect-ratio:342/191}.next-project{min-height:0;padding:32px 24px;gap:18px}
 .next-project .label{font-size:11px;line-height:16px;letter-spacing:.66px}.next-title{font-size:32px;line-height:36px;letter-spacing:-.448px}
 .next-project>a:last-child{font-size:16px;line-height:24px}.next-title .mobile-tail{white-space:nowrap}
 .next-title .mobile-break{display:block}
}
