/* Device-first interactions and layouts; desktop art direction remains intact. */
html{scroll-padding-top:90px}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}img,video{max-width:100%}input,select,textarea{scroll-margin-top:110px}button,a{touch-action:manipulation}.mobile-nav-open{overflow:hidden;overscroll-behavior:none}
@media(max-width:1100px){
 #header,#header.header-split{height:72px}#header .header-inner{height:72px;width:calc(100% - 36px);display:flex;justify-content:space-between;align-items:center}#header .logo,#header.header-split .logo{position:static;transform:none;min-width:0;margin:0}#header .logo .brand-official{width:190px;height:45px}#header .header-cta{display:none}#header .nav-toggle{display:grid;place-items:center;width:44px;height:44px;z-index:110}#header .nav-toggle span{display:block}
 #header #navigation{display:none;position:fixed;inset:72px 0 0;width:100%;height:calc(100dvh - 72px);max-height:none;overflow-y:auto;overscroll-behavior:contain;background:#fafbf7;box-sizing:border-box;padding:20px max(22px,5vw) calc(28px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;justify-content:flex-start;gap:4px;transform:none;z-index:108}
 #header #navigation.open{display:flex}#header #navigation>a,#header .projects-menu-trigger{min-height:48px;font-size:15px;display:flex;align-items:center;padding:10px 0;justify-content:space-between}#header #navigation>.projects-nav-item{width:100%;margin:0}#header .mobile-talk{min-height:46px;margin-top:15px;font-size:14px;border-radius:24px}
 #header .projects-mega{position:static;margin:0;padding:8px 0 0;max-height:none;overflow:visible;box-shadow:none;background:transparent;border-bottom:0}#header .mega-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;padding:12px 0}#header .mega-showcase{display:none}#header .mega-topline{padding:0 0 8px;min-height:44px;justify-content:flex-end}#header .mega-introduction,#header .mega-description,#header .mega-reel{display:none}#header .mega-close{height:44px;width:44px;margin-left:auto}#header .mega-sectors{padding:5px 8px;border:0;min-width:0}#header .mega-sector{font-size:13px;min-height:48px;line-height:1.4}#header .mega-sector-page{width:40px;height:44px;flex-shrink:0}#header .mega-project-links{max-height:none;overflow:visible;padding:0}#header .mega-project-links>a{min-height:64px;font-size:14px}#header .mega-project-links img{width:62px;height:48px}#header .mega-project-label{font-size:13px}#header .mega-project-place{font-size:10px}#header .mega-bottom a{display:flex;align-items:center;min-height:44px;font-size:14px}#header .mega-group-head{flex-wrap:wrap}#header .mega-explore{min-height:44px;display:inline-flex;align-items:center;font-size:12px}
 #navigation:has(#projectsMega:not([hidden]))>a,#navigation:has(#projectsMega:not([hidden]))>.mobile-talk{display:none!important}
}
@media(max-width:900px){
 .landmark-scroll{height:auto!important;min-height:0;scroll-margin-top:72px}.landmark-sticky{position:relative;top:auto;height:auto;min-height:0;padding-top:45px;overflow:hidden}.landmark-slides{position:relative;inset:auto}.landmark-slide{position:relative;inset:auto;display:none;opacity:1;pointer-events:auto;min-height:0;transform:none}.landmark-slide.active{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;padding:24px;gap:18px}.landmark-copy{position:relative;top:auto;left:auto;width:100%;max-width:none}.landmark-copy h2{max-width:100%;margin:14px 0}.landmark-copy p{max-width:100%;font-size:14px;line-height:1.7}.landmark-copy .eyebrow,.landmark-sector{font-size:10px}.landmark-building{position:relative;inset:auto;width:100%;height:360px;min-width:0}.landmark-building img{transform:none!important}.landmark-meta,.landmark-location,.landmark-capabilities{display:none}.landmark-controls{position:relative;inset:auto;gap:12px;padding:14px 20px;min-height:0;display:flex;flex-wrap:wrap}.landmark-step-controls{width:100%;justify-content:center}.landmark-step-controls button{width:44px;height:44px}.landmark-step-controls>span{font-size:12px}.landmark-choices{width:100%;flex-basis:100%;max-width:none;scroll-snap-type:x proximity}.landmark-choices button{flex:0 0 150px;min-height:54px;font-size:12px;scroll-snap-align:center}.landmark-choices small{font-size:9px}.landmark-heading{top:16px;font-size:9px}.landmark-heading>span{display:none}.landmark-link{width:auto;min-height:44px;display:inline-flex;align-items:center;font-size:11px;padding:12px 18px}.landmark-halo{top:35%;opacity:.4}
 .people-grid{grid-template-columns:minmax(0,1fr);max-width:700px;margin-inline:auto}.people-card{grid-template-columns:34% minmax(0,1fr)}.people-card p{font-size:14px}.people-role{font-size:9px}
}
@media(max-width:700px){
 :root{--section-title-size:clamp(28px,8vw,36px)}.site-container{width:calc(100% - 36px)}.page-intro{padding-top:112px;padding-bottom:30px}.page-intro p,.body-copy{font-size:15px;line-height:1.75}.page-intro h1{overflow-wrap:normal;word-break:normal}.section{padding-block:60px}.section-heading{gap:18px;margin-bottom:26px}.eyebrow{font-size:10px;line-height:1.6;letter-spacing:.16em}.hero.hero-cinema .hero-copy{padding-top:32px;padding-bottom:24px}.hero.hero-cinema h1.hero-title{font-size:clamp(39px,11vw,52px)!important;line-height:1.08}.hero.hero-cinema .hero-desc{font-size:16px;line-height:1.65;max-width:340px;margin-top:23px}.hero.hero-cinema .hero-copy>.eyebrow{font-size:9px;letter-spacing:.14em;white-space:normal;line-height:1.6}.hero.hero-cinema .hero-actions{gap:10px}.hero.hero-cinema .hero-actions a{font-size:10px;letter-spacing:.09em;min-height:46px;flex:1;justify-content:center;gap:10px;padding:10px 12px}.hero-cinema .hero-bottom{padding-bottom:calc(16px + env(safe-area-inset-bottom));min-height:150px}.hero-cinema .hero-controls{grid-template-rows:54px 44px;gap:10px}.hero-cinema .hero-controls .hero-film-choice{height:54px;padding:7px}.hero-cinema .hero-film-choice span:first-child{font-size:9px}.hero-cinema .hero-film-choice span:last-child{font-size:10px;white-space:normal;line-height:1.3}.hero-cinema #filmToggle{height:44px;font-size:11px;width:130px}.hero-cinema .film-project{font-size:10px;min-height:44px;display:flex;align-items:center;justify-content:flex-end;white-space:normal;line-height:1.4;text-align:right}
 .projects-mega .mega-layout{grid-template-columns:minmax(0,1fr)!important;gap:16px}#header .mega-sectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 10px}#header .mega-sector{font-size:11px;gap:7px}#header .mega-count{font-size:11px}#header .mega-sector-page{width:32px}#header .mega-group h2{font-size:24px}#header .mega-topline{padding-bottom:4px}
 .directory-tabs,.portfolio-filters{display:flex;flex-wrap:nowrap!important;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;max-width:100%;gap:8px;padding:3px 0 10px}.directory-tabs a,.portfolio-filters button{flex-shrink:0;min-height:44px;display:inline-flex;align-items:center;scroll-snap-align:start;font-size:12px;padding:10px 13px;white-space:nowrap}.directory-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;margin-bottom:24px}.directory-tools .search-box{grid-column:1/-1;max-width:none;min-width:0;width:100%}.directory-tools label{min-width:0}.directory-tools input,.directory-tools select{width:100%;min-width:0;max-width:100%;font-size:16px;min-height:46px}.directory-tools #resultCount{font-size:12px;padding-bottom:14px;white-space:nowrap}.portfolio-grid{gap:24px}.home-portfolio-card,.portfolio-card{min-width:0}.card-caption{padding-top:15px}.card-caption p{font-size:12px;line-height:1.6;overflow-wrap:anywhere}.card-caption small{font-size:10px}.card-arrow{width:44px;height:44px}.home-portfolio-more button{min-height:46px;font-size:12px}.portfolio-filter-meta{gap:12px;font-size:12px}.portfolio-filter-meta p{font-size:12px}
 .landmark-slide.active{display:flex;flex-direction:column;align-items:stretch;padding:22px 20px 6px;gap:12px}.landmark-copy h2{font-size:clamp(29px,8vw,38px)!important;line-height:1.1}.landmark-copy p{font-size:14px;margin:14px 0;max-width:100%}.landmark-building{height:280px}.landmark-choices{scrollbar-width:thin}.landmark-copy .landmark-link{font-size:11px;min-height:44px}.category-showcase-head{padding-top:112px}.category-project-index a{min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:12px 0}
 .about-copy{padding-right:0}.about-copy p{font-size:15px;line-height:1.8;max-width:none}.about-grid{gap:20px}.about-photo{height:auto;min-height:0;padding:12px 20px 38px}.about-photo img{height:auto;max-height:420px;object-fit:contain!important}.about-photo .photo-tag{position:relative;bottom:auto;left:auto;margin-top:-14px;max-width:230px;padding:13px 16px}.metric{padding:24px 14px;min-height:150px}.metric-label{font-size:10px}.metrics-heading{padding-bottom:24px}.metrics-heading p{font-size:14px;max-width:100%}.metric-no{font-size:50px}.metric-no.smaller{font-size:27px}.metrics{padding-block:30px 48px}
 .people-card{border-radius:18px}.people-card p{font-size:14px;line-height:1.65}.people-card-copy{padding:22px 18px 58px}.people-role{font-size:9px;letter-spacing:.12em}.people-card-link,.people-reel{width:44px;height:44px}.people-invitation-copy p{font-size:15px}.people-enquiry{min-height:46px;font-size:11px;letter-spacing:.12em}.people-connect{padding-block:45px 60px}.people-heading .line-link{min-height:44px;font-size:11px}.people-architecture{opacity:.16}
 .process-tile p,.principle-card p{font-size:14px;line-height:1.65}.process-tile{min-height:190px}.principle-card{min-width:260px}.principle-explore>span,.principles-prev,.principles-next,.explorer-prev,.explorer-next{min-width:44px;min-height:44px}.principles-autoplay,.associate-marquee-toggle{min-height:44px;min-width:44px}.explorer-copy{min-width:0}.explorer-copy p{font-size:14px}.process-explorer{overflow:hidden}.associate-asset{height:76px!important}.associate>span{font-size:11px!important}.associate-window{touch-action:pan-y}
 .presence-summary{flex-wrap:wrap;gap:12px;padding:16px 10px}.presence-summary>span{flex:1 1 40%;gap:12px;min-width:0;padding:0 10px}.presence-summary>span:last-child{flex-basis:100%;justify-content:center;border-left:0;padding-top:10px;border-top:1px solid #b7b8ae}.presence-summary>span>span{font-size:9px}.presence-summary b{font-size:20px}.presence-summary>span:last-child b{font-size:12px}.presence-section .location-card p{font-size:14px;line-height:1.7}.presence-section .location-buttons button,.global-tabs button{min-height:44px}.presence-section .location-buttons{flex-wrap:wrap}.presence-map-top>span{font-size:10px;max-width:130px}.atlas-zoom button{width:44px;height:44px}.presence-map-foot{font-size:10px}.location-expand{min-height:44px;font-size:12px}.location-project-list a{min-height:44px;font-size:13px}
 .project-story{padding-top:36px;gap:25px}.project-story>.body-copy{font-size:15px;line-height:1.8}.project-facts{gap:18px}.project-facts dd{font-size:14px;overflow-wrap:anywhere}.project-facts dt{font-size:10px}.gallery-item>span{font-size:11px;min-height:44px;display:flex;align-items:center}.project-video-actions :is(a,button){min-height:44px;font-size:10px;display:inline-flex;align-items:center;justify-content:center}.project-video-hero>span{bottom:65px;font-size:9px}.project-film video{min-height:0;aspect-ratio:16/9;object-fit:contain}.project-film-library summary{min-height:48px;font-size:14px}.details-reveal-toggle{min-height:46px;font-size:13px}.project-details-reveal{min-width:0}.details-reveal-intro p{font-size:14px}.project-detail-panel{min-width:0}.lightbox{padding:58px 12px calc(54px + env(safe-area-inset-bottom))}.lightbox[open]{grid-template-columns:44px minmax(0,1fr) 44px;gap:4px}.lightbox button{width:44px;height:44px}.lightbox figure{grid-column:1/-1;grid-row:1}.lightbox-prev,.lightbox-next{grid-row:1;z-index:2;background:#173b32bf!important}.lightbox-prev{grid-column:1}.lightbox-next{grid-column:3}.lightbox img{max-height:calc(100dvh - 160px)}.lightbox figcaption{font-size:12px}.lightbox-close{right:14px;top:8px}
 .enquiry-layout{grid-template-columns:minmax(0,1fr);min-width:0;gap:32px}.enquiry-layout>div,.enquiry-layout form,.enquiry-layout label,.application-fields,.application-fields label{min-width:0;max-width:100%}.enquiry-layout form{grid-template-columns:minmax(0,1fr);gap:18px}.enquiry-layout .span-all{grid-column:auto}.enquiry-layout input,.enquiry-layout select,.enquiry-layout textarea,.talk-field input,.talk-field textarea,.talk-field select,.application-fields input,.application-fields select,.application-fields textarea{font-size:16px;max-width:100%;min-width:0;width:100%;box-sizing:border-box;min-height:46px}.enquiry-layout label,.talk-field{font-size:14px}.enquiry-layout button{min-height:48px;width:100%;font-size:12px}.talk-dialog{max-height:calc(100dvh - 20px - env(safe-area-inset-bottom));width:calc(100% - 20px)}.talk-choice span{min-height:46px;font-size:12px}.talk-close{min-width:44px;min-height:44px}.talk-next,.talk-back{min-height:46px;font-size:13px}.talk-form-footer{gap:10px}.talk-field textarea{min-height:100px}
 .practice-pad{padding:48px 20px}.practice-editorial p{font-size:15px;line-height:1.75}.practice-opening-stage{min-height:0;height:650px;max-height:calc(100svh - 72px);padding:50px 14px 95px}.practice-bento-item figcaption{font-size:10px;padding-inline:8px}.practice-opening-top{font-size:8px;left:16px;right:16px;line-height:1.5;gap:15px}.practice-opening-caption{left:18px;right:18px}.practice-opening-caption a{min-height:44px;font-size:10px}.practice-opening-caption>span{font-size:22px}.practice-smallprint{font-size:10px}.practice-solid,.practice-outline{min-height:46px;font-size:12px}.practice-impact{gap:25px}.practice-impact p{font-size:12px}.practice-leader p{font-size:15px}.practice-leader-role{font-size:10px}
 .career-hero-copy{padding-inline:20px}.career-hero-copy p,.career-benefits p{font-size:15px;line-height:1.75}.career-primary,.career-secondary{min-height:46px;font-size:11px}.career-ribbon-group>span{font-size:12px}.career-ribbon-pause{width:44px;height:44px;bottom:-12px;right:16px}.career-ribbon-wrap{padding-bottom:34px}.career-benefits{gap:18px}.career-benefits article{padding:24px}.career-application-copy{padding:24px 20px}.career-apply-form{min-width:0}.career-apply-form :is(input,select,textarea){font-size:16px;min-width:0;max-width:100%}.career-discipline{gap:8px}.career-discipline label{min-height:44px}.career-application{scroll-margin-top:85px}
 .contact{padding:54px 0}.contact-grid{gap:28px}.contact-right{max-width:none}.contact-right p{font-size:15px}.contact .button-primary{min-height:46px;font-size:12px}.contact-standfirst{font-size:10px;margin-bottom:20px}.footer-col a{font-size:14px;min-height:44px;display:flex;align-items:center;margin:0;line-height:1.45}.footer-col p{font-size:13px;line-height:1.7}.footer-col h4{font-size:11px}.footer-brand p{font-size:13px;max-width:100%}.footer-featured-grid a{min-height:64px}.footer-featured-grid strong{font-size:12px}.footer-featured-grid small{font-size:10px;letter-spacing:.02em}.footer-bottom{gap:12px}.footer-bottom a{min-height:44px;display:flex;align-items:center}.footer-big{margin-top:20px}.return-top{width:44px;height:44px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom))}
}
@media(max-width:360px){#header .logo .brand-official{width:166px}.hero.hero-cinema .hero-actions{flex-direction:column;align-items:stretch}.hero.hero-cinema .hero-actions a{flex:auto}.hero.hero-cinema h1.hero-title{font-size:38px!important}.people-card{grid-template-columns:minmax(0,1fr)}.people-portrait{height:250px;border-radius:0}.people-portrait img{height:100%;min-height:0;object-position:center 27%}.people-card-copy{padding:23px 22px 58px}.people-actions{gap:12px}.presence-summary>span{padding-inline:5px}.project-video-actions{flex-wrap:wrap}.project-video-actions a{flex:1}.project-video-actions button{flex:0 0 auto}}
@media(hover:none),(pointer:coarse){.home-portfolio-card,.portfolio-card,.people-card{transform:none!important;translate:none!important}.project-proximity-surface{width:100%!important;transform:none!important}.portfolio-art img,.people-card:hover img{transform:none!important}.card-arrow{opacity:1}.details-reveal-hint{display:none}}
@media(max-height:500px) and (orientation:landscape){.hero.hero-cinema{min-height:670px}.practice-opening-stage{height:480px;max-height:none}.talk-dialog{max-height:94dvh}.projects-mega{max-height:none}}
@media(max-width:480px){.people-card{grid-template-columns:minmax(0,1fr)}.people-portrait{height:260px;border-radius:0 0 26px 0}.people-portrait img{height:100%;min-height:0;object-position:center 30%}.people-card-copy{padding:23px 22px 58px}.people-card p{font-size:15px}.people-role{font-size:10px}.mega-project-label small{font-size:10px}}
@media(min-width:701px) and (max-width:1100px){
.page-hero p,.page-intro p,.project-narrative p,.contact-right p,.founder-copy p{font-size:15px;line-height:1.75}.directory-tabs{gap:8px}.directory-tabs a,.portfolio-filters button{min-height:44px;display:inline-flex;align-items:center;font-size:13px;padding:8px 12px}.directory-tools input,.directory-tools select{font-size:16px;min-height:46px}.directory-tools label,.directory-tools #resultCount{font-size:12px}.card-caption h3{font-size:23px!important}.card-caption p{font-size:12px;line-height:1.5}.card-caption small,.card-caption>span{font-size:11px}.card-arrow{width:44px;height:44px}
}
