/* Page system measured against the reference at 1280px / 390px. */
:root{--ease:cubic-bezier(.19,1,.22,1)}html{scroll-behavior:auto}.brand{width:56px;height:44px;overflow:hidden}.brand img{border-radius:0;object-fit:contain;transform:scale(1.42)}header{top:34px}.navigation #menu-btn{border-radius:2px}.navigation.open{max-height:calc(100svh - 32px)}#menu>a{padding:17px 0}.open #menu{max-height:900px}#menu a[aria-current=page]{opacity:.6}.language-switch{right:160px;top:46px}.mobile-brand{object-fit:contain;filter:brightness(0) invert(1);border-radius:0!important;transform:scale(1.4)}.footer-upper .brand img{filter:brightness(0) invert(1)}#intro-wipe{animation:none;transition:clip-path .65s cubic-bezier(.76,0,.24,1);clip-path:inset(0)}#intro-wipe img{width:100px;filter:brightness(0) invert(1);transition:transform .7s cubic-bezier(.76,0,.24,1),opacity .4s}#intro-wipe.done{clip-path:inset(0 0 100%)}#intro-wipe.done img{transform:translateY(-120px) scale(.5);opacity:0}#route-wipe{transition:transform .55s cubic-bezier(.76,0,.24,1);transform:translateY(100%)}#route-wipe.cover{animation:none;transform:translateY(0)}#route-wipe.depart{transform:translateY(-100%)}
.editorial-intro{padding-top:110px}.page-intro{padding-top:180px}.editorial-intro h1,.editorial-intro h2{font-size:46px;line-height:1.16;letter-spacing:-.055em;max-width:870px}.editorial-intro .divider{margin:32px 0 28px}.editorial-intro .intro-grid{grid-template-columns:43% 49%}.editorial-intro .body-copy{font-size:18px;line-height:1.45}.concept-note{font-size:12px;line-height:1.6;color:#777;margin-top:26px;max-width:650px}.editorial-media{margin:100px var(--gutter) 0}.editorial-media .media-crop{aspect-ratio:1.89;position:relative;overflow:hidden}.editorial-media img{height:120%;width:100%;object-fit:cover;position:absolute;top:-10%;will-change:transform}.editorial-media figcaption{font-size:12px;margin-top:12px}.editorial-media.centered{width:48%;margin-inline:auto}.editorial-media.centered .media-crop{aspect-ratio:.84}.triple{display:grid;grid-template-columns:repeat(3,1fr);gap:3.9vw;padding-top:120px;padding-bottom:100px;align-items:start;overflow:visible}.triple .editorial-media{width:100%;margin:0}.triple .media-crop{aspect-ratio:.64}.triple .editorial-media:nth-child(2){margin-top:80px}.triple .editorial-media:nth-child(3){margin-top:160px}.triple figcaption{display:none}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 4vw;margin-top:90px}.projects-grid .wide-card{grid-column:1/-1;aspect-ratio:1.986}.project-card{position:relative;aspect-ratio:.836;overflow:hidden}.card-media{position:absolute;inset:0;overflow:hidden}.card-media img{height:120%;width:100%;position:absolute;top:-10%;object-fit:cover;will-change:transform}.project-label{top:50%;bottom:auto;inset-inline:22px;transform:translateY(-50%);pointer-events:none;opacity:0;transition:opacity .3s}.project-label span:first-child,.project-label span:last-child{transform:none!important}.project-card:hover .project-label{opacity:1}.project-card:after{pointer-events:none}.next-project{margin-top:65px}.next-project .project-card{aspect-ratio:1.986}.project-single .project-card{aspect-ratio:5/6}.project-card>img{height:120%;position:absolute;top:-10%;width:100%;object-fit:cover}.project-layout .project-card{display:block}.project-layout .project-right .project-card{aspect-ratio:.65}.footer-project .project-card{height:180px;aspect-ratio:auto}.footer-project .project-label{opacity:1;top:50%!important;font-size:15px}.footer-project>a{overflow:hidden}.footer-word{overflow:visible}.page-cta{padding:130px 0 120px}.page-cta .underline{font-size:clamp(28px,4.5vw,64px);letter-spacing:-.04em;line-height:1.25;margin-top:22px}.material-list{margin-top:40px;font-size:15px}.detail-hero{height:100lvh}.detail-hero>img{height:120%;top:-10%;position:absolute;will-change:transform}.detail-hero h1{font-size:32px;line-height:1.2}.detail-hero-label{align-items:end}.detail-copy{padding:110px 0 0}.detail-copy h2{font-size:44px;line-height:1.2;max-width:1050px}.detail-copy .intro-grid{grid-template-columns:43% 49%}.project-specs{margin-top:28px;max-width:390px;font-size:14px}.project-specs>div{display:grid;grid-template-columns:40% 60%;padding:13px 0;border-bottom:1px solid #ddd;gap:8px}.project-specs dd{margin:0}.project-specs dt{color:#777}.feature-list{margin-top:35px}.feature-list p{border-top:1px solid #ddd;padding:20px 0;margin:0;display:flex;gap:22px;font-size:18px;line-height:1.5}.feature-list span{font-size:12px;color:#777}.image-slider{min-width:0}.slider-stage{position:relative;aspect-ratio:1.27;overflow:hidden}.gallery-slide{position:absolute;inset:0;opacity:0;pointer-events:none;width:100%;height:100%;padding:0;transform:translateX(100%);transition:transform .75s cubic-bezier(.22,.68,0,1.01),opacity .65s}.gallery-slide img{width:100%;height:100%;object-fit:cover}.gallery-slide.active{opacity:1;transform:none;pointer-events:auto}.gallery-slide.previous{transform:translateX(-100%)}.slider-controls{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-size:13px}.slider-controls button{padding:7px 0;border-bottom:1px solid}.process-list{margin-top:100px}.process-step{border-top:1px solid #ddd;padding:45px 0 60px;display:grid;grid-template-columns:43% 49%}.process-step h2{font-size:32px;margin-bottom:25px}.step-number{font-size:16px}.reveal{opacity:1;transform:none;transition:none}.reveal .word>span{transform:translateY(120%);transition:transform 1.2s cubic-bezier(.19,1,.22,1)}.reveal.visible .word>span{transform:none}.reveal-media .media-crop{clip-path:inset(100% 0 0);transition:clip-path 1.2s cubic-bezier(.19,1,.22,1)}.reveal-media.visible .media-crop{clip-path:inset(0)}.divider{transform:scaleX(0);transition:transform 1.3s cubic-bezier(.19,1,.22,1)}.divider.visible{transform:scaleX(1)}.hero .wordmark{animation:none;overflow:hidden}.hero .wordmark .logo-word{display:inline-block;transform:translateY(125%);transition:transform 1.2s cubic-bezier(.19,1,.22,1);transition-delay:calc(var(--i)*.065s)}.hero .wordmark.entered .logo-word{transform:none}.hero-media{animation:media-enter 1.1s cubic-bezier(.19,1,.22,1) .55s both}.hero-description{animation:copy-enter 1.1s cubic-bezier(.19,1,.22,1) .65s both}.hero-meta{animation:copy-enter .9s cubic-bezier(.19,1,.22,1) .8s both}.hero-media>img{height:115%;position:absolute;top:-7.5%;object-fit:cover}.gallery-words span{will-change:translate}.scroll-gallery{height:220lvh}.gallery-images{transform-origin:center}.section-intro>.underline{margin-left:42%;margin-top:30px}.hero-description{font-size:15px}.project-highlights{padding-top:110px}#cursor{font-size:18px;background:white;color:#203c89;mix-blend-mode:normal;border-radius:50%;width:70px;height:70px;display:grid;place-items:center}dialog{padding:0;border:0;max-width:94vw;max-height:94svh;background:transparent;color:white;overflow:visible}dialog::backdrop{background:#07101beF}dialog>img{width:auto;max-width:92vw;height:auto;max-height:85svh;object-fit:contain}.lightbox-close{position:absolute;right:0;top:-40px;color:white;padding:8px 0}.contact-page{min-height:85svh}html[dir=rtl] .project-specs dd{margin:0}html[dir=rtl] .editorial-intro h1,html[dir=rtl] .editorial-intro h2,html[dir=rtl] .detail-copy h2{letter-spacing:-.035em;line-height:1.55}html[dir=rtl] .project-label{direction:rtl}html[dir=rtl] .slider-controls{direction:ltr}
@keyframes media-enter{from{transform:translateY(50lvh)}to{transform:none}}@keyframes copy-enter{from{opacity:0;transform:translateY(80px)}to{opacity:1;transform:none}}
@media(max-width:1023px){.brand{width:42px;height:32px}header{top:28px}.navigation.open .mobile-brand{width:40px;height:32px}.navigation.open #menu>a{padding:15px 0}.language-switch{top:88px;right:24px}.page-intro{padding-top:180px}.editorial-intro{padding-top:85px}.editorial-intro.page-intro{padding-top:180px}.editorial-intro h1,.editorial-intro h2{font-size:34px;line-height:1.15;letter-spacing:-.04em}.editorial-intro .intro-grid>.dot{margin-bottom:28px}.editorial-intro .body-copy{font-size:16px;line-height:1.5}.editorial-media{margin-top:65px}.editorial-media .media-crop{aspect-ratio:.95}.editorial-media.centered{width:auto;margin-inline:var(--gutter)}.triple{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-top:70px;padding-bottom:0;scrollbar-width:none}.triple .editorial-media{flex:0 0 86%;margin:0!important;transform:none!important;scroll-snap-align:start}.triple .media-crop{aspect-ratio:.72}.projects-grid{grid-template-columns:1fr;gap:50px;margin-top:55px}.projects-grid .wide-card{grid-column:auto;aspect-ratio:auto}.project-card,.next-project .project-card{aspect-ratio:auto!important;overflow:visible;display:flex;flex-direction:column-reverse}.card-media{position:relative;height:auto;aspect-ratio:.84;width:100%}.project-card>img{position:static;height:auto;aspect-ratio:.84}.project-label{opacity:1;position:static;transform:none!important;display:flex;font-size:14px;margin:0 0 12px;color:var(--text)}.project-single .project-card{width:100%}.project-layout .project-card{display:flex}.project-left .project-card:nth-child(2){display:flex}.footer-project .card-media{height:230px;aspect-ratio:auto}.footer-project .project-card{height:auto}.footer-project .project-label{color:white}.footer-project>a{height:auto}.footer-upper .brand{width:52px;height:40px}.detail-hero h1{font-size:27px}.detail-hero-label{gap:15px;font-size:12px;align-items:end}.detail-copy{padding-top:80px}.detail-copy h2{font-size:30px}.detail-copy .intro-grid{display:block}.detail-copy .intro-grid>div+div{margin-top:35px}.project-specs{max-width:none;font-size:13px}.project-highlights{padding-top:80px}.image-slider{margin-top:35px}.slider-stage{aspect-ratio:.95}.process-list{margin-top:65px}.process-step{grid-template-columns:40px 1fr;gap:14px;padding:28px 0 35px}.process-step h2{font-size:27px}.page-cta{padding:85px 0}.page-cta .underline{font-size:35px}.section-intro>.underline{margin-left:0}.hero .wordmark{white-space:nowrap}.hero-media>img{height:115%}.project-label span{transform:none!important}.next-project{margin-top:45px}.material-list{font-size:14px}.feature-list p{font-size:16px}html[dir=rtl] .editorial-intro h1,html[dir=rtl] .editorial-intro h2{font-size:32px}.footer-word{margin-top:65px}.footer-bottom{align-items:start}#cursor{display:none}dialog>img{max-width:94vw}.lightbox-close{top:-45px}}
@media(prefers-reduced-motion:reduce){#intro-wipe{display:none}.hero .wordmark .logo-word,.reveal .word>span{transform:none}.reveal-media .media-crop{clip-path:none}.divider{transform:none}.hero-media,.hero-description,.hero-meta{animation:none}.gallery-images{transform:scale(1)!important}}
.hero .wordmark{animation:logo-rise .8s cubic-bezier(0,.55,.45,1) .5s both}.hero .wordmark .logo-word{transform:none;transition:none}.hero-media{animation-duration:.6s;animation-timing-function:cubic-bezier(0,.55,.45,1)}.hero-meta{animation-duration:.4s}.hero-heading{position:relative}.hero-media{z-index:1}
@keyframes logo-rise{from{transform:translateY(100lvh)}to{transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.hero .wordmark{animation:none}}
@media(max-width:1023px){.editorial-intro.page-intro{padding-top:120px}.editorial-intro h1,.editorial-intro h2{font-size:29px}.projects-grid{margin-top:80px}}

/* Unified, in-flow header: logo, language and menu never float over content. */
:root{--blue:#304154;--nav-blue:#26384b;--text:#262c31;--gutter:clamp(22px,4vw,80px)}
.site-topbar{position:relative;z-index:110;background:#fff;border-bottom:1px solid #e8eaec;min-height:120px}
.site-topbar header{position:relative;inset:auto;margin:0 var(--gutter);height:120px;width:auto;padding:0 140px 0 0;display:flex;gap:30px;align-items:center;pointer-events:auto;opacity:1!important}
.brand,.footer-upper .brand{width:142px;height:96px;overflow:hidden;flex:none}
.brand img{width:142px;height:142px;max-width:none;margin-top:-20px;object-fit:contain;border-radius:0;transform:none}
.site-topbar .language-switch{position:static;margin-left:auto;white-space:nowrap;padding:10px 0;font-size:14px}
.site-topbar .talk{display:block;border-bottom:1px solid #aeb6be;padding:8px 0;white-space:nowrap}
.navigation,.navigation.scrolled{position:absolute;top:36px;left:auto;right:var(--gutter);transform:none;width:108px;padding:0;border-radius:0;pointer-events:auto}
.navigation #menu-btn{height:48px;padding:0 12px;background:#f4f5f6;border:1px solid #e5e8eb;border-radius:3px;backdrop-filter:none;gap:15px}
.navigation #menu-btn>span{display:block;font-size:13px}.burger{width:24px;height:20px;flex:none}.burger b{width:24px;height:1px}
.navigation.open{width:min(380px,calc(100vw - 2*var(--gutter)));padding:16px;background:var(--nav-blue);max-height:calc(100svh - 48px);box-shadow:0 20px 60px #15243324}
.navigation.open #menu-btn{justify-content:space-between;background:transparent;border-color:#ffffff30;padding:0 12px}.navigation .mobile-brand,.navigation.open .mobile-brand{display:none}
.navigation.open #menu{padding:8px 12px 16px}.navigation.open #menu>a{padding:14px 0;font-size:18px}.menu-open header{opacity:1;pointer-events:auto}
.editorial-intro.page-intro{padding-top:80px}.contact-page{padding-top:80px}.hero-heading{padding-top:clamp(70px,12vh,160px)}
.hero .wordmark{animation:copy-enter .8s ease both}.hero-meta{font-size:13px;color:#5b6670}.body-copy{line-height:1.65}
html[dir=rtl] .editorial-intro h1,html[dir=rtl] .editorial-intro h2,html[dir=rtl] .detail-copy h2{letter-spacing:0;line-height:1.55}
html[dir=rtl] .body-copy{line-height:1.95;letter-spacing:0}.concept-note{color:#68737d}.detail-hero{height:calc(100svh - 120px)}
.page-cta{border-top:1px solid #e4e7e9;margin-top:80px}.footer-upper .brand{width:170px;height:115px}.footer-upper .brand img{width:170px;height:170px;margin-top:-24px}
#intro-wipe{display:none}.project-label{font-size:16px}.project-card:focus-visible{outline:2px solid var(--blue);outline-offset:5px}
@media(max-width:1023px){
.site-topbar{min-height:100px}.site-topbar header{height:100px;padding-right:64px;gap:16px}
.site-topbar .brand{width:112px;height:84px}.site-topbar .brand img{width:112px;height:112px;margin-top:-13px}
.site-topbar .language-switch{font-size:13px;padding:12px 0}.site-topbar .talk{display:none}
.navigation,.navigation.scrolled{top:28px;width:44px;right:var(--gutter);left:auto;padding:0}.navigation #menu-btn{width:44px;height:44px;padding:10px;justify-content:center}.navigation #menu-btn>span{display:none}
.navigation.open{top:18px;width:calc(100vw - 2*var(--gutter));padding:14px;max-height:calc(100svh - 36px)}.navigation.open #menu-btn{width:100%;justify-content:space-between}.navigation.open #menu-btn>span{display:block}
.editorial-intro.page-intro,.contact-page{padding-top:48px}.editorial-intro h1,.editorial-intro h2,html[dir=rtl] .editorial-intro h1,html[dir=rtl] .editorial-intro h2{font-size:30px}
.editorial-intro .divider{margin:24px 0}.editorial-intro .intro-grid>.dot{margin-bottom:20px}.editorial-intro .body-copy{font-size:16px}
.hero-heading{padding-top:58px}.hero-meta{font-size:11px;gap:16px;align-items:end}.hero .wordmark{line-height:1.35}.hero-media{height:72svh}.detail-hero{height:75svh}
.projects-grid{margin-top:36px;gap:40px}.project-label{font-size:14px;margin-bottom:14px}.page-cta{margin-top:56px;padding:56px 0}.page-cta .underline{font-size:30px}
.footer-bottom{flex-wrap:wrap;gap:14px}.footer-bottom span:last-child{max-width:none}.footer-word{margin-top:32px}
}
.site-topbar header{z-index:1}.site-topbar .navigation{z-index:2}
