@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/assets/fonts/outfit-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/outfit-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/outfit-2.ttf) format('truetype');
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/outfit-3.ttf) format('truetype');
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#f8f8f5;color:#232528;font-family:Outfit,Arial,sans-serif;font-size:17px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #597fbd;outline-offset:5px}img{max-width:100%;display:block}p{margin:0 0 1.3em}h1,h2,h3{font-weight:400;line-height:1.06;letter-spacing:-.045em;margin:0}h1{font-size:clamp(48px,6.3vw,102px)}h2{font-size:clamp(36px,4.4vw,68px)}h3{font-size:28px}.wrap{width:calc(100% - 96px);max-width:1600px;margin:auto}.topbar{height:102px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dfe0dc;background:#f8f8f5;position:relative;z-index:30}.brand img{width:156px;height:auto}.nav{display:flex;gap:32px;align-items:center;font-size:15px}.nav a:hover,.footer a:hover{color:#597fbd}.nav .active{color:#597fbd}.nav-tools{display:flex;align-items:center;gap:30px}.language{font-size:14px;display:flex;gap:9px}.language a[aria-current]{color:#232528}.language a{color:#777}.pill{border:1px solid #232528;border-radius:50px;padding:12px 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:15px;transition:background .2s,color .2s}.pill:hover{background:#232528;color:white}.pill.solid{background:#232528;color:white}.pill.solid:hover{background:#597fbd;border-color:#597fbd}.arrow{font-family:Arial;font-size:21px}.eyebrow{font-size:13px;letter-spacing:.14em;text-transform:uppercase;display:block;margin-bottom:24px}.intro{padding:58px 0 45px;display:grid;grid-template-columns:1fr 270px;align-items:end;gap:60px}.intro h1 span{color:#989d9c}.intro-side{font-size:16px;line-height:1.55;max-width:270px}.intro-side .text-link{display:inline-block;margin-top:8px}.text-link{border-bottom:1px solid #8e9393;padding-bottom:5px;font-size:15px}.film-stage{height:165vh;min-height:900px;position:relative}.film-sticky{position:sticky;top:20px;overflow:hidden;height:calc(100vh - 40px);max-height:1000px;min-height:520px;background:#d5d9d5;border-radius:3px}.film-sticky>img,.film-sticky>video{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.film-sticky>video{opacity:0;transition:opacity .6s}.film-sticky>video.ready{opacity:1}.film-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,#07120e9e)}.film-top{position:absolute;top:30px;left:30px;right:30px;display:flex;justify-content:space-between;color:white;font-size:13px;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 5px #0008}.film-bottom{position:absolute;bottom:33px;left:36px;right:36px;display:flex;align-items:end;justify-content:space-between;gap:24px;color:#fff}.film-name{font-size:clamp(42px,5vw,80px);letter-spacing:-.05em;line-height:1.1}.film-location{font-size:15px;margin-top:7px}.film-controls{display:flex;gap:8px}.film-controls button{border:1px solid #ffffff7a;background:#ffffff15;color:white;border-radius:50%;width:46px;height:46px;backdrop-filter:blur(10px)}.film-controls button:hover{background:#fff;color:#232528}.film-progress{position:absolute;bottom:0;height:3px;background:#e67a60;width:0;transition:width .1s linear}.sequence{display:flex;gap:28px;padding:20px 0;border-bottom:1px solid #d8dad5;font-size:13px;align-items:center}.sequence a{color:#676c69}.sequence .sequence-note{margin-left:auto;color:#727775;font-size:12px}.section{padding:110px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:48px}.section-head p{max-width:370px;color:#666d69;margin:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px}.statement{font-size:clamp(28px,3vw,46px);line-height:1.25;letter-spacing:-.025em;max-width:1000px}.stats{display:flex;gap:70px;border-top:1px solid #d8dad5;margin-top:55px;padding-top:30px}.stat strong{font-size:52px;font-weight:400;letter-spacing:-.05em}.stat span{display:block;font-size:14px;color:#656b68}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px 32px}.project-card:nth-child(even){padding-top:100px}.project-card img{width:100%;aspect-ratio:1.35;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.project-photo{overflow:hidden;background:#e4e6e2}.project-card:hover img{transform:scale(1.035)}.project-meta{display:flex;justify-content:space-between;padding-top:20px;gap:20px}.project-meta h3{font-size:30px}.project-meta p{font-size:14px;margin:7px 0 0;color:#696f6b}.project-meta .arrow{padding-top:7px}.offwhite{background:#eef0ec}.service-row{display:grid;grid-template-columns:70px 1fr 1fr 30px;gap:25px;align-items:center;padding:29px 0;border-top:1px solid #ced2cc}.service-row:last-child{border-bottom:1px solid #ced2cc}.service-row:hover h3{color:#597fbd}.service-row h3{font-size:30px}.service-row p{margin:0;color:#646b66;font-size:16px}.number{font-size:13px;color:#7c827d}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.article-card img{width:100%;aspect-ratio:1.5;object-fit:cover;background:#e4e6e2}.article-card h3{font-size:27px;line-height:1.2;margin:16px 0}.article-card p{font-size:15px;color:#68706b}.meta{font-size:13px;color:#6d756e;margin-top:18px}.cta{padding:80px 0 90px;border-top:1px solid #d8dad5}.cta h2{max-width:1000px}.cta .pill{margin-top:35px}.footer{background:#e9ece6;padding:48px 0 25px}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px}.footer img{width:170px}.footer p,.footer a{font-size:15px}.footer-links{display:flex;flex-direction:column;gap:9px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ced3c9;padding-top:22px;margin-top:50px;font-size:13px;color:#697168}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:10px;z-index:99;background:white;padding:15px}.menu-button{display:none;background:transparent;border:0;padding:10px}.page-head{padding:68px 0 65px}.page-head h1{max-width:1120px}.page-head .lead{max-width:680px;margin:25px 0 0;color:#626a64;font-size:20px}.breadcrumbs{font-size:13px;color:#747a73;margin-bottom:32px}.detail-image{width:100%;max-height:780px;object-fit:cover}.detail-layout{display:grid;grid-template-columns:1fr 2fr;gap:100px;padding:70px 0}.prose{max-width:820px;font-size:18px;line-height:1.8;overflow-wrap:anywhere}.prose h2,.prose h5{font-family:inherit;font-size:30px;line-height:1.25;letter-spacing:-.02em;margin:40px 0 20px;font-weight:400}.prose h2:first-child,.prose h5:first-child{margin-top:0}.prose p{margin-bottom:24px}.prose a{text-decoration:underline}.prose strong{font-weight:500}.aside-label{font-size:13px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:18px}.aside-text{font-size:15px;color:#697069}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:35px}.filter-bar button{border:1px solid #d4d8cf;background:transparent;border-radius:40px;padding:9px 20px;font-size:14px}.filter-bar button[aria-pressed=true]{background:#232528;color:white;border-color:#232528}[hidden]{display:none!important}.search{width:100%;max-width:520px;border:0;border-bottom:1px solid #aeb6ab;background:transparent;padding:14px 0;margin-bottom:36px;border-radius:0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-form label{display:block;font-size:14px;margin-bottom:7px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:12px 0;border:0;border-bottom:1px solid #b4beb0;background:transparent;border-radius:0;margin-bottom:25px}.contact-form textarea{min-height:130px;resize:vertical}.form-note{font-size:14px;color:#64715f;margin-top:20px}.empty{padding:40px 0}.portrait{max-height:650px;width:100%;object-fit:cover}.article-main{max-width:820px;margin:55px auto 100px}.article-main .prose{max-width:none}.article-hero{max-height:640px;width:100%;object-fit:cover}.backlink{display:inline-block;margin-bottom:30px;font-size:14px}.project-credits{border-left:2px solid #e77b63;padding-left:24px}.reveal{opacity:1}.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}.js .reveal.visible{opacity:1;transform:none}@media(min-width:1600px){.intro{padding-top:70px}}@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.nav{gap:18px}.nav-tools{gap:15px}.nav-tools>.pill{display:none}.intro{grid-template-columns:1fr 220px;gap:25px}.intro-side{font-size:15px}.detail-layout{gap:40px}.contact-grid{gap:50px}.service-row{grid-template-columns:40px 1fr 1fr 20px}.film-sticky{min-height:480px}.section{padding:80px 0}}@media(max-width:720px){.wrap{width:calc(100% - 36px)}.topbar{height:82px}.brand img{width:132px}.menu-button{display:block}.nav{display:none;position:absolute;left:-18px;right:-18px;top:81px;background:#f8f8f5;padding:28px;flex-direction:column;align-items:start;box-shadow:0 18px 18px #0001;font-size:20px}.nav.open{display:flex}.intro{padding:35px 0;grid-template-columns:1fr;gap:24px}.intro h1{font-size:clamp(44px,10vw,70px)}.intro-side{max-width:400px;font-size:16px}.intro-side p{margin-bottom:12px}.eyebrow{font-size:12px;margin-bottom:19px}.film-stage{height:120vh;min-height:750px}.film-sticky{top:10px;height:72vh;min-height:460px;max-height:740px}.film-bottom{left:20px;right:20px;bottom:24px}.film-top{left:20px;right:20px;top:20px;font-size:11px}.film-controls{gap:5px}.film-controls button{width:38px;height:38px}.sequence{gap:18px;flex-wrap:wrap;font-size:12px}.sequence-note{flex-basis:100%;margin-left:0!important}.section{padding:64px 0}.section-head{display:block;margin-bottom:32px}.section-head p{margin-top:22px}.section-head .text-link{margin-top:22px}.two-col,.detail-layout,.contact-grid{grid-template-columns:1fr;gap:30px}.stats{gap:35px}.stat strong{font-size:44px}.project-grid{gap:38px;grid-template-columns:1fr}.project-card:nth-child(even){padding-top:0}.project-meta h3{font-size:28px}.service-row{grid-template-columns:25px 1fr 20px;gap:12px}.service-row h3{font-size:26px}.service-row p{grid-column:2;grid-row:2}.service-row>.arrow{grid-column:3;grid-row:1}.journal-grid{grid-template-columns:1fr;gap:36px}.article-card h3{font-size:28px}.footer-top{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-direction:column;gap:10px}.page-head{padding:42px 0}.page-head .lead{font-size:18px}.detail-layout{padding:42px 0}.prose{font-size:17px;line-height:1.8}.prose h2,.prose h5{font-size:27px}.article-main{margin:35px 0 60px}.cta{padding:55px 0}.detail-image{min-height:260px}.nav-tools{gap:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.js .reveal{opacity:1;transform:none}.film-stage{height:auto;min-height:0}.film-sticky{position:relative}}
.scroll-story{height:380vh;min-height:2300px;position:relative;margin-top:16px;--story-progress:0;--title-opacity:1;--title-y:0px;--name-scale:1}.story-sticky{position:sticky;top:12px;height:calc(100svh - 24px);min-height:570px;max-height:1100px;overflow:hidden;background:#354541;color:white;border-radius:3px}.story-fallback,#story-canvas,.story-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.story-fallback{object-position:center}#story-canvas{opacity:0;transition:opacity .3s}#story-canvas.loaded{opacity:1}.story-shade{background:linear-gradient(180deg,#1220194d 0%,#1020180a 62%,#0e1a17ad 100%);pointer-events:none}.story-top{position:absolute;top:32px;left:40px;right:40px;display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.story-headline{position:absolute;top:16%;left:40px;right:35px;opacity:var(--title-opacity);transform:translateY(calc(-1 * var(--title-y)));will-change:opacity,transform;pointer-events:none}.story-headline h1{font-size:clamp(52px,6.4vw,110px);line-height:1.05;letter-spacing:-.055em;font-weight:400;text-wrap:balance;max-width:1100px;text-shadow:0 2px 24px #0002}.story-headline em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.06em}.story-headline .eyebrow{font-size:12px;margin-bottom:22px;letter-spacing:.15em}.story-contact{display:inline-flex;gap:60px;align-items:center;margin-top:32px;border-bottom:1px solid #fff9;font-size:15px;padding-bottom:9px;pointer-events:auto}.story-contact span{font-size:22px}.story-footer{position:absolute;left:40px;right:40px;bottom:38px;display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:25px}.story-project{display:flex;flex-direction:column;align-items:start}.story-index{font-size:12px;letter-spacing:.15em;margin-bottom:14px}.story-name{font-size:clamp(36px,4.4vw,70px);font-weight:400;line-height:1.06;letter-spacing:-.04em;transform:scale(var(--name-scale));transform-origin:left bottom}.story-location{margin-top:16px;font-size:14px}.story-explore{display:flex;align-items:center;justify-content:center;gap:23px;font-size:13px;margin-bottom:10px}.scroll-arrow{font-size:27px}.story-chapters{display:flex;gap:18px;align-items:center;margin-bottom:10px}.story-chapters button{border:0;color:#fff;background:transparent;font-size:13px;display:flex;align-items:center;gap:10px;padding:10px 0}.story-chapters i{display:block;height:1px;width:23px;background:#ffffff55;transition:width .3s,background .3s}.story-chapters [aria-current] i{width:45px;background:#fff}.story-progress{position:absolute;bottom:0;left:0;height:3px;width:100%;background:#e77b63;transform-origin:left;transform:scaleX(var(--story-progress));will-change:transform}.story-caption{display:flex;justify-content:space-between;gap:25px;margin:20px 0 0;padding-bottom:22px;border-bottom:1px solid #d9ded5;font-size:14px}.story-caption span:last-child{color:#737d70;font-size:12px}.story-headline:has(a:focus-visible){opacity:1;transform:none}.story-headline:has(a:focus-visible) a{background:#203429;padding:10px}.story-chapters button:focus-visible{outline:2px solid white}@media(max-width:1000px){.story-top{left:26px;right:26px}.story-headline{left:26px}.story-footer{left:26px;right:26px;grid-template-columns:1fr auto}.story-explore{display:none}.story-edition{display:none}.story-sticky{min-height:520px}.story-caption{font-size:13px}}@media(max-width:720px){.scroll-story{margin-top:8px;height:350vh;min-height:1900px}.story-sticky{top:8px;height:calc(100svh - 16px);min-height:530px}.story-top{top:25px;left:22px;right:22px;font-size:10px;letter-spacing:.08em}.story-headline{left:22px;right:22px;top:15%}.story-headline .eyebrow{font-size:10px;max-width:260px;line-height:1.5;margin-bottom:18px}.story-headline h1{font-size:clamp(43px,11.5vw,70px);line-height:1.06;letter-spacing:-.045em}.story-contact{font-size:13px;gap:25px;margin-top:24px}.story-footer{left:22px;right:22px;bottom:25px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:22px}.story-name{font-size:42px}.story-location{font-size:12px}.story-index{font-size:11px}.story-chapters{gap:12px;margin:0}.story-chapters button{font-size:12px}.story-chapters i{width:12px}.story-chapters [aria-current] i{width:24px}.story-caption{flex-direction:column;gap:5px;font-size:13px}.story-caption span:last-child{font-size:11px}.story-shade{background:linear-gradient(180deg,#101d186b 0%,#101d181a 55%,#101d18aa 100%)}}@media(prefers-reduced-motion:reduce){#story-canvas{display:none}.story-headline{transform:none}.story-sticky{min-height:560px}}


/* Keep the original logo proportions, independent of its intrinsic HTML size. */
.footer-top{grid-template-columns:1fr 1.15fr .8fr 1.25fr;gap:38px;align-items:start}
.footer-brand{display:block;width:190px;max-width:100%;align-self:start;justify-self:start}
.footer .footer-brand img{display:block;width:100%;height:auto;aspect-ratio:1600/723;object-fit:contain;object-position:left top}
.footer-websites{display:flex;flex-direction:column;gap:9px;min-width:0}
.footer-websites h3{font-size:14px;font-weight:500;line-height:1.5;letter-spacing:0;margin:0 0 8px}
.footer-websites a{display:flex;justify-content:space-between;gap:12px;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.footer-websites a span{color:#697168;flex-shrink:0}
@media(max-width:1100px){.footer-top{grid-template-columns:1fr 1fr;gap:38px 60px}.footer-websites{max-width:300px}}
@media(max-width:600px){.footer-top{grid-template-columns:1fr;gap:32px}.footer-brand{width:170px}.footer-websites{max-width:320px}}

.article-card img{height:auto;aspect-ratio:3/2;object-fit:cover}.article-hero{height:auto;aspect-ratio:3/2;object-fit:cover}.image-caption{font-size:12px;color:#737d70;margin:10px 0 0}

.project-gallery-section{padding:0 0 100px}.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.project-gallery a{display:block;overflow:hidden;background:#eee}.project-gallery img{display:block;width:100%;height:auto;transition:transform .4s}.project-gallery a:hover img{transform:scale(1.015)}.gallery-dialog{border:0;background:#101211;color:white;width:94vw;max-width:1600px;height:92dvh;max-height:92dvh;padding:56px 64px 46px;overflow:hidden}.gallery-dialog::backdrop{background:rgba(0,0,0,.88)}.gallery-dialog img{width:100%;height:100%;object-fit:contain}.gallery-dialog button{position:absolute;background:#fff;color:#111;border:0;border-radius:50%;width:40px;height:40px;font-size:24px;cursor:pointer}.gallery-dialog [data-close]{right:16px;top:12px}.gallery-dialog [data-prev]{left:12px;top:50%}.gallery-dialog [data-next]{right:12px;top:50%}.gallery-dialog p{position:absolute;bottom:8px;left:0;width:100%;text-align:center;font-size:13px}@media(max-width:720px){.project-gallery{grid-template-columns:1fr;gap:16px}.project-gallery-section{padding-bottom:60px}.gallery-dialog{padding:54px 12px 62px}.gallery-dialog [data-prev],.gallery-dialog [data-next]{top:auto;bottom:12px}}@media(prefers-reduced-motion:reduce){.project-gallery img{transition:none}}
