/* A quiet interface around the architecture. The large hero names are the
   user's approved art direction; supporting typography uses one text family. */
:root{--motion-out:cubic-bezier(.23,1,.32,1)}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}body{font-weight:400}
.brand{font-weight:400;font-size:26px}.brand span{font-size:8px}
.desktop-nav{font-size:13px}.desktop-nav span{font-size:10px}
.hero-story p{font-weight:300;font-size:clamp(24px,2.15vw,36px);line-height:1.28;letter-spacing:-.035em}
.hero-topline{font-size:10px;letter-spacing:.12em}.hero-topline>span:last-child{font-size:10px;letter-spacing:.04em;text-transform:none}
.hero-footnote{font-size:11px}.text-link{font-size:12px;min-height:38px;align-items:center}
.residence-selector{position:relative;isolation:isolate}.selector-indicator{position:absolute;left:0;top:0;border:1px solid var(--chalk);pointer-events:none;z-index:2}
.residence-choice{opacity:.75}.residence-choice[aria-pressed=true] .thumb-wrap{border-color:transparent}.choice-label{font-size:10px}.choice-label span:last-child{display:none}
.studio{padding-top:120px;padding-bottom:90px}.studio-main{margin-top:0;grid-template-columns:1.35fr 1fr;gap:9vw}.studio h1{font-weight:300;font-size:clamp(34px,4vw,64px);line-height:1.15;letter-spacing:-.035em;max-width:14ch}.studio-copy{font-size:14px;line-height:1.85}.studio-copy p+p{margin-top:20px}.studio-caption{margin-top:62px;font-size:11px}
.collection{padding-top:95px}.section-heading{margin-bottom:40px}.section-heading h2{font-size:clamp(35px,4.5vw,68px);font-weight:300;line-height:1.1;letter-spacing:-.035em}.section-heading>p{font-size:13px;line-height:1.8}
.collection-controls{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:-36px;color:var(--muted);font-size:12px}
.view-switch{position:relative;display:flex;align-items:center;gap:5px;background:#202020;padding:4px;border-radius:3px;isolation:isolate}
.view-switch button{position:relative;padding:10px 18px;font-size:12px;min-height:42px;min-width:94px;color:#bdbdb7}
.view-switch button>span:last-child{position:relative;z-index:1}.view-switch button[aria-pressed=true]{color:#fff}.view-selection{position:absolute;inset:0;background:#454541;border-radius:2px;z-index:0}
.project-grid{column-gap:7vw;row-gap:80px}.project-card:nth-child(even){padding:0}.project-card:nth-child(odd){padding-top:115px}.project-card:nth-child(4){margin-top:-30px}.project-card:nth-child(3){margin-top:0}
.project-image-button{aspect-ratio:1.3;background:#171717;isolation:isolate}.project-card:nth-child(odd) .project-image-button{aspect-ratio:1.07}
.project-image-button img,.project-card:nth-child(even) .project-image-button img,.project-card:nth-child(3) .project-image-button img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;transition:none}
.project-open-label{position:absolute;bottom:20px;left:20px;right:20px;padding:14px 18px;background:#000d;display:flex;justify-content:space-between;align-items:center;font-size:12px;opacity:0;transform:translateY(6px);transition:opacity 200ms ease,transform 250ms var(--motion-out)}.project-image-button:focus-visible .project-open-label{opacity:1;transform:none}
.project-meta h3{font-family:Italiana,Georgia,serif;font-weight:400;font-size:38px;letter-spacing:0}.project-meta p,.project-meta>span{font-size:11px}.concept-note{font-size:11px;margin-top:65px}
.material-study{background:#000;padding:100px 0 50px}.material-photo{height:75svh;min-height:450px;max-height:950px;overflow:hidden;position:relative}.material-photo img{height:112%;width:100%;object-fit:cover;position:absolute;top:-6%}.material-caption{padding:35px var(--gutter) 0;display:flex;justify-content:space-between;gap:60px;align-items:start}.material-caption>div:first-child>p{font-size:12px;color:var(--muted);margin-bottom:18px}.material-caption h2{font-size:clamp(34px,4vw,60px);font-weight:300;letter-spacing:-.035em;line-height:1.15}.material-caption>div:last-child{max-width:370px;padding-top:32px}.material-caption>div:last-child p{font-size:14px;line-height:1.85;color:var(--muted);margin-bottom:23px}
.approach{padding-top:130px;padding-bottom:120px}.approach h2{font-size:clamp(34px,3.9vw,62px);font-weight:300;letter-spacing:-.035em;line-height:1.15}.approach-title>p:last-child{font-size:14px;line-height:1.85;max-width:340px}.approach-steps{padding-top:0}.approach summary{font-size:19px;font-weight:400;line-height:1.5}.approach details p{font-size:14px;line-height:1.85;max-width:420px}
.enquire h2{font-size:clamp(44px,5.4vw,80px);font-weight:300;letter-spacing:-.035em;line-height:1.12}.enquire-intro>p:not(.eyebrow){font-size:14px}.enquire label{font-size:12px}input,select,textarea{font-size:14px}.demo-label{font-size:11px}.form-bottom p{font-size:11px}.submit-button{font-size:12px;min-height:48px}.form-status{font-size:14px}
.site-footer{padding-top:58px;padding-bottom:32px}.footer-wordmark{text-align:left;font:400 32px/1 Manrope,sans-serif;letter-spacing:.25em;padding:0}.footer-bottom{border:0;margin-top:25px;font-size:11px}
#project-dialog[open]{animation:none}#project-dialog::backdrop{backdrop-filter:none}.dialog-close{background:#000;border:1px solid #ffffff35;backdrop-filter:none;min-height:44px;font-size:12px}
.dialog-project-head{display:flex;align-items:end;gap:40px;justify-content:space-between;padding:58px 45px 30px}.dialog-project-head h2{font:400 clamp(64px,7vw,110px)/1 Italiana,Georgia,serif}.dialog-project-head p{font-size:12px;line-height:1.8;text-align:right}.dialog-project-head p span{display:block;color:var(--muted)}
.project-gallery{padding:0 45px}.gallery-frame{position:relative;height:62svh;min-height:340px;max-height:900px;overflow:hidden;background:#151515;touch-action:pan-y}.gallery-frame:focus-visible{outline:2px solid var(--chalk);outline-offset:4px}.gallery-drag{position:absolute;inset:0;touch-action:pan-y;cursor:grab}.gallery-drag:active{cursor:grabbing}.gallery-drag img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;pointer-events:none}.gallery-hint{position:absolute;bottom:20px;left:22px;background:#000b;padding:9px 12px;color:#fff;font-size:11px;pointer-events:none}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0}.gallery-toolbar>p{font-size:12px}.gallery-toolbar>p span{color:var(--muted);margin-left:22px}.gallery-toolbar .view-switch{background:#171717}.dialog-body{padding:45px;gap:8vw}.dialog-description h3{font-size:30px;font-weight:300;line-height:1.2}.dialog-description p{font-size:14px;line-height:1.85}.project-facts>div{font-size:12px}.dialog-next{margin:0 45px 40px}.dialog-next button{font-family:Italiana,Georgia,serif;font-size:36px;min-height:48px}
@media(hover:hover) and (pointer:fine){.project-image-button:hover img{transform:none}.project-image-button:hover .project-open-label{opacity:1;transform:none}.view-switch button:hover{color:#fff}}
@media(max-width:1050px){.hero-story p{max-width:290px}.residence-choice{width:76px}.choice-label{font-size:9px}.studio-main{gap:5vw}.studio h1{font-size:42px}.dialog-project-head,.project-gallery{padding-left:30px;padding-right:30px}.dialog-body{padding:30px}.dialog-next{margin-left:30px;margin-right:30px}.approach{gap:6vw}.view-switch button{min-width:88px;padding:9px 14px}}
@media(max-width:700px){.brand{font-size:23px}.hero-story p{font-size:22px;max-width:205px}.hero-story .text-link{font-size:11px;gap:10px}.hero-topline{font-size:9px}.hero-footnote{font-size:10px}.residence-choice{width:calc((100% - 36px)/4)}.choice-label{font-size:9px}.hero-bottom{gap:26px}.studio{padding-top:76px;padding-bottom:70px}.studio-main{display:block}.studio h1{font-size:37px;margin-bottom:30px;max-width:16ch}.studio-copy{font-size:14px}.studio-caption{margin-top:40px;font-size:10px}.section-heading h2{font-size:38px}.section-heading>p{margin-top:20px}.collection-controls{margin:0 0 35px;font-size:11px}.view-switch button{font-size:11px;min-width:78px;padding:8px 12px}.project-card:nth-child(even),.project-card:nth-child(odd){padding-top:0;margin:0 0 44px!important}.project-card:nth-child(odd){margin-left:20px!important}.project-meta h3{font-size:34px}.project-meta p,.project-meta>span{font-size:10px}.project-open-label{opacity:1;transform:none;left:auto;right:12px;bottom:12px;padding:10px 12px;gap:24px;font-size:11px}.project-image-button,.project-card:nth-child(odd) .project-image-button{aspect-ratio:1.2}.material-study{padding-top:40px}.material-photo{height:60svh;min-height:350px}.material-caption{display:block;padding-top:28px}.material-caption h2{font-size:36px}.material-caption>div:last-child{padding-top:25px;max-width:100%}.material-caption>div:last-child p{font-size:14px}.approach{padding-top:65px;padding-bottom:75px}.approach h2{font-size:37px}.approach summary{font-size:18px}.approach details p{font-size:13px}.enquire h2{font-size:48px}.form-bottom{flex-direction:column;align-items:stretch}.submit-button{justify-content:space-between}.footer-bottom{font-size:10px;line-height:1.6}.footer-wordmark{font-size:28px}.dialog-project-head{padding:78px 24px 24px;gap:15px;align-items:end}.dialog-project-head h2{font-size:60px}.dialog-project-head p{font-size:10px}.project-gallery{padding:0 20px}.gallery-frame{height:43svh;min-height:270px}.gallery-toolbar>p{font-size:11px}.gallery-toolbar>p span{display:block;margin:5px 0 0}.gallery-hint{font-size:10px;left:12px;bottom:12px}.dialog-body{padding:30px 24px}.dialog-description h3{font-size:29px}.dialog-description p{font-size:14px}.dialog-next{margin:0 24px 35px}.gallery-toolbar{gap:10px}.dialog-close{top:12px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.material-photo img{transform:none!important}.gallery-hint{display:none}.selector-indicator{transition:none}.project-open-label{transform:none}}
