:root{--paper:#f5f3ed;--ink:#222521;--muted:#61665e;--line:#c9cbc2;--accent:#a54028;--clay:#efb198;--gutter:clamp(22px,4.5vw,80px);--header:86px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 16px)}body{margin:0}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border-radius:0}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{min-height:44px}img,video{display:block;max-width:100%}img{height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;letter-spacing:-.045em;line-height:1.07;text-wrap:balance}p{line-height:1.6}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}header a:focus-visible,header button:focus-visible,.hero a:focus-visible,.hero button:focus-visible{outline-color:var(--clay)}[hidden]{display:none!important}.sr-only,.skip{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}.skip:focus{position:fixed;z-index:200;top:12px;left:12px;clip-path:none;width:auto;height:auto;padding:18px;background:var(--paper)}.eyebrow{font-size:10px;line-height:1.5;letter-spacing:.13em;text-transform:uppercase}.section-label{display:flex;align-items:center;gap:20px;font-size:11px;line-height:1.5;letter-spacing:.06em}.section-label .number{color:var(--accent)}.arrow-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:44px;border-bottom:1px solid currentColor;font-size:13px;padding-block:12px}.arrow-link:hover{color:var(--accent)}.arrow{font-size:24px;line-height:1}.site-header{height:var(--header);padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;right:0;z-index:50;color:#fff;border-bottom:1px solid #ffffff40;background:linear-gradient(#17201bcc,#17201b12)}.brand{display:block;line-height:0;flex-shrink:0}.brand img{width:148px;height:auto}.header-right,.nav{display:flex;align-items:center}.header-right{gap:32px}.nav{gap:32px;font-size:13px}.nav a{padding-block:16px}.nav a:hover{color:var(--clay)}.lang-btn,.menu-btn{background:none;border:none;color:inherit;font-size:12px;padding:12px 0;min-width:44px}.lang-btn{border-left:1px solid #ffffff60;padding-left:22px;min-width:50px}.menu-btn{display:none}.hero{position:relative;height:100svh;min-height:620px;max-height:1200px;background:#28332b;color:white;isolation:isolate;overflow:hidden}.hero-slide{position:absolute;inset:0;animation:arrive .7s ease}.hero-slide>img{width:100%;height:100%;object-fit:cover;object-position:var(--focal,center)}.hero-slide:after,.project-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#18201835 0%,transparent 35%,#1820180a 50%,#111a13c9 100%);pointer-events:none}.hero-caption{position:absolute;left:var(--gutter);right:var(--gutter);bottom:125px;z-index:2}.hero-caption .eyebrow{margin-bottom:15px}.hero-caption h2{font-size:clamp(54px,6.8vw,105px);max-width:950px}.hero-caption a{display:inline-flex;align-items:baseline;gap:25px}.hero-caption a .arrow{font-size:35px}.hero-caption a:hover .arrow{transform:translate(5px,-5px)}.hero-controls{position:absolute;left:var(--gutter);right:var(--gutter);bottom:34px;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:3;border-top:1px solid #ffffff70;padding-top:18px}.hero-controls .control-note{font-size:11px;line-height:1.5;letter-spacing:.04em}.slide-controls{display:flex;align-items:center;gap:14px}.slide-controls button{border:1px solid #ffffff80;color:white;background:#17201b69;min-width:44px;height:44px;font-size:19px}.slide-controls button:hover{background:var(--paper);color:var(--ink)}.slide-controls .play-slides{min-width:75px;font-size:11px}.slide-count{font-size:12px;font-variant-numeric:tabular-nums;min-width:50px;text-align:center}.hero-progress{display:flex;gap:5px;width:120px}.hero-progress span{height:2px;flex:1;background:#ffffff55}.hero-progress .active{background:white}.identity{padding:78px var(--gutter) 90px;display:grid;grid-template-columns:1fr 3fr;gap:55px;border-bottom:1px solid var(--line)}.identity .eyebrow{padding-top:9px;max-width:160px}.identity h2{font-size:clamp(35px,4vw,62px);max-width:1100px}.work{padding:70px var(--gutter) 90px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:34px}.section-head>p{color:var(--muted);font-size:11px}.project-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:58px 30px}.project-card{min-width:0}.project-card.wide{grid-column:1/-1}.project-card>a{display:block}.card-image{position:relative;overflow:hidden;aspect-ratio:1.34;background:#dce0d7}.project-card.wide .card-image{aspect-ratio:2.15}.card-image img{width:100%;height:100%;object-fit:cover;object-position:var(--focal,center);transition:transform .7s ease}.project-card>a:hover .card-image img{transform:scale(1.025)}.card-index{position:absolute;left:18px;top:18px;display:grid;place-items:center;width:35px;height:35px;background:var(--paper);font-size:10px;border:1px solid #ffffff50}.card-foot{display:flex;justify-content:space-between;gap:20px;margin-top:18px}.card-foot h3{font-size:clamp(28px,2.7vw,42px)}.card-foot .arrow{font-size:28px;padding-top:4px}.card-meta{font-size:11px;line-height:1.55;margin-top:10px;color:var(--muted)}.project-card.wide .card-foot{max-width:100%}.study{background:#e7e9e0;padding:70px var(--gutter) 80px}.study-head{display:flex;justify-content:space-between;align-items:end;gap:45px;margin:30px 0}.study h2{font-size:clamp(38px,4.5vw,65px);max-width:650px}.study-summary{max-width:360px;font-size:14px}.study-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.study-panel{margin:0;min-width:0}.study-image{aspect-ratio:1.35;background:#f3f3e9;overflow:hidden}.study-image img{width:100%;height:100%;object-fit:cover}.study-panel.plan img{object-fit:contain;padding:20px}.study-panel figcaption{display:flex;justify-content:space-between;font-size:11px;line-height:1.6;margin-top:14px;gap:16px}.study-switch{display:flex;gap:8px;margin:26px 0}.study-switch button{background:none;border:1px solid #969d8e;padding:11px 19px;font-size:12px}.study-switch button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.study[data-view=plan] .spatial,.study[data-view=spatial] .plan{display:none}.study[data-view=plan] .study-grid,.study[data-view=spatial] .study-grid{grid-template-columns:1fr}.study[data-view=plan] .study-image,.study[data-view=spatial] .study-image{aspect-ratio:2}.study-bottom{display:flex;justify-content:flex-end;margin-top:25px}.festival{position:relative;background:#15211a;color:#fff}.festival-image{height:min(78vw,760px);min-height:440px;position:relative;overflow:hidden}.festival-image img{width:100%;height:100%;object-fit:cover}.festival-image:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,#102016e0)}.festival-caption{position:absolute;bottom:45px;left:var(--gutter);right:var(--gutter);z-index:1;display:flex;justify-content:space-between;gap:40px;align-items:end}.festival-caption h2{font-size:clamp(44px,6vw,84px);margin-top:15px}.festival-caption .arrow-link{flex-shrink:0}.practice{padding:72px var(--gutter) 75px;background:var(--accent);color:var(--paper)}.practice .section-label .number{color:inherit}.practice-intro{font-size:clamp(34px,4vw,60px);max-width:800px;margin:40px 0 60px}.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.practice-grid article{border-top:1px solid #ffffff65;padding-top:24px}.practice-grid h3{font-size:clamp(32px,4vw,58px);margin-bottom:18px}.practice-grid p{font-size:14px;max-width:270px;color:#fff1e9}.journal{padding:75px var(--gutter) 90px}.journal-intro{display:flex;justify-content:space-between;gap:45px;align-items:end;margin:38px 0}.journal-intro h2{font-size:clamp(38px,4vw,60px)}.journal-intro p{font-size:13px;color:var(--muted);max-width:360px}.journal-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.journal-card img{width:100%;aspect-ratio:1.7;object-fit:cover}.journal-card .eyebrow{color:var(--accent);margin:22px 0 14px}.journal-card h3{font-size:clamp(27px,3vw,43px);max-width:560px}.journal-card .article-meta{font-size:11px;color:var(--muted);margin:16px 0;line-height:1.6}.journal-card .arrow-link{font-size:12px}.contact{padding:76px var(--gutter) 60px;background:var(--ink);color:var(--paper)}.contact a:focus-visible{outline-color:var(--clay)}.contact .section-label .number{color:var(--clay)}.contact-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;margin:50px 0 70px}.contact h2{font-size:clamp(42px,5.5vw,78px);max-width:740px}.contact-links{align-self:end}.contact-links>a{display:block;width:fit-content;min-height:44px;padding-block:11px}.contact-links .email{font-size:clamp(19px,2.2vw,33px);letter-spacing:-.025em;border-bottom:1px solid #ffffff70;overflow-wrap:anywhere}.contact-links .phone{font-size:20px;margin-top:20px}.contact-links .whatsapp{font-size:12px;text-decoration:underline;text-underline-offset:5px}.contact-links .eyebrow{margin-top:28px;color:#d3d9cf}.footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff40;padding-top:28px;gap:24px;font-size:10px;line-height:1.5}.footer-brand{display:flex;align-items:center;gap:16px}.footer-icon{width:42px;height:auto}.footer-wordmark{width:70px;height:auto}.footer a{padding-block:12px}.footer-preview{color:#c5cbbf;font-size:9px}.project-hero{height:83svh;min-height:540px;max-height:1050px;position:relative;background:#29312b;color:white;overflow:hidden}.project-hero>img{width:100%;height:100%;object-fit:cover;object-position:var(--focal,center)}.project-hero-text{position:absolute;bottom:55px;left:var(--gutter);right:var(--gutter);z-index:1}.project-hero h1{font-size:clamp(46px,7.8vw,110px);max-width:1200px;margin-top:18px}.project-hero .eyebrow{max-width:800px}.project-intro{padding:70px var(--gutter);display:grid;grid-template-columns:.8fr 2fr;gap:65px}.project-facts{font-size:12px;line-height:1.7}.fact{border-top:1px solid var(--line);padding:15px 0;max-width:310px}.fact dt{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.fact dd{margin:0}.project-intro-copy h2{font-size:clamp(34px,4vw,58px);max-width:850px;margin-bottom:25px}.project-intro-copy>p{max-width:750px;font-size:17px}.project-intro-copy .source-context{font-size:12px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.gallery{padding:0 var(--gutter) 65px;display:grid;grid-template-columns:1fr 1fr;gap:35px 25px}.gallery figure{margin:0;min-width:0}.gallery figure.full{grid-column:1/-1}.zoom-trigger{padding:0;border:0;background:#e1e4da;display:block;width:100%;cursor:zoom-in;text-align:left}.gallery img{width:100%;height:auto;aspect-ratio:1.45;object-fit:cover}.gallery figure.full img{aspect-ratio:1.9}.gallery .contain img{object-fit:contain;background:#e8e8df}.gallery figcaption{font-size:11px;line-height:1.6;color:var(--muted);margin-top:12px;display:flex;justify-content:space-between;gap:20px}.story-chapter{padding:25px var(--gutter) 75px;display:grid;grid-template-columns:.8fr 2fr;gap:65px}.story-chapter h2{font-size:32px;max-width:340px}.story-chapter p{font-size:17px;max-width:740px}.project-next{background:#e5e8de;padding:55px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:35px}.project-next .eyebrow{color:var(--muted)}.project-next h2{font-size:clamp(32px,4vw,56px);margin-top:15px}.project-next .arrow{font-size:44px}.film-section{padding:0 var(--gutter) 80px}.film-section video{width:100%;max-height:760px;background:#131a14;object-fit:contain}.film-section p{font-size:11px;margin-top:12px;color:var(--muted)}.editorial-note{margin:0 var(--gutter) 65px;padding:25px;border-left:2px solid var(--accent);background:#e7e8df;font-size:12px;line-height:1.7;max-width:1000px}.viewer{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:20px;background:#141a16f5;color:#fff;border:0;overflow:auto}.viewer::backdrop{background:#141a16}.viewer-top{display:flex;justify-content:space-between;gap:20px;align-items:center;max-width:1500px;margin:0 auto 15px}.viewer-top button,.viewer-nav button{border:1px solid #ffffff70;background:none;color:inherit;min-width:48px;padding:12px;font-size:13px}.viewer-top p{font-size:11px}.viewer img{width:100%;height:calc(100svh - 180px);object-fit:contain}.viewer-bottom{display:flex;justify-content:space-between;gap:35px;align-items:center;max-width:1500px;margin:18px auto 0}.viewer-caption{font-size:12px;max-width:850px}.viewer-nav{display:flex;gap:10px}.viewer-nav button{font-size:20px}@keyframes arrive{from{opacity:.6}to{opacity:1}}
@media(min-width:1800px){.identity,.work,.study,.practice,.journal,.contact,.project-intro,.gallery,.story-chapter,.film-section{padding-left:max(var(--gutter),calc((100vw - 1660px)/2));padding-right:max(var(--gutter),calc((100vw - 1660px)/2))}}
@media(max-width:900px){:root{--header:76px}.brand img{width:132px}.header-right{gap:18px}.menu-btn{display:block}.nav{display:none;position:absolute;top:76px;left:0;right:0;padding:20px var(--gutter) 30px;background:var(--ink);border-bottom:1px solid #ffffff40;max-height:calc(100svh - 100px);overflow:auto}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav a{font-size:28px;border-bottom:1px solid #ffffff30;padding:20px 0}.hero-caption{bottom:137px}.hero-caption h2{font-size:66px}.identity{grid-template-columns:1fr;gap:25px;padding-block:55px}.identity .eyebrow{max-width:100%}.identity h2{font-size:45px;max-width:900px}.project-grid{grid-template-columns:1fr 1fr}.card-image{aspect-ratio:.95}.study-head{align-items:start}.study-summary{max-width:280px}.study-image{aspect-ratio:1}.practice-grid{gap:25px}.practice-grid h3{font-size:40px}.contact-layout{grid-template-columns:1.1fr 1fr;gap:35px}.contact h2{font-size:52px}.project-intro,.story-chapter{grid-template-columns:.8fr 1.8fr;gap:35px}.project-hero{height:75svh;min-height:530px}.project-hero h1{font-size:70px}.gallery figure.full img{aspect-ratio:1.5}}
@media(max-width:600px){:root{--header:72px;--gutter:22px}.site-header{height:72px}.nav{top:72px}.header-right{gap:12px}.brand img{width:124px}.lang-btn{padding-left:13px;min-width:42px}.menu-btn{font-size:11px}.hero{min-height:620px;max-height:950px}.hero-slide>img{object-position:var(--mobile-focal,var(--focal,center))}.hero-caption{bottom:158px}.hero-caption h2{font-size:47px;max-width:100%}.hero-caption .eyebrow{font-size:9px;max-width:250px}.hero-caption a{gap:15px}.hero-caption a .arrow{font-size:26px}.hero-controls{bottom:24px;align-items:start;flex-direction:column;gap:18px;padding-top:16px}.hero-controls .control-note{font-size:10px}.hero-progress{display:none}.slide-controls{width:100%;justify-content:space-between;gap:8px}.slide-controls button{min-width:44px}.slide-count{margin-right:auto;text-align:left;min-width:54px}.identity{padding:45px var(--gutter) 52px;gap:23px}.identity h2{font-size:34px;line-height:1.12}.identity .eyebrow{font-size:9px}.work{padding:42px var(--gutter) 55px}.section-head{margin-bottom:25px;gap:18px}.section-head>p{max-width:118px;text-align:right;font-size:10px}.section-label{font-size:10px;gap:12px}.project-grid{grid-template-columns:1fr;gap:38px}.project-card.wide{grid-column:auto}.card-image{aspect-ratio:1.12}.project-card.wide .card-image{aspect-ratio:1.12}.card-foot h3{font-size:32px}.card-meta{font-size:10px}.study{padding:42px var(--gutter) 50px}.study-head{display:block;margin-block:26px}.study h2{font-size:37px}.study-summary{margin-top:20px;max-width:350px;font-size:13px}.study-grid{grid-template-columns:1fr;gap:25px}.study-image{aspect-ratio:1.3}.study[data-view=plan] .study-image,.study[data-view=spatial] .study-image{aspect-ratio:1.3}.study-panel.plan img{padding:10px}.study-switch{gap:6px;flex-wrap:wrap;margin:22px 0}.study-switch button{padding:10px 13px;font-size:11px}.study-bottom{justify-content:start;margin-top:22px}.festival-image{height:620px;min-height:0}.festival-caption{bottom:35px;display:block}.festival-caption h2{font-size:51px}.festival-caption .arrow-link{margin-top:25px}.festival-caption .eyebrow{font-size:9px}.practice{padding:45px var(--gutter) 52px}.practice-intro{font-size:38px;margin:30px 0 35px}.practice-grid{grid-template-columns:1fr;gap:26px}.practice-grid article{display:grid;grid-template-columns:.8fr 1fr;gap:20px;padding-top:24px}.practice-grid h3{font-size:34px;margin:0}.practice-grid p{font-size:13px}.journal{padding:47px var(--gutter) 55px}.journal-intro{display:block;margin:28px 0}.journal-intro h2{font-size:38px}.journal-intro p{margin-top:20px;font-size:12px}.journal-grid{grid-template-columns:1fr;gap:38px}.journal-card h3{font-size:32px}.journal-card img{aspect-ratio:1.4}.journal-card .eyebrow{font-size:9px;margin:18px 0 12px}.contact{padding:46px var(--gutter) 28px}.contact-layout{grid-template-columns:1fr;gap:28px;margin:34px 0 50px}.contact h2{font-size:48px}.contact-links .email{font-size:23px;max-width:100%}.contact-links .phone{font-size:19px}.footer{flex-wrap:wrap;gap:18px;font-size:9px}.footer-brand{margin-right:20px}.footer-preview{width:100%;order:3}.project-hero{height:76svh;min-height:530px}.project-hero>img{object-position:var(--mobile-focal,var(--focal,center))}.project-hero-text{bottom:36px}.project-hero h1{font-size:49px}.project-hero .eyebrow{font-size:9px}.project-intro{padding:38px var(--gutter) 45px;grid-template-columns:1fr;gap:25px}.project-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.fact{font-size:11px}.fact dt{font-size:8px}.project-intro-copy h2{font-size:36px;margin-bottom:20px}.project-intro-copy>p{font-size:15px}.gallery{grid-template-columns:1fr;padding-bottom:45px;gap:27px}.gallery figure.full{grid-column:auto}.gallery img,.gallery figure.full img{aspect-ratio:1.25}.gallery figcaption{font-size:10px}.story-chapter{grid-template-columns:1fr;padding:0 var(--gutter) 45px;gap:20px}.story-chapter h2{font-size:32px}.story-chapter p{font-size:15px}.project-next{padding:38px var(--gutter);gap:25px}.project-next h2{font-size:34px}.project-next .arrow{font-size:30px}.film-section{padding-bottom:45px}.editorial-note{font-size:11px;margin-bottom:45px;padding:18px}.viewer{padding:15px}.viewer img{height:calc(100svh - 215px)}.viewer-caption{font-size:11px}.viewer-bottom{gap:16px;align-items:start}.viewer-top{margin-bottom:10px}.viewer-nav{gap:5px}.viewer-nav button{min-width:42px;padding:8px}.viewer-top p{max-width:155px}}
.site-header{position:fixed}.site-header.solid{background:var(--ink);border-color:#ffffff26}
@media(max-width:600px){.hero-progress{display:flex;width:90px}.hero-controls{row-gap:13px}.slide-controls{justify-content:flex-end}}
@media(min-width:601px){.project-card.feature-tower .card-image{aspect-ratio:1.65}.project-card.feature-tower .card-image img{object-position:center top}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* MAKA arrival and the practice statement, October 2026. */
.hero-copy{position:absolute;z-index:3;left:var(--gutter);right:var(--gutter);bottom:120px;display:flex;flex-direction:column;gap:20px}
.hero-statement{pointer-events:none}
.hero-statement h1{font-size:clamp(45px,5.8vw,86px);max-width:1000px;line-height:1.04;text-wrap:balance;text-shadow:0 2px 28px #0003}
.hero-slide:after{background:linear-gradient(90deg,#101a147a,transparent 90%),linear-gradient(180deg,#18201820,transparent 28%,#111a1399 100%)}
.hero-copy .hero-caption{position:static;display:flex;flex-direction:column-reverse;gap:8px}
.hero-caption h2{font-size:24px;letter-spacing:-.025em;max-width:none}
.hero-caption .eyebrow{font-size:9px;margin:0;max-width:750px}
.hero-caption a{gap:18px;min-height:36px}.hero-caption a .arrow{font-size:22px}
.arrival{position:fixed;inset:0;margin:0;padding:0;width:100%;height:100%;max-width:none;max-height:none;border:0;background:var(--ink);color:var(--paper);z-index:1000;overflow:hidden;opacity:1;transition:opacity 1.3s cubic-bezier(.4,0,.2,1)}
.arrival::backdrop{background:transparent}.arrival.leaving{opacity:0}
.arrival-enter{position:absolute;inset:0;width:100%;height:100%;border:0;background:none;color:inherit;display:grid;place-items:center;padding:35px}
.arrival-enter:focus-visible{outline:2px solid var(--clay);outline-offset:-12px}
.arrival-marks{display:grid;place-items:center;width:min(280px,65vw);height:150px;opacity:1;transform:translateX(0);filter:blur(0);transition:transform 1.3s cubic-bezier(.4,0,.2,1),opacity 1.3s ease,filter 1.3s ease}
.arrival.leaving .arrival-marks{opacity:0;transform:translateX(-44px);filter:blur(5px)}
.arrival-marks img{grid-area:1/1;height:auto;object-fit:contain}
.arrival-path{position:absolute;top:0;left:50%;width:1px;height:calc(50svh - 54px);pointer-events:none;background:linear-gradient(to bottom,transparent,#b9997955 20%,#e9e9deba);animation:arrival-path 5.5s cubic-bezier(.45,0,.2,1) both}
.arrival-icon{width:105px;animation:arrival-icon 5.5s cubic-bezier(.4,0,.2,1) both}.arrival-wordmark{width:260px;animation:arrival-wordmark 5.5s cubic-bezier(.4,0,.2,1) both}
body.arriving{overflow:hidden}
.replay-arrival{border:0;background:none;color:inherit;font-size:9px;padding:12px 0;text-decoration:underline;text-underline-offset:4px}
/* Descend 1.375s; rest 1.265s; dissolve 0.825s; wordmark hold 2.035s; reveal 1.3s. */
@keyframes arrival-icon{0%{opacity:1;transform:translateY(calc(-50svh + 78px));filter:blur(0);animation-timing-function:cubic-bezier(.45,0,.2,1)}25%,48%{opacity:1;transform:translate(0);filter:blur(0)}63%,100%{opacity:0;transform:translateX(-20px);filter:blur(4px)}}
@keyframes arrival-path{0%{opacity:1;clip-path:inset(0 0 calc(100% - 24px) 0)}25%,30%{opacity:1;clip-path:inset(0 0 0 0)}42%,100%{opacity:0;clip-path:inset(100% 0 0 0)}}
@keyframes arrival-wordmark{0%,48%{opacity:0;transform:translateX(20px);filter:blur(4px)}63%,100%{opacity:1;transform:translateX(0);filter:blur(0)}}
@media(max-width:900px){.hero-statement h1{font-size:clamp(43px,6.5vw,66px)}.hero-caption h2{font-size:23px}}
@media(max-width:600px){.hero{min-height:700px}.hero-copy{bottom:161px;gap:18px}.hero-statement h1{font-size:clamp(36px,8.8vw,49px);line-height:1.08}.hero-caption{bottom:161px;gap:6px}.hero-caption h2{font-size:22px}.hero-caption .eyebrow{font-size:8px;max-width:300px}.hero-caption a .arrow{font-size:20px}.arrival-icon{width:88px}.arrival-wordmark{width:220px}}
@media(prefers-reduced-motion:reduce){.arrival{display:none!important}.hero-slide>img{transform:none!important}}

/* The supplied aerial is portrait: retain the entire festival frame. */
.ambient-film{position:relative;aspect-ratio:480/848;background:#182119;overflow:hidden}
.ambient-film>.film-poster,.ambient-film>.aerial-loop{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.ambient-film>.aerial-loop{opacity:0}.ambient-film.has-frame>.aerial-loop{opacity:1}
.film-toggle{position:absolute;z-index:4;top:20px;right:20px;border:1px solid #ffffffa0;background:#17201bd9;color:white;font-size:11px;padding:10px 16px;min-height:44px}
.film-toggle:focus-visible{outline-color:var(--clay)}
.hero-slide>.ambient-film,.portrait-project>.ambient-film{position:absolute;top:0;bottom:0;right:var(--gutter);height:100%;width:auto;max-width:48%}
.hero-slide .film-toggle,.portrait-project .film-toggle{top:calc(var(--header) + 20px)}
.hero-slide[data-project="buenazo"]:after{display:none}
.festival-image{height:auto;min-height:0;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;padding:64px var(--gutter)}
.festival-image:after{display:none}
.festival-image>.ambient-film{grid-column:2;grid-row:1;width:min(100%,385px);justify-self:center}
.festival-caption{position:static;display:block;grid-column:1;grid-row:1}
.festival-caption h2{font-size:clamp(46px,6.2vw,88px);margin:18px 0 30px}
.festival-caption .arrow-link{margin-top:10px}
.portrait-project{background:#182119}
.portrait-project:after{display:none}
.portrait-project .project-hero-text{right:53%;bottom:20%}
.portrait-project h1{font-size:clamp(50px,6vw,90px)}
.film-edition{font-size:12px;margin-top:24px;color:#d6dcce}
/* Keep the year and full aerial view below the fixed navigation. */
.hero-slide>.ambient-film{top:var(--header);height:calc(100% - var(--header))}
.hero-slide .film-toggle,.portrait-project .film-toggle{top:20px}
@media(min-width:601px){.portrait-project>.ambient-film{top:var(--header);height:calc(100% - var(--header))}}
@media(max-width:600px){
 .hero-slide>.ambient-film{inset:var(--header) 0 0;width:100%;height:calc(100% - var(--header));max-width:100%;aspect-ratio:auto;opacity:.55}
 .film-toggle{top:12px;right:12px}
 .festival-image{display:flex;flex-direction:column;gap:0;padding:0}
 .festival-image>.ambient-film{width:100%;max-width:480px}
 .festival-caption{padding:30px var(--gutter) 45px;width:100%}
 .festival-caption h2{font-size:49px;margin-bottom:15px}
 .portrait-project{height:auto;min-height:0;padding-top:var(--header)}
 .portrait-project>.ambient-film{position:relative;inset:auto;width:100%;height:auto;max-width:100%}
 .portrait-project .film-toggle{top:12px}
 .portrait-project .project-hero-text{position:static;padding:28px var(--gutter) 40px}
 .portrait-project h1{font-size:49px}.film-edition{margin-top:16px}
}

/* Gentle camera drift and a dissolve between project images. */
.hero-slide{animation:none;opacity:1;transition:opacity .85s ease;z-index:1}
.hero-slide[aria-hidden="false"]{z-index:2}
.hero-slide.is-entering,.hero-slide.is-leaving{opacity:0}
.hero-slide.is-leaving{pointer-events:none}
.hero-controls{z-index:4}
.hero-slide>img{transition:none;transform-origin:65% 10%}
.hero-slide:not([hidden])>img{animation:project-drift 10s linear infinite alternate;animation-play-state:paused}
.hero[data-motion="moving"] .hero-slide>img{animation-play-state:running}
.hero-slide[data-project="ancon"]>img{transform-origin:75% 12%}
.hero-slide[data-project="pittsburgh"]>img{transform-origin:35% 25%}
.hero-slide[data-project="la-cueva"]>img{transform-origin:48% 35%}
@keyframes project-drift{from{transform:scale(1)}to{transform:scale(1.05)}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.hero-slide>img{animation:none!important;transform:none!important}}

/* Affordable Housing: transition from the neighborhood plan to the homes. */
.study + .story-chapter{padding-top:65px}
@media(max-width:600px){.study + .story-chapter{padding-top:42px}}

/* Coda: full-bleed introductions, tower-focused crops, uncropped gallery originals. */
.project-card .card-image:has(img[data-frame="full"]){aspect-ratio:auto}
.card-image img[data-frame="full"],.gallery figure img[data-frame="full"]{height:auto;aspect-ratio:auto;object-fit:contain;transform:none}
.project-card>a:hover .card-image img[data-frame="full"]{transform:none}
.project-hero:has(>img[data-frame="full"]){height:100svh;min-height:620px;max-height:1200px;padding-top:var(--header)}
.project-hero>img[data-frame="full"]{width:100%;height:100%;object-fit:cover;object-position:49.7% top}
.hero-slide[data-project="pittsburgh"]>img{position:absolute;inset:var(--header) 0 0;width:100%;height:calc(100% - var(--header));object-fit:cover;object-position:49.7% top;transform-origin:49.7% 0}
.hero-slide[data-project="pittsburgh"]:not([hidden])>img{animation-name:coda-drift}
@keyframes coda-drift{from{transform:scale(1)}to{transform:scale(1.03)}}
.hero-slide[data-project="pittsburgh"]:after{background:linear-gradient(180deg,transparent 40%,#17201b40 57%,#17201be8 100%)}
@media(max-width:600px){
 .project-hero:has(>img[data-frame="full"]){min-height:700px}
}
@media(max-width:360px){.hero-slide[data-project="pittsburgh"]>img{object-position:47% top;transform-origin:47% 0}}

/* Review 04: real section destinations and a quieter, curated homepage. */
.inner-page .site-header{background:var(--ink)}
.nav a[aria-current="page"],.nav-expertise.current{color:var(--clay)}
.nav-expertise{display:flex;align-items:center;gap:9px;padding:16px 0;border:0;background:none;color:inherit;font-size:13px}
.nav-expertise[aria-expanded="true"]>span:last-child{transform:rotate(180deg)}
.site-header:has(.expertise-menu:not([hidden])){background:var(--ink)}
.expertise-menu{position:absolute;top:calc(var(--header) - 1px);left:var(--gutter);right:var(--gutter);padding:28px;background:var(--paper);color:var(--ink);box-shadow:0 22px 50px #0003;border:1px solid var(--line)}
.expertise-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.expertise-choices .expertise-choice{padding:8px 20px 22px 0;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:10px;position:relative}
.expertise-choices .expertise-choice:last-child{border:0}
.expertise-choice strong{font-weight:400;font-size:38px;letter-spacing:-.045em}
.expertise-description{font-size:12px;line-height:1.6;max-width:250px}
.expertise-choice .arrow{position:absolute;right:22px;top:9px}
.expertise-menu>.arrow-link{margin-top:16px;padding-block:12px;font-size:12px}
.expertise-menu a:hover{color:var(--accent)}
.expertise-menu a:focus-visible{outline-color:var(--accent)}
.home-projects,.home-expertise,.catalogue-section,.related-projects{padding:65px var(--gutter) 70px}
.destination-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}
.destination-head h2{font-size:clamp(36px,4vw,60px)}
.home-page .home-section-label{font-size:10px;font-weight:400;line-height:1.5;letter-spacing:.13em;text-transform:uppercase;margin:0}
@media(min-width:601px){.home-page .destination-head{align-items:center}}
.destination-head .arrow-link{font-size:12px;max-width:380px}
.signature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.catalogue-card{min-width:0}
.catalogue-card>a{display:block}
.catalogue-image{aspect-ratio:1.35;overflow:hidden;background:#28332b}
.catalogue-image img{width:100%;height:100%;object-fit:cover;object-position:var(--focal,center);transition:transform .6s ease}
.catalogue-image img[src*="buenazo"]{object-fit:contain;object-position:center}
.catalogue-image img[data-frame="full"]{object-fit:cover;object-position:49.7% top;transform:none}
.catalogue-card>a:hover .catalogue-image img:not([data-frame="full"]):not([src*="buenazo"]){transform:scale(1.025)}
.catalogue-image.complete-site-view{background:transparent}
.catalogue-image.complete-site-view img{object-fit:contain;object-position:center}
.catalogue-card>a:hover .catalogue-image.complete-site-view img{transform:none}
.catalogue-identity{display:grid;grid-template-columns:58px 1fr auto;align-items:start;gap:14px;margin-top:18px}
.project-mark{width:58px;height:58px;display:block;flex-shrink:0}
.catalogue-identity h3{font-size:clamp(26px,2.3vw,36px);margin-top:4px}
.catalogue-identity p{font-size:10px;color:var(--muted);margin-top:10px;line-height:1.55}
.catalogue-identity .arrow{margin-top:8px;font-size:22px}
.signature-grid .catalogue-identity{grid-template-columns:43px 1fr;gap:10px}
.signature-grid .project-mark{width:43px;height:43px}
.signature-grid h3{font-size:25px}
.signature-grid .catalogue-identity>.arrow{display:none}
.signature-grid .catalogue-identity p{font-size:9px}
.home-expertise{background:#e7e9e0}
.segment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.segment-card{position:relative;display:flex;flex-direction:column;padding:35px;min-height:390px;background:#222521;color:var(--paper);overflow:hidden}
.segment-build{background:#a54028}.segment-nexus{background:#d4d9ce;color:var(--ink)}
.segment-brand{font-size:10px;letter-spacing:.14em;margin-bottom:10px}
.segment-card h3{font-size:clamp(38px,4.5vw,70px)}
.segment-line{display:flex;align-items:flex-end;gap:9px;height:112px;margin:24px 0 28px}
.segment-line i{display:block;flex:1;height:70%;border:1px solid currentColor;opacity:.45}
.segment-diagram{align-items:center;justify-content:flex-start;height:112px}
.segment-diagram svg{display:block;width:auto;height:100%;max-width:100%;overflow:visible}
.segment-diagram svg>path:not(.diagram-plane){opacity:.85}
.segment-diagram .diagram-plane{fill:currentColor;fill-opacity:.1;stroke:none}
.segment-diagram svg>.diagram-fold{opacity:.6}
.segment-diagram svg>.diagram-guide{opacity:.24;stroke-dasharray:3 5}
.segment-diagram .diagram-joints{fill:currentColor;stroke:none}
.segment-nexus .segment-line{align-items:center}.segment-nexus .segment-line i{height:64px;border-radius:50%;flex:0 1 64px}
.segment-headline{font-size:19px;line-height:1.25;letter-spacing:-.02em;margin-bottom:15px;max-width:240px}
.segment-services{font-size:12px;line-height:1.65;max-width:260px;margin-top:auto}
.segment-card>.arrow{position:absolute;right:26px;top:32px}
.segment-card:hover>.arrow{transform:translate(3px,-3px)}
.segment-card:focus-visible{outline-offset:-7px;outline-color:var(--clay)}
.segment-nexus:focus-visible{outline-color:var(--accent)}
.home-about,.home-idea{display:grid;grid-template-columns:1.1fr 1fr;align-items:stretch}
.gateway-image{min-width:0;min-height:430px}.gateway-image img{width:100%;height:100%;object-fit:cover;object-position:60% center}
.gateway-copy{padding:65px var(--gutter);align-self:center;min-width:0}
.gateway-copy h2{font-size:clamp(34px,3.7vw,57px);margin:25px 0 30px;max-width:700px}
.gateway-copy>p:not(.eyebrow){font-size:15px;max-width:350px;margin-bottom:25px}
.home-idea{padding-block:30px;border-top:1px solid var(--line);background:#eeede5}
.idea-preview{margin:35px var(--gutter) 35px 0;align-self:center;min-width:0}
.idea-preview img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.idea-preview figcaption{font-size:10px;line-height:1.6;color:var(--muted);margin-top:12px}
/* Photographic correction only: retain the original drawing and handwritten marks. */
.sketch-filter-defs{position:absolute;overflow:hidden;pointer-events:none}
.idea-sketch{overflow:hidden;aspect-ratio:1418.4/952.32;background:#fff}
.idea-sketch img{width:111.111112%;max-width:none;transform:translate(-5%,-7%);filter:url(#sketch-paper-cleanup)}
.film-section-portrait video{width:min(100%,480px);height:auto;max-height:none;aspect-ratio:480/848;object-fit:contain;margin-inline:auto}
.film-section-portrait p{max-width:480px;margin-inline:auto}
.contact-gateway{padding:60px var(--gutter);background:var(--accent);color:var(--paper);display:grid;grid-template-columns:1fr auto;align-items:end;gap:25px}
.contact-gateway .eyebrow{grid-column:1/-1}.contact-gateway h2{font-size:clamp(38px,4.5vw,64px);max-width:730px}.contact-gateway a:hover{color:var(--paper)}
.contact-gateway-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.contact-gateway a:focus-visible{outline-color:var(--paper)}
.site-footer{background:var(--ink);color:var(--paper);padding:40px var(--gutter) 22px;font-size:11px}
.site-footer a:focus-visible,.site-footer button:focus-visible{outline-color:var(--clay)}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-bottom:30px}
.footer-top nav{display:flex;flex-wrap:wrap;gap:12px 23px}.footer-top a{display:inline-flex;align-items:center;min-height:44px}
.footer-bottom{border-top:1px solid #ffffff35;padding-top:14px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;color:#c5cbbf;font-size:9px}
.footer-bottom>a{padding-block:14px}
.destination-intro{padding:calc(var(--header) + 64px) var(--gutter) 64px}
.destination-intro h1{font-size:clamp(49px,7vw,100px);max-width:1200px;margin-top:25px}
.destination-description{font-size:17px;max-width:700px;margin-top:30px}
.catalogue-section{padding-top:0}
.project-filters{display:flex;gap:10px;flex-wrap:wrap;padding-block:0 36px}
.project-filters button{background:none;border:1px solid var(--line);padding:12px 20px;font-size:12px}
.project-filters button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.catalogue-grid{display:grid;grid-template-columns:1fr 1fr;gap:58px 35px}
.catalogue-grid .catalogue-image{aspect-ratio:1.5}
.expertise-overview{padding:0 var(--gutter) 75px}
.discipline-image{margin:0 var(--gutter) 60px}.discipline-image img{width:100%;max-height:680px;object-fit:cover;aspect-ratio:1.9}.discipline-image figcaption{font-size:10px;margin-top:12px;color:var(--muted)}
.service-list{padding:0 var(--gutter) 60px;display:grid;grid-template-columns:1fr 1fr;gap:38px 60px}
.service-list article{border-top:1px solid var(--line);padding-top:24px;scroll-margin-top:110px}.service-list h2{font-size:clamp(30px,3vw,44px);margin-bottom:20px}.service-list p{font-size:15px;max-width:460px}
.nexus-service-copy p+p{margin-top:22px}.nexus-services p{max-width:620px}
.studio-approach.nexus-continuity{border-top:1px solid var(--line);padding-top:44px}
.nexus-connections{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:18px 36px}
.related-projects{background:#e7e9e0}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.related-grid h3{font-size:28px}
.service-process{margin:0 var(--gutter) 65px;padding:70px 40px;background:var(--accent);color:var(--paper)}
.process-nexus{background:#d4d9ce;color:var(--ink)}
.process-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.process-track>div{border-top:1px solid currentColor;padding-top:28px;display:flex;flex-direction:column;justify-content:space-between;gap:30px;min-height:140px}.process-track h2{font-size:clamp(24px,2.4vw,36px)}.process-track span{font-size:28px}.process-track>div:last-child span{visibility:hidden}
.service-enquiry{padding:50px var(--gutter) 70px;display:flex;align-items:center;gap:30px;flex-wrap:wrap;border-top:1px solid var(--line)}.service-enquiry h2{font-size:36px;margin-right:auto}
/* Expertise divisions lead to individual disciplines and services. */
.studio-intro{padding-bottom:42px}.studio-intro h1{font-size:clamp(40px,6.5vw,86px)}
.studio-breadcrumb{display:flex;align-items:center;gap:9px 13px;flex-wrap:wrap;font-size:11px;line-height:1.7;color:var(--muted)}
.studio-breadcrumb a{display:inline-flex;align-items:center;min-height:32px;border-bottom:1px solid transparent}.studio-breadcrumb a:hover{border-color:currentColor}.studio-breadcrumb [aria-current="page"]{color:var(--ink)}
.studio-grid{padding:0 var(--gutter) 70px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 24px}
.studio-discipline-card{display:block;min-width:0;scroll-margin-top:110px}
.studio-card-visual{aspect-ratio:1.3;overflow:hidden;background:#e7e9e0;border:1px solid var(--line)}
.studio-card-visual img,.studio-card-visual svg{display:block;width:100%;height:100%;object-fit:cover}
.studio-card-visual:has(>.service-abstract){background:#eceadf}
.studio-card-visual img.service-abstract{object-fit:contain}
.studio-detail-visual>.service-abstract{display:block;width:100%;height:auto;max-width:1000px;max-height:none;aspect-ratio:auto;object-fit:contain;margin-inline:auto}
.studio-detail-visual:has(>.service-abstract) figcaption{max-width:1000px;margin-inline:auto}
.build-service-art>.service-abstract{display:block;width:100%;height:auto;object-fit:contain}
.visual-events{background:#182119}.visual-events img{object-fit:contain}
.studio-card-visual.visual-events{display:flex;align-items:center;justify-content:center;gap:4px;background:#e7e9e0}.studio-card-visual.visual-events img{width:auto;max-width:calc(50% - 2px);height:100%;object-fit:contain}
.studio-card-visual.visual-planning{background:#f3f0e7}.studio-card-visual.visual-planning img{object-fit:contain}
.studio-card-heading{display:flex;align-items:start;justify-content:space-between;gap:14px;margin:24px 0 15px}
.studio-card-heading h2{font-size:clamp(24px,2.1vw,32px);line-height:1.12;overflow-wrap:normal;min-width:0}
.studio-card-heading .arrow{font-size:22px;flex-shrink:0;transition:transform .2s ease}
.studio-discipline-card:hover .arrow{transform:translate(3px,-3px)}
.studio-discipline-card>p{font-size:13px;line-height:1.65;max-width:390px;color:var(--muted)}
.studio-diagram{stroke:var(--ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.studio-diagram .diagram-accent{stroke:var(--accent);stroke-width:3}
.studio-diagram .diagram-path{stroke:var(--accent);stroke-width:2;stroke-dasharray:6 9}
.diagram-interior{background:#e8e5da}.diagram-installation{background:#d8dfd7}.diagram-build{background:#efe3d9}
.studio-discipline-nav{display:flex;flex-wrap:wrap;gap:10px;padding:0 var(--gutter) 32px}
.studio-discipline-nav a{display:inline-flex;align-items:center;padding:12px 18px;min-height:44px;border:1px solid var(--line);font-size:12px}
.studio-discipline-nav a[aria-current="page"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.studio-discipline-nav a:hover{border-color:var(--ink)}
.studio-detail-visual.visual-events{background:none}.studio-detail-visual.visual-events>.ambient-film{width:100%;max-width:480px;margin-inline:auto}.studio-detail-visual.visual-events .film-poster{max-height:none;aspect-ratio:auto;object-position:center}
.studio-detail-visual.visual-events figcaption{max-width:480px;margin-inline:auto}
.studio-detail-visual svg{display:block;width:100%;height:420px}
.studio-detail-visual.visual-planning>img{max-width:1000px;max-height:none;height:auto;aspect-ratio:auto;object-fit:contain;margin-inline:auto}.studio-detail-visual.visual-planning figcaption{max-width:1000px;margin-inline:auto}
.studio-detail-visual.visual-vision>img{height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
.studio-approach{padding:0 var(--gutter) 64px;display:grid;grid-template-columns:1fr 1fr;gap:30px 60px}
.studio-approach h2{font-size:clamp(32px,3.3vw,48px);max-width:590px}.studio-approach-copy{min-width:0;max-width:620px}.studio-approach-copy p{font-size:16px}.studio-approach-copy p+p{margin-top:22px}
.studio-focus{list-style:none;padding:0;margin:10px 0 0;grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.studio-focus li{border-top:1px solid var(--line);padding-top:20px;font-size:16px}
@media(min-width:601px){.studio-focus:has(>li:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}}
.studio-related .related-grid:has(>.catalogue-card:only-child){grid-template-columns:minmax(0,560px)}
.vision-eyebrow{margin-top:32px}
.vision-consultation{padding:0 var(--gutter) 64px;scroll-margin-top:110px}
.vision-consultation-heading{display:grid;grid-template-columns:1fr 1fr;gap:30px 60px;align-items:end;margin-bottom:32px}
.vision-consultation-heading h2{font-size:clamp(32px,3.3vw,48px);max-width:590px}
.vision-consultation-heading p{font-size:15px;color:var(--muted);max-width:500px}
.vision-service{border-top:1px solid var(--line);scroll-margin-top:110px}
.vision-service:last-child{border-bottom:1px solid var(--line)}
.vision-service summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:48px minmax(0,1fr) 32px;gap:24px;padding:27px 0;align-items:start}
.vision-service summary::-webkit-details-marker{display:none}
.vision-service summary:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.vision-service-number{font-size:12px;color:var(--muted);padding-top:7px;font-variant-numeric:tabular-nums}
.vision-service-name{display:block;font-size:clamp(22px,2.2vw,30px);line-height:1.25;letter-spacing:-.025em}
.vision-service-question{display:block;font-size:15px;line-height:1.6;color:var(--muted);margin-top:9px}
.vision-service-toggle{position:relative;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;margin-top:3px}
.vision-service-toggle::before,.vision-service-toggle::after{content:"";position:absolute;left:9px;top:13px;width:10px;height:1px;background:var(--ink)}
.vision-service-toggle::after{transform:rotate(90deg)}
.vision-service[open] .vision-service-toggle::after{display:none}
.vision-service summary:hover .vision-service-name{color:var(--accent)}
.vision-service-description{padding:0 56px 30px 72px;max-width:940px}
.vision-service-description p{font-size:16px;line-height:1.8}
.vision-nexus{margin:0 var(--gutter) 64px;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:30px 60px}
.vision-nexus h2{font-size:clamp(28px,2.7vw,38px);max-width:500px}
.vision-nexus p{font-size:15px;max-width:620px}
.vision-nexus .arrow-link{margin-top:22px}
@media(max-width:600px){
 .vision-eyebrow{margin-top:24px;max-width:290px;line-height:1.7}
 .vision-consultation{padding-bottom:42px}.vision-consultation-heading{grid-template-columns:1fr;gap:18px;margin-bottom:25px}.vision-consultation-heading h2{font-size:34px}
 .vision-service summary{grid-template-columns:24px minmax(0,1fr) 28px;gap:12px;padding:24px 0}.vision-service-number{font-size:11px;padding-top:5px}.vision-service-name{font-size:23px}.vision-service-question{font-size:14px}
 .vision-service-toggle{width:28px;height:28px;margin-top:0}.vision-service-toggle::before,.vision-service-toggle::after{left:8px;top:12px}
 .vision-service-description{padding:0 0 26px 36px}.vision-service-description p{font-size:15px}
 .vision-nexus{grid-template-columns:1fr;gap:18px;margin-bottom:42px;padding-block:26px}
}
.build-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.build-service-grid .studio-card-visual{aspect-ratio:1.5}
.build-service-detail{padding:0 var(--gutter) 64px;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:50px}
.build-service-art svg{display:block;width:100%;height:auto}.build-service-copy section{padding-block:24px 32px;border-top:1px solid var(--line)}
.build-service-copy h2{font-size:32px;margin-bottom:18px}.build-service-copy p{font-size:15px;max-width:540px}
@media(max-width:1000px){.studio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 25px}.studio-card-heading h2{font-size:30px}}
@media(max-width:600px){
 .studio-intro{padding-top:calc(var(--header) + 30px);padding-bottom:30px}.destination-intro.studio-intro h1{font-size:clamp(34px,10vw,40px);margin-top:22px}.studio-intro .destination-description{font-size:15px;margin-top:20px}
 .studio-grid{grid-template-columns:1fr;gap:36px;padding-bottom:44px}.studio-card-visual{aspect-ratio:1.7}.studio-card-heading{margin:18px 0 12px}.studio-card-heading h2{font-size:30px}
 .studio-card-visual.visual-events{aspect-ratio:1.3}
 .studio-discipline-nav{gap:8px;padding-bottom:28px}.studio-discipline-nav a{font-size:11px;padding:10px 13px}
 .studio-detail-visual{margin-bottom:36px}.studio-detail-visual svg{height:280px}
 .studio-approach,.build-service-detail{grid-template-columns:1fr;gap:24px;padding-bottom:42px}.studio-approach h2{font-size:34px}.studio-approach-copy p{font-size:15px}
 .studio-focus{grid-template-columns:1fr;gap:15px;margin-top:0}.studio-focus li{padding-top:15px;font-size:15px}.build-service-grid .studio-card-visual{aspect-ratio:1.7}
 .build-service-copy h2{font-size:30px}.build-service-copy section{padding-bottom:26px}
 .service-enquiry h2{font-size:32px}.service-enquiry{gap:20px;padding-block:36px 44px}
}
.about-statement{padding:10px var(--gutter) 70px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:65px;align-items:start}.about-statement h2{font-size:clamp(36px,4vw,59px)}.about-statement-copy{max-width:720px}.about-statement p{font-size:16px;line-height:1.85}.about-statement p+p{margin-top:24px}
.principal-intro{padding:60px var(--gutter);background:#e7e9e0}.principal-intro h2{font-size:54px;margin:20px 0}.principal-intro .arrow-link{margin-top:25px}
.about-people{padding:60px var(--gutter) 80px;background:#e7e9e0;scroll-margin-top:110px}.about-people>h2{font-size:clamp(36px,4vw,54px);margin-bottom:35px}
.about-section-nav{display:flex;gap:12px;padding:0 var(--gutter) 32px}.about-section-nav a{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;border:1px solid var(--line);font-size:12px}.about-section-nav a:hover{border-color:var(--ink)}
/* Publications retain their authored language within the bilingual site. */
.publication-feature{margin:35px 0 55px;background:#e7e9e0}.publication-feature>a{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:40px;padding:34px}.publication-card-image img{display:block;width:100%;height:auto;aspect-ratio:1200/650;object-fit:contain}.publication-card-copy h2{font-size:clamp(32px,3vw,46px);margin:19px 0}.publication-card-copy>p:not(.eyebrow){font-size:14px}.publication-card-copy .arrow-link{margin-top:15px}.publication-card-copy .publication-byline{font-size:11px;margin-top:20px}
.publication-header{padding:calc(var(--header) + 50px) var(--gutter) 45px;max-width:1260px}.publication-back{display:inline-block;font-size:12px;min-height:44px;margin-bottom:25px}.publication-header h1{font-size:clamp(42px,5.7vw,76px);max-width:1080px;margin:22px 0}.publication-subtitle{font-size:clamp(20px,2.1vw,29px);line-height:1.35;max-width:1000px;letter-spacing:-.025em}.publication-byline{font-size:12px;margin-top:28px}.publication-language{font-size:11px;color:var(--muted);margin-top:12px}
.publication-figure{margin:0 var(--gutter) 58px}.publication-figure img{width:100%;height:auto;max-height:580px;object-fit:contain;background:#ebece5}.publication-figure figcaption{font-size:11px;color:var(--muted);margin-top:12px}.publication-body{max-width:820px;margin:0 auto;padding:0 30px 65px}.publication-body>p{font-size:17px;line-height:1.85;margin-bottom:25px}.publication-body h2{font-size:clamp(28px,3vw,40px);line-height:1.2;margin:50px 0 25px;text-wrap:pretty}.publication-principles{padding-left:24px;margin:30px 0}.publication-principles li{padding-left:8px;font-size:17px;line-height:1.85;margin-bottom:25px}.publication-principles strong{font-weight:600}.publication-sources{border-top:1px solid var(--line);margin-top:45px;padding-top:5px}.publication-sources h2{font-size:25px}.publication-sources p{font-size:12px;line-height:1.9;overflow-wrap:anywhere}.publication-author{border-top:1px solid var(--line);margin-top:38px;padding-top:5px}.publication-author h2{font-size:28px}.publication-author p{font-size:15px;line-height:1.8}.publication-author .arrow-link{margin-top:20px}.publication-return{padding:30px var(--gutter) 65px;border-top:1px solid var(--line)}
@media(max-width:900px){.publication-feature>a{grid-template-columns:1fr;gap:22px;padding:25px}.publication-card-copy{max-width:700px}}
@media(max-width:600px){.publication-header{padding-top:calc(var(--header) + 25px);padding-bottom:32px}.publication-back{margin-bottom:18px}.publication-header h1{font-size:42px}.publication-subtitle{font-size:22px}.publication-figure{margin-bottom:35px}.publication-body{padding:0 var(--gutter) 40px}.publication-body>p,.publication-principles li{font-size:16px;line-height:1.8}.publication-body h2{font-size:30px;margin-top:36px}.publication-feature{margin-block:28px 40px}.publication-feature>a{padding:20px}.publication-card-copy h2{font-size:34px}.publication-sources h2{font-size:25px}}
.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.person-card{max-width:390px}.person-trigger{display:block;width:100%;border:0;background:transparent;text-align:left;padding:0;cursor:pointer}.person-portrait{position:relative;display:block;overflow:hidden;aspect-ratio:4/5;background:#dddcd8}.person-portrait img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.portrait-note{position:absolute;left:16px;bottom:16px;font-size:10px;letter-spacing:.05em;background:#eeede8ed;color:#303030;padding:7px 10px}
.person-card .person-card-name{font-size:25px;line-height:1.2;letter-spacing:-.025em;margin:20px 0 0}.person-credentials{display:block;font-size:11px;letter-spacing:.08em;margin:8px 0 0}.person-role{display:block;font-size:13px;line-height:1.5;margin:8px 0 0}.person-reveal{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;font-size:25px;font-weight:300;background:var(--paper);color:var(--ink);transition:background .25s,color .25s}.person-trigger:hover .person-reveal,.person-trigger:focus-visible .person-reveal{background:var(--ink);color:var(--paper)}.person-trigger:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.person-dialog{position:fixed;inset:0;width:min(1180px,calc(100% - 48px));max-width:none;max-height:calc(100svh - 48px);margin:auto;padding:0;border:0;background:var(--paper);color:var(--ink);overscroll-behavior:contain}.person-dialog::backdrop{background:#141a16d9}.person-dialog-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 32px;background:var(--paper);border-bottom:1px solid var(--line)}.person-close{background:none;border:1px solid var(--line);padding:10px 16px;font-size:12px;flex-shrink:0;cursor:pointer}.person-dialog-content{padding:40px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:52px;align-items:start}.person-profile-portrait{position:sticky;top:110px}.person-profile-header{margin-bottom:28px}.person-profile-header h2{font-size:clamp(34px,3.8vw,52px);line-height:1.08;letter-spacing:-.04em}.person-profile-header .person-role{font-size:14px;margin-top:12px}.person-profile-header .person-credentials{font-size:11px;margin-top:14px}.person-story p{font-size:15px;line-height:1.75;margin:0 0 20px}.person-story .person-lead{font-size:19px;line-height:1.55}.person-background{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}.person-background p{font-size:12px;line-height:1.75;color:var(--muted);margin:0 0 16px}.person-background p:last-child{margin-bottom:0}
.person-story-link{margin:-8px 0 28px}.person-story-link .arrow-link{max-width:100%;gap:20px;font-size:12px}.person-story-link .arrow{flex-shrink:0}
.person-card-licensure{font-size:16px;font-weight:500;line-height:1.45;margin:14px 0 0;max-width:330px}
.person-licensure{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}
.person-license-title{font-size:clamp(21px,2.1vw,27px);line-height:1.3;letter-spacing:-.02em;margin:0}
.person-license-states{font-size:13px;line-height:1.7;margin:10px 0 0}
@media(max-width:900px){.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.person-dialog-content{gap:30px;padding:30px;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.person-story .person-lead{font-size:17px}.person-story p{font-size:14px}}
@media(max-width:600px){.about-people{padding-block:42px 50px}.people-grid{grid-template-columns:1fr}.person-card{max-width:360px}.person-card .person-card-name{font-size:25px}.person-dialog{width:calc(100% - 24px);max-height:calc(100svh - 24px)}.person-dialog-bar{padding:12px 18px;gap:12px}.person-dialog-bar .eyebrow{font-size:9px;max-width:150px}.person-dialog-content{padding:22px;gap:25px;grid-template-columns:1fr}.person-profile-portrait{position:relative;top:auto;width:62%;max-width:250px;aspect-ratio:4/5}.person-profile-portrait .portrait-note{font-size:8px;left:8px;bottom:8px;padding:5px 7px}.person-profile-header{margin-bottom:22px}.person-profile-header h2{font-size:34px}.person-story .person-lead{font-size:17px}.person-story p{font-size:14px}.person-background p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.person-reveal{transition:none}}
/* Preserve the supplied portrait framing and crossfade its original versions. */
.person-portrait.person-supplied-portrait{aspect-ratio:5/7;background:#171b1c}
.person-supplied-portrait img{object-fit:contain;filter:none}
.person-supplied-portrait .person-portrait-color{position:absolute;inset:0;opacity:0;transition:opacity .35s ease;pointer-events:none}
.person-trigger:focus-visible .person-portrait-color{opacity:1}
@media(hover:hover) and (pointer:fine){.person-trigger:hover .person-portrait-color{opacity:1}}
.idea-index{padding:0 var(--gutter) 75px}.idea-section-title{font-size:30px}.idea-context{font-size:13px;color:var(--muted);max-width:670px;margin:18px 0 35px}.idea-index .journal-card h2{font-size:clamp(28px,3vw,43px);max-width:560px}
.section-contact{background:var(--paper);color:var(--ink)}.contact-details{padding:0 var(--gutter) 95px;display:grid;grid-template-columns:1.5fr 1fr;gap:50px}.contact-details h2{font-size:13px;margin-bottom:20px;letter-spacing:0}.contact-details a{display:block;width:fit-content;min-height:44px;padding-block:12px}.contact-email{font-size:clamp(25px,3.5vw,51px);letter-spacing:-.04em;overflow-wrap:anywhere;max-width:100%}.contact-details>div:last-child>a:first-of-type{font-size:26px}.contact-details .arrow-link{font-size:13px}
.project-hero-text>.project-mark{width:46px;height:46px;margin-bottom:15px}
@media(max-width:1050px){.nav{gap:23px}.footer-top{flex-wrap:wrap}.signature-grid{gap:18px}.signature-grid h3{font-size:22px}.segment-card{padding:28px}.segment-card>.arrow{right:20px}}
@media(max-width:900px){
 .nav.open{gap:0}.nav-expertise{font-size:28px;width:100%;justify-content:space-between;padding:20px 0;border-bottom:1px solid #ffffff30}.expertise-menu{position:static;padding:8px 18px 20px;box-shadow:none;margin-block:0 18px;border:0}
 .expertise-choices{grid-template-columns:1fr;gap:0}.expertise-choices .expertise-choice{border:0;border-bottom:1px solid var(--line);padding:20px 0;gap:5px}.expertise-choice strong{font-size:28px}.expertise-description{max-width:100%;padding-right:40px;font-size:12px}.expertise-choice .arrow{right:0;top:22px}.expertise-menu>.arrow-link{font-size:12px;border-bottom:1px solid currentColor}
 .signature-grid{grid-template-columns:1fr 1fr;gap:32px 24px}.signature-grid h3{font-size:28px}.signature-grid .catalogue-image{aspect-ratio:1.7}.signature-grid .catalogue-identity{grid-template-columns:50px 1fr}.signature-grid .project-mark{width:50px;height:50px}
 .segment-card{min-height:355px;padding:25px}.segment-card h3{font-size:43px}.segment-headline{font-size:18px}.segment-services{font-size:11px}.segment-line{height:75px}
 .home-about,.home-idea{grid-template-columns:1fr 1fr}.gateway-copy{padding:40px var(--gutter)}.gateway-copy h2{font-size:38px}.gateway-image{min-height:380px}
 .contact-gateway{grid-template-columns:1fr}.contact-gateway .arrow-link{justify-self:start}.related-grid{grid-template-columns:1fr 1fr}.related-grid .catalogue-card:last-child{grid-column:1/-1;max-width:600px}.about-statement{grid-template-columns:1fr;gap:30px}.contact-details{grid-template-columns:1fr}.process-track{grid-template-columns:1fr 1fr;gap:35px}.process-track>div{min-height:130px}
}
@media(max-width:600px){
 .home-projects,.home-expertise,.related-projects{padding-block:42px}.destination-head{align-items:start;flex-direction:column;gap:12px;margin-bottom:25px}.destination-head h2{font-size:38px}.destination-head .arrow-link{font-size:11px}
 .signature-grid{gap:30px 15px}.signature-grid .catalogue-image{aspect-ratio:1.15}.signature-grid .catalogue-identity{display:flex;flex-direction:column;gap:6px;margin-top:10px}.signature-grid .project-mark{width:44px;height:44px}.signature-grid h3{font-size:23px}.signature-grid .catalogue-identity p{font-size:9px;margin-top:7px}
 .segment-grid{grid-template-columns:1fr;gap:14px}.segment-card{min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 30px;padding:25px}.segment-brand,.segment-card h3{grid-column:1}.segment-card h3{font-size:45px}.segment-line{grid-column:2;grid-row:1/4;margin:20px 0 0;height:85px}.segment-headline{grid-column:1/-1;margin:12px 0 7px}.segment-services{grid-column:1/-1;max-width:100%;font-size:12px}.segment-card>.arrow{top:22px}
 .home-about,.home-idea{grid-template-columns:1fr}.gateway-image{min-height:0;aspect-ratio:1.2}.gateway-copy{padding:40px var(--gutter)}.gateway-copy h2{font-size:38px}.home-idea{padding:0}.idea-preview{margin:0 var(--gutter) 40px}.contact-gateway{padding-block:42px}.contact-gateway h2{font-size:43px}
 .site-footer{padding-top:30px}.footer-top{align-items:start;gap:20px;padding-bottom:25px}.footer-top nav{width:100%;gap:0 20px}.footer-bottom{gap:6px 20px}.footer-preview{width:auto}.footer-top .footer-brand{margin:0}.footer-bottom .replay-arrival{order:3}
 .destination-intro{padding-top:calc(var(--header) + 40px);padding-bottom:38px}.destination-intro h1{font-size:49px;margin-top:20px}.destination-description{font-size:15px;margin-top:22px}.catalogue-section{padding-bottom:45px}.project-filters{gap:7px;padding-bottom:30px}.project-filters button{font-size:11px;padding:10px 14px}.catalogue-grid{grid-template-columns:1fr;gap:36px}.catalogue-identity h3{font-size:30px}.catalogue-identity{gap:12px;grid-template-columns:50px 1fr auto}.catalogue-identity .project-mark{width:50px;height:50px}
 .expertise-overview{padding-bottom:45px}.discipline-image{margin-bottom:38px}.discipline-image img{aspect-ratio:1.15;object-position:60% center}.service-list{grid-template-columns:1fr;gap:28px;padding-bottom:42px}.service-list h2{font-size:33px;margin-bottom:15px}.service-list p{font-size:14px}.related-grid{grid-template-columns:1fr;gap:32px}.related-grid .catalogue-card:last-child{grid-column:auto}.service-process{padding:32px 22px;margin-bottom:40px}.process-track{gap:25px}.process-track h2{font-size:26px}.service-enquiry{padding-block:35px;gap:20px}.service-enquiry h2{font-size:33px}.service-enquiry .arrow-link{font-size:12px}
 .about-statement{padding-bottom:42px}.about-statement h2{font-size:38px}.about-statement p{font-size:15px}.principal-intro{padding-block:42px}.principal-intro h2{font-size:42px}.idea-index{padding-bottom:45px}.idea-index .journal-card h2{font-size:32px}.idea-section-title{font-size:27px}.contact-details{gap:30px;padding-bottom:55px}.contact-email{font-size:28px}.project-hero-text>.project-mark{width:38px;height:38px}
}
/* Ideas: keyboard-accessible editorial categories. */
.idea-tabs{display:none;flex-wrap:wrap;gap:10px;margin-bottom:40px;border-bottom:1px solid var(--line);padding-bottom:20px}
.js .idea-tabs{display:flex}
.idea-tabs button{border:1px solid var(--line);background:none;padding:13px 19px;font-size:13px}
.idea-tabs button[aria-selected="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.idea-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}
.idea-feature h2{font-size:clamp(35px,4.4vw,62px);max-width:600px}
.idea-feature p{margin-top:24px;font-size:15px;max-width:400px}
.idea-feature .idea-related-label{font-size:9px;margin-top:40px;color:var(--muted)}
.idea-feature .arrow-link{margin-top:8px}
.idea-feature figure{margin:0;min-width:0}
.idea-feature img{width:100%;aspect-ratio:1.15;object-fit:cover}
.idea-feature .idea-plan{object-fit:contain;background:#e7e9e0}
.idea-feature figcaption{font-size:10px;color:var(--muted);line-height:1.6;margin-top:12px}
.idea-panel:focus-visible{outline:2px solid var(--accent);outline-offset:8px}
html:not(.js) .idea-panel+.idea-panel{margin-top:65px;padding-top:40px;border-top:1px solid var(--line)}
@media(max-width:600px){
 .idea-tabs{gap:7px;margin-bottom:30px}
 .idea-tabs button{font-size:11px;padding:11px 13px}
 .idea-feature{grid-template-columns:1fr;gap:30px}
 .idea-feature h2{font-size:39px}
 .idea-feature p{font-size:14px}
 .idea-feature .idea-related-label{margin-top:25px}
 .idea-feature img{aspect-ratio:1.2}
 .service-process .process-track{grid-template-columns:1fr}
 .service-process .process-track>div{min-height:0;flex-direction:row;align-items:center;padding-top:18px;gap:20px}
 .process-track span{transform:rotate(90deg)}
}
/* Contact: visual invitation, enquiries, locations, dedicated routes, careers. */
.contact-hero{position:relative;height:76svh;min-height:540px;max-height:850px;color:#fff;background:var(--ink)}
.contact-hero>img{width:100%;height:100%;object-fit:cover;object-position:center}
.contact-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,#17201bba)}
.contact-hero>div{position:absolute;z-index:1;left:var(--gutter);right:var(--gutter);bottom:35px}
.contact-hero h1{font-size:clamp(52px,6.8vw,96px);max-width:950px;margin-top:20px}
.contact-invitation{font-size:clamp(20px,2vw,28px);margin-top:22px}
.contact-image-credit{font-size:10px;margin-top:30px}
.contact-section-nav{display:flex;flex-wrap:wrap;gap:4px 30px;padding:16px var(--gutter);background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line)}
.contact-section-nav a{display:inline-flex;align-items:center;min-height:44px;padding-block:10px;font-size:13px;border-bottom:1px solid transparent}
.contact-section-nav a:hover{color:var(--accent);border-bottom-color:currentColor}
.enquiry-section,.office-section,.contact-channels,.careers-section{padding:75px var(--gutter);border-bottom:1px solid var(--line)}
.enquiry-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;background:var(--paper);color:var(--ink)}
.contact-section-intro h2,.office-section>h2,.contact-channels>h2,.careers-section h2{font-size:clamp(35px,4.3vw,60px)}
.contact-section-intro h2{margin-top:0}
.contact-section-intro .contact-subheading{font-size:23px;margin-top:24px}
.contact-section-intro>p:last-child{font-size:14px;max-width:350px;margin-top:25px;color:var(--muted)}
.contact-direct-email{display:inline-block;font-size:clamp(17px,1.6vw,23px);margin-top:30px;overflow-wrap:anywhere;padding-block:10px}
.enquiry-form{display:none;grid-template-columns:1fr 1fr;gap:30px 24px;align-content:start}
.js .enquiry-form{display:grid}
.enquiry-form .full{grid-column:1/-1}
.form-field{display:flex;flex-direction:column;min-width:0;gap:12px}
.form-field label{font-size:12px}
.form-field input,.form-field textarea,.form-field select{width:100%;min-height:48px;border:0;border-bottom:1px solid #8c9187;border-radius:0;background:transparent;color:var(--ink);padding:12px 5px;font:inherit;font-size:16px;outline-offset:4px}
.form-field textarea{resize:vertical;min-height:140px}
.form-field :is(input,textarea,select):focus-visible{outline:2px solid var(--accent)}
.form-note,.enquiry-ready p{font-size:12px;color:var(--muted)}
.enquiry-submit{justify-self:start;padding:15px 24px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);font-size:13px}
.enquiry-ready{border-top:1px solid var(--line);padding-top:20px}
.enquiry-ready .arrow-link{margin-top:12px}
.office-section{background:#e7e9e0;color:var(--ink)}
.contact-channels{background:var(--paper);color:var(--ink)}
.office-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:45px}
.office-card{border-top:1px solid #a5aba0;padding-top:28px;display:flex;align-items:flex-start;flex-direction:column;gap:12px;min-width:0}
.office-card h3{font-size:clamp(42px,5vw,72px);margin-block:8px 12px}
.office-card .office-name{font-size:19px}
.office-card>p:not(.eyebrow):not(.office-name),.office-card>a{font-size:14px}
.office-card>a:not(.arrow-link){padding-block:10px}
.office-card .arrow-link{margin-top:auto}
.channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:45px}
.channel-grid article{border-top:1px solid var(--line);padding-top:28px;display:flex;flex-direction:column;align-items:flex-start}
.channel-grid h3{font-size:clamp(28px,2.8vw,40px);margin-bottom:22px}
.channel-grid p{font-size:14px;max-width:350px;margin-bottom:30px}
.channel-grid .arrow-link{margin-top:auto}
.careers-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:var(--ink);color:var(--paper)}
.careers-section h2{margin-top:20px}.careers-section p{max-width:470px}
.careers-section .careers-tagline{font-size:23px;margin-top:24px}
.careers-section a:focus-visible{outline-color:var(--clay)}
.careers-section .arrow-link{margin-top:30px}
@media(max-width:900px){
 .enquiry-section{grid-template-columns:1fr;gap:40px}
 .contact-section-intro>p:last-child{max-width:520px}
 .channel-grid{grid-template-columns:1fr;gap:35px}
 .channel-grid p{max-width:520px;margin-bottom:15px}
}
@media(max-width:600px){
 .contact-hero{height:70svh;min-height:500px;max-height:700px}
 .contact-hero>img{object-position:60% center}
 .contact-hero h1{font-size:clamp(40px,12vw,48px)}
 .enquiry-section,.office-section,.contact-channels,.careers-section{padding:42px var(--gutter)}
 .enquiry-form,.office-grid,.careers-section{grid-template-columns:1fr}
 .enquiry-form{gap:24px}.office-grid{gap:40px;margin-top:30px}
 .office-card h3{font-size:46px}.careers-section{gap:25px}
 .channel-grid{margin-top:30px}.channel-grid h3{font-size:32px}
 .careers-section .arrow-link{margin-top:20px}
}

/* Editorial reflections: complete images, readable narrative, explicit authorship. */
.journal-card[data-reflection] img{aspect-ratio:16/9;object-fit:contain;background:#e7e9e0}
.reflection-feature{padding-top:var(--header)}
.reflection-media{width:calc(100% - 2 * var(--gutter));max-width:1240px;margin:0 auto 75px}
.reflection-media .zoom-trigger{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.reflection-media img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.reflection-media figcaption{display:flex;justify-content:space-between;gap:24px;margin-top:14px;color:var(--muted);font-size:11px;line-height:1.6}
.reflection-media figcaption>span:first-child{max-width:940px}
.reflection-media figcaption>span:last-child{font-size:20px}
.reflection-lead{width:100%;max-width:none;margin-bottom:0}
.reflection-lead figcaption{margin-inline:var(--gutter)}
.reflection-heading{max-width:1250px;margin:auto;padding:48px var(--gutter) 50px}
.reflection-heading>.arrow-link{margin-bottom:38px}
.reflection-heading .eyebrow{margin-bottom:20px}
.reflection-heading h1{font-size:clamp(40px,5.5vw,76px);max-width:1080px;line-height:1.06}
.reflection-project-name{font-size:21px;margin-top:27px}
.reflection-byline{font-size:14px;margin-top:14px}
.reflection-role{font-size:13px;line-height:1.7;margin-top:8px;max-width:760px;color:var(--muted)}
.reflection-deck{font-size:clamp(19px,2vw,25px);line-height:1.5;max-width:890px;margin-top:30px}
.reflection-opening-credit{font-size:13px;max-width:740px;border-left:2px solid var(--accent);padding-left:18px;margin-top:27px}
.reflection-contents{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 30px;padding:16px var(--gutter);border-block:1px solid var(--line);margin-bottom:68px}
.reflection-contents a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;border-bottom:1px solid transparent}
.reflection-contents a:hover{color:var(--accent);border-color:currentColor}
.reflection-chapter{max-width:780px;margin:0 auto 70px;padding-inline:var(--gutter)}
@media(min-width:1000px){.reflection-chapter{max-width:800px;padding-inline:0}}
.reflection-chapter h2{font-size:clamp(29px,3.1vw,42px);line-height:1.15;margin-bottom:30px;text-wrap:initial}
.reflection-chapter h3{font-size:25px;line-height:1.25;margin:30px 0 20px;letter-spacing:-.02em}
.reflection-chapter p,.reflection-chapter li{font-size:17px;line-height:1.85}
.reflection-chapter p+p{margin-top:22px}
.reflection-chapter ul{padding-left:24px;margin:24px 0}
.reflection-chapter li+li{margin-top:12px}
.reflection-chapter blockquote{border-left:2px solid var(--accent);padding-left:24px;margin:32px 0;font-size:25px;line-height:1.55}
.reflection-diagram{max-width:1000px}
.reflection-detail-grid{margin-top:26px}
.reflection-detail-grid>div{display:grid;grid-template-columns:100px 1fr;gap:25px;border-top:1px solid var(--line);padding:18px 0}
.reflection-detail-grid dt{font-size:11px;letter-spacing:.1em;line-height:1.7}
.reflection-detail-grid dd{margin:0;font-size:15px;line-height:1.7}
.reflection-credits{padding:65px var(--gutter);background:#e7e9e0}
.reflection-credits>h2,.reflection-credits>h3,.reflection-credits>p,.reflection-credits>dl,.reflection-credits>ul{max-width:1120px;margin-left:auto;margin-right:auto}
.reflection-credits h2{font-size:clamp(33px,3.4vw,47px);margin-bottom:28px}
.reflection-credits p{font-size:14px;line-height:1.8}
.reflection-credit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 55px;margin-block:36px}
.reflection-credit-grid>div{padding-top:17px;border-top:1px solid #acb2a7}
.reflection-credit-grid dt{font-size:10px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px;line-height:1.5}
.reflection-credit-grid dd{margin:0;font-size:15px;line-height:1.65}
.reflection-credits h3{font-size:23px;margin-top:38px;margin-bottom:14px}
.reflection-sources{padding-left:19px;line-height:1.8;font-size:13px}
.reflection-sources a{display:inline-block;padding-block:8px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
@media(max-width:600px){
 .reflection-heading{padding-top:30px;padding-bottom:34px}
 .reflection-heading>.arrow-link{margin-bottom:25px}
 .reflection-heading h1{font-size:clamp(37px,10vw,52px)}
 .reflection-project-name{font-size:18px;margin-top:22px}
 .reflection-byline,.reflection-role{font-size:12px}
 .reflection-deck{font-size:19px;margin-top:25px}
 .reflection-opening-credit{font-size:12px}
 .reflection-contents{justify-content:flex-start;gap:2px 22px;margin-bottom:40px}
 .reflection-contents a{font-size:12px}
 .reflection-chapter{margin-bottom:42px}
 .reflection-chapter h2{margin-bottom:22px}
 .reflection-chapter p,.reflection-chapter li{font-size:16px;line-height:1.8}
 .reflection-chapter blockquote{font-size:22px;padding-left:18px}
 .reflection-media{margin-bottom:42px}
 .reflection-lead{margin-bottom:0}
 .reflection-media figcaption{font-size:10px;gap:15px;margin-top:10px}
 .reflection-detail-grid>div{grid-template-columns:75px 1fr;gap:17px}
 .reflection-detail-grid dt{font-size:10px}
 .reflection-detail-grid dd{font-size:14px}
 .reflection-credits{padding-block:42px}
 .reflection-credit-grid{grid-template-columns:1fr;gap:22px}
 .reflection-credits h2{font-size:34px}
}

/* Research archive and source-led investigations. */
.research-card{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:center;padding-block:26px 55px;border-bottom:1px solid var(--line)}
.research-card+.research-card{padding-top:55px}
.research-card-image{display:block}
.research-card-image img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.research-card-copy{min-width:0}
.research-card-copy h2{font-size:clamp(34px,3.6vw,51px);margin-top:18px;max-width:520px}
.research-card-copy .research-card-deck{font-size:22px;line-height:1.4;margin:24px 0 18px}
.research-card-copy>p:not(.eyebrow):not(.research-card-deck){font-size:14px;max-width:430px}
.research-card-copy .research-card-author{color:var(--muted);margin-top:24px;font-size:12px!important}
.research-card-copy .arrow-link{margin-top:14px}
.research-article{padding-top:var(--header)}
.research-figure{width:calc(100% - 2 * var(--gutter));max-width:1240px;margin:0 auto 75px}
.research-figure .zoom-trigger{display:block;width:100%;border:0;background:transparent;padding:0;cursor:zoom-in}
.research-figure img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.research-figure figcaption{display:flex;justify-content:space-between;gap:22px;color:var(--muted);font-size:11px;line-height:1.6;margin-top:14px}
.research-figure figcaption>span:last-child{font-size:20px}
.research-hero{width:100%;max-width:none;margin-bottom:0}
.research-hero figcaption{margin-inline:var(--gutter)}
.research-native-limit .zoom-trigger{max-width:var(--native-width);margin-inline:auto}
.research-avery .research-hero{padding-top:26px}
.research-avery .research-hero figcaption{max-width:1062px;margin-inline:auto;padding-inline:22px}
.research-small-house .research-hero{background:white;padding-top:20px}
.research-small-house .research-hero .zoom-trigger{max-width:700px}
.research-small-house .research-hero figcaption{max-width:838px;margin-inline:auto;padding:0 22px 20px}
.research-heading{padding:50px var(--gutter) 60px;max-width:1320px;margin-inline:auto}
.research-heading>.arrow-link{margin-bottom:30px}
.research-heading h1{font-size:clamp(42px,6.3vw,88px);line-height:1.05;max-width:1100px}
.research-deck{font-size:clamp(24px,2.7vw,38px);line-height:1.3;letter-spacing:-.03em;margin-top:25px;max-width:950px}
.research-meta{font-size:11px;color:var(--muted);margin-top:27px;line-height:1.7}
.research-author{font-size:13px;margin-top:10px}
.research-introduction{max-width:850px;font-size:19px;line-height:1.75;margin-top:33px}
.research-section-nav{border-block:1px solid var(--line);display:flex;justify-content:center;flex-wrap:wrap;gap:8px 32px;padding:17px var(--gutter);margin-bottom:70px}
.research-section-nav a{display:flex;align-items:center;min-height:44px;font-size:13px;border-bottom:1px solid transparent}
.research-section-nav a:hover{color:var(--accent);border-color:currentColor}
.research-story{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;max-width:1400px;padding:0 var(--gutter);margin:0 auto 55px}
.research-story h2{font-size:clamp(32px,3.8vw,54px);line-height:1.1;max-width:560px;margin-top:18px}
.research-story p:not(.eyebrow){font-size:16px;line-height:1.85;max-width:620px}
.research-story p+p{margin-top:20px}
.research-parti-sequence{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:26px;padding:0 var(--gutter);max-width:1400px;margin:0 auto 70px}
.research-parti-sequence .research-figure{width:100%;margin:0}
.research-parti-sequence img{aspect-ratio:1.55;object-fit:contain;background:white}
.research-systems{padding:65px var(--gutter);margin-bottom:70px;background:#e7e9e0}
.research-systems>h2{font-size:clamp(34px,4vw,57px);margin-top:18px;max-width:850px}
.research-systems-intro{font-size:15px;margin-top:23px;max-width:660px}
.research-study-tabs{display:none;gap:9px;margin:30px 0}
.js .research-study-tabs{display:flex;flex-wrap:wrap}
.research-study-tabs button{background:transparent;border:1px solid #959d8e;padding:13px 22px;font-size:13px;min-height:46px}
.research-study-tabs button[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.research-layer{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center;max-width:1240px;margin:40px auto 0}
.research-layer-copy{max-width:450px}
.research-layer h3{font-size:clamp(28px,3vw,42px);line-height:1.15}
.research-layer p{font-size:16px;line-height:1.85;margin-top:24px}
.research-layer .research-figure{width:100%;margin:0}
.research-layer img{max-height:680px;object-fit:contain;object-position:center}
.research-layer:focus-visible{outline:2px solid var(--accent);outline-offset:8px}
.research-atmosphere{padding:65px var(--gutter);margin-bottom:65px;background:var(--ink);color:var(--paper)}
.research-atmosphere h2{font-size:clamp(34px,4.6vw,62px);margin-top:20px;max-width:940px}
.research-atmosphere-intro{font-size:18px;max-width:860px;line-height:1.8;margin-top:28px}
.research-question-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;margin-top:48px}
.research-question-grid>div{border-top:1px solid #64695f;padding-top:24px}
.research-question-grid h3{font-size:26px;line-height:1.2;margin-bottom:20px}
.research-question-grid p{font-size:14px;line-height:1.8}
.research-detail-pair{display:grid;grid-template-columns:1.25fr 1fr;align-items:start;gap:45px;padding:0 var(--gutter);max-width:1400px;margin:0 auto 70px}
.research-detail-pair .research-figure{width:100%;margin:0}
.research-assembly-pair{grid-template-columns:1.5fr 1fr;max-width:1080px}
.research-closing{max-width:1080px;margin:auto;padding:0 var(--gutter) 70px}
.research-closing h2{font-size:clamp(34px,4vw,54px);max-width:1000px;margin-bottom:28px}
.research-closing>p{font-size:18px;line-height:1.8;max-width:850px}
.research-record{border-top:1px solid var(--line);margin-top:48px;padding-top:26px}
.research-record h3{font-size:18px;margin-bottom:14px}
.research-record p{font-size:12px;line-height:1.8;max-width:850px}
.research-record p+p{margin-top:14px}
@media(max-width:900px){
 .research-card{gap:30px;grid-template-columns:1fr 1fr}
 .research-card-copy h2{font-size:36px}
 .research-story{gap:35px;grid-template-columns:1fr 1fr}
 .research-layer{gap:35px}
 .research-question-grid{gap:25px}
}
@media(max-width:700px){
 .research-card{grid-template-columns:1fr;gap:25px;padding-bottom:38px}
 .research-card+.research-card{padding-top:38px}
 .research-card-copy h2{font-size:38px}
 .research-card-copy .research-card-deck{font-size:21px;margin-top:18px}
 .research-card-copy>p:not(.eyebrow):not(.research-card-deck){max-width:none}
 .research-figure{margin-bottom:42px}
 .research-figure figcaption{font-size:10px;gap:15px}
 .research-hero{margin-bottom:0}
 .research-avery .research-hero{padding-top:0}
 .research-heading{padding-block:30px 38px}
 .research-heading>.arrow-link{margin-bottom:25px}
 .research-heading h1{font-size:clamp(39px,11vw,63px)}
 .research-deck{font-size:25px;margin-top:22px}
 .research-introduction{font-size:17px;line-height:1.75;margin-top:26px}
 .research-section-nav{justify-content:flex-start;gap:2px 20px;margin-bottom:40px}
 .research-section-nav a{font-size:12px}
 .research-story{grid-template-columns:1fr;gap:25px;margin-bottom:35px}
 .research-story h2{font-size:36px}
 .research-story p:not(.eyebrow){font-size:15px;line-height:1.8}
 .research-parti-sequence{grid-template-columns:1fr;gap:28px;margin-bottom:42px}
 .research-parti-sequence img{max-height:300px}
 .research-systems{padding-block:40px;margin-bottom:42px}
 .research-systems>h2{font-size:36px}
 .research-study-tabs{gap:7px;margin-block:25px}
 .research-study-tabs button{font-size:12px;padding:11px 14px}
 .research-layer{grid-template-columns:1fr;gap:25px;margin-top:28px}
 .research-layer h3{font-size:29px}
 .research-layer p{font-size:15px;margin-top:20px}
 .research-layer img{max-height:none}
 .research-atmosphere{padding-block:42px;margin-bottom:42px}
 .research-atmosphere h2{font-size:37px}
 .research-atmosphere-intro{font-size:16px;margin-top:25px}
 .research-question-grid{grid-template-columns:1fr;gap:28px;margin-top:32px}
 .research-question-grid h3{font-size:27px;margin-bottom:15px}
 .research-detail-pair{grid-template-columns:1fr;gap:30px;margin-bottom:42px}
 .research-closing{padding-bottom:42px}
 .research-closing h2{font-size:36px}
 .research-closing>p{font-size:16px}
 .research-record{margin-top:30px}
}
/* Fogón: keep the complete supplied renderings in the project story. */
.fogon-project .gallery figure.full img{height:auto;aspect-ratio:auto;object-fit:contain}
/* Burlin House: preserve both gables and the complete café frontage. */
.campus-project .project-hero{height:auto;min-height:0;max-height:none;padding-top:var(--header)}
.campus-project .project-hero>img{height:auto;aspect-ratio:auto;object-fit:contain}
.campus-project .project-hero:after{display:none}
.campus-project .project-hero-text{position:static;padding:30px var(--gutter) 40px;background:var(--ink)}
.campus-project .project-hero-text>.project-mark{float:right;margin:0 0 0 24px}
.campus-project .project-hero h1{font-size:clamp(38px,5.2vw,74px);margin-top:12px;max-width:1000px}
.campus-project .gallery img{height:auto;aspect-ratio:auto;object-fit:contain}
.catalogue-card[data-project-type="educational"] .catalogue-image img{object-fit:contain}
.burlin-project .project-hero{height:auto;min-height:0;max-height:none;padding-top:var(--header)}
.burlin-project .project-hero>img{height:auto;aspect-ratio:auto;object-fit:contain}
.burlin-project .project-hero:after{display:none}
.burlin-project .project-hero-text{position:static;padding:30px var(--gutter) 40px;background:var(--ink)}
.burlin-project .project-hero-text>.project-mark{float:right;margin:0 0 0 24px}
.burlin-project .project-hero h1{font-size:clamp(42px,5.2vw,74px);margin-top:12px}
.burlin-project .gallery figure.full img{height:auto;aspect-ratio:auto;object-fit:contain}
.catalogue-card:has(a[href="burlin-house.html"]) .catalogue-image{aspect-ratio:1.5}
.catalogue-card:has(a[href="burlin-house.html"])>a:hover .catalogue-image img{transform:none}
.studio-related .related-grid:has(>.catalogue-card:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.studio-related .related-grid:has(>.catalogue-card:nth-child(4):last-child)>.catalogue-card:last-child{grid-column:auto;max-width:none}
@media(max-width:600px){.studio-related .related-grid:has(>.catalogue-card:nth-child(4):last-child){grid-template-columns:1fr}}
