:root{--paper:#f4f2ed;--paper-deep:#e9e5dd;--ink:#202622;--dark:#181e1b;--muted:#666b63;--line:#cccfc5;--accent:#9a7856;--sand:#d8c6ac;--gutter:clamp(24px,5.1vw,88px);--font:Manrope,Arial,sans-serif;--serif:"Source Sans 3",Arial,sans-serif;--ease:cubic-bezier(.2,.7,.2,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.65 var(--font);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{background:none;border:0}a{color:inherit;text-decoration:none}a,button{touch-action:manipulation}img{max-width:100%;display:block}figure,p,h1,h2,h3,h4{margin:0}h1,h2,h3,h4{font-weight:450}ul,ol{padding:0}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:var(--sand);color:var(--ink)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.icon{display:inline-block;flex:none;width:23px;height:23px;vertical-align:middle}.mono,.eyebrow{font-size:10px;line-height:1.5;letter-spacing:.11em;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:24px;font-weight:600}.section-number{font-weight:400;color:var(--muted)}.section{padding:100px var(--gutter)}h1{font-size:clamp(46px,6vw,96px);line-height:1.09;letter-spacing:-.065em}h2{font-size:clamp(38px,4.1vw,66px);line-height:1.12;letter-spacing:-.06em}h3{font-size:24px;line-height:1.28;letter-spacing:-.035em}em{font:italic 1.07em/1.06 var(--serif);letter-spacing:-.04em}p{max-width:65ch}small{line-height:1.5}.lead{font-size:clamp(18px,1.55vw,24px);line-height:1.6;letter-spacing:-.025em}.muted{color:var(--muted);font-size:13px}.text-link{display:inline-flex;align-items:center;gap:22px;font-size:12px;line-height:1.6;font-weight:600;border-bottom:1px solid currentColor;padding:8px 0;transition:gap .3s var(--ease)}.text-link:hover{gap:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:19px 24px;font-size:12px;font-weight:600;line-height:1.5;border:1px solid transparent;transition:background .25s,color .25s,transform .25s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#384139}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:var(--sand)}.skip-link{position:fixed;top:8px;left:8px;z-index:200;background:var(--paper);padding:10px 20px;transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{position:fixed;z-index:30;top:0;left:0;right:0;height:99px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0 var(--gutter);background:rgba(244,242,237,.97);border-bottom:1px solid rgba(32,38,34,.14);transition:background .3s,color .3s,height .3s}.site-header.over-image{background:transparent;color:var(--paper);border-color:rgba(255,255,255,.2)}.site-header.is-scrolled{height:80px;background:rgba(244,242,237,.97);color:var(--ink);border-color:var(--line);backdrop-filter:blur(12px)}.brand{display:flex;flex-direction:column;flex:none;line-height:1.1}.brand-name{font-size:25px;font-weight:600;letter-spacing:-.075em}.brand-dot{color:var(--accent)}.brand-line{margin-top:9px;font-size:7px;letter-spacing:.14em;text-transform:uppercase;font-weight:500}.desktop-nav{display:flex;gap:clamp(18px,2.5vw,42px);margin-left:auto;margin-right:24px}.desktop-nav a{position:relative;font-size:11px;padding:10px 0}.desktop-nav a::after{position:absolute;content:'';height:1px;bottom:5px;left:0;width:100%;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover::after,.desktop-nav a[aria-current]::after{transform:scaleX(1)}.header-end{display:flex;align-items:center;gap:28px}.languages{display:flex;gap:11px;font-size:9px;letter-spacing:.05em}.languages a{opacity:.55;padding:8px 0}.languages a[aria-current]{opacity:1;border-bottom:1px solid currentColor}.contact-nav{display:flex;align-items:center;gap:20px;padding:10px 15px;border:1px solid currentColor;font-size:10px}.contact-nav .icon{width:18px;height:18px}.menu-toggle{display:none;align-items:center;gap:12px;padding:14px 0;font-size:10px}.menu-lines{height:11px;width:22px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.navigation-panel{position:fixed;z-index:100;inset:0;background:var(--dark);color:var(--paper);padding:100px var(--gutter) 40px;overflow-y:auto}.navigation-panel nav{max-width:1000px;margin:auto}.navigation-panel nav a{display:flex;align-items:center;gap:35px;font-size:clamp(30px,5vw,70px);letter-spacing:-.04em;padding:13px 0;border-bottom:1px solid #475047}.navigation-panel nav .mono{width:30px;color:var(--sand)}.navigation-panel nav .icon{margin-left:auto;width:35px;height:35px}.menu-close{position:absolute;right:var(--gutter);top:25px;display:flex;gap:25px;align-items:center;font-size:12px}.menu-close span{font-size:35px;font-weight:200}.menu-bottom{display:flex;justify-content:space-between;max-width:1000px;margin:60px auto 0;font-size:12px}.home-hero{position:relative;min-height:780px;height:100svh;max-height:1100px;overflow:hidden;background:#252c29;color:var(--paper)}.hero-photo{position:absolute;top:0;bottom:0;left:24%;right:0}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:58% center;filter:saturate(.42) brightness(.87);animation:hero-entry 1.4s var(--ease) both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,26,22,.97) 0%,rgba(18,26,22,.75) 30%,rgba(18,26,22,.15) 76%),linear-gradient(0deg,rgba(18,26,22,.8),transparent 40%)}.hero-grid{position:absolute;inset:99px var(--gutter) 0;display:flex;justify-content:space-between;pointer-events:none}.hero-grid i{width:1px;background:rgba(255,255,255,.09)}.hero-copy{position:relative;padding:clamp(160px,21vh,240px) var(--gutter) 150px;z-index:1}.hero-copy .eyebrow{margin-bottom:33px;font-size:10px;letter-spacing:.16em;color:#e5ddd0}.hero-copy h1{font-size:clamp(55px,7.15vw,116px);font-weight:400;line-height:1.03;max-width:1300px;letter-spacing:-.07em;animation:copy-entry .9s .1s var(--ease) both}.hero-copy h1 em{color:#e0cfb8;font-size:1.09em}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-top:46px;max-width:1180px}.hero-bottom>p{font-size:14px;max-width:345px;line-height:1.7;color:#e3e5df}.hero-actions{display:flex;align-items:center;gap:32px}.hero-actions .text-link{color:#e3e5df;font-size:10px}.hero-actions .button{font-size:10px}.hero-foot{position:absolute;bottom:30px;left:var(--gutter);right:var(--gutter);display:flex;align-items:flex-end;justify-content:space-between;gap:20px;z-index:2}.scroll-link{font-size:9px;display:flex;align-items:center;gap:14px}.scroll-link .icon{height:31px}.hero-location{font-size:8px;color:#d6d9d1}.hero-caption{display:grid;grid-template-columns:auto 25px;column-gap:35px;row-gap:9px;font-size:10px;line-height:1.5;min-width:245px}.hero-caption .mono{grid-column:1;font-size:8px;color:var(--sand)}.hero-caption .icon{grid-column:2;grid-row:1/3;align-self:end}.intro-section{padding-top:110px;padding-bottom:65px}.intro-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;margin-top:40px}.intro-layout h2{max-width:650px}.intro-copy{padding-top:4px}.intro-copy>.lead{margin-bottom:24px}.intro-copy>p:not(.lead){font-size:13px;color:var(--muted)}.intro-copy .text-link{margin-top:23px}.metrics{display:grid;grid-template-columns:1fr 1fr 1.18fr;gap:6%;margin-top:80px;border-top:1px solid var(--line);padding-top:35px}.metrics>div{display:flex;align-items:flex-end;gap:24px}.metrics strong{font-size:76px;line-height:1.05;font-weight:400;letter-spacing:-.075em}.metrics strong>span{color:var(--accent)}.metrics>div>span{max-width:145px;font-size:10px;line-height:1.6;padding-bottom:5px}.metrics .pmp-metric{font-size:57px;letter-spacing:-.065em}.metrics sup{font-size:18px;vertical-align:top;margin-left:6px}.selected-section{padding-top:72px}.section-heading{display:flex;justify-content:space-between;gap:8%;align-items:flex-end;margin-bottom:60px}.section-heading h2{margin-top:24px}.section-heading>div+div{max-width:300px}.section-heading>div+div>p,.section-heading>p{font-size:13px;color:var(--muted);max-width:320px}.section-heading .text-link{margin-top:18px}.selected-grid{display:grid;grid-template-columns:1.08fr 1fr;column-gap:7%;row-gap:70px}.selected-grid .project-card:nth-child(2n){transform:translateY(80px)}.selected-grid .project-card:nth-child(3n) .project-image-link{aspect-ratio:1.25}.selected-section{padding-bottom:170px}.project-image-link{position:relative;display:block;overflow:hidden;aspect-ratio:1.37;background:var(--paper-deep)}.project-image-link img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease),filter .5s;filter:saturate(.75)}.project-image-link:hover img,.project-image-link:focus-visible img{transform:scale(1.05);filter:saturate(1)}.project-image-index{position:absolute;left:18px;top:16px;color:white;mix-blend-mode:difference;font-size:9px}.project-image-arrow{position:absolute;bottom:0;right:0;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:var(--paper);color:var(--ink);transition:background .3s}.project-image-link:hover .project-image-arrow{background:var(--sand)}.project-card-meta{display:flex;justify-content:space-between;gap:12px;margin-top:20px;color:var(--muted);font-size:8px;letter-spacing:.06em;text-transform:uppercase}.project-card h3{font-size:24px;margin-top:9px;max-width:540px}.project-card>p{font-size:12px;color:var(--muted);margin-top:8px}.home-expertise{background:var(--paper-deep);padding-top:90px;padding-bottom:90px}.home-expertise .section-heading{margin-bottom:45px}.expertise-row{border-top:1px solid #bfc3b8}.expertise-row:last-child{border-bottom:1px solid #bfc3b8}.expertise-row summary{list-style:none;display:grid;grid-template-columns:75px 1fr 30px;align-items:center;gap:20px;padding:29px 0;cursor:pointer}.expertise-row summary::-webkit-details-marker,.training-group summary::-webkit-details-marker{display:none}.expertise-row h3{font-size:clamp(22px,2.2vw,33px);font-weight:400;line-height:1.25}.expertise-no{color:var(--accent)}.expand-icon{position:relative;width:20px;height:20px}.expand-icon::before,.expand-icon::after{position:absolute;content:'';height:1px;width:16px;top:10px;left:2px;background:currentColor;transition:transform .25s}.expand-icon::after{transform:rotate(90deg)}details[open]>summary .expand-icon::after{transform:rotate(0)}.expertise-detail{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:5px 80px 40px 95px}.expertise-detail p{font-size:15px}.expertise-detail ul{list-style:none;margin:0 0 20px}.expertise-detail li{font-size:12px;position:relative;padding-left:16px;margin-bottom:9px;color:var(--muted)}.expertise-detail li::before{content:'—';position:absolute;left:0;color:var(--accent)}.expertise-detail .text-link{font-size:11px}.pmo-feature{display:grid;grid-template-columns:1fr 1fr;background:var(--dark);color:var(--paper);min-height:650px}.pmo-image{overflow:hidden}.pmo-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.4) brightness(.8)}.pmo-copy{padding:80px var(--gutter) 80px 12%;display:flex;flex-direction:column;align-items:flex-start}.pmo-copy .eyebrow{color:var(--sand)}.pmo-copy h2{margin:35px 0;font-size:clamp(38px,3.7vw,60px)}.pmo-copy h2 em{color:var(--sand)}.pmo-copy>p{font-size:13px;color:#c9d0c7;line-height:1.9}.pmo-copy>small{font-size:9px;color:var(--sand);margin-top:30px;max-width:300px}.pmo-copy .text-link{margin-top:30px}.career-preview{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;align-items:center}.career-preview h2{margin-top:25px}.career-preview>div>p:not(.eyebrow){margin-top:25px;max-width:340px;font-size:13px;color:var(--muted)}.career-preview .text-link{margin-top:22px}.career-mini-row{display:grid;grid-template-columns:90px 1fr 22px;gap:15px;align-items:center;border-top:1px solid var(--line);padding:25px 0;font-size:16px;transition:padding-left .3s}.career-mini-row:hover{padding-left:7px}.career-mini-row:last-child{border-bottom:1px solid var(--line)}.career-mini-row>.mono{font-size:8px;color:var(--accent)}.career-mini-row small{display:block;font-size:9px;color:var(--muted);margin-top:6px}.career-mini-row .icon{width:19px}.closing-cta{background:var(--paper-deep);padding-top:80px;padding-bottom:70px}.closing-cta>div{display:flex;justify-content:space-between;align-items:center;gap:30px;margin:35px 0}.closing-cta h2{font-size:clamp(48px,7vw,110px)}.circle-link{width:125px;height:125px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--ink);transition:background .3s,color .3s}.circle-link:hover{background:var(--ink);color:var(--paper)}.circle-link .icon{width:48px;height:48px}.closing-email{font-size:14px;border-bottom:1px solid var(--line);padding-bottom:5px}.site-footer{padding:65px var(--gutter) 25px;background:var(--ink);color:var(--paper)}.footer-top{display:flex;align-items:center;gap:50px;justify-content:space-between}.footer-brand{font-size:34px;letter-spacing:-.07em;line-height:1.1}.footer-brand>span{color:var(--sand)}.footer-top p{font-size:11px;color:#c1c7bd;margin-left:auto}.to-top{height:44px;width:44px;border:1px solid #65705f;display:grid;place-items:center}.footer-bottom{border-top:1px solid #455042;padding-top:25px;margin-top:55px;font-size:8px;color:#bcc3b8;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-bottom nav{display:flex;gap:24px}.footer-bottom a:hover{text-decoration:underline}.draft-status{display:flex;align-items:center;gap:8px;margin-top:28px;color:#b6bdaf;font-size:8px;letter-spacing:.02em}.draft-status>span:first-child{width:5px;height:5px;border-radius:50%;background:var(--sand)}.draft-status>.updated{margin-left:auto;color:#a0aa98}.toast{position:fixed;bottom:25px;left:50%;z-index:150;max-width:90%;padding:12px 24px;background:var(--ink);color:var(--paper);font-size:12px;box-shadow:0 4px 24px #0002;transform:translate(-50%,20px);opacity:0;pointer-events:none;transition:.25s}.toast.visible{opacity:1;transform:translate(-50%,0)}.page-intro{padding-top:170px;padding-bottom:65px}.page-intro>div{display:grid;grid-template-columns:1.35fr 1fr;gap:10%;align-items:end;margin-top:36px}.page-intro h1{font-size:clamp(43px,4.8vw,80px)}.page-intro .lead{font-size:15px;line-height:1.9;color:var(--muted)}.project-explorer{padding-top:0;padding-bottom:110px}.explorer-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:18px 0;gap:30px}.view-modes{display:flex;gap:8px}.view-modes button{display:flex;align-items:center;gap:10px;font-size:10px;padding:11px 15px;border:1px solid transparent;color:var(--muted)}.view-modes button[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}.view-modes svg{height:15px;width:15px}.project-search{display:flex;align-items:center;gap:15px;width:280px}.project-search>svg{width:20px;height:20px;flex:none}.project-search input{background:none;border:0;outline:none;min-width:0;width:100%;font-size:11px;padding:10px 0}.project-search input:focus{border-bottom:1px solid var(--ink)}.filter-row{display:flex;gap:26px;align-items:center;overflow:auto;padding:27px 0 16px;scrollbar-width:thin}.filter-row button{white-space:nowrap;font-size:10px;color:var(--muted);padding:5px 0 9px;border-bottom:1px solid transparent;flex:none}.filter-row button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--ink)}.filter-row sup{margin-left:6px;font-size:7px;color:var(--accent)}.results-heading{display:flex;justify-content:space-between;align-items:center;min-height:52px;margin:0 0 20px;font-size:9px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.clear-filters{font-size:9px}.clear-filters span{font-size:17px;margin-left:10px}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:30px;row-gap:50px}.work-grid .project-image-link{aspect-ratio:1.25}.work-grid .project-card h3{font-size:20px}.work-grid .project-card-meta{font-size:7px;gap:7px}.work-grid .project-card>p{font-size:10px}.work-grid .project-image-index{font-size:8px}.work-grid .project-image-arrow{width:40px;height:40px}.project-list-head,.project-list-row{display:grid;grid-template-columns:1.8fr 1fr 1.2fr 24px;gap:25px;align-items:center}.project-list-head{padding:10px 0 18px;color:var(--muted);font-size:8px}.project-list-row{border-top:1px solid var(--line);padding:20px 0;transition:background .2s}.project-list-row:hover{background:var(--paper-deep)}.project-list-row:last-child{border-bottom:1px solid var(--line)}.project-list-title{display:flex;gap:25px;align-items:center}.list-thumb{flex:none;display:block;width:95px;height:75px;overflow:hidden}.list-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-list-row:hover .list-thumb img{transform:scale(1.08)}.list-index{display:block;font-size:8px;color:var(--accent);margin-bottom:5px}.project-list-title strong{display:block;font-size:16px;font-weight:500;line-height:1.35;letter-spacing:-.02em}.project-list-title small,.list-role small{display:block;color:var(--muted);font-size:8px;margin-top:7px}.list-location,.list-role{font-size:10px}.project-list-row>.icon{width:20px}.empty-state{display:flex;min-height:300px;flex-direction:column;align-items:center;justify-content:center;gap:25px}.map-explorer{display:grid;grid-template-columns:1fr 310px;min-height:570px;background:#e5e8df;border:1px solid var(--line)}.map-canvas{position:relative;overflow:hidden;min-width:0;display:flex;flex-direction:column}.map-topline{padding:20px 22px;display:flex;justify-content:space-between;font-size:8px;position:relative;z-index:2}.world-map{width:100%;height:470px;flex:1;display:block;cursor:grab;touch-action:none}.world-map.dragging{cursor:grabbing}.world-countries path{fill:#d1d7c9;stroke:#9ca58f;stroke-width:.6;vector-effect:non-scaling-stroke}.world-countries .country-active{fill:#a7b59d;stroke:#7a8972}.map-point{cursor:pointer}.map-point .map-dot{fill:#9c714d;stroke:var(--paper);stroke-width:1;vector-effect:non-scaling-stroke}.map-point .map-pulse{fill:#9c714d;opacity:.15}.map-point text{font-family:var(--font);font-size:12px;font-weight:600;fill:var(--ink);paint-order:stroke;stroke:#e5e8df;stroke-width:3px;stroke-linejoin:round;pointer-events:none}.map-point:hover .map-pulse,.map-point.selected .map-pulse,.map-point:focus .map-pulse{opacity:.4}.map-point--city{display:none}.world-map.regional .map-point--city{display:block}.world-map.regional .map-point--region{display:none}.map-controls{display:flex;position:absolute;bottom:48px;left:20px;gap:5px;z-index:2;flex-wrap:wrap;max-width:calc(100% - 40px)}.map-controls button{height:34px;min-width:34px;padding:0 12px;background:var(--paper);border:1px solid #bec7b4;font-size:9px}.map-controls button:first-child,.map-controls button:nth-child(2){font-size:19px;line-height:1}.map-controls button:hover{background:var(--sand)}.map-bottomline{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:15px 20px;font-size:8px;color:#59634e;background:#e5e8df}.map-bottomline a{text-decoration:underline}.map-sidebar{background:var(--paper);padding:25px 24px;min-width:0;overflow:hidden}.map-sidebar>h3{font-size:25px;line-height:1.3;margin:18px 0 25px;max-width:200px}.map-project-list{max-height:350px;overflow:auto;scrollbar-width:thin}.map-project-item{width:100%;display:flex;gap:10px;align-items:flex-start;text-align:left;padding:15px 0;border-top:1px solid var(--line)}.map-project-item>.icon{width:17px;height:17px;margin-left:auto;margin-top:3px}.map-project-item strong{display:block;font-size:11px;font-weight:500;line-height:1.45}.map-project-item small{display:block;font-size:8px;color:var(--muted);margin-top:5px}.map-project-dot{width:5px;height:5px;border-radius:50%;background:var(--accent);flex:none;margin-top:7px}.map-project-dot.unmapped{background:transparent;border:1px solid var(--muted)}.map-project-item.selected strong{color:#795435}.map-note{font-size:10px;color:var(--muted);margin-top:20px;max-width:780px}.map-selected:empty{display:none}.map-selected{padding-bottom:20px}.map-selected h4{font-size:16px;line-height:1.4;margin-bottom:10px}.map-selected .text-link{font-size:9px;gap:10px}.map-selected img{aspect-ratio:1.8;object-fit:cover;margin-bottom:12px;width:100%}.case-hero{position:relative;height:82svh;min-height:560px;max-height:900px;background:var(--dark);color:var(--paper);display:flex;align-items:flex-end;padding:160px var(--gutter) 90px}.case-hero-photo{position:absolute;inset:0}.case-hero-photo img{height:100%;width:100%;object-fit:cover;filter:saturate(.65)}.case-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,23,18,.88),rgba(15,23,18,.05) 90%),linear-gradient(180deg,rgba(15,23,18,.65),transparent 35%)}.case-hero-copy{position:relative;z-index:1;max-width:1200px}.back-link{display:inline-block;font-size:10px;margin-bottom:50px}.case-hero-copy .eyebrow{color:var(--sand);margin-bottom:20px}.case-hero h1{font-size:clamp(42px,6vw,90px);max-width:1000px}.case-hero-copy>p:last-child{margin-top:22px;font-size:17px;color:#e0e4dc}.case-hero-location{position:absolute;right:var(--gutter);bottom:28px;font-size:8px;z-index:1}.case-body{padding-top:55px;padding-bottom:50px}.project-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;border-bottom:1px solid var(--line);padding-bottom:45px}.project-facts>div>span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin-bottom:12px}.project-facts strong{font-size:12px;font-weight:500;line-height:1.6;display:block}.case-story{display:grid;grid-template-columns:1fr 1.2fr;gap:15%;padding:95px 0 70px}.case-story h2{font-size:clamp(36px,3.5vw,54px);margin-top:25px}.case-story .lead{font-size:20px}.case-story h3{font-size:19px;margin:38px 0 14px}.case-story>div+div>p:not(.lead){font-size:13px;line-height:1.9;color:var(--muted)}.case-contributions{display:grid;grid-template-columns:1fr 1.2fr;gap:15%;border-top:1px solid var(--line);padding-top:40px}.case-contributions .muted{margin-top:22px;max-width:300px}.case-contributions ol{list-style:none;margin:0}.case-contributions li{display:grid;grid-template-columns:25px 1fr;gap:25px;padding:0 0 27px;margin-bottom:24px;border-bottom:1px solid var(--line)}.case-contributions li>.mono{color:var(--accent);font-size:9px;padding-top:5px}.case-contributions li>p{font-size:16px}.case-output-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:15%;margin-top:60px}.method-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.method-tags>span{border:1px solid var(--line);padding:8px 11px;font-size:9px}.case-output-grid ul{list-style:none;margin-top:22px}.case-output-grid li{font-size:12px;position:relative;padding-left:18px;margin-bottom:12px;color:var(--muted)}.case-output-grid li::before{content:'—';position:absolute;left:0}.case-gallery{padding-top:50px;padding-bottom:65px}.case-gallery-images{margin-top:25px;background:var(--paper-deep);padding:40px}.case-gallery-images figure{margin:0 auto;max-width:1000px}.case-gallery-images img{width:auto;max-width:100%;max-height:600px;object-fit:contain;margin:auto}.case-gallery-images.multiple{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.case-gallery-images figcaption{font-size:9px;color:var(--muted);margin-top:15px;text-align:center}.image-credit{font-size:9px;color:var(--muted);margin-top:14px}.case-gallery>.text-link{margin-top:25px}.related-section{border-top:1px solid var(--line);padding-top:65px}.related-section .section-heading{margin-bottom:40px}.related-section h2{font-size:38px}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.related-grid .project-card h3{font-size:21px}.related-grid .project-card-meta{font-size:7px}.expertise-page{padding-top:0;padding-bottom:90px}.expertise-page .expertise-row summary{padding:35px 0}.expertise-pmo{min-height:600px}.tools-section h2{margin-top:25px}.tools-grid{margin:55px 0 30px;display:grid;grid-template-columns:repeat(3,1fr);gap:6%}.tools-grid>div{border-top:1px solid var(--line);padding-top:25px}.tools-grid h3{font-size:20px}.tools-grid p{font-size:12px;margin-top:15px;color:var(--muted)}.tools-section>.text-link{margin-top:30px}.career-section{padding-top:0;display:grid;grid-template-columns:1fr 1.25fr;gap:8%}.timeline-tabs{position:relative}.timeline-tabs::before{position:absolute;content:'';width:1px;top:25px;bottom:25px;left:0;background:var(--line)}.timeline-tabs button{position:relative;display:grid;grid-template-columns:92px 1fr;gap:22px;align-items:center;padding:22px 12px 22px 24px;width:100%;text-align:left;border-bottom:1px solid var(--line);transition:background .3s}.timeline-tabs button::before{position:absolute;content:'';height:5px;width:5px;border-radius:50%;background:var(--line);left:-2px;top:50%}.timeline-tabs button[aria-selected=true]{background:var(--paper-deep)}.timeline-tabs button[aria-selected=true]::before{background:var(--accent);box-shadow:0 0 0 5px var(--paper)}.timeline-tabs .mono{color:var(--accent);font-size:8px}.timeline-tabs strong{font-size:13px;font-weight:500;line-height:1.5}.timeline-tabs small{position:absolute;right:12px;top:6px;font-size:7px;color:var(--accent)}.career-panel-container{background:var(--dark);color:var(--paper);min-width:0}.career-panel{padding:clamp(32px,4.4vw,70px);position:relative;min-height:530px;display:flex;flex-direction:column;align-items:flex-start}.career-panel .eyebrow{color:var(--sand);font-size:9px}.career-panel h2{font-size:clamp(35px,4vw,56px);margin:35px 0 25px}.career-panel h3{font-size:18px;color:#d7dfd2}.career-panel>p:not(.eyebrow){font-size:13px;line-height:1.9;color:#becabb;margin-top:30px}.career-panel .text-link{font-size:10px;gap:12px;margin-top:35px}.career-panel-index{margin-top:auto;padding-top:45px;font-size:9px;color:var(--sand)}.development-section{background:var(--paper-deep)}.credential-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-bottom:55px}.credential-grid article{padding:40px;border:1px solid #bfc4b5}.pmp-credential{background:var(--ink);color:var(--paper)}.pmp-credential>.eyebrow{color:var(--sand)}.pmp-credential>strong{display:block;font-size:85px;letter-spacing:-.065em;font-weight:400;line-height:1.2;margin-top:20px}.pmp-credential sup{font-size:20px;vertical-align:top;margin-left:5px}.pmp-credential h3{font-size:20px;margin-top:8px}.pmp-credential>p:not(.eyebrow){font-size:11px;margin-top:10px;color:#c3cbbb}.pmp-credential>small{display:block;font-size:9px;margin-top:30px;color:#c3cbbb}.registration-credential h3{font-size:30px;margin-top:40px}.registration-credential>p:not(.eyebrow){font-size:12px;color:var(--muted);margin-top:25px;max-width:400px}.training-group{border-top:1px solid #bfc4b5}.training-group:last-child{border-bottom:1px solid #bfc4b5}.training-group summary{display:grid;grid-template-columns:45px 1fr 25px;align-items:center;gap:15px;list-style:none;cursor:pointer;padding:26px 0}.training-group summary h3{font-size:22px}.training-group summary .mono{color:var(--accent);font-size:9px}.training-items{padding:0 0 30px 60px;display:grid;grid-template-columns:1fr 1fr;gap:28px 6%}.training-items article{border-top:1px solid #c9cdbf;padding-top:20px}.training-items h4{font-size:13px;line-height:1.6;letter-spacing:0}.training-items p{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:9px;color:var(--muted);margin:15px 0 8px}.training-items small{font-size:8px;color:var(--muted)}.education-line{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding-top:50px}.education-line>p:last-child{font-size:13px;color:var(--muted)}.about-feature{padding-top:0;display:grid;grid-template-columns:1.1fr 1fr;gap:5%;align-items:stretch}.about-image img{height:100%;width:100%;object-fit:cover;filter:saturate(.5)}.about-image figcaption{font-size:8px;color:var(--muted);padding-top:12px}.about-monogram{display:flex;flex-direction:column;align-items:flex-start;background:var(--paper-deep);padding:35px 45px;justify-content:space-between}.about-monogram>.mono{font-size:8px}.monogram{font-size:clamp(120px,15vw,235px);font-weight:300;letter-spacing:-.1em;line-height:1.3}.monogram>span{color:var(--accent)}.about-monogram>p{font-size:18px;line-height:1.7;letter-spacing:-.02em;margin-bottom:10px}.about-themes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6%;padding-top:10px;padding-bottom:100px}.about-themes article{border-top:1px solid var(--line);padding-top:25px}.about-themes .eyebrow{color:var(--accent)}.about-themes h2{font-size:40px;margin-top:25px}.about-themes p{font-size:13px;color:var(--muted);margin-top:25px;line-height:1.9}.about-background{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;background:var(--paper-deep)}.about-background h2{margin-top:30px}.background-row{border-top:1px solid #bfc4b5;padding:24px 0}.background-row h3{font-size:18px}.background-row p{font-size:11px;color:var(--muted);margin-top:12px}.about-background .text-link{margin-top:20px}.about-background .download-cv{display:flex;width:fit-content;font-size:11px}.about-contact h2{margin:28px 0 35px}.contact-page{padding-top:180px;padding-bottom:110px;display:grid;grid-template-columns:1fr 1fr;gap:10%;min-height:900px}.contact-intro h1{margin:35px 0 30px;font-size:clamp(48px,5.8vw,88px)}.contact-intro>.lead{font-size:15px;line-height:1.9;max-width:400px;color:var(--muted)}.direct-contact{display:flex;align-items:center;gap:15px;margin-top:45px}.email-link{font-size:clamp(15px,1.6vw,24px);display:flex;align-items:center;gap:12px;letter-spacing:-.035em;border-bottom:1px solid var(--line);padding-bottom:8px}.copy-email{padding:8px}.copy-email .icon{width:18px;height:18px}.contact-location{display:flex;gap:13px;align-items:flex-start;margin-top:30px;font-size:12px}.live-dot{background:#677a5b;width:6px;height:6px;border-radius:50%;margin-top:8px;flex:none}.contact-location p>span{display:block;font-size:10px;color:var(--muted);margin-top:5px}.contact-intro>.download-cv{margin-top:40px;font-size:10px}.cv-note{font-size:9px;color:var(--muted);display:block;margin-top:12px;max-width:300px}.contact-form-wrap>.eyebrow{padding-bottom:30px;border-bottom:1px solid var(--line)}#enquiry-form{padding-top:15px}#enquiry-form label{display:block;font-size:10px;line-height:1.6;margin-top:24px}#enquiry-form input:not([type=checkbox]),#enquiry-form select,#enquiry-form textarea{display:block;width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:12px 0;font-size:13px;outline-offset:3px}#enquiry-form input:not([type=checkbox]):focus,#enquiry-form textarea:focus,#enquiry-form select:focus{border-bottom-color:var(--ink)}#enquiry-form textarea{resize:vertical;min-height:115px}#enquiry-form textarea::placeholder{font-size:11px;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}#enquiry-form .consent{display:flex;gap:12px;font-size:9px;color:var(--muted);align-items:flex-start;margin-top:26px}.consent input{margin:2px 0 0;accent-color:var(--ink);width:13px;height:13px;flex:none}.inline-link{text-decoration:underline}.form-notice{font-size:9px;line-height:1.8;color:var(--muted);margin-top:18px}#enquiry-form>.button{margin-top:25px;min-width:210px}#form-status{font-size:11px;line-height:1.8;margin-top:20px;color:#4d6241}.legal-page{padding-top:170px;max-width:1150px;min-height:70vh}.legal-page h1{margin-top:30px;font-size:65px}.legal-draft{font-size:12px;color:var(--muted);margin-top:22px;border-bottom:1px solid var(--line);padding-bottom:30px}.legal-copy{max-width:780px;padding-top:25px}.legal-copy h2{font-size:25px;letter-spacing:-.03em;margin:36px 0 20px}.legal-copy p,.legal-copy li{font-size:13px;color:var(--muted);line-height:1.9}.legal-copy ul{padding-left:18px}.legal-copy li{margin-bottom:10px}.legal-copy a{text-decoration:underline;text-underline-offset:3px}.not-found{padding-top:180px;min-height:70vh}.not-found p{margin:25px 0}.reveal{opacity:1}.motion-ready .reveal{opacity:0;translate:0 24px;transition:opacity .8s var(--ease),translate .8s var(--ease)}.motion-ready .reveal.in-view{opacity:1;translate:0 0}@keyframes hero-entry{from{transform:scale(1.04);opacity:.4}to{transform:scale(1);opacity:1}}@keyframes copy-entry{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}::view-transition-old(root){animation-duration:.15s}::view-transition-new(root){animation-duration:.35s}
@media(min-width:1600px){.hero-copy{padding-top:23vh}.hero-bottom{margin-top:60px}.section{padding-top:120px;padding-bottom:120px}.selected-section{padding-bottom:190px}}
@media(max-width:1150px){.site-header{gap:20px}.desktop-nav{gap:18px;margin-right:8px}.desktop-nav a{font-size:10px}.header-end{gap:18px}.contact-nav{gap:12px;font-size:9px;padding:9px 11px}.brand-line{font-size:6px}.brand-name{font-size:23px}.hero-actions{gap:20px}.hero-actions .text-link{font-size:9px}.hero-bottom{gap:25px}.hero-location{display:none}.hero-copy h1{font-size:8vw}.hero-bottom>p{font-size:13px;max-width:300px}.metrics>div{gap:18px}.metrics strong{font-size:65px}.metrics .pmp-metric{font-size:48px}.metrics>div>span{font-size:9px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 30px}.map-explorer{grid-template-columns:1fr 260px}.map-sidebar{padding:23px 18px}.map-sidebar h3{font-size:23px}.page-intro>div{gap:6%}.page-intro .lead{font-size:13px}.case-story,.case-contributions,.case-output-grid{gap:9%}.career-section{gap:5%}.timeline-tabs button{grid-template-columns:75px 1fr;gap:13px;padding-left:20px}.timeline-tabs strong{font-size:11px}.career-panel{padding:40px;min-height:570px}.contact-page{gap:7%}.direct-contact{gap:5px}.contact-form-wrap>.eyebrow{font-size:9px}.footer-location{display:none}.about-monogram{padding:28px 35px}.expertise-detail{padding-right:25px}.case-hero h1{font-size:7vw}.selected-grid{column-gap:5%}.project-card h3{font-size:23px}}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:flex}.header-end{margin-left:auto;gap:25px}.contact-nav{display:none}.site-header{height:85px}.site-header.is-scrolled{height:72px}.brand-name{font-size:24px}.brand-line{font-size:6px}.hero-grid{top:85px}.home-hero{min-height:780px}.hero-copy{padding-top:180px;padding-bottom:170px}.hero-copy h1{font-size:9.4vw}.hero-photo{left:8%}.hero-shade{background:linear-gradient(90deg,rgba(18,26,22,.92),rgba(18,26,22,.3)),linear-gradient(0deg,rgba(18,26,22,.8),transparent 55%)}.hero-bottom{flex-direction:column;align-items:flex-start;gap:25px;margin-top:35px}.hero-bottom>p{font-size:13px;max-width:350px}.hero-actions .button{padding:15px 20px}.hero-caption{min-width:210px;font-size:9px;gap:7px 20px}.hero-caption .mono{font-size:7px}.hero-foot{bottom:25px}.section{padding-top:75px;padding-bottom:75px}.intro-section{padding-top:80px}.intro-layout{gap:6%;grid-template-columns:1fr 1fr}.intro-copy .lead{font-size:17px}.intro-copy>p:not(.lead){font-size:12px}.metrics{gap:5%;margin-top:60px}.metrics>div{flex-direction:column;align-items:flex-start;gap:13px}.metrics>div>span{max-width:160px}.metrics strong{font-size:65px}.metrics .pmp-metric{font-size:54px;line-height:1.26}.selected-section{padding-bottom:145px;padding-top:50px}.section-heading>div+div{max-width:250px}.section-heading>div+div p,.section-heading>p{font-size:12px}.section-heading{gap:5%}.selected-grid{row-gap:55px}.selected-grid .project-card:nth-child(2n){transform:translateY(55px)}.project-card-meta{font-size:7px;margin-top:15px}.project-card h3{font-size:21px}.project-card>p{font-size:11px}.pmo-feature{min-height:580px}.pmo-copy{padding:55px 32px}.pmo-copy h2{font-size:37px}.pmo-copy>p{font-size:12px}.pmo-copy>small{font-size:8px}.career-preview{gap:7%;grid-template-columns:1fr 1.1fr}.career-mini-row{grid-template-columns:75px 1fr 19px;font-size:13px;padding:22px 0;gap:10px}.career-mini-row small{font-size:8px}.career-mini-row .mono{font-size:7px}.closing-cta h2{font-size:8vw}.circle-link{width:95px;height:95px}.circle-link .icon{width:35px;height:35px}.page-intro{padding-top:145px;padding-bottom:45px}.page-intro>div{grid-template-columns:1fr;gap:30px;margin-top:25px}.page-intro h1{font-size:7vw}.page-intro .lead{max-width:600px;font-size:14px}.project-explorer{padding-top:0}.map-explorer{grid-template-columns:1fr}.world-map{height:440px}.map-sidebar{display:grid;grid-template-columns:1fr 1.4fr;gap:15px 35px;padding:30px}.map-sidebar>.eyebrow{grid-column:1}.map-sidebar>h3{grid-column:1;margin:0;font-size:27px;max-width:none}.map-project-list{grid-column:2;grid-row:1/5;max-height:300px}.map-selected{grid-column:1}.map-selected img{max-height:120px}.case-hero{height:72svh;min-height:550px;padding-bottom:80px}.case-hero h1{font-size:7.4vw}.case-body{padding-top:40px}.project-facts{gap:25px;grid-template-columns:1fr 1fr;row-gap:30px}.project-facts strong{font-size:11px}.case-story{padding-top:65px;gap:7%}.case-story .lead{font-size:17px}.case-contributions{gap:7%}.case-contributions li{gap:17px}.case-contributions li>p{font-size:14px}.case-output-grid{gap:7%;margin-top:40px}.related-grid{gap:25px}.related-grid .project-card h3{font-size:18px}.related-grid .project-card-meta{display:block}.related-grid .project-card-meta span+span{display:block;margin-top:5px}.related-grid .project-card>p{font-size:10px}.related-section h2{font-size:30px}.expertise-page{padding-top:0}.expertise-row summary{grid-template-columns:45px 1fr 25px;gap:15px}.expertise-detail{padding-left:60px;grid-template-columns:1fr;gap:22px}.expertise-row h3{font-size:25px}.tools-grid{gap:5%}.tools-grid h3{font-size:18px}.tools-grid p{font-size:11px}.career-section{padding-top:0;grid-template-columns:1fr 1.2fr;gap:30px}.timeline-tabs button{display:block;padding:18px 12px 18px 18px}.timeline-tabs strong{display:block;margin-top:5px}.career-panel{padding:35px 30px;min-height:580px}.career-panel h2{font-size:37px}.career-panel h3{font-size:16px}.career-panel>p:not(.eyebrow){font-size:12px}.credential-grid{gap:25px}.credential-grid article{padding:30px}.registration-credential h3{font-size:25px}.training-group summary h3{font-size:20px}.training-items{padding-left:60px;gap:25px}.training-items h4{font-size:12px}.about-feature{padding-top:0;gap:25px}.about-monogram{padding:25px}.about-monogram>p{font-size:15px}.monogram{font-size:150px}.about-themes{padding-top:10px;gap:5%}.about-themes h2{font-size:34px}.about-themes p{font-size:12px}.about-background{gap:7%}.background-row h3{font-size:16px}.contact-page{padding-top:145px;grid-template-columns:1fr 1fr;gap:6%;min-height:850px}.contact-intro h1{font-size:7vw}.contact-intro>.lead{font-size:13px}.email-link{font-size:17px}.email-link .icon{width:18px}.copy-email{padding:5px}.copy-email .icon{width:15px}.contact-form-wrap>.eyebrow{font-size:8px;line-height:1.6}.form-row{grid-template-columns:1fr;gap:0}.footer-top{gap:25px}.footer-top p{font-size:9px}.footer-brand{font-size:30px}.footer-bottom nav{gap:18px}.legal-page{padding-top:145px}}
@media(max-width:600px){:root{--gutter:22px}body{font-size:14px}h2{font-size:39px}.site-header{height:79px}.site-header.is-scrolled{height:68px}.brand-name{font-size:23px}.brand-line{font-size:5.5px;margin-top:7px;letter-spacing:.12em}.header-end{gap:22px}.languages{font-size:8px;gap:8px}.menu-toggle{font-size:0;gap:0}.menu-lines{width:22px;height:11px}.home-hero{min-height:740px;height:100svh;max-height:980px}.hero-copy{padding-top:170px;padding-bottom:180px}.hero-copy .eyebrow{font-size:8px;letter-spacing:.15em;margin-bottom:28px}.hero-copy h1{font-size:11.1vw;line-height:1.08;letter-spacing:-.065em}.hero-copy h1 em{font-size:1.03em}.hero-photo{left:0}.hero-photo img{object-position:56% center;filter:saturate(.45) brightness(.75)}.hero-shade{background:linear-gradient(90deg,rgba(18,26,22,.78),rgba(18,26,22,.25)),linear-gradient(0deg,rgba(18,26,22,.9),transparent 80%)}.hero-grid{top:79px}.hero-bottom{margin-top:30px;gap:26px}.hero-bottom>p{font-size:12px;line-height:1.8;max-width:290px}.hero-actions{gap:18px;flex-wrap:wrap}.hero-actions .button{font-size:9px;gap:18px;padding:14px 17px}.hero-actions .text-link{font-size:8px;gap:9px}.hero-actions .icon{width:19px;height:19px}.hero-foot{bottom:24px;align-items:flex-end;gap:12px}.scroll-link{font-size:8px;gap:8px}.scroll-link .icon{width:18px}.hero-caption{font-size:8px;min-width:175px;gap:6px 5px}.hero-caption .mono{font-size:6px}.hero-caption .icon{width:18px;height:18px}.section{padding-top:60px;padding-bottom:60px}.eyebrow{font-size:8px;gap:18px}.intro-layout{grid-template-columns:1fr;gap:30px;margin-top:27px}.intro-layout h2{font-size:44px}.intro-copy .lead{font-size:18px;max-width:480px}.intro-copy>p:not(.lead){font-size:12px;line-height:1.9}.intro-copy .text-link{font-size:10px;margin-top:20px}.metrics{margin-top:45px;padding-top:25px;gap:20px;grid-template-columns:1fr 1fr 1fr}.metrics>div{gap:12px}.metrics strong{font-size:52px}.metrics .pmp-metric{font-size:34px;line-height:1.6}.metrics sup{font-size:12px;margin-left:3px}.metrics>div>span{font-size:8px;line-height:1.65;max-width:100px}.selected-section{padding-top:35px;padding-bottom:60px}.section-heading{display:block;margin-bottom:35px}.section-heading h2{margin-top:22px}.section-heading>div+div{max-width:100%;margin-top:25px}.section-heading>div+div>p{max-width:340px;font-size:12px}.section-heading>.text-link{margin-top:20px;font-size:10px}.selected-grid{grid-template-columns:1fr;gap:40px}.selected-grid .project-card:nth-child(2n){transform:none}.selected-grid .project-card:nth-child(3n) .project-image-link{aspect-ratio:1.35}.project-image-link{aspect-ratio:1.35}.project-card-meta{margin-top:15px;font-size:7px}.project-card h3{font-size:24px;margin-top:8px}.project-card>p{font-size:11px}.project-image-index{font-size:8px}.project-image-arrow{width:44px;height:44px}.home-expertise{padding-top:55px;padding-bottom:55px}.expertise-row summary{grid-template-columns:25px 1fr 20px;gap:14px;padding:24px 0}.expertise-row h3{font-size:22px;letter-spacing:-.04em}.expertise-no{font-size:8px}.expand-icon{width:16px}.expertise-detail{padding:0 0 30px 39px;gap:20px}.expertise-detail p{font-size:13px}.expertise-detail li{font-size:11px}.expertise-detail .text-link{font-size:10px}.pmo-feature{grid-template-columns:1fr;min-height:0}.pmo-image{height:330px}.pmo-image img{object-position:50% 45%}.pmo-copy{padding:45px var(--gutter) 55px}.pmo-copy h2{font-size:44px;margin:27px 0}.pmo-copy>p{font-size:12px;max-width:450px}.pmo-copy>small{font-size:8px;max-width:310px}.career-preview{grid-template-columns:1fr;gap:35px}.career-preview h2{margin-top:22px}.career-preview>div>p:not(.eyebrow){margin-top:20px;font-size:12px}.career-mini-row{grid-template-columns:85px 1fr 21px;font-size:15px;padding:22px 0;gap:12px}.career-mini-row .mono{font-size:8px}.career-mini-row small{font-size:9px}.closing-cta{padding-top:55px;padding-bottom:45px}.closing-cta h2{font-size:11.5vw}.closing-cta>div{gap:15px;margin-top:25px;margin-bottom:25px}.circle-link{width:68px;height:68px;flex:none}.circle-link .icon{width:28px;height:28px}.closing-email{font-size:12px}.site-footer{padding:45px var(--gutter) 22px}.footer-top{flex-wrap:wrap;gap:22px}.footer-brand{font-size:31px}.footer-top p{order:3;width:100%;max-width:none;margin:0;font-size:10px}.to-top{margin-left:auto;height:38px;width:38px}.footer-bottom{margin-top:35px;flex-direction:column;align-items:flex-start;gap:20px;font-size:8px;padding-top:23px}.footer-bottom nav{flex-wrap:wrap;gap:13px 18px;font-size:8px}.draft-status{margin-top:24px;font-size:7px;flex-wrap:wrap;gap:7px}.draft-status>.updated{width:100%;margin:5px 0 0 12px;font-size:7px}.page-intro{padding-top:125px;padding-bottom:35px}.page-intro>div{margin-top:25px;gap:24px}.page-intro h1{font-size:10.2vw}.page-intro .lead{font-size:13px;line-height:1.9}.project-explorer{padding-top:0}.explorer-toolbar{padding:13px 0;flex-direction:column;gap:14px;align-items:stretch}.view-modes{gap:10px}.view-modes button{font-size:9px;padding:8px 14px}.view-modes svg{width:13px;height:13px}.project-search{width:100%;padding:0 7px}.project-search input{font-size:11px}.project-search>svg{width:17px;height:17px}.filter-row{gap:22px;padding:20px 0 12px}.filter-row button{font-size:9px}.results-heading{font-size:8px;margin-bottom:12px;min-height:40px}.work-grid{grid-template-columns:1fr;gap:38px}.work-grid .project-card h3{font-size:23px}.work-grid .project-image-link{aspect-ratio:1.4}.work-grid .project-card-meta{font-size:7px}.work-grid .project-card>p{font-size:11px}.project-list-head{display:none}.project-list-row{grid-template-columns:1fr 22px;gap:15px;padding:18px 0}.project-list-title{gap:18px}.list-thumb{width:75px;height:70px}.project-list-title strong{font-size:15px}.list-index{font-size:7px}.project-list-title small{font-size:7px}.list-location{display:none}.list-role{grid-column:1;font-size:9px;padding-left:93px;margin-top:-7px}.project-list-row>.icon{grid-column:2;grid-row:1}.list-role small{font-size:7px}.map-explorer{border-left:0;border-right:0;margin-left:calc(var(--gutter)*-1);margin-right:calc(var(--gutter)*-1)}.map-topline{font-size:7px;padding:18px 22px}.world-map{height:355px}.map-controls{bottom:51px;left:22px;gap:4px}.map-controls button{font-size:8px;height:31px;padding:0 8px;min-width:31px}.map-controls button:nth-child(4){display:none}.map-bottomline{font-size:7px;padding:15px 22px;gap:5px}.map-sidebar{display:block;padding:25px var(--gutter)}.map-sidebar>.eyebrow{font-size:8px}.map-sidebar>h3{font-size:30px;margin:20px 0 25px;max-width:290px}.map-project-list{max-height:330px}.map-selected{margin-bottom:15px;max-width:360px}.map-selected img{max-height:180px}.map-project-item strong{font-size:12px}.map-project-item small{font-size:9px}.map-note{font-size:9px;margin-top:20px}.case-hero{height:76svh;min-height:550px;padding:135px var(--gutter) 75px}.back-link{font-size:9px;margin-bottom:35px}.case-hero .eyebrow{font-size:8px;margin-bottom:20px}.case-hero h1{font-size:11vw;line-height:1.1;letter-spacing:-.055em}.case-hero-copy>p:last-child{font-size:14px;line-height:1.7;margin-top:20px}.case-hero-location{font-size:7px;bottom:24px;left:var(--gutter);right:auto}.case-hero-photo img{object-position:center}.case-body{padding-top:35px;padding-bottom:30px}.project-facts{gap:24px;row-gap:26px;padding-bottom:32px}.project-facts>div>span{font-size:7px;margin-bottom:10px}.project-facts strong{font-size:10px}.case-story{grid-template-columns:1fr;gap:30px;padding:50px 0}.case-story h2{font-size:38px;margin-top:22px}.case-story .lead{font-size:18px}.case-story h3{font-size:20px;margin-top:30px}.case-story>div+div>p:not(.lead){font-size:12px}.case-contributions{grid-template-columns:1fr;gap:30px;padding-top:30px}.case-contributions .muted{font-size:11px;max-width:100%;margin-top:15px}.case-contributions li{gap:20px;padding-bottom:22px;margin-bottom:20px}.case-contributions li>p{font-size:14px}.case-output-grid{grid-template-columns:1fr;gap:30px;margin-top:25px}.case-output-grid ul{margin-top:17px}.case-output-grid li{font-size:12px}.case-gallery{padding-top:25px;padding-bottom:45px}.case-gallery-images{padding:22px;margin-top:20px}.case-gallery-images.multiple{grid-template-columns:1fr;gap:28px}.case-gallery-images img{max-height:400px}.case-gallery-images figcaption{font-size:8px}.image-credit{font-size:8px}.related-section{padding-top:45px}.related-section .section-heading{display:flex;align-items:center;gap:20px;margin-bottom:25px}.related-section h2{font-size:30px}.related-section .section-heading>.text-link{font-size:8px;margin:0;gap:8px}.related-grid{grid-template-columns:1fr;gap:35px}.related-grid .project-card h3{font-size:23px}.related-grid .project-card-meta{display:flex;font-size:7px}.related-grid .project-card-meta span+span{margin:0}.related-grid .project-card>p{font-size:11px}.expertise-page{padding-top:0;padding-bottom:55px}.expertise-page .expertise-row summary{padding:25px 0}.tools-section h2{margin-top:25px}.tools-grid{grid-template-columns:1fr;gap:25px;margin:35px 0}.tools-grid>div{padding-top:20px}.tools-grid h3{font-size:22px}.tools-grid p{font-size:12px;margin-top:12px}.career-section{padding-top:0;grid-template-columns:1fr;gap:25px}.timeline-tabs{display:flex;overflow:auto;scroll-snap-type:x mandatory;border-bottom:1px solid var(--line);padding-bottom:5px}.timeline-tabs::before{display:none}.timeline-tabs button{width:210px;flex:none;scroll-snap-align:start;padding:20px 16px;border:1px solid var(--line);border-right:0;min-height:105px}.timeline-tabs button:last-child{border-right:1px solid var(--line)}.timeline-tabs button::before{display:none}.timeline-tabs strong{font-size:13px;margin-top:13px}.timeline-tabs .mono{font-size:8px}.timeline-tabs small{font-size:7px;top:12px;right:12px}.career-panel{padding:35px 28px;min-height:400px}.career-panel h2{font-size:40px;margin:28px 0 20px}.career-panel h3{font-size:18px}.career-panel>p:not(.eyebrow){font-size:13px;margin-top:25px}.career-panel .text-link{margin-top:25px;font-size:10px}.career-panel-index{padding-top:30px}.development-section .section-heading>p{margin-top:25px;font-size:12px}.credential-grid{grid-template-columns:1fr;gap:20px;margin-bottom:40px}.credential-grid article{padding:30px}.pmp-credential>strong{font-size:80px}.pmp-credential h3{font-size:22px}.registration-credential h3{font-size:30px;margin-top:25px}.registration-credential>p:not(.eyebrow){font-size:12px;line-height:1.9}.training-group summary{grid-template-columns:25px 1fr 20px;gap:13px;padding:24px 0}.training-group summary h3{font-size:20px}.training-group summary .mono{font-size:8px}.training-items{grid-template-columns:1fr;padding-left:38px;gap:25px;padding-bottom:30px}.training-items h4{font-size:13px}.training-items p{font-size:9px}.education-line{grid-template-columns:1fr;gap:20px;padding-top:35px}.education-line>p:last-child{font-size:12px}.about-feature{padding-top:0;grid-template-columns:1fr;gap:35px}.about-image img{height:auto;min-height:260px;object-fit:cover}.about-image figcaption{font-size:8px}.about-monogram{padding:28px;min-height:310px;display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:center}.about-monogram>.mono{grid-column:1/3;align-self:start;font-size:7px}.monogram{font-size:135px}.about-monogram>p{font-size:13px;margin:0}.about-themes{padding-top:0;grid-template-columns:1fr;gap:35px}.about-themes h2{font-size:40px;margin-top:20px}.about-themes p{font-size:13px;margin-top:22px;max-width:100%}.about-background{grid-template-columns:1fr;gap:35px}.about-background h2{font-size:39px}.background-row h3{font-size:20px}.background-row p{font-size:12px}.about-contact h2{font-size:46px}.contact-page{padding-top:130px;grid-template-columns:1fr;gap:55px}.contact-intro h1{font-size:14vw;margin:30px 0}.contact-intro>.lead{font-size:14px;max-width:450px}.direct-contact{gap:15px;margin-top:35px}.email-link{font-size:24px;gap:15px}.email-link .icon{width:22px}.copy-email .icon{width:18px;height:18px}.contact-location{font-size:12px;margin-top:25px}.contact-location p>span{font-size:10px}.contact-intro>.download-cv{margin-top:30px;font-size:10px}.contact-form-wrap>.eyebrow{font-size:9px;padding-bottom:20px}#enquiry-form label{font-size:11px;margin-top:25px}#enquiry-form input:not([type=checkbox]),#enquiry-form select,#enquiry-form textarea{font-size:16px;padding:13px 0}.form-row{grid-template-columns:1fr}.form-notice{font-size:10px}#enquiry-form .consent{font-size:10px;gap:12px;line-height:1.8}.consent input{width:15px;height:15px;margin-top:2px}#enquiry-form>.button{min-width:220px;font-size:12px}.legal-page{padding-top:130px}.legal-page h1{font-size:48px}.legal-draft{font-size:11px}.legal-copy h2{font-size:24px}.legal-copy p,.legal-copy li{font-size:12px}.navigation-panel{padding-top:95px}.navigation-panel nav a{font-size:34px;gap:20px;padding:17px 0}.navigation-panel nav .mono{font-size:8px;width:20px}.navigation-panel nav .icon{width:26px;height:26px}.menu-close{font-size:10px}.menu-close span{font-size:32px}.menu-bottom{display:block;margin-top:45px;font-size:11px}.menu-bottom a{display:block;margin-top:15px}.empty-state{min-height:250px;text-align:center}.not-found{padding-top:140px}}
@media(max-width:370px){:root{--gutter:18px}.brand-name{font-size:21px}.brand-line{font-size:5px}.header-end{gap:17px}.hero-copy{padding-top:150px}.hero-caption{min-width:150px;font-size:7px}.hero-copy h1{font-size:11vw}.hero-actions{gap:12px}.hero-actions .text-link{font-size:7px;gap:7px}.hero-actions .button{font-size:8px;padding:13px 14px;gap:12px}.home-hero{min-height:700px}.metrics{gap:12px}.metrics strong{font-size:46px}.metrics .pmp-metric{font-size:30px}.metrics>div>span{font-size:7px}.email-link{font-size:20px}.copy-email .icon{width:16px}.circle-link{width:58px;height:58px}.footer-bottom nav{font-size:7px}.expertise-row h3{font-size:20px}.map-controls button{font-size:7px;padding:0 7px}.monogram{font-size:115px}.about-monogram>p{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .reveal{opacity:1;translate:0 0}.project-image-link:hover img{transform:none}.button:hover{transform:none}::view-transition-old(root),::view-transition-new(root){animation:none!important}}

:root{--font:Manrope,Arial,sans-serif;--accent:#806143}
body{font-size:18px;line-height:1.7;font-weight:400}h1,h2,h3,h4{font-weight:450}em{font-family:var(--font);font-style:normal;font-weight:400;font-size:1em;line-height:inherit;letter-spacing:inherit}h1{font-size:clamp(46px,5.5vw,80px);line-height:1.1;letter-spacing:-.055em}h2{font-size:clamp(36px,3.8vw,60px);line-height:1.13;letter-spacing:-.05em}.eyebrow,.mono{font-size:11px;letter-spacing:.08em}.lead{font-size:clamp(18px,1.55vw,22px);line-height:1.7}.muted{font-size:14px}.text-link{font-size:14px;font-weight:450;gap:18px}.button{font-size:13px;font-weight:500;min-height:50px}.brand-name{font-size:26px;letter-spacing:-.065em;font-weight:500}.brand-line{font-size:8px;letter-spacing:.1em}.desktop-nav a{font-size:12px}.header-end{gap:24px}.languages{font-size:11px}.contact-nav{font-size:12px}.site-header.over-image .brand-dot{color:#d8c6ac}.site-header.is-scrolled .brand-dot{color:var(--accent)}.menu-toggle{font-size:12px}.home-hero{min-height:760px;height:100svh;max-height:1050px}.hero-photo{inset:0}.hero-poster{height:100%;width:100%;object-fit:cover;filter:none!important;animation:none!important}.hero-video{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;opacity:0;transition:opacity .65s var(--ease)}.hero-photo.is-playing .hero-video{opacity:1}.hero-shade{background:linear-gradient(90deg,rgba(12,20,16,.92),rgba(12,20,16,.75) 52%,rgba(12,20,16,.3)),linear-gradient(0deg,rgba(12,20,16,.82),transparent 55%)}.hero-copy{padding-top:clamp(175px,23vh,250px);padding-bottom:190px;max-width:1600px}.hero-copy .eyebrow{font-size:12px;letter-spacing:.14em;margin-bottom:30px}.hero-copy h1{font-size:clamp(48px,5.4vw,80px);line-height:1.08;letter-spacing:-.055em;font-weight:400;max-width:1050px;animation:none}.hero-copy h1 em{font-size:1em;font-family:var(--font);font-style:normal;color:var(--paper)}.hero-positioning{font-size:16px!important;line-height:1.7;margin-top:25px;color:#e2d7c6;letter-spacing:-.01em}.hero-bottom{margin-top:25px;gap:40px;max-width:1250px}.hero-bottom>p{font-size:17px;line-height:1.8;max-width:425px}.hero-actions{gap:30px}.hero-actions .button{font-size:12px;gap:24px;padding:18px 20px}.hero-actions .text-link{font-size:13px}.hero-foot{bottom:30px;align-items:flex-end}.hero-location{display:none}.scroll-link{font-size:11px}.hero-media-controls{display:flex;flex-direction:column;align-items:flex-end;gap:11px;font-size:11px;text-align:right}.hero-media-controls>button{display:flex;align-items:center;gap:11px;font-size:11px;padding:9px 13px;border:1px solid #bdc2b580;background:#18201891;min-height:42px;color:var(--paper)}.hero-media-controls>button:hover{background:#182018}.hero-media-controls>button:disabled{opacity:.8}.hero-media-controls>a{font-size:10px;color:#e3e6df;text-decoration:underline;text-underline-offset:3px}.video-state-icon{font-size:16px;line-height:1}.intro-copy>.lead{font-size:20px}.intro-copy>p:not(.lead){font-size:17px;line-height:1.8}.intro-copy .text-link{font-size:14px}.metrics>div>span{font-size:12px;max-width:170px}.section-heading>div+div>p,.section-heading>p{font-size:17px;line-height:1.8;max-width:380px}.section-heading>div+div{max-width:380px}.project-card-meta{font-size:11px;line-height:1.5;letter-spacing:.035em;flex-wrap:wrap;gap:8px 16px}.project-card h3{font-size:26px;line-height:1.3}.project-card>p{font-size:15px;line-height:1.65}.project-image-index{font-size:11px}.work-grid .project-card h3{font-size:23px}.work-grid .project-card-meta{font-size:10px}.work-grid .project-card>p{font-size:14px}.project-card.is-competition .project-image-link{background:white}.project-card.is-competition img{object-fit:contain;filter:none;transform:none}.expertise-detail p{font-size:18px;line-height:1.7}.expertise-detail li{font-size:15px;line-height:1.7}.expertise-detail .text-link{font-size:13px}.expertise-row summary{padding-top:30px;padding-bottom:30px}.expertise-row h3{font-weight:400}.pmo-copy>p{font-size:17px;line-height:1.8}.pmo-copy>small{font-size:12px;max-width:400px}.pmo-copy h2 em{font-style:normal}.career-preview>div>p:not(.eyebrow){font-size:17px}.career-mini-row{font-size:18px}.career-mini-row>.mono{font-size:11px}.career-mini-row small{font-size:12px;line-height:1.7}.closing-email{font-size:17px}.footer-top p{font-size:13px}.footer-bottom,.footer-bottom nav{font-size:11px}.footer-linkedin{font-size:12px}.draft-status{font-size:10px}.draft-status>.updated{font-size:10px}.page-intro h1{font-size:clamp(44px,4.8vw,72px);line-height:1.13}.page-intro .lead{font-size:18px;line-height:1.8}.project-search input{font-size:14px}.view-modes button{font-size:12px;min-height:44px}.filter-row button{font-size:12px;min-height:44px}.filter-row sup{font-size:9px}.results-heading,.clear-filters{font-size:11px}.project-search{width:320px}.project-list-head{font-size:10px}.project-list-title strong{font-size:19px}.project-list-title small,.list-role small{font-size:11px}.list-location,.list-role{font-size:13px}.list-index{font-size:10px}.map-topline{font-size:10px}.map-controls button{font-size:11px;min-height:40px}.map-bottomline{font-size:10px}.map-project-item strong{font-size:14px}.map-project-item small{font-size:11px}.map-project-item{padding:17px 0}.map-note{font-size:12px}.map-sidebar>h3{font-size:28px}.map-selected .text-link{font-size:12px}.map-selected h4{font-size:18px}.case-hero h1{font-size:clamp(44px,5.5vw,80px)}.case-hero-copy>p:last-child{font-size:20px;line-height:1.7}.back-link{font-size:12px}.case-hero-location{font-size:11px}.project-facts>div>span{font-size:11px}.project-facts strong{font-size:15px;line-height:1.7}.case-story .lead{font-size:21px;line-height:1.75}.case-story>div+div>p:not(.lead){font-size:18px;line-height:1.8}.case-story h3{font-size:23px}.case-contributions .muted{font-size:14px}.case-contributions li>p{font-size:18px;line-height:1.75}.case-contributions li>.mono{font-size:11px}.method-tags>span{font-size:12px}.case-output-grid li{font-size:16px;line-height:1.8}.case-gallery-images figcaption,.image-credit{font-size:12px;line-height:1.7}.image-credit a{text-decoration:underline;text-underline-offset:3px}.related-grid .project-card h3{font-size:23px}.related-grid .project-card-meta{font-size:10px}.related-grid .project-card>p{font-size:14px}.tools-grid h3{font-size:23px}.tools-grid p{font-size:16px;line-height:1.8}.timeline-tabs .mono{font-size:11px}.timeline-tabs strong{font-size:15px;line-height:1.6}.timeline-tabs button{grid-template-columns:110px 1fr;gap:15px}.timeline-tabs small{font-size:10px}.career-panel .eyebrow{font-size:11px}.career-panel h3{font-size:22px;line-height:1.5}.career-panel>p:not(.eyebrow){font-size:18px;line-height:1.8}.career-panel .text-link{font-size:13px}.career-panel{min-height:620px}.career-panel-index{font-size:11px}.pmp-credential h3{font-size:24px}.pmp-credential>p:not(.eyebrow){font-size:15px}.pmp-credential>small{font-size:12px;line-height:1.7}.registration-credential>p:not(.eyebrow){font-size:17px;line-height:1.8}.training-items h4{font-size:17px;line-height:1.65}.training-items p{font-size:12px;line-height:1.7}.training-items small{font-size:11px}.education-line>p:last-child{font-size:17px;line-height:1.8}.background-row p{font-size:16px;line-height:1.7}.about-background .text-link,.about-background .download-cv{font-size:13px}.about-themes p{font-size:17px;line-height:1.8}.about-monogram>.mono{font-size:11px}.about-monogram>p{font-size:20px}.about-image figcaption{font-size:11px}.contact-intro>.lead{font-size:18px;line-height:1.8}.contact-location{font-size:16px}.contact-location p>span{font-size:13px}.email-link{font-size:clamp(20px,2vw,29px)}.copy-email{font-size:28px}.contact-actions>.eyebrow{padding-bottom:26px}.contact-actions article{border-top:1px solid var(--line);padding:28px 0 30px}.contact-actions article>.mono{font-size:11px;color:var(--muted)}.contact-actions h2{font-size:29px;line-height:1.3;letter-spacing:-.035em;margin-top:15px}.contact-actions p{font-size:17px;line-height:1.8;color:var(--muted);margin-top:18px}.contact-actions .text-link{font-size:14px;margin-top:14px}.experience-story{background:var(--paper-deep)}.experience-story>.about-themes{padding:0}.experience-story .about-themes h3{font-size:30px;margin-top:25px}.experience-credentials-link{display:grid;grid-template-columns:1fr 1.4fr;gap:10%;align-items:start;margin-top:60px;padding-top:35px;border-top:1px solid var(--line)}.experience-credentials-link>.button{justify-self:start}.experience-credentials-link p{font-size:16px;line-height:1.9;color:var(--muted)}.page-credentials .development-section{padding-top:45px}.page-credentials .development-section>.section-heading{display:none}.legal-draft{font-size:14px}.legal-copy p,.legal-copy li{font-size:17px;line-height:1.85}.legal-copy h2{font-size:29px}.media-credit-records article{padding:25px 0;border-top:1px solid var(--line)}.media-credit-records h3{font-size:23px;line-height:1.45}.media-credit-records article p{font-size:15px;margin-top:14px}.media-credit-records article p:last-child{font-size:13px}.competition-feature{background:#e9e7df;padding-top:85px;padding-bottom:60px}.competition-feature-top{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;margin:35px 0 50px;align-items:end}.competition-feature-top p{font-size:18px;line-height:1.8;color:var(--muted)}.competition-feature-top .text-link{margin-top:23px;font-size:13px}.competition-feature-art{display:block;position:relative;background:#fff;overflow:hidden}.competition-feature-art img{width:100%;height:auto;object-fit:contain;max-width:1280px;margin:auto;filter:none;transform:none}.competition-feature-art>span{position:absolute;right:0;bottom:0;display:flex;align-items:center;gap:25px;padding:19px 24px;background:var(--paper);font-size:13px}.competition-feature-caption{font-size:12px;margin-top:19px;color:var(--muted)}.competition-hero{padding-top:150px;padding-bottom:45px}.competition-hero .back-link{margin-bottom:35px}.competition-title{display:grid;grid-template-columns:1.5fr 1fr;gap:8%;align-items:end;margin:30px 0 50px}.competition-title h1{font-size:clamp(44px,5.2vw,76px);line-height:1.14}.competition-title>.lead{font-size:22px;max-width:360px}.artwork-figure{margin:0;min-width:0}.artwork-open{width:100%;display:block;padding:0;position:relative;background:#fff;overflow:hidden}.artwork-open img{display:block;width:100%;height:auto;max-width:1280px;object-fit:contain;margin:auto;filter:none;transform:none}.artwork-open-label{display:flex;align-items:center;gap:14px;position:absolute;right:0;bottom:0;padding:13px 18px;background:var(--paper);font-size:12px;transition:background .25s}.artwork-open:hover .artwork-open-label{background:var(--sand)}.artwork-figure>figcaption{font-size:12px;line-height:1.8;color:var(--muted);margin-top:17px;max-width:850px}.competition-context{padding-top:25px;padding-bottom:65px}.competition-team{display:grid;grid-template-columns:1fr 1.2fr;gap:15%;border-top:1px solid var(--line);padding-top:35px}.competition-team p:not(.eyebrow){font-size:16px;line-height:1.9;margin-top:22px}.competition-team .text-link{font-size:13px;margin-top:15px}.competition-concepts{padding-top:20px;padding-bottom:20px}.competition-concept{display:grid;grid-template-columns:.8fr 1.4fr;gap:8%;align-items:center;margin-bottom:90px}.competition-concept:nth-child(even){grid-template-columns:1.4fr .8fr}.competition-concept:nth-child(even) .competition-concept-copy{order:2}.competition-concept-copy h2{font-size:clamp(32px,3vw,48px);margin-top:25px;line-height:1.2}.competition-concept-copy>p:last-child{font-size:18px;line-height:1.8;margin-top:25px;color:var(--muted)}.competition-boards{background:var(--paper-deep)}.boards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.boards-grid .artwork-open-label{font-size:11px;padding:10px 14px}.boards-grid img{max-width:480px;height:auto}.competition-source-links{display:flex;flex-wrap:wrap;gap:20px 40px;margin-top:30px}.competition-source-links .text-link{font-size:12px}.competition-next{display:flex;justify-content:space-between;align-items:flex-end;gap:50px}.competition-next h2{font-size:48px}.competition-next .text-link{font-size:13px}.image-viewer[open]{display:flex;flex-direction:column;width:calc(100vw - 48px);max-width:1550px;height:calc(100svh - 48px);max-height:1100px;border:0;padding:22px 26px;background:var(--paper);color:var(--ink);overflow:hidden;box-shadow:0 20px 80px #0004}.image-viewer::backdrop{background:rgba(10,16,12,.78);backdrop-filter:blur(3px)}.viewer-toolbar{display:flex;align-items:center;gap:22px;flex:none;border-bottom:1px solid var(--line);padding-bottom:15px}.viewer-toolbar h2{font-size:18px;letter-spacing:-.02em}.viewer-count{margin-left:auto;font-size:12px}.viewer-toolbar button{font-size:12px;min-height:42px;padding:8px 13px;border:1px solid var(--line)}.viewer-toolbar button:hover,.viewer-toolbar button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.viewer-toolbar [data-gallery-close]{display:flex;align-items:center;gap:15px}.viewer-toolbar [data-gallery-close] span{font-size:24px}.viewer-main{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:15px;flex:1;min-height:0;margin-top:18px}.viewer-main>button{align-self:center;min-height:44px;font-size:23px;padding:0;border:1px solid var(--line)}.viewer-main>button:disabled{opacity:.35}.viewer-image-wrap{display:grid;place-items:center;overflow:auto;min-height:0;min-width:0;background:white}.viewer-image{width:auto;height:auto;max-width:100%;max-height:calc(100svh - 220px);object-fit:contain}.viewer-image-wrap.is-zoomed{display:block}.viewer-image-wrap.is-zoomed .viewer-image{width:min(160vw,2300px);height:auto;max-width:none;max-height:none}.viewer-caption{font-size:13px;line-height:1.7;margin:18px auto 0;max-width:1000px;text-align:center;flex:none}.research-index{padding-top:0}.research-index>article{margin-bottom:70px;max-width:1100px}.research-index>article>img{width:100%;height:auto;max-height:650px;object-fit:contain;background:#fff;margin-bottom:30px}.research-index>article>h2{font-size:36px;margin:20px 0}.research-index .text-link{font-size:36px;letter-spacing:-.04em;line-height:1.3}.research-index>article>p:last-child{font-size:18px;line-height:1.8}.research-hero-art{padding-top:0;padding-bottom:30px}.research-text{max-width:1200px;margin:auto;padding-top:25px}.research-text>article{display:grid;grid-template-columns:1fr 1.7fr;gap:8%;border-top:1px solid var(--line);padding:35px 0}.research-text h2{font-size:29px;line-height:1.35}.research-text p,.research-text li{font-size:18px;line-height:1.9}.research-text ul{margin:0;padding-left:20px}.research-gallery>div{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:45px}.research-download{padding-top:0}.page-research-study .page-intro>div{align-items:start}.page-research-study .page-intro h1{font-size:clamp(40px,5vw,70px)}
@media(max-width:1100px){.desktop-nav{display:none}.menu-toggle{display:flex}.contact-nav{display:none}.hero-copy{padding-top:175px}.hero-bottom{align-items:flex-start;flex-direction:column;gap:25px}.hero-actions .button{font-size:12px}.hero-actions .text-link{font-size:13px}.section-heading>div+div{max-width:330px}.section-heading>div+div>p{font-size:16px}.timeline-tabs button{display:block;padding-top:22px;padding-bottom:22px}.timeline-tabs strong{display:block;margin-top:10px;font-size:14px}.career-panel{padding:38px 32px;min-height:660px}.career-panel>p:not(.eyebrow){font-size:17px}.pmo-copy{padding:55px 35px}.pmo-copy>p{font-size:16px}.pmo-copy>small{font-size:12px}.competition-concept{gap:6%}.competition-concept-copy>p:last-child{font-size:17px}.boards-grid{gap:22px}.contact-page{gap:6%}.contact-intro>.lead{font-size:17px}.contact-actions h2{font-size:26px}.email-link{font-size:22px}}
@media(max-width:900px){body{font-size:18px}.hero-copy h1{font-size:64px;line-height:1.08}.hero-positioning{font-size:14px!important}.hero-bottom>p{font-size:16px;max-width:410px}.intro-copy .lead{font-size:19px}.intro-copy>p:not(.lead){font-size:16px}.page-intro h1{font-size:56px}.page-intro .lead{font-size:18px}.pmo-copy h2{font-size:37px}.career-mini-row{font-size:16px}.career-mini-row small{font-size:11px}.project-card h3{font-size:24px}.project-card>p{font-size:15px}.project-card-meta{font-size:10px}.metrics>div>span{font-size:11px}.case-story .lead{font-size:19px}.case-story>div+div>p:not(.lead){font-size:17px}.case-contributions li>p{font-size:17px}.project-facts strong{font-size:14px}.project-facts>div>span{font-size:10px}.related-grid .project-card h3{font-size:21px}.related-grid .project-card>p{font-size:14px}.related-grid .project-card-meta{font-size:10px}.tools-grid p{font-size:15px}.training-items h4{font-size:16px}.training-items p{font-size:12px}.training-items small{font-size:11px}.registration-credential>p:not(.eyebrow){font-size:16px}.competition-feature-top{gap:6%;grid-template-columns:1fr 1fr}.competition-feature-top h2{font-size:40px}.competition-feature-top p{font-size:16px}.competition-feature-top .text-link{font-size:12px}.competition-title{display:block}.competition-title h1{font-size:60px;max-width:720px}.competition-title>.lead{font-size:20px;max-width:550px;margin-top:28px}.competition-concept-copy h2{font-size:33px}.competition-concept-copy>p:last-child{font-size:16px}.competition-team{gap:8%}.about-themes p{font-size:16px}.experience-story .section-heading{margin-bottom:40px}.contact-actions p{font-size:16px}.contact-actions .text-link{font-size:13px}.footer-bottom nav{font-size:10px}.map-project-item strong{font-size:14px}.map-project-item small{font-size:11px}.map-note{font-size:12px}.map-topline{font-size:10px}.map-bottomline{font-size:10px}.map-controls button{font-size:11px}.legal-copy p,.legal-copy li{font-size:17px}.research-text>article{gap:6%}.research-text h2{font-size:25px}}
@media(max-width:600px){body{font-size:17px;line-height:1.75}.brand-name{font-size:24px}.brand-line{font-size:7px;line-height:1.4}.header-end{gap:20px}.languages{font-size:10px}.menu-toggle{font-size:0}.eyebrow,.mono{font-size:10px;letter-spacing:.07em}h2{font-size:38px;line-height:1.15}.home-hero{min-height:730px;max-height:950px}.hero-copy{padding-top:155px;padding-bottom:200px}.hero-copy .eyebrow{font-size:11px;margin-bottom:28px}.hero-copy h1{font-size:clamp(32px,9vw,44px);line-height:1.1;letter-spacing:-.045em}.hero-copy h1 em{font-size:1em}.hero-positioning{font-size:12px!important;max-width:310px;line-height:1.8;margin-top:23px}.hero-bottom{margin-top:24px;gap:23px}.hero-bottom>p{font-size:16px;line-height:1.8;max-width:320px}.hero-actions{gap:18px;flex-wrap:wrap}.hero-actions .button{font-size:11px;padding:15px 17px;gap:18px}.hero-actions .text-link{font-size:12px;gap:10px}.hero-actions .icon{width:20px;height:20px}.hero-foot{bottom:23px;align-items:flex-end;gap:18px}.scroll-link{font-size:10px;gap:9px;max-width:100px;line-height:1.7}.hero-media-controls{max-width:220px;gap:10px}.hero-media-controls>button{font-size:10px;padding:8px 10px;min-height:40px}.hero-media-controls>a{font-size:9px;line-height:1.7}.hero-poster,.hero-video{object-position:61% center}.hero-shade{background:linear-gradient(90deg,rgba(12,20,16,.85),rgba(12,20,16,.6)),linear-gradient(0deg,rgba(12,20,16,.9),transparent)}.intro-layout h2{font-size:39px}.intro-copy .lead{font-size:19px;line-height:1.7}.intro-copy>p:not(.lead){font-size:17px;line-height:1.8}.intro-copy .text-link{font-size:13px}.metrics{gap:16px}.metrics>div>span{font-size:10px;max-width:105px;line-height:1.7}.metrics strong{font-size:49px}.metrics .pmp-metric{font-size:33px}.section-heading>div+div>p,.section-heading>p{font-size:17px;line-height:1.8}.section-heading>.text-link{font-size:13px}.section-heading>div+div{max-width:100%}.project-card-meta,.work-grid .project-card-meta{font-size:10px;gap:7px 15px}.project-card h3,.work-grid .project-card h3{font-size:24px;line-height:1.35}.project-card>p,.work-grid .project-card>p{font-size:15px}.project-image-index{font-size:10px}.expertise-row h3{font-size:22px;line-height:1.4}.expertise-no{font-size:10px}.expertise-detail p{font-size:17px}.expertise-detail li{font-size:15px}.expertise-detail .text-link{font-size:12px}.pmo-copy h2{font-size:39px}.pmo-copy>p{font-size:17px;line-height:1.8}.pmo-copy>small{font-size:11px}.career-preview>div>p:not(.eyebrow){font-size:17px}.career-mini-row{grid-template-columns:90px 1fr 22px;font-size:16px;gap:12px}.career-mini-row .mono{font-size:10px}.career-mini-row small{font-size:11px}.closing-cta h2{font-size:11vw;line-height:1.15}.closing-email{font-size:15px}.footer-top p{font-size:12px}.footer-bottom,.footer-bottom nav{font-size:10px}.draft-status{font-size:9px}.draft-status>.updated{font-size:9px}.page-intro h1{font-size:40px;line-height:1.15}.page-intro .lead{font-size:17px;line-height:1.8}.page-intro>div{gap:27px}.view-modes button{font-size:12px;padding:10px 16px;min-height:44px}.project-search input{font-size:15px}.filter-row button{font-size:12px;min-height:44px}.results-heading,.clear-filters{font-size:11px}.filter-row{gap:23px}.project-list-title strong{font-size:17px}.project-list-title small{font-size:10px}.list-role{font-size:12px;line-height:1.7}.list-role small{font-size:10px}.list-index{font-size:10px}.map-topline{font-size:9px}.map-controls button{font-size:10px;min-height:38px}.map-bottomline{font-size:9px;line-height:1.7}.map-note{font-size:12px;line-height:1.8}.map-selected h4{font-size:19px}.map-selected .text-link{font-size:12px}.map-project-item strong{font-size:14px}.map-project-item small{font-size:11px}.case-hero h1{font-size:42px;line-height:1.15}.case-hero-copy>p:last-child{font-size:18px;line-height:1.7}.back-link{font-size:12px}.case-hero .eyebrow{font-size:10px}.case-hero-location{font-size:10px}.project-facts>div>span{font-size:10px}.project-facts strong{font-size:14px;line-height:1.75}.case-story h2{font-size:36px}.case-story .lead{font-size:19px;line-height:1.8}.case-story h3{font-size:23px}.case-story>div+div>p:not(.lead){font-size:17px;line-height:1.8}.case-contributions .muted{font-size:14px}.case-contributions li>p{font-size:17px;line-height:1.8}.case-contributions li>.mono{font-size:11px}.method-tags>span{font-size:12px}.case-output-grid li{font-size:16px;line-height:1.8}.case-gallery-images figcaption,.image-credit{font-size:11px}.related-section h2{font-size:30px}.related-section .section-heading>.text-link{font-size:11px;gap:10px}.related-grid .project-card h3{font-size:24px}.related-grid .project-card-meta{font-size:10px}.related-grid .project-card>p{font-size:15px}.tools-grid h3{font-size:24px}.tools-grid p{font-size:17px}.timeline-tabs button{width:230px;min-height:130px}.timeline-tabs strong{font-size:15px;line-height:1.65}.timeline-tabs .mono{font-size:11px}.timeline-tabs small{font-size:10px}.career-panel{min-height:490px;padding:35px 27px}.career-panel h2{font-size:38px}.career-panel h3{font-size:22px;line-height:1.5}.career-panel>p:not(.eyebrow){font-size:17px;line-height:1.8}.career-panel .text-link{font-size:12px}.career-panel-index{font-size:11px}.pmp-credential h3{font-size:24px}.pmp-credential>p:not(.eyebrow){font-size:15px}.pmp-credential>small{font-size:12px}.registration-credential>p:not(.eyebrow){font-size:17px}.training-group summary h3{font-size:22px;line-height:1.45}.training-group summary .mono{font-size:10px}.training-items h4{font-size:17px}.training-items p{font-size:12px}.training-items small{font-size:11px}.education-line>p:last-child{font-size:17px;line-height:1.8}.about-themes p{font-size:17px;line-height:1.8}.background-row p{font-size:16px;line-height:1.8}.about-background .text-link,.about-background .download-cv{font-size:13px}.about-monogram>.mono{font-size:10px}.about-monogram>p{font-size:16px}.about-image figcaption{font-size:11px}.experience-credentials-link{grid-template-columns:1fr;gap:28px;margin-top:40px}.experience-credentials-link p{font-size:16px}.experience-story .about-themes h3{font-size:30px}.page-credentials .development-section{padding-top:25px}.contact-intro h1{font-size:52px;line-height:1.1}.contact-intro>.lead{font-size:18px}.email-link{font-size:22px;gap:13px}.contact-location{font-size:16px}.contact-location p>span{font-size:13px}.contact-actions>.eyebrow{font-size:10px}.contact-actions h2{font-size:30px}.contact-actions p{font-size:17px}.contact-actions .text-link{font-size:14px}.competition-feature{padding-top:55px;padding-bottom:40px}.competition-feature-top{grid-template-columns:1fr;gap:27px;margin:28px 0 35px}.competition-feature-top h2{font-size:38px}.competition-feature-top p{font-size:17px}.competition-feature-top .text-link{font-size:13px}.competition-feature-art>span{font-size:11px;padding:12px 15px;gap:15px}.competition-feature-caption{font-size:11px;line-height:1.8}.competition-hero{padding-top:125px;padding-bottom:30px}.competition-hero .back-link{margin-bottom:28px}.competition-title{margin-top:28px;margin-bottom:35px}.competition-title h1{font-size:42px;line-height:1.16;overflow-wrap:break-word}.competition-title>.lead{font-size:19px;line-height:1.7;margin-top:25px}.artwork-open-label{font-size:11px;padding:10px 13px;gap:10px}.artwork-figure>figcaption{font-size:12px;line-height:1.8;margin-top:15px}.competition-context{padding-top:20px;padding-bottom:45px}.competition-team{grid-template-columns:1fr;gap:25px}.competition-team p:not(.eyebrow){font-size:16px;line-height:1.8;margin-top:17px}.competition-team .text-link{font-size:13px}.competition-concepts{padding-top:0;padding-bottom:10px}.competition-concept,.competition-concept:nth-child(even){grid-template-columns:1fr;gap:30px;margin-bottom:60px}.competition-concept:nth-child(even) .competition-concept-copy{order:0}.competition-concept-copy h2{font-size:34px;line-height:1.2;margin-top:22px}.competition-concept-copy>p:last-child{font-size:17px;line-height:1.8;margin-top:22px}.boards-grid{grid-template-columns:1fr;gap:35px;max-width:480px;margin:auto}.boards-grid img{max-width:480px}.boards-grid .artwork-open-label{font-size:11px;padding:12px 15px}.competition-source-links{gap:18px;margin-top:25px}.competition-source-links .text-link{font-size:12px}.competition-next{display:block}.competition-next h2{font-size:36px}.competition-next .text-link{margin-top:30px;font-size:13px}.image-viewer[open]{width:calc(100vw - 20px);height:calc(100svh - 24px);padding:16px 13px}.viewer-toolbar{flex-wrap:wrap;gap:10px;padding-bottom:12px}.viewer-toolbar h2{font-size:16px;max-width:160px}.viewer-count{font-size:11px}.viewer-toolbar button{font-size:11px;min-height:40px;padding:7px 10px}.viewer-toolbar [data-gallery-zoom]{order:3}.viewer-toolbar [data-gallery-close]{margin-left:auto;gap:12px}.viewer-main{display:block;position:relative;padding-bottom:52px;min-height:0;margin-top:15px}.viewer-image-wrap{height:100%;width:100%}.viewer-image{max-height:calc(100svh - 260px);max-width:100%;height:auto;width:auto}.viewer-main>button{position:absolute;bottom:0;width:52px;min-height:43px}.viewer-main>button:first-child{left:0}.viewer-main>button:last-child{right:0}.viewer-caption{font-size:12px;line-height:1.65;margin-top:14px}.legal-copy p,.legal-copy li{font-size:17px;line-height:1.85}.legal-copy h2{font-size:27px}.legal-draft{font-size:13px}.media-credit-records h3{font-size:22px}.media-credit-records article p{font-size:15px}.research-text>article{grid-template-columns:1fr;gap:20px;padding:30px 0}.research-text h2{font-size:28px}.research-text p,.research-text li{font-size:17px;line-height:1.85}.research-gallery>div{grid-template-columns:1fr;gap:35px;margin-top:30px}.research-index .text-link{font-size:30px;line-height:1.4}.research-index>article>p:last-child{font-size:17px}.page-research-study .page-intro h1{font-size:40px}.navigation-panel nav a{font-size:30px;line-height:1.35;padding:17px 0}.navigation-panel nav .mono{font-size:10px}.menu-bottom{font-size:13px}.menu-close{font-size:12px}}
@media(max-width:370px){.hero-actions{gap:14px}.hero-actions .button{font-size:10px;padding:14px 13px;gap:12px}.hero-actions .text-link{font-size:11px;gap:7px}.hero-media-controls{max-width:190px}.hero-media-controls>a{font-size:9px}.hero-copy{padding-top:145px}.hero-copy h1{font-size:34px}.hero-positioning{font-size:11px!important}.hero-bottom>p{font-size:16px}.metrics>div>span{font-size:10px}.email-link{font-size:19px}.project-facts{grid-template-columns:1fr}.competition-title h1{font-size:37px}.viewer-toolbar h2{font-size:14px}.navigation-panel nav a{font-size:27px}}
@media(prefers-reduced-motion:reduce){.hero-video{transition:none}.hero-photo img{animation:none!important}.artwork-open-label{transition:none}.hero-copy h1{animation:none}.hero-photo:not(.is-playing) .hero-video{opacity:0}}

/* Architectural identity: warm mineral surfaces, charcoal and a restrained bronze line. */
:root{--paper:#e8e1d5;--paper-deep:#ddd4c6;--ink:#202522;--dark:#19201e;--muted:#5b625c;--line:#bbb6aa;--accent:#805b39;--sand:#cfb590;--bronze-light:#d1ac7f;--gutter:clamp(22px,4.8vw,84px)}
body{font-family:"Source Sans 3",Arial,sans-serif;font-size:18px;line-height:1.75;letter-spacing:-.012em;font-optical-sizing:auto}
h1,h2,h3,h4{font-weight:430;letter-spacing:-.045em;text-wrap:balance}h1{line-height:1.13}h2{font-size:clamp(36px,3.6vw,56px);line-height:1.16}h3{line-height:1.35}p{max-width:65ch}.eyebrow{font-size:11px;font-weight:500;letter-spacing:.12em}.section{padding-top:84px;padding-bottom:84px}.lead{line-height:1.75;font-size:clamp(18px,1.45vw,22px)}
.site-header,.site-header.is-scrolled{background:rgba(25,32,30,.96);color:var(--paper);border-color:#a88d6f40}.site-header.over-image:not(.is-scrolled){background:linear-gradient(#121b17aa,transparent);color:var(--paper);border-color:#d1c3aa35}.site-header.is-scrolled .brand-dot{color:var(--bronze-light)}.brand-name{font-weight:470;letter-spacing:-.055em}.brand-line{font-size:9px;letter-spacing:.09em}.desktop-nav a{font-size:12px}.contact-nav{font-size:12px}.languages{font-size:11px}.skip-link{color:var(--ink)}
.home-hero{isolation:isolate;min-height:800px;max-height:1100px}.hero-copy h1{font-weight:400;font-size:clamp(50px,5.15vw,78px);line-height:1.1;letter-spacing:-.047em}.hero-copy{padding-top:clamp(165px,20vh,225px);padding-bottom:185px}.hero-copy .eyebrow{font-size:12px}.hero-bottom{margin-top:34px}.hero-bottom>p{font-size:18px;line-height:1.75}.hero-positioning{font-size:15px!important;font-weight:400}.hero-shade{background:linear-gradient(90deg,#101a16e8 2%,#121d17b5 45%,#13201d28),linear-gradient(0deg,#19201e 0%,transparent 32%)}.hero-foot{z-index:3}.hero-media-controls>button{font-size:12px}.hero-media-controls>a{font-size:11px;max-width:270px}.hero-photo img,.hero-video{filter:none!important}.hero-photo::after{content:'';position:absolute;inset:75% 0 0;background:linear-gradient(transparent,var(--dark));pointer-events:none}
.credential-ribbon{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px var(--gutter) 28px;background:var(--dark);color:var(--paper);border-bottom:1px solid #b49a7645;font-size:13px;line-height:1.7}.credential-ribbon>p{max-width:75ch;color:#e9e0d1}.credential-ribbon>span{white-space:nowrap;color:var(--bronze-light);font-size:17px;display:flex;gap:12px;align-items:center}.credential-ribbon sup{font-size:10px}.credential-ribbon>span>span{font-size:12px;color:#d1d5cb;white-space:normal;max-width:150px}
.intro-section{position:relative;background:linear-gradient(180deg,#ded6c9,var(--paper) 28%);padding-top:82px;padding-bottom:74px}.intro-layout{gap:9%}.intro-copy>.lead{font-size:21px}.intro-copy>p:not(.lead){font-size:18px}.metrics{margin-top:58px;padding-top:30px;border-color:#aaa798}.metrics strong{font-weight:420;letter-spacing:-.055em}.metrics>div>span{font-size:12px;line-height:1.65}.metrics .pmp-metric{font-weight:500}

/* An original interlaced square / eight-point system; no external images or animation library. */
.geometry-art{display:block;overflow:visible;pointer-events:none;position:relative;width:100%;color:var(--accent);stroke:currentColor;stroke-width:1;vector-effect:non-scaling-stroke}.geometry-art path,.geometry-art circle{vector-effect:non-scaling-stroke}.geometry-threads{opacity:.28}.geometry-lattice{opacity:.6}.geometry-fold{fill:currentColor;stroke:none;opacity:.035;transform-origin:0 0}.geometry-art circle{opacity:.35}.hero-geometry{position:absolute;z-index:2;right:-16%;top:27%;width:76%;color:#e1bc87;opacity:.22;rotate:-18deg;mask-image:linear-gradient(90deg,transparent,#000 36%)}
.geometry-band{position:relative;overflow:hidden;padding:0 var(--gutter) 38px;background:linear-gradient(var(--dark),#303832 50%,var(--paper-deep));color:var(--paper);min-height:170px}.geometry-band>.geometry-art{height:175px;color:#d8b382;opacity:.53}.geometry-band>p{position:relative;text-align:center;margin:-11px auto 0;font-size:13px;line-height:1.7;max-width:680px;color:#e8e0d5;text-shadow:0 1px 8px #111a14;background:#263029cc;padding:9px 20px;width:fit-content}
.motion-ready .geometry-art:not(.in-view) .geometry-lattice path,.motion-ready .geometry-art:not(.in-view) .geometry-lattice circle,.motion-ready .geometry-art:not(.in-view) .geometry-threads path{stroke-dasharray:1;stroke-dashoffset:1}.motion-ready .geometry-art.in-view .geometry-lattice path,.motion-ready .geometry-art.in-view .geometry-lattice circle,.motion-ready .geometry-art.in-view .geometry-threads path{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.5s var(--ease);transition-delay:var(--geometry-delay,0ms)}.motion-ready .geometry-art.in-view .geometry-fold{animation:geometry-unfold 1.35s var(--ease) both;animation-delay:var(--geometry-delay,0ms)}
@keyframes geometry-unfold{0%{transform:scaleX(.03) rotate(-45deg);opacity:0}65%{opacity:.11}100%{transform:scaleX(1) rotate(0);opacity:.035}}
.geometric-reveal{isolation:isolate}.motion-ready .geometric-reveal:not(.in-view)>img{clip-path:polygon(50% 0,63% 20%,85% 15%,80% 37%,100% 50%,80% 63%,85% 85%,63% 80%,50% 100%,37% 80%,15% 85%,20% 63%,0 50%,20% 37%,15% 15%,37% 20%)}.motion-ready .geometric-reveal.in-view>img{clip-path:polygon(50% 0,75% 0,100% 0,100% 25%,100% 50%,100% 75%,100% 100%,75% 100%,50% 100%,25% 100%,0 100%,0 75%,0 50%,0 25%,0 0,25% 0);transition:clip-path 950ms var(--ease)}

/* A compact, real-geography personal atlas, with project and life markers kept distinct. */
.international-story{background:var(--dark);color:var(--paper);position:relative;padding-top:75px;padding-bottom:65px;--line:#7b847244;--muted:#bdc4b7;--accent:#d1ac7f}.story-introduction{display:grid;grid-template-columns:1.15fr 1fr;column-gap:9%;margin-bottom:42px;align-items:end}.story-introduction>.eyebrow{grid-column:1/-1;margin-bottom:27px;color:var(--bronze-light)}.story-introduction h2{font-size:clamp(35px,3.5vw,53px);line-height:1.2}.story-introduction>p:last-child{font-size:18px;line-height:1.85;color:#c8cfc3;max-width:470px}.story-explorer{display:grid;grid-template-columns:1.25fr 1fr;column-gap:7%;align-items:start}.story-country-controls{display:flex;grid-column:1;grid-row:1;border-bottom:1px solid var(--line);align-items:stretch}.story-country-controls button{display:flex;gap:12px;align-items:center;flex:1;text-align:left;padding:16px 12px 18px;font-size:15px;min-height:56px;border-bottom:2px solid transparent;color:#b6c0b1}.story-country-controls button:first-child{padding-left:0}.story-country-controls button .mono{font-size:10px;opacity:.65}.story-country-controls button[aria-pressed=true]{color:#f1e5cf;border-bottom-color:var(--bronze-light)}.story-map-frame{position:relative;grid-column:1;grid-row:2;overflow:hidden;width:100%;height:360px;background:radial-gradient(ellipse at 53% 48%,#364139,#1a2320 75%);border-bottom:1px solid var(--line);margin-top:20px}.story-map{display:block;height:100%;width:100%;overflow:hidden}.story-country{fill:#3d4941;stroke:#788473;stroke-width:.45;vector-effect:non-scaling-stroke}.story-country--egypt,.story-country--kuwait,.story-country--germany{fill:#79694c;stroke:#d0af7c;stroke-width:1.1;cursor:pointer}.story-country.is-active{fill:#a98958;stroke:#f0d9a8;stroke-width:1.3}.story-country:focus-visible{outline:none;fill:#d2b78c;stroke:#fff2dc;stroke-width:2}.story-connection{stroke:#c6a475;stroke-width:.8;vector-effect:non-scaling-stroke;stroke-dasharray:3 4;opacity:.6;pointer-events:none}.story-project-marker,.story-life-marker{cursor:pointer;outline:none}.story-dot{fill:#f0ddbb;stroke:#17221b;stroke-width:1;vector-effect:non-scaling-stroke}.story-hit{fill:transparent;stroke:none}.story-life-marker>path{fill:#1b241c;stroke:#f0d2a0;stroke-width:1;vector-effect:non-scaling-stroke}.story-project-marker:hover .story-dot,.story-project-marker:focus-visible .story-dot,.story-project-marker.is-selected .story-dot{fill:#fff9e8;stroke:#bf8b4d;stroke-width:3}.story-life-marker:focus-visible>path,.story-life-marker:hover>path{fill:#f3dab3;stroke:#fff}.story-project-marker.is-selected{filter:drop-shadow(0 0 3px #e4bb7f)}.story-map-overview{position:absolute;top:13px;right:12px;font-size:12px;min-height:42px;padding:8px 13px;background:#18241de6;border:1px solid #9eae8f5c;color:#e0d4c0}.story-map-legend{position:absolute;bottom:13px;left:15px;right:15px;display:flex;justify-content:space-between;gap:18px;font-size:11px;line-height:1.6;color:#d4dacc;pointer-events:none}.story-map-legend span{display:flex;gap:9px;align-items:center}.story-map-legend i{width:7px;height:7px;background:#edd6b1;border-radius:50%}.story-map-legend i.diamond{border-radius:0;rotate:45deg;background:transparent;border:1px solid #edd6b1}.story-map-hint{grid-column:1;grid-row:3;font-size:12px;color:#b9c4b4;margin-top:14px}.story-explorer>.text-link{grid-column:1;grid-row:4;justify-self:start;margin-top:23px;font-size:13px;color:#dfc29d}.story-country-panel{grid-column:2;grid-row:1/5;padding:8px 0 0;min-width:0}.story-country-heading{display:flex;gap:22px;align-items:center}.story-country-code{font-size:39px;font-weight:350;line-height:1;border:1px solid #b7996c80;color:#d1ac7f;padding:15px 12px;letter-spacing:-.04em}.story-country-heading .eyebrow{color:#bdc7b6;font-size:11px;margin-bottom:10px}.story-country-heading h3{font-size:27px;color:#ece5d8}.story-roles{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.story-roles span{font-size:11px;padding:5px 9px;border:1px solid #81937455;color:#ded3bd}.story-period{font-size:12px;line-height:1.85;color:#c4ccb9;margin-top:20px}.story-country-text{font-size:17px;line-height:1.85;margin-top:21px;color:#e2e1d6}.story-project-links{margin-top:24px;border-top:1px solid var(--line);padding-top:20px;display:grid;gap:12px}.story-project-links>.eyebrow{font-size:10px;color:#b5c0ab;margin-bottom:6px}.story-project-links>a{font-size:14px;line-height:1.6;display:flex;justify-content:space-between;gap:15px;align-items:center;color:#dfc5a0}.story-project-links>a:hover{text-decoration:underline;text-underline-offset:5px}.story-project-links .icon{width:16px;height:16px}.story-no-projects{font-size:13px;line-height:1.8;padding-top:20px;margin-top:25px;border-top:1px solid var(--line);color:#b4beaa}.story-project-focus{padding:20px;margin-top:24px;background:#38433280;border:1px solid #a3ae8a50}.story-project-focus h4{font-size:21px;margin-top:15px;color:#e7dfce}.story-project-focus>p:not(.eyebrow){font-size:13px;line-height:1.8;margin-top:15px;color:#ced4c1}.story-project-focus>.text-link{font-size:12px;line-height:1.65;margin-top:15px;gap:15px}.page-about .international-story{margin-top:0;margin-bottom:65px}.page-about .page-intro{padding-bottom:55px}

/* Image scale follows the real source. Low-resolution archive assets are never enlarged. */
.selected-section{background:linear-gradient(#e4dccf,#dcd3c3);padding-top:65px}.section-heading{gap:9%}.section-heading p{font-size:17px;line-height:1.8}.project-image-link{background:#ccc4b4;isolation:isolate;overflow:hidden}.project-image-link img{filter:none!important;object-fit:cover;object-position:center;transform:none!important;transition:none}.project-image-link::after{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid #6b655120}.project-image-arrow{background:var(--paper);color:var(--ink);bottom:12px;right:12px;border:1px solid #b7ac955c}.project-card h3,.work-grid .project-card h3{font-size:24px;line-height:1.35;letter-spacing:-.033em}.project-card-meta{font-size:11px;line-height:1.7}.project-card>p{font-size:16px;line-height:1.75}.project-card.is-archive .project-image-link{display:grid;place-items:center;background:radial-gradient(ellipse at 50% 45%,#d7cebd,#b5b0a0);min-height:190px;height:clamp(210px,19vw,285px);aspect-ratio:auto}.project-card.is-archive .project-image-link img{width:auto;max-width:min(100%,var(--asset-native-width));height:auto;max-height:100%;object-fit:contain;position:relative;box-shadow:0 14px 35px #20282021}.asset-archive{max-width:min(100%,var(--asset-native-width))!important;height:auto!important;filter:none!important}.project-card.is-archive .project-image-index{color:#283028;background:#e8e1d5d9;padding:4px 6px;top:12px;left:12px}.project-card.is-competition .project-image-link{background:#dfd6c7}.project-card.is-competition .project-image-link img{object-fit:contain;background:#fff}.selected-grid{row-gap:60px}.selected-grid .project-card:nth-child(even){translate:0 0}.work-grid{row-gap:60px;align-items:start}.work-grid .project-card:nth-child(even){translate:0 0}.work-grid .project-card.is-archive .project-image-link{aspect-ratio:auto;min-height:190px;height:clamp(210px,19vw,285px)}.project-card.is-archive .project-image-link:before{content:'';position:absolute;inset:0;background:linear-gradient(45deg,transparent 49.85%,#777b6324 50%,transparent 50.15%),linear-gradient(-45deg,transparent 49.85%,#777b6324 50%,transparent 50.15%);background-size:100px 100px;opacity:.4;pointer-events:none}
.competition-feature{background:var(--paper-deep);padding-top:50px;padding-bottom:60px}.competition-feature-top{gap:10%;margin-bottom:35px}.competition-feature-top h2{font-size:clamp(34px,3.4vw,54px)}.competition-feature-art{background:#c9beac;padding:clamp(10px,2.1vw,32px);border-top:1px solid #9a88675c;border-bottom:1px solid #9a88675c}.competition-feature-art img{max-width:1280px;box-shadow:0 12px 35px #26261c13}.competition-feature-art>span{background:#dcd0bc;font-size:13px;right:32px;bottom:32px}.competition-feature-caption{font-size:13px}.competition-hero{background:linear-gradient(#e8e1d5,#d9d0c0)}.competition-title>.lead{font-size:21px}.competition-title h1{font-size:clamp(40px,4.7vw,68px)}.competition-hero>.artwork-figure{padding:20px;background:#d2c6b2;border:1px solid #aa997a66}.artwork-open{background:transparent}.artwork-open img{max-width:min(1280px,100%);filter:none}.artwork-figure>figcaption{font-size:13px;line-height:1.8}.artwork-open-label{background:#e5d9c2e8;font-size:12px}.competition-context,.competition-concepts,.competition-boards{background:var(--paper)}.competition-concepts{padding-top:0}.competition-next{background:linear-gradient(var(--paper),var(--paper-deep))}.competition-next h2{font-size:clamp(32px,3vw,48px)}.boards-grid{gap:30px}.boards-grid .artwork-figure{padding:12px;background:#d0c4af}.boards-grid .artwork-open-label{font-size:11px;padding:10px}.boards-grid img{height:auto;object-fit:contain}.competition-team{gap:10%}.competition-team p:not(.eyebrow){font-size:16px;line-height:1.8}
.home-expertise{background:linear-gradient(var(--paper-deep),var(--paper));padding-top:75px}.expertise-row summary{padding:26px 0}.expertise-detail p{font-size:18px}.expertise-detail li{font-size:16px;line-height:1.8}.pmo-feature{position:relative;background:var(--dark);color:var(--paper);isolation:isolate;grid-template-columns:1fr 1fr}.pmo-image{position:relative;min-height:560px}.pmo-image img{height:100%;width:100%;object-fit:cover;filter:none}.pmo-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,var(--dark)),linear-gradient(0deg,#19201e55,transparent 60%);pointer-events:none}.pmo-copy{padding:65px var(--gutter) 65px 8%;color:var(--paper)}.pmo-copy h2{font-size:clamp(32px,3.15vw,50px);line-height:1.2}.pmo-copy>p{color:#d6d8ca;font-size:18px}.pmo-copy>small{font-size:13px;line-height:1.8;color:#b9c1ae}.pmo-copy>.text-link{color:var(--bronze-light)}.pmo-copy .eyebrow{color:var(--bronze-light)}.career-preview{background:linear-gradient(#d3cdbe,var(--paper));padding-bottom:75px}.career-preview>div>p:not(.eyebrow){font-size:18px}.career-mini-row{font-size:18px;line-height:1.6}.career-mini-row small{font-size:13px}.career-mini-row .mono{font-size:11px}.career-panel{background:#ddd4c2;min-height:560px}.career-panel h2{font-weight:430}.experience-story{background:var(--paper-deep)}
.closing-cta{position:relative;overflow:hidden;background:var(--dark);color:var(--paper);padding-top:65px;padding-bottom:65px;isolation:isolate}.closing-cta>div{position:relative;z-index:1;align-items:center;gap:30px}.closing-cta>div>h2{font-size:clamp(35px,3.8vw,60px);line-height:1.17;max-width:900px}.closing-cta>.eyebrow{color:var(--bronze-light);position:relative;z-index:1}.closing-email{position:relative;z-index:1;font-size:17px;color:#dfd0b7;margin-top:30px}.circle-link{width:80px;height:80px;flex:none}.closing-geometry{position:absolute;right:-20%;top:0;width:85%;height:100%;opacity:.13;color:var(--bronze-light);mask-image:linear-gradient(90deg,transparent,#000 60%);z-index:0}.site-footer{background:#151c19;color:#d4d8cb;border-top:1px solid #747f6755;padding-top:50px}.footer-top p{font-size:14px;color:#bdc6b5}.footer-bottom{border-color:#7c846f44;font-size:12px}.footer-bottom nav,.footer-linkedin{font-size:12px}.draft-status{border-color:#7c846f44;color:#a8b39f;font-size:11px}.draft-status>.updated{font-size:11px}.footer-brand{color:#e3dbce}.to-top{color:#d8c5a4}

/* Editorial case-study imagery and a quieter archive presentation. */
.case-hero{min-height:700px;height:88svh;max-height:950px;background:var(--dark)}.case-hero-photo>img{height:100%;width:100%;object-fit:cover;filter:none!important}.case-shade{background:linear-gradient(90deg,#101b17d9,transparent 80%),linear-gradient(0deg,#19201ec9,transparent 55%)}.case-hero-copy{padding-bottom:85px;max-width:1200px}.case-hero h1{font-size:clamp(42px,5vw,74px);font-weight:400;line-height:1.13;max-width:1000px}.case-hero-copy>p:last-child{font-size:21px;line-height:1.7}.case-hero-location{bottom:30px;font-size:12px}.case-image-note{display:flex;gap:28px;align-items:start;justify-content:space-between;padding:20px var(--gutter);font-size:12px;line-height:1.75;background:var(--paper-deep);color:#4e584d}.case-image-note>span{max-width:470px;text-align:right}.case-image-note a,.image-credit a{text-decoration:underline;text-underline-offset:3px}.case-body{background:linear-gradient(var(--paper-deep),var(--paper) 22%);padding-top:50px}.project-facts{gap:28px}.project-facts strong{font-size:15px;line-height:1.8;font-weight:460}.project-facts>div>span{font-size:11px}.case-story .lead{font-size:21px}.case-story h2{font-size:clamp(32px,3.4vw,51px);line-height:1.2}.case-contributions li>p{font-size:18px;line-height:1.85}.case-gallery{background:var(--paper-deep);padding-top:55px}.case-gallery-images{margin-top:30px}.case-gallery-images .artwork-figure{min-width:0}.case-gallery-images img{height:auto;width:100%;max-height:none;object-fit:contain;background:transparent}.case-gallery-images img.asset-archive{width:auto;margin:auto}.case-gallery-images .artwork-open{background:#c7beab;min-height:250px;display:grid;place-items:center;padding:22px}.case-gallery-images figcaption{font-size:13px;line-height:1.8;max-width:75ch;margin-top:17px}.image-credit{font-size:12px;line-height:1.85;max-width:900px}.related-section{padding-top:65px;background:linear-gradient(var(--paper-deep),var(--paper))}.related-grid .project-card h3{font-size:23px}.related-grid .project-card>p{font-size:16px}
.case-hero.case-hero--archive{height:auto;max-height:none;min-height:550px;display:grid;grid-template-columns:1.15fr 1fr;gap:7%;padding:160px var(--gutter) 75px;align-items:center;overflow:hidden}.case-hero--archive .case-hero-copy{position:relative;grid-column:1;grid-row:1;max-width:100%;padding:0;z-index:2}.case-hero--archive .case-hero-copy h1{font-size:clamp(38px,4vw,62px);line-height:1.2}.case-hero--archive .case-hero-photo{position:relative;grid-column:2;grid-row:1;inset:auto;display:grid;place-items:center;padding:28px 22px;min-height:300px;background:#aeb6a223;border:1px solid #a8b8953b;z-index:1}.case-hero--archive .case-hero-photo>img{width:auto!important;max-width:min(100%,var(--asset-native-width));height:auto!important;object-fit:contain;box-shadow:0 15px 30px #0003}.case-hero--archive .case-shade{display:none}.case-hero--archive .case-hero-location{position:absolute;bottom:25px;right:var(--gutter);font-size:11px;color:#c8d0bd}.archive-geometry{position:absolute;inset:auto -15% 0 auto;width:90%;opacity:.13;color:var(--bronze-light)}
.about-image{background:#c7bcaa;padding:20px}.about-image img{width:auto;max-width:min(100%,var(--asset-native-width));height:auto;min-height:0;object-fit:contain;margin:auto;filter:none}.about-image figcaption{font-size:12px;line-height:1.7}.about-monogram{background:#d1c5b0}.about-monogram>p{font-size:20px}.about-themes p{font-size:18px;line-height:1.85}.about-contact h2{font-size:clamp(35px,3.7vw,56px);line-height:1.2}.about-contact{background:var(--paper-deep)}
.credential-grid{gap:25px}.credential-grid article{padding:40px 35px}.pmp-credential{background:var(--dark);color:var(--paper)}.pmp-credential .eyebrow,.pmp-credential>small{color:#bfceb5}.registration-credential{position:relative;overflow:hidden;background:#d6cab6;border:1px solid #b09e8266}.registration-credential h3{font-size:32px;line-height:1.25;max-width:350px;position:relative;margin-top:30px}.registration-credential .registration-number{display:block;font-size:43px;font-weight:380;line-height:1.2;letter-spacing:-.03em;margin-top:25px;position:relative}.registration-credential>p:not(.eyebrow){font-size:16px;line-height:1.8;position:relative;max-width:380px;margin-top:23px}.registration-credential>small{font-size:12px;display:block;margin-top:18px;position:relative;color:#535d4d}.credential-geometry{position:absolute;width:110%;right:-55%;bottom:10px;height:75%;opacity:.2;color:#78613b}.page-credentials .page-intro{padding-bottom:35px}.page-credentials .development-section{padding-top:20px}.training-items h4{font-size:17px;line-height:1.7}.training-items p{font-size:13px;line-height:1.8}.training-items small{font-size:12px}.education-line>p:last-child{font-size:17px;line-height:1.85}
.contact-page{position:relative;isolation:isolate;grid-template-columns:1.15fr 1fr;gap:10%;padding-top:160px;padding-bottom:75px;min-height:0;overflow:hidden;background:linear-gradient(145deg,var(--paper),#d6ccbb)}.contact-intro h1{font-size:clamp(38px,4vw,60px);line-height:1.17;letter-spacing:-.045em;max-width:660px;margin:30px 0}.contact-intro>.lead{font-size:19px;line-height:1.85;max-width:470px}.direct-contact{margin-top:35px}.contact-location{margin-top:28px;font-size:16px}.contact-location p>span{font-size:13px;line-height:1.75}.contact-actions{padding-top:2px}.contact-actions>.eyebrow{padding-bottom:19px}.contact-actions article{padding:23px 0 25px;background:transparent}.contact-actions h2{font-size:26px;margin-top:12px;line-height:1.3}.contact-actions p{font-size:17px;line-height:1.8;max-width:42ch;margin-top:13px}.contact-actions .text-link{font-size:14px;margin-top:10px}.contact-geometry{position:absolute;z-index:-1;left:-35%;bottom:-5%;width:100%;height:70%;opacity:.16;rotate:15deg;mask-image:linear-gradient(90deg,#000,transparent 80%)}.contact-actions article>.mono{font-size:11px}.email-link{font-size:clamp(20px,1.8vw,27px);letter-spacing:-.02em}.legal-copy p,.legal-copy li{font-size:17px;line-height:1.85}.legal-copy h2{font-size:28px;line-height:1.3}.image-viewer{background:#e6ddcd}.viewer-image-wrap{background:#c7bda8}.viewer-image{background:white;filter:none}.viewer-caption{font-size:14px;line-height:1.7}.viewer-toolbar h2{font-size:24px}.viewer-toolbar button{font-size:13px;min-height:44px}.viewer-main>button{min-height:44px}.navigation-panel{background:var(--dark);color:var(--paper)}.navigation-panel nav a{font-size:clamp(30px,4.1vw,54px);line-height:1.35}.navigation-panel .mono,.menu-bottom{color:#bcc5b0}.menu-close{font-size:14px}

@media(min-width:1600px){.story-explorer{grid-template-columns:1.4fr 1fr}.story-map-frame{height:400px}.home-hero{max-height:1150px}.hero-copy{padding-top:220px}.project-card.is-archive .project-image-link{min-height:260px}}
@media(max-width:1100px){.story-introduction{column-gap:7%;grid-template-columns:1fr 1fr}.story-introduction h2{font-size:39px}.story-introduction>p:last-child{font-size:17px}.story-explorer{gap:0 6%;grid-template-columns:1.1fr 1fr}.story-map-frame{height:320px}.story-country-controls button{font-size:13px;gap:9px;padding-left:8px;padding-right:8px}.story-country-controls button .mono{display:none}.story-country-heading{gap:16px}.story-country-heading h3{font-size:23px}.story-country-code{font-size:31px;padding:12px 9px}.story-country-text{font-size:16px}.story-period{font-size:12px}.story-project-links>a{font-size:13px}.credential-ribbon{align-items:start;font-size:12px}.credential-ribbon>span{font-size:16px;gap:8px}.pmo-copy{padding-top:50px;padding-bottom:50px}.pmo-copy h2{font-size:36px}.pmo-image{min-height:540px}.case-hero--archive .case-hero-photo{padding:15px}.contact-page{gap:7%}.contact-intro h1{font-size:47px}.contact-intro>.lead{font-size:18px}.registration-credential h3{font-size:29px}.credential-grid article{padding:32px 28px}.case-image-note{font-size:12px;gap:20px}.case-hero.case-hero--archive{gap:6%}}
@media(max-width:900px){.section{padding-top:65px;padding-bottom:65px}.home-hero{min-height:840px}.hero-copy{padding-top:165px}.hero-copy h1{font-size:clamp(46px,6.8vw,65px)}.hero-bottom>p{font-size:18px}.credential-ribbon{flex-direction:column;gap:15px;padding-top:20px;padding-bottom:22px}.credential-ribbon>p{max-width:100%}.credential-ribbon>span>span{max-width:none}.story-introduction{grid-template-columns:1fr;gap:25px;margin-bottom:30px}.story-introduction>.eyebrow{margin:0}.story-introduction h2{font-size:43px}.story-introduction>p:last-child{max-width:650px;font-size:18px}.story-explorer{grid-template-columns:1fr 1fr;gap:0 35px}.story-map-frame{height:340px}.story-country-controls{flex-wrap:wrap}.story-country-controls button{font-size:13px;padding:12px 7px;min-height:49px}.story-country-controls button:first-child{padding-left:0}.story-country-heading{gap:15px}.story-country-heading h3{font-size:24px}.story-country-code{font-size:30px}.story-country-text{font-size:16px;line-height:1.85}.story-map-legend{flex-direction:column;gap:6px;bottom:12px;font-size:10px}.story-map-overview{font-size:11px;top:10px;right:10px;padding:6px 10px}.story-explorer>.text-link{font-size:12px;gap:15px}.story-country-panel{padding-top:4px}.story-project-links>a{font-size:13px}.geometry-band{min-height:150px;padding-bottom:30px}.geometry-band>.geometry-art{height:130px}.geometry-band>p{font-size:12px;max-width:600px}.pmo-image{min-height:480px}.pmo-copy h2{font-size:34px}.pmo-copy>p{font-size:17px}.pmo-copy>small{font-size:12px}.closing-cta>div>h2{font-size:46px}.circle-link{width:66px;height:66px}.contact-page{grid-template-columns:1fr 1fr;padding-top:140px;gap:7%}.contact-intro h1{font-size:42px}.contact-intro>.lead{font-size:17px}.contact-actions h2{font-size:25px}.contact-actions p{font-size:16px}.contact-actions .text-link{font-size:13px}.email-link{font-size:20px}.case-hero.case-hero--archive{padding-top:145px;min-height:500px}.case-hero--archive .case-hero-copy h1{font-size:40px}.case-hero--archive .case-hero-copy>p:last-child{font-size:18px}.case-hero--archive .case-hero-photo{min-height:240px}.case-image-note{display:block}.case-image-note>span{display:block;text-align:left;max-width:100%;margin-top:7px}.credential-grid{gap:20px}.registration-credential h3{font-size:28px}.registration-credential .registration-number{font-size:37px}.registration-credential>p:not(.eyebrow){font-size:15px}.project-card.is-archive .project-image-link{min-height:180px}.work-grid .project-card.is-archive .project-image-link{min-height:170px}}
@media(max-width:600px){:root{--gutter:22px}.section{padding-top:52px;padding-bottom:52px}.brand-name{font-size:23px}.brand-line{font-size:8px;letter-spacing:.07em}.header-end{gap:19px}.site-header{height:86px}.site-header.is-scrolled{height:74px}.home-hero{height:auto;min-height:790px;max-height:none}.hero-copy{padding-top:145px;padding-bottom:180px;width:100%}.hero-copy h1{font-size:clamp(34px,9.25vw,44px);line-height:1.12;letter-spacing:-.04em;overflow-wrap:normal}.hero-copy .eyebrow{font-size:11px;margin-bottom:27px}.hero-positioning{font-size:12px!important;line-height:1.85;max-width:320px}.hero-bottom{margin-top:25px;gap:24px}.hero-bottom>p{font-size:17px;line-height:1.75}.hero-actions{gap:17px}.hero-actions .button{font-size:11px;min-height:48px;padding:15px;gap:18px}.hero-actions .text-link{font-size:12px}.hero-media-controls>button{font-size:11px;min-height:44px}.hero-media-controls>a{font-size:10px;line-height:1.7;max-width:210px}.hero-foot{bottom:25px;gap:18px}.scroll-link{font-size:10px}.hero-geometry{top:35%;width:140%;right:-65%;opacity:.16}.credential-ribbon{font-size:12px;line-height:1.85;padding:20px var(--gutter) 22px;gap:17px}.credential-ribbon>span{font-size:16px}.credential-ribbon>span>span{font-size:11px;max-width:240px}.intro-layout h2{font-size:37px;line-height:1.2}.intro-copy>.lead{font-size:19px;line-height:1.8}.intro-copy>p:not(.lead){font-size:17px;line-height:1.85}.metrics{margin-top:35px;padding-top:25px;gap:15px}.metrics strong{font-size:49px}.metrics>div>span{font-size:10px;line-height:1.7;max-width:105px}.metrics .pmp-metric{font-size:31px}.eyebrow,.mono{font-size:10px;line-height:1.6}.section-heading h2{font-size:35px;line-height:1.2}.section-heading>div+div>p,.section-heading>p{font-size:17px;line-height:1.85}.international-story{padding-top:52px;padding-bottom:48px}.story-introduction{gap:22px;margin-bottom:26px}.story-introduction>.eyebrow{font-size:10px}.story-introduction h2{font-size:clamp(31px,8.3vw,39px);line-height:1.24;letter-spacing:-.04em}.story-introduction>p:last-child{font-size:17px;line-height:1.85}.story-explorer{display:flex;flex-direction:column;gap:0}.story-country-controls{width:100%;flex-wrap:nowrap}.story-country-controls button{font-size:14px;min-height:52px;justify-content:center;text-align:center;flex:1;padding:13px 8px}.story-country-controls button:first-child{padding-left:0}.story-map-frame{height:300px;margin-top:15px}.story-map-legend{flex-direction:row;gap:15px;left:12px;right:12px;font-size:10px}.story-map-overview{font-size:11px;min-height:42px}.story-map-hint{font-size:12px;line-height:1.75;margin-top:12px}.story-country-panel{padding:27px 0 0;width:100%}.story-country-heading{gap:20px}.story-country-code{font-size:33px;padding:13px 12px}.story-country-heading h3{font-size:27px}.story-country-heading .eyebrow{font-size:11px}.story-roles{margin-top:24px;gap:8px}.story-roles span{font-size:11px}.story-period{font-size:12px;line-height:1.85;margin-top:20px}.story-country-text{font-size:17px;line-height:1.85;margin-top:20px}.story-project-links>a{font-size:14px;min-height:35px}.story-project-links>.eyebrow{font-size:10px}.story-no-projects{font-size:13px;line-height:1.85}.story-explorer>.text-link{font-size:13px;line-height:1.7;margin-top:25px}.story-project-focus h4{font-size:22px}.story-project-focus p{font-size:13px}.geometry-band{min-height:150px;padding:0 var(--gutter) 28px}.geometry-band>.geometry-art{width:180%;max-width:none;height:130px;margin-left:-40%}.geometry-band>p{font-size:12px;line-height:1.8;text-align:left;padding:12px 15px;max-width:420px;margin-top:-5px}.competition-feature{padding-top:42px;padding-bottom:40px}.competition-feature-top h2{font-size:35px}.competition-feature-top p{font-size:17px;line-height:1.85}.competition-feature-art{padding:9px}.competition-feature-art>span{position:relative;right:auto;bottom:auto;padding:13px 7px 6px;font-size:12px;background:transparent}.competition-feature-caption{font-size:12px;line-height:1.8}.competition-title h1{font-size:38px;line-height:1.2;letter-spacing:-.04em}.competition-title>.lead{font-size:19px}.competition-hero>.artwork-figure{padding:10px}.competition-hero{padding-top:123px;padding-bottom:30px}.artwork-open-label{font-size:11px;padding:10px 12px}.artwork-figure>figcaption{font-size:12px;line-height:1.85}.competition-concept-copy h2{font-size:32px;line-height:1.24}.competition-concept-copy>p:last-child{font-size:17px;line-height:1.85}.competition-team p:not(.eyebrow){font-size:16px;line-height:1.85}.boards-grid .artwork-figure{padding:10px}.competition-next h2{font-size:33px}.project-card h3,.work-grid .project-card h3,.related-grid .project-card h3{font-size:23px;line-height:1.4}.project-card>p,.work-grid .project-card>p,.related-grid .project-card>p{font-size:16px;line-height:1.8}.project-card-meta,.work-grid .project-card-meta{font-size:10px;line-height:1.8}.project-card.is-archive .project-image-link,.work-grid .project-card.is-archive .project-image-link{min-height:175px;height:220px;aspect-ratio:auto;padding:12px}.selected-grid,.work-grid{row-gap:38px}.project-image-arrow{right:10px;bottom:10px}.pmo-feature{display:flex;flex-direction:column}.pmo-image{height:300px;min-height:0;width:100%}.pmo-image::after{background:linear-gradient(0deg,var(--dark),transparent 45%)}.pmo-copy{padding:32px var(--gutter) 47px}.pmo-copy h2{font-size:35px;line-height:1.23}.pmo-copy>p{font-size:17px;line-height:1.85}.pmo-copy>small{font-size:12px;line-height:1.85}.career-preview h2{font-size:36px}.career-preview>div>p:not(.eyebrow){font-size:17px;line-height:1.85}.career-mini-row{font-size:16px;line-height:1.7}.career-mini-row small{font-size:12px}.career-mini-row .mono{font-size:10px}.closing-cta{padding-top:46px;padding-bottom:48px}.closing-cta>div{align-items:flex-end;gap:15px}.closing-cta>div>h2{font-size:clamp(30px,8vw,37px);line-height:1.22;letter-spacing:-.04em}.circle-link{width:53px;height:53px}.circle-link .icon{width:24px;height:24px}.closing-email{font-size:15px;margin-top:24px}.closing-geometry{right:-65%;width:150%;opacity:.12}.footer-top p{font-size:13px;line-height:1.85}.footer-bottom,.footer-bottom nav,.footer-linkedin{font-size:11px;line-height:1.9}.draft-status,.draft-status>.updated{font-size:10px;line-height:1.8}.site-footer{padding-top:40px}.page-intro h1{font-size:38px;line-height:1.2}.page-intro .lead{font-size:17px;line-height:1.85}.case-hero{min-height:590px;height:78svh;max-height:820px}.case-hero h1{font-size:39px;line-height:1.18}.case-hero-copy>p:last-child{font-size:19px;line-height:1.75}.case-hero-copy{padding-bottom:73px}.case-hero-location{font-size:11px;bottom:24px}.case-image-note{padding:17px var(--gutter);font-size:12px;line-height:1.85}.case-image-note>span{margin-top:9px}.case-hero.case-hero--archive{display:flex;flex-direction:column;align-items:stretch;height:auto;max-height:none;min-height:0;padding:130px var(--gutter) 65px;gap:30px}.case-hero--archive .case-hero-copy h1{font-size:36px;line-height:1.22}.case-hero--archive .case-hero-copy>p:last-child{font-size:18px}.case-hero--archive .case-hero-photo{min-height:220px;padding:20px;max-width:100%}.case-hero--archive .case-hero-photo>img{max-width:min(100%,var(--asset-native-width));height:auto}.case-hero--archive .case-hero-location{font-size:10px;bottom:22px;left:var(--gutter);right:auto}.archive-geometry{width:150%;right:-65%;bottom:0;opacity:.15}.case-body{padding-top:35px}.project-facts{gap:22px}.project-facts strong{font-size:14px;line-height:1.85}.project-facts>div>span{font-size:10px}.case-story h2{font-size:33px;line-height:1.24}.case-story .lead{font-size:19px;line-height:1.85}.case-story>div+div>p:not(.lead),.case-contributions li>p{font-size:17px;line-height:1.85}.case-gallery-images .artwork-open{padding:14px;min-height:200px}.case-gallery-images figcaption{font-size:12px;line-height:1.85}.image-credit{font-size:12px;line-height:1.85}.about-monogram>p{font-size:17px;line-height:1.8}.about-themes p{font-size:17px;line-height:1.85}.about-image{padding:12px}.about-image figcaption{font-size:12px;line-height:1.8}.about-contact h2{font-size:35px;line-height:1.24}.credential-grid article{padding:30px 25px}.registration-credential h3{font-size:30px;line-height:1.3;max-width:280px}.registration-credential .registration-number{font-size:39px}.registration-credential>p:not(.eyebrow){font-size:16px;line-height:1.85}.registration-credential>small{font-size:12px}.credential-geometry{width:150%;right:-85%;opacity:.15}.training-items h4{font-size:17px}.training-items p{font-size:13px}.training-items small{font-size:12px}.education-line>p:last-child{font-size:17px;line-height:1.85}.contact-page{display:block;padding-top:130px;padding-bottom:50px}.contact-intro h1{font-size:38px;line-height:1.23;margin:26px 0}.contact-intro>.lead{font-size:18px;line-height:1.85}.direct-contact{margin-top:30px;gap:14px}.email-link{font-size:21px;letter-spacing:-.025em}.copy-email{font-size:26px;min-width:40px;min-height:44px}.contact-location{margin-top:25px}.contact-location p>span{font-size:13px;line-height:1.85}.contact-actions{margin-top:42px}.contact-actions h2{font-size:27px;line-height:1.35}.contact-actions p{font-size:17px;line-height:1.85}.contact-actions .text-link{font-size:14px}.contact-actions>.eyebrow{font-size:10px}.contact-geometry{left:-70%;width:160%;height:45%;bottom:45%;opacity:.1}.viewer-caption{font-size:13px;line-height:1.8}.viewer-toolbar h2{font-size:18px}.viewer-toolbar button{font-size:12px;min-height:44px}.legal-copy h2{font-size:27px;line-height:1.3}.legal-copy p,.legal-copy li{font-size:17px;line-height:1.85}.navigation-panel nav a{font-size:29px;line-height:1.4;padding:16px 0}.menu-bottom{font-size:13px;line-height:1.85}.menu-close{font-size:13px}}
@media(max-width:370px){:root{--gutter:18px}.brand-line{font-size:7px}.header-end{gap:16px}.hero-copy h1{font-size:33px}.hero-actions{gap:13px}.hero-actions .button{font-size:10px;padding:14px 12px;gap:13px}.hero-actions .text-link{font-size:11px;gap:8px}.hero-bottom>p{font-size:16px}.hero-media-controls{max-width:190px}.hero-media-controls>a{font-size:9px}.story-introduction h2{font-size:30px}.story-country-controls button{font-size:13px}.story-country-heading h3{font-size:24px}.story-map-frame{height:270px}.closing-cta>div>h2{font-size:29px}.circle-link{width:47px;height:47px}.email-link{font-size:19px}.contact-intro h1{font-size:34px}.competition-title h1{font-size:34px}.case-hero--archive .case-hero-copy h1{font-size:33px}}
@media(prefers-reduced-motion:reduce){.geometry-art,.geometry-art *,.geometric-reveal>img,.story-map *{animation:none!important;transition:none!important}.geometry-art .geometry-lattice path,.geometry-art .geometry-lattice circle,.geometry-art .geometry-threads path{stroke-dasharray:none!important;stroke-dashoffset:0!important}.geometry-fold{opacity:.035!important}.geometric-reveal>img{clip-path:none!important}.hero-video{transition:none}.hero-poster{animation:none}}

/* Continuous spatial composition. All project surfaces share one module. */
:root{--paper:#e8e1d5;--paper-deep:#dcd2c2;--dark:#19201e;--ink:#202522;--muted:#555d55;--accent:#805b39;--line:#b5ad9e;--bronze-light:#d1ac7f;--card-ratio:16/10}
html{overflow-x:clip;scrollbar-gutter:stable}
body{font-size:18px;line-height:1.75}
main{position:relative;isolation:isolate;min-width:0}
h1,h2,h3,h4{overflow-wrap:break-word;hyphens:manual;font-weight:440}
h1{font-size:clamp(42px,5.2vw,78px);line-height:1.12;letter-spacing:-.045em}
h2{font-size:clamp(33px,3.35vw,53px);line-height:1.18;letter-spacing:-.035em}
h3{letter-spacing:-.025em}
em{color:var(--accent);font-weight:390}
.hero-copy em,.pmo-copy em,.site-footer em{color:var(--bronze-light)}
.section{position:relative;padding-block:clamp(56px,6vw,96px)}
.section::before{content:'';position:absolute;top:0;bottom:0;left:calc(var(--gutter) - 23px);width:1px;background:linear-gradient(transparent 0%,#805b3938 12%,#805b3938 88%,transparent);pointer-events:none}
.section::after{content:'';position:absolute;top:38px;left:calc(var(--gutter) - 23px);width:23px;height:1px;background:#805b3955;transform-origin:left;transform:scaleX(var(--section-progress,1));pointer-events:none}
.section-heading{gap:6%;margin-bottom:42px}
.section-heading>div+div{max-width:360px}
.section-heading>div+div>p,.section-heading>p{font-size:17px;line-height:1.75;max-width:38ch}
.page-intro{padding-top:160px;padding-bottom:56px}
.page-intro>div{gap:7%}
.page-intro h1{max-width:850px}
.page-intro .lead{font-size:20px;max-width:55ch}
.text-link,.button{font-size:14px;min-height:44px}
button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.desktop-nav{gap:24px;margin-right:12px}
.desktop-nav a{font-size:12px;max-width:150px}
.site-header{gap:22px}
.brand-line{font-size:8px}
.home-hero{min-height:740px;height:94svh;max-height:1050px}
.hero-copy{padding-top:clamp(170px,23vh,235px);padding-bottom:180px}
.hero-copy h1{font-size:clamp(51px,5.45vw,85px);line-height:1.08;max-width:1050px}
.hero-copy h1 em{font-weight:370}
.hero-bottom{align-items:flex-end;gap:5%;margin-top:35px}
.hero-bottom>p{font-size:18px;max-width:40ch}
.hero-actions{gap:25px;flex-wrap:wrap;max-width:470px}
.hero-actions .text-link{white-space:nowrap}
.hero-positioning{margin-top:27px;line-height:1.6}
.hero-shade{background:linear-gradient(90deg,#101917e6,#101917ab 42%,#1019171a),linear-gradient(0deg,#19201ee6,transparent 60%)}
.hero-grid{opacity:.6}
.hero-geometry,.closing-geometry{display:none}
.hero-foot{bottom:26px;align-items:flex-end}
.hero-location{font-size:10px}
.hero-media-controls{max-width:310px}
.credential-ribbon{padding-block:22px;gap:30px}
.credential-ribbon p{font-size:12px;line-height:1.7}
.intro-layout{grid-template-columns:1fr 1fr;gap:9%}
.intro-layout h2{font-size:clamp(35px,3.4vw,54px)}
.intro-copy>p:not(.lead){font-size:18px;color:var(--ink);line-height:1.8}
.intro-copy .lead{font-size:21px;line-height:1.75}
.metrics{margin-top:48px;padding-top:28px;gap:28px}
.metrics>div{align-items:center;gap:23px}
.metrics>div>span{font-size:12px;max-width:170px}
.metrics strong{font-size:65px}

/* A single wireframe is driven by document progress, in both directions. */
.spatial-continuum{position:fixed;z-index:3;pointer-events:none;right:-14vw;top:12vh;width:min(720px,57vw);height:76vh;opacity:var(--spatial-opacity,.2);color:var(--accent);mask-image:linear-gradient(90deg,transparent 4%,#000 80%);transition:opacity .3s}
.spatial-site-drawing{width:100%;height:100%;max-height:700px}
.spatial-drawing path{vector-effect:non-scaling-stroke;stroke:currentColor;stroke-linejoin:round;stroke-linecap:round}
.spatial-frame{stroke-width:1.1}
.spatial-columns{stroke-width:.75;opacity:.6}
.spatial-grid{stroke-width:.55;opacity:.32}
.spatial-slabs{fill:currentColor;fill-opacity:.025;stroke-width:.5;stroke-opacity:.35;fill-rule:evenodd}
.spatial-stars{stroke-width:.7;opacity:.2}
.spatial-guide{stroke-width:.5;stroke-dasharray:3 7;opacity:.35}
.spatial-origin{stroke:currentColor;stroke-width:.7;fill:var(--paper)}
.spatial-interlude{position:relative;display:grid;grid-template-columns:.9fr 1.3fr;gap:0;align-items:center;min-height:460px;background:linear-gradient(145deg,#d6cbbb,#e8e1d5 65%);overflow:hidden;padding-block:28px}
.spatial-interlude-copy{position:relative;z-index:1;max-width:460px}
.spatial-interlude-copy h2{font-size:clamp(31px,3.2vw,48px);margin-top:25px;max-width:440px}
.spatial-interlude-copy>p:last-child{font-size:17px;line-height:1.8;max-width:39ch;margin-top:23px}
.spatial-object{position:relative;min-width:0;color:#5c594c}
.spatial-object-drawing{width:calc(100% + 70px);max-width:none;margin-left:-35px;display:block;min-height:400px}
.spatial-caption{display:block;text-align:center;margin:-35px 0 15px;color:var(--muted);font-size:10px}
.geometry-art{animation:none!important}
.geometry-art path,.geometry-art circle{animation:none!important;stroke-dashoffset:0!important}
.geometric-reveal>img{clip-path:none!important;animation:none!important}

/* One atlas, conformal geography, one camera shared by every marker. */
.international-story{display:block;background:linear-gradient(var(--paper),#dcd2c2);padding-top:58px;padding-bottom:58px}
.story-introduction{display:grid;grid-template-columns:1fr 1fr;column-gap:9%;margin-bottom:38px}
.story-introduction>.eyebrow{grid-column:1/-1;margin-bottom:24px}
.story-introduction h2{font-size:clamp(35px,3.65vw,57px);line-height:1.13;max-width:620px}
.story-introduction>p:last-child{font-size:20px;line-height:1.8;max-width:48ch;align-self:center}
.story-explorer{display:block;min-width:0}
.story-country-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0;border:1px solid var(--line);border-bottom:0}
.story-country-controls button{display:flex;align-items:center;justify-content:flex-start;gap:20px;text-align:left;min-height:65px;padding:17px 24px;font-size:18px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--ink)}
.story-country-controls button:last-child{border-right:0}
.story-country-controls button[aria-pressed=true]{background:var(--dark);color:var(--paper)}
.story-country-controls .mono{font-size:10px;color:var(--accent)}
.story-country-controls button[aria-pressed=true] .mono{color:var(--bronze-light)}
.story-atlas-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);border:1px solid var(--line);background:#dfd6c8;align-items:stretch}
.story-map-column{min-width:0;padding:0 24px 24px;border-right:1px solid var(--line)}
.story-map-frame{position:relative;height:auto;min-height:0;aspect-ratio:1.2;background:radial-gradient(ellipse at 40% 38%,#303b35,#1d2823 80%);overflow:hidden;margin-inline:-24px;color:var(--paper);isolation:isolate;border:0}
.atlas-topline{position:absolute;top:18px;left:22px;right:22px;z-index:1;display:flex;justify-content:space-between;gap:15px;font-size:9px;color:#d8c7ad;pointer-events:none}
.story-map{position:absolute;inset:30px 0 35px;width:100%;height:calc(100% - 65px);min-height:0;display:block;overflow:hidden}
.story-country{fill:#37463c;stroke:#798875;stroke-width:.55;vector-effect:non-scaling-stroke;transition:fill .25s}
.story-country--egypt,.story-country--germany,.story-country--kuwait{fill:#657359;stroke:#c1ba9c;stroke-width:.85;cursor:pointer}
.story-country.is-active{fill:#8b8e6b;stroke:#e3c397;stroke-width:1.1}
.story-country:focus-visible{outline:none;fill:#b2a789;stroke:#fff;stroke-width:2}
.story-graticule{stroke:#a2b198;stroke-width:.35;opacity:.14;vector-effect:non-scaling-stroke}
.story-graticule path{vector-effect:non-scaling-stroke}
.story-connection{stroke:var(--bronze-light);stroke-width:1;stroke-dasharray:2 5;stroke-dashoffset:0;opacity:.6;vector-effect:non-scaling-stroke;animation:none!important}
.story-country-anchor{cursor:pointer;fill:#d5b58d;stroke:var(--dark);stroke-width:.5}
.story-country-anchor text{font:500 4.4px/1 Manrope,Arial,sans-serif;fill:#f1e5d0;stroke:#1d2823;stroke-width:1.1;paint-order:stroke}
.story-hit{fill:transparent;stroke:none}
.story-place-marker{cursor:pointer;opacity:0;pointer-events:none}
.story-place-marker.is-country-selected{opacity:1;pointer-events:auto}
.story-place-symbol{fill:#d4ba93;stroke:#1c2921;stroke-width:.6}
.story-place--education .story-place-symbol,.story-study-ring{fill:#a9c5be;stroke:#18231e;stroke-width:.6}
.story-place--internship .story-place-symbol{fill:#e7d2ac}
.story-place-marker text{font:450 4px/1 Manrope,Arial,sans-serif;fill:#e8e1d5;stroke:#1b2821;stroke-width:1.5;paint-order:stroke;opacity:0}
.story-place-marker[data-story-place="mansoura"] text,.story-place-marker[data-story-place="cairo"] text,.story-place-marker[data-story-place="hamburg"] text,.story-place-marker[data-story-place="kuwait-city"] text,.story-place-marker.is-selected text,.story-place-marker:focus text,.story-place-marker:hover text{opacity:1}
.story-place-marker.is-selected .story-place-symbol{fill:#fff0cc;stroke:#fff;stroke-width:.8}
[data-story-has-place=true] .story-place-marker text{opacity:0}
[data-story-has-place=true] .story-place-marker.is-selected text,[data-story-has-place=true] .story-place-marker:focus text,[data-story-has-place=true] .story-place-marker:hover text{opacity:1}
.story-place-marker:focus-visible{outline:none}
.story-place-marker:focus-visible .story-place-symbol{stroke:white;stroke-width:1.5}
[data-story-level=country] .story-country-anchor{display:none}
.story-map-overview{position:absolute;bottom:18px;right:20px;left:auto;top:auto;background:#1a261fe6;color:#ecdfc9;padding:9px 12px;font-size:11px;min-height:42px;border:1px solid #a1917566}
.story-map-legend{position:absolute;left:20px;bottom:21px;right:auto;display:flex;gap:13px;flex-wrap:wrap;font-size:9px;max-width:62%;color:#ded3c0}
.story-map-legend>span{display:flex;align-items:center;gap:5px}
.story-map-legend i{display:inline-block;width:6px;height:6px;background:#d4ba93;border:0;border-radius:50%}
.story-map-legend i.diamond{border-radius:0;transform:rotate(45deg);background:#a9c5be}
.story-map-legend i.square{border-radius:0;background:#e7d2ac}
.story-map-legend i.ring{background:transparent;border:1px solid #d4ba93;border-radius:50%}
.story-map-hint{font-size:12px;line-height:1.8;margin-top:17px;color:#50594f;max-width:75ch}
.story-journey-note{font-size:11px;line-height:1.75;color:#5a6258;margin-top:8px}
.story-country-panel{display:block;padding:30px 28px;grid-column:auto;min-width:0;border:0;background:linear-gradient(145deg,#e8e1d5,#d9cebd);max-height:830px;overflow:auto;scrollbar-width:thin;scrollbar-color:#ad9b83 transparent}
.story-country-heading{gap:18px;align-items:flex-start;margin:0 0 22px}
.story-country-code{font-size:36px;line-height:1.1;color:#8c7457}
.story-country-heading .eyebrow{font-size:10px;margin-bottom:12px}
.story-country-heading h3{font-size:26px;line-height:1.25;letter-spacing:-.025em}
.story-roles{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}
.story-roles span{font-size:10px;padding:4px 8px;border:1px solid #bdb19e;color:#485045}
.story-period{font-size:12px;line-height:1.75;color:#606352;margin:0 0 18px}
.story-country-text{font-size:16px;line-height:1.85;margin-bottom:25px;max-width:48ch}
.story-place-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.story-place-controls button{font-size:12px;min-height:40px;padding:7px 12px;border:1px solid #aa9d87;background:#e9e1d4}
.story-place-controls button[aria-pressed=true]{background:var(--dark);color:var(--paper);border-color:var(--dark)}
.story-education,.story-internships{padding-top:20px;border-top:1px solid #bcb19f;margin-top:20px}
.story-education a,.story-internships a{display:block;padding-block:15px;border-bottom:1px solid #c7bdad}
.story-education strong,.story-internships strong{display:block;font-size:15px;font-weight:500;line-height:1.5}
.story-education span{display:block;font-size:13px;line-height:1.7;margin-top:7px}
.story-education small,.story-internships small{display:block;font-size:11px;color:#5b6154;margin-top:7px}
.story-project-links{margin-top:22px;grid-column:auto;display:block}
.story-project-links>a{display:flex;align-items:center;justify-content:space-between;font-size:14px;line-height:1.55;padding:13px 0;border-bottom:1px solid #bfb3a0;gap:16px}
.story-project-links>a .icon{width:18px;height:18px}
.story-project-focus{background:#c9b99e5c;padding:20px;margin-block:24px}
.story-project-focus h4{font-size:23px;line-height:1.4;margin-top:12px}
.story-project-focus>p:not(.eyebrow){font-size:13px;line-height:1.8;margin-top:13px}
.atlas-footer{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:17px}
.atlas-footer>a:last-child{font-size:10px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}

/* Identical 16:10 viewports in every grid; drawing and photo content never stretch. */
.selected-grid,.work-grid,.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 36px;align-items:stretch}
.related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.selected-grid .project-card:nth-child(n){transform:none}
.project-card{position:relative;min-width:0;display:flex;align-self:stretch;padding:0;margin:0}
.project-card::before{content:'';position:absolute;top:0;left:-14px;width:14px;border-top:1px solid #967b5659;transform-origin:right;transform:scaleX(var(--card-progress,1))}
.project-structural-frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;color:#e8e1d5;opacity:.75}
.project-structural-frame path{stroke:currentColor;stroke-width:.9;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--card-progress,1))}
.project-structural-frame .card-frame-depth{stroke-width:.65;opacity:.45}
[data-image-fit=contain] .project-structural-frame{color:#805b39;opacity:.6}
.spatial-motion .project-image-link[data-image-fit=cover]>img{clip-path:inset(calc((1 - var(--card-progress,1))*4%) 0)}
.project-card-link{display:flex;flex-direction:column;min-width:0;width:100%;padding-bottom:18px;border-bottom:1px solid var(--line)}
.project-image-link,.selected-grid .project-card:nth-child(n) .project-image-link,.work-grid .project-image-link,.related-grid .project-image-link,.is-archive .project-image-link,.is-competition .project-image-link{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:auto;min-height:0;aspect-ratio:var(--card-ratio);padding:0;background:#cec2ae;overflow:hidden;border:1px solid #b6a78d55}
.project-image-link>img{width:100%;height:100%;object-fit:cover;object-position:var(--image-position,50% 50%);filter:none;transform:none;transition:transform .45s var(--ease)}
.project-image-link[data-image-fit=contain]{background:linear-gradient(135deg,#cfc4b1,#e0d7c8);padding:20px}
.project-image-link[data-image-fit=contain]>img,.is-archive .project-image-link>img{width:auto!important;height:auto!important;max-width:min(100%,var(--asset-native-width));max-height:100%;object-fit:contain;box-shadow:0 8px 20px #2c291b20}
.is-competition .project-image-link>img{box-shadow:none}
.project-image-index{left:14px;top:12px;z-index:1;font-size:10px;mix-blend-mode:normal;color:#e8dfd1;background:#19201ec9;padding:3px 6px}
.project-image-arrow,.is-archive .project-image-arrow{right:0;bottom:0;width:46px;height:46px;background:var(--dark);color:var(--paper)}
.project-image-link::after{content:'';position:absolute;inset:11px;border:1px solid #e8dfcb99;pointer-events:none;opacity:0;transition:opacity .3s}
.project-card-link:hover .project-image-arrow,.project-card-link:focus-visible .project-image-arrow{background:#a3794e;color:#fff}
.project-card-link:hover .project-image-link::after,.project-card-link:focus-visible .project-image-link::after{opacity:1}
.project-card-link:hover img,.project-card-link:focus-visible img{transform:scale(1.015)}
.project-image-link[data-image-fit=contain]:hover img,.project-card-link:hover [data-image-fit=contain] img,.project-card-link:focus-visible [data-image-fit=contain] img{transform:none}
.project-card .project-image-link>img{position:absolute;inset:0;margin:auto}
.project-card .project-image-link[data-image-fit=contain]>img{width:min(calc(100% - 32px),var(--asset-native-width))!important;height:min(calc(100% - 32px),var(--asset-native-height))!important;max-width:none;max-height:none;object-fit:contain;box-shadow:none}
html[lang=de] h1,html[lang=de] h2,html[lang=de] h3{hyphens:auto}
.project-card-meta{display:flex;justify-content:space-between;gap:20px;min-height:37px;margin:17px 0 9px;font-size:10px;line-height:1.7;letter-spacing:.055em;color:#5b6258}
.project-card-meta>span{min-width:0;max-width:66%}
.project-card-meta>span:last-child{text-align:right;max-width:38%}
.project-card h3,.work-grid .project-card h3,.related-grid .project-card h3{font-size:25px;line-height:1.3;min-height:2.6em;margin:0 0 13px;max-width:none;letter-spacing:-.025em}
.project-card-link>p,.work-grid .project-card-link>p,.related-grid .project-card-link>p{font-size:16px;line-height:1.75;color:var(--muted);margin:0 0 20px;min-height:3.5em;max-width:54ch}
.card-case-link{display:flex;align-items:center;gap:14px;font-size:12px;margin-top:auto;min-height:35px}
.card-case-link .icon{width:18px;height:18px}
.related-grid .project-card h3{font-size:21px}
.selected-section{padding-bottom:78px}
.list-thumb{background:#d0c4b1;overflow:hidden}
.list-thumb img{object-fit:cover;filter:none}
.list-thumb img.asset-archive{width:auto;max-width:100%;height:auto;max-height:100%;object-fit:contain;margin:auto}

/* White is retained inside the original drawing, within a deliberate stone mount. */
.competition-feature{background:linear-gradient(#e8e1d5,#d5c9b6);padding-top:67px;padding-bottom:60px;overflow:hidden}
.competition-feature-top{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start;margin-bottom:32px}
.competition-feature-top h2{font-size:clamp(34px,3.5vw,54px)}
.competition-feature-top>div>p{font-size:18px;line-height:1.8}
.competition-feature-art{position:relative;display:grid;place-items:center;padding:clamp(20px,4vw,60px);background:#bbaa8c50;max-height:none;aspect-ratio:auto;overflow:visible;border:1px solid #9b876961;margin-top:15px}
.competition-feature-art::before{content:'';position:absolute;inset:16px -16px -16px 16px;border:1px solid #8d76534d;pointer-events:none;transform:translate(calc((1 - var(--section-progress,1))*14px),calc((1 - var(--section-progress,1))*8px))}
.competition-feature-art>img{width:min(100%,1100px);height:auto;max-height:none;object-fit:contain;filter:none;transform:none;box-shadow:0 18px 40px #2f281a25;background:#fff}
.competition-feature-art>span{position:relative;display:flex;justify-content:center;gap:20px;margin-top:25px;bottom:auto;left:auto;right:auto;padding:12px 20px;background:var(--dark);color:var(--paper);font-size:13px}
.competition-feature-caption{font-size:12px;line-height:1.8;margin-top:30px;color:#545c51}
.competition-hero .artwork-figure,.competition-concept .artwork-figure{padding:clamp(16px,3vw,42px);background:#d2c4ae;border:1px solid #ad977444}
.competition-hero .artwork-open,.competition-concept .artwork-open{background:#fff;padding:0}
.competition-hero .artwork,.competition-concept .artwork{width:100%;height:auto;max-width:1280px;object-fit:contain;margin:auto}
.competition-hero .artwork-figure{margin-top:40px}
.artwork-figure.is-drawing figcaption{font-size:12px;line-height:1.8;color:#52594f;margin-top:20px}
.artwork-open-label{background:var(--dark);color:var(--paper);font-size:11px;padding:8px 11px}
.competition-concepts{background:linear-gradient(var(--paper),#d9cfbf)}
.competition-concept-copy p{font-size:18px;line-height:1.85}
.competition-team p{font-size:16px;line-height:1.8}
.boards-grid .artwork-open{background:#c9bba4;padding:15px;min-height:0}
.boards-grid .artwork{max-width:480px;width:auto;height:auto;margin:auto}
.case-gallery-images .artwork-open{background:#cfc2ad}
.case-gallery-images img{max-width:min(100%,var(--asset-native-width));margin:auto}
.gallery-credit{display:block;font-size:11px;line-height:1.8;color:var(--muted);margin-top:10px}
.gallery-credit a{text-decoration:underline;text-underline-offset:3px}
.case-hero-copy{max-width:1100px}
.case-hero h1{max-width:950px}
.case-hero-copy>p:last-child{font-size:19px;max-width:46ch}
.case-image-note{font-size:12px;line-height:1.8;gap:40px}
.case-image-note>span{min-width:210px;max-width:350px}
.case-story h2{font-size:clamp(28px,3.1vw,47px)}
.case-story .lead{font-size:20px;line-height:1.85}
.case-contributions li>p{font-size:18px}
.case-study:not(.case-study--archive) .case-hero{max-height:820px}
.case-study:not(.case-study--archive) .case-hero-photo img{object-position:50% 54%}
.pmo-feature{position:relative;overflow:hidden;min-height:540px}
.pmo-copy{padding:66px var(--gutter) 66px 10%}
.pmo-copy h2{font-size:clamp(31px,3.1vw,48px);line-height:1.2;margin:27px 0}
.pmo-copy>p{font-size:17px;line-height:1.85}
.pmo-copy>small{font-size:12px;line-height:1.8}
.pmo-image img{filter:none}
.pmo-image::after{background:linear-gradient(90deg,transparent 45%,var(--dark))}
.home-expertise{background:linear-gradient(var(--paper),#d9cfbf)}
.expertise-row h3{font-size:clamp(23px,2.2vw,34px)}
.expertise-detail p{font-size:18px;line-height:1.8}
.expertise-detail li{font-size:15px;line-height:1.8}
.career-preview{gap:9%;grid-template-columns:1fr 1.2fr}
.career-preview>div>p:not(.eyebrow){font-size:18px;line-height:1.8}
.career-panel>p:not(.eyebrow){font-size:18px;line-height:1.85}
.career-panel h2{font-size:clamp(34px,3.7vw,56px)}
.career-mini-row{font-size:18px}
.career-mini-row small{font-size:12px;line-height:1.8}
.timeline-tabs strong{font-size:15px;line-height:1.6}
.timeline-tabs .mono{font-size:11px}

/* Reused education records, with explicit study and internship categories. */
.education-section{background:linear-gradient(#dcd2c2,#e8e1d5);scroll-margin-top:95px}
.education-grid,.internship-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.education-record{position:relative;border-top:1px solid #a99980;padding:27px 0 30px;scroll-margin-top:115px;min-width:0}
.education-record .eyebrow{font-size:11px;margin-bottom:20px;line-height:1.75}
.education-symbol{font-size:22px;font-weight:300;line-height:1;color:var(--accent)}
.education-record h3{font-size:28px;line-height:1.28;max-width:35ch;margin-bottom:18px}
.education-award{font-size:18px;line-height:1.65;max-width:44ch}
.education-location{font-size:12px;color:var(--muted);margin:12px 0 20px}
.education-record>p:last-of-type:not(.education-location){font-size:16px;line-height:1.85;max-width:54ch}
.education-record>.text-link{font-size:12px;line-height:1.6;margin-top:20px}
.education-dates{font-size:11px;line-height:1.8;color:var(--muted);margin:10px 0 38px}
.internship-heading{margin-top:35px;margin-bottom:20px}
.education-section--compact .education-record{padding-bottom:10px}
.education-section--compact>.text-link{margin-top:25px}
.education-line{display:none}
.closing-cta{background:linear-gradient(#e8e1d5,#d4c6af);padding-block:58px}
.closing-cta>div>h2{font-size:clamp(33px,4.1vw,61px);line-height:1.16;max-width:880px}
.closing-cta>div{margin:27px 0 22px;align-items:center}
.closing-email{font-size:17px}
.contact-page{background:linear-gradient(135deg,#e8e1d5,#d6c9b4);gap:8%;padding-top:160px;padding-bottom:65px}
.contact-intro h1{font-size:clamp(36px,4vw,60px);line-height:1.16;max-width:650px}
.contact-intro>.lead{font-size:19px;line-height:1.8;max-width:46ch}
.contact-actions h2{font-size:25px}
.contact-actions p{font-size:16px;line-height:1.8}
.contact-geometry{opacity:.1}
.about-monogram>p{font-size:18px;line-height:1.75}
.footer-top p{font-size:15px;line-height:1.8;max-width:43ch;color:#d8d2c4}
.legal-copy h2{font-size:28px;line-height:1.35}
.legal-copy p,.legal-copy li{font-size:17px;line-height:1.85}

@media(min-width:1600px){.story-atlas-layout{grid-template-columns:minmax(0,1.85fr) minmax(350px,1fr)}.story-map-frame{aspect-ratio:1.45}.story-country-panel{max-height:830px}}
@media(max-width:1100px){.desktop-nav{display:none}.menu-toggle{display:flex}.contact-nav{display:none}.story-atlas-layout{grid-template-columns:minmax(0,1.35fr) minmax(290px,1fr)}.story-map-frame{aspect-ratio:.95}.story-country-panel{padding:25px 21px;max-height:800px}.story-map-legend{max-width:55%;gap:8px}.story-country-heading h3{font-size:24px}.story-introduction{gap:7%}.story-introduction>p:last-child{font-size:18px}.hero-bottom{display:block}.hero-bottom>p{max-width:45ch}.hero-actions{margin-top:25px}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid .project-card:last-child{display:none}.spatial-interlude-copy h2{font-size:35px}.spatial-object-drawing{width:calc(100% + 110px);margin-left:-45px}.hero-copy{padding-top:170px}.home-hero{height:auto;min-height:810px}.hero-foot{bottom:28px}}
@media(max-width:900px){.section::before,.section::after{left:calc(var(--gutter) - 13px)}.section::after{width:13px}.page-intro>div{display:block}.page-intro .lead{margin-top:30px}.story-introduction{display:block}.story-introduction>p:last-child{margin-top:26px;max-width:58ch}.story-atlas-layout{grid-template-columns:1fr}.story-map-column{border-right:0;border-bottom:1px solid var(--line)}.story-map-frame{aspect-ratio:1.5}.story-country-panel{max-height:none;padding:30px}.story-country-heading h3{font-size:29px}.story-country-text{max-width:65ch;font-size:17px}.story-map-hint{font-size:13px}.story-journey-note{font-size:12px}.story-country-controls button{padding:16px 20px;gap:16px}.story-project-links{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.story-project-links>.eyebrow{grid-column:1/-1}.spatial-continuum{right:-25vw;width:75vw;opacity:.18}.spatial-interlude{grid-template-columns:1fr 1.2fr;min-height:390px}.spatial-interlude-copy h2{font-size:31px}.spatial-interlude-copy>p:last-child{font-size:16px}.spatial-object-drawing{min-height:340px;width:calc(100% + 120px);margin-left:-45px}.selected-grid,.work-grid{gap:42px 27px}.project-card h3,.work-grid .project-card h3{font-size:22px}.project-card-meta{font-size:9px;min-height:39px;gap:12px}.project-card-link>p{font-size:15px}.competition-feature-top{gap:7%}.competition-feature-top h2{font-size:35px}.competition-feature-top>div>p{font-size:17px}.competition-feature-art{padding:25px}.education-record h3{font-size:25px}.education-award{font-size:17px}.education-record>p:last-of-type:not(.education-location){font-size:16px}.education-record>.text-link{font-size:11px}.case-image-note{display:block}.case-image-note>span{display:block;text-align:left;margin-top:12px;max-width:none}.pmo-feature{min-height:0}.pmo-copy{padding:45px 30px}.pmo-copy h2{font-size:34px}.pmo-copy>p{font-size:16px}.intro-layout{gap:7%}.intro-layout h2{font-size:36px}.intro-copy .lead{font-size:19px}.intro-copy>p:not(.lead){font-size:17px}.metrics>div{display:block}.metrics>div>span{display:block;margin-top:14px;font-size:11px}.metrics .pmp-metric{font-size:45px}.career-preview{gap:7%}}
@media(max-width:600px){
 :root{--gutter:23px}
 body{font-size:17px;line-height:1.8}
 .section{padding-block:52px}
 .section::before,.section::after{display:none}
 h1{font-size:38px}h2{font-size:34px;line-height:1.2}h3{font-size:24px}
 .brand-name{font-size:24px}.brand-line{font-size:7px;letter-spacing:.08em}.site-header{gap:15px;height:80px}.header-end{gap:17px}.languages{font-size:11px}.menu-toggle{font-size:12px}
 .home-hero{height:auto;min-height:780px;max-height:none}
 .hero-copy{padding:146px var(--gutter) 185px}
 .hero-copy h1{font-size:clamp(37px,9.7vw,56px);line-height:1.12;letter-spacing:-.04em;max-width:540px}
 .hero-copy .eyebrow{margin-bottom:25px;font-size:11px}
 .hero-positioning{font-size:13px!important;line-height:1.9;margin-top:25px;max-width:28ch}
 .hero-bottom{margin-top:27px;display:block}.hero-bottom>p{font-size:17px;line-height:1.8;max-width:35ch}
 .hero-actions{display:flex;gap:20px;margin-top:26px}.hero-actions .button{padding:15px 17px;gap:22px;font-size:12px}.hero-actions .text-link{font-size:12px;gap:13px}
 .hero-foot{bottom:25px;gap:20px;align-items:flex-end}.hero-location{display:none}.hero-media-controls{max-width:205px}.hero-media-controls>a{font-size:9px}.hero-media-controls button{font-size:10px;min-height:40px}.scroll-link{font-size:10px;max-width:95px}
 .credential-ribbon{display:block;padding:20px var(--gutter)}.credential-ribbon p{font-size:11px;line-height:1.85;max-width:48ch}.credential-ribbon>span{display:block;margin-top:15px;font-size:13px}
 .intro-layout{display:block;margin-top:28px}.intro-layout h2{font-size:35px;line-height:1.2}.intro-copy{margin-top:29px}.intro-copy .lead{font-size:19px}.intro-copy>p:not(.lead){font-size:17px;line-height:1.85}.intro-copy .text-link{margin-top:22px;font-size:13px}
 .metrics{margin-top:35px;gap:17px;padding-top:25px}.metrics strong{font-size:47px;line-height:1.1}.metrics .pmp-metric{font-size:32px;line-height:1.6}.metrics sup{font-size:11px}.metrics>div>span{font-size:10px;line-height:1.7;margin-top:9px;max-width:100px}
 .story-introduction h2{font-size:34px;line-height:1.18}.story-introduction>.eyebrow{font-size:9px;line-height:1.7}.story-introduction>p:last-child{font-size:18px;line-height:1.85;margin-top:24px}.story-introduction{margin-bottom:30px}
 .story-country-controls button{padding:15px 10px;gap:9px;font-size:13px;min-height:58px}.story-country-controls .mono{font-size:9px}
 .story-map-frame{aspect-ratio:1.02;min-height:315px}.story-map{inset:35px 0 60px;height:calc(100% - 95px)}.atlas-topline{top:15px;left:15px;right:15px;font-size:8px;line-height:1.6;gap:15px}.atlas-topline>span:first-child{max-width:140px}.atlas-topline>span:last-child{text-align:right;max-width:110px}
 .story-map-overview{right:13px;bottom:15px;font-size:9px;padding:6px 8px;max-width:130px;min-height:38px}.story-map-legend{left:15px;bottom:19px;font-size:8px;max-width:48%;gap:7px 10px;line-height:1.6}
 .story-map-column{padding:0 18px 22px}.story-map-frame{margin-inline:-18px}.story-map-hint{font-size:12px;line-height:1.8}.story-journey-note{font-size:11px;line-height:1.8}.story-place-controls{gap:7px}.story-place-controls button{font-size:12px;min-height:42px;padding:8px 11px}
 .story-country-panel{padding:26px 21px}.story-country-heading{gap:15px;margin-bottom:22px}.story-country-code{font-size:33px}.story-country-heading h3{font-size:25px;line-height:1.3}.story-country-heading .eyebrow{font-size:10px;margin-bottom:10px}.story-roles{gap:6px}.story-roles span{font-size:10px}.story-period{font-size:12px;line-height:1.8}.story-country-text{font-size:17px;line-height:1.85}.story-education strong,.story-internships strong{font-size:16px}.story-education span{font-size:14px}.story-education small,.story-internships small{font-size:12px}.story-project-links{display:block}.story-project-links>a{font-size:15px;line-height:1.65;padding:15px 0}.story-project-focus h4{font-size:24px}.story-project-focus>p:not(.eyebrow){font-size:14px}
 .atlas-footer{display:block;margin-top:18px}.atlas-footer>.text-link{font-size:13px}.atlas-footer>a:last-child{display:block;margin-top:18px;font-size:10px}
 .spatial-continuum{right:-45vw;top:22vh;width:100vw;height:55vh;opacity:.12!important;mask-image:linear-gradient(90deg,transparent 35%,#000 95%)}
 .spatial-interlude{display:flex;flex-direction:column;min-height:0;padding-top:42px;padding-bottom:22px}.spatial-interlude-copy{max-width:none}.spatial-interlude-copy h2{font-size:32px;line-height:1.22;margin-top:22px;max-width:430px}.spatial-interlude-copy>p:last-child{font-size:17px;line-height:1.85;margin-top:21px}.spatial-object{width:100%;height:290px;margin-top:10px}.spatial-object-drawing{width:calc(100% + 80px);height:300px;min-height:0;margin-left:-40px}.spatial-caption{font-size:9px;margin:-12px 0 0}
 .selected-grid,.work-grid,.related-grid{grid-template-columns:minmax(0,1fr);gap:38px}
 .project-image-link,.selected-grid .project-card:nth-child(n) .project-image-link,.work-grid .project-image-link,.related-grid .project-image-link,.is-archive .project-image-link,.is-competition .project-image-link{aspect-ratio:16/10;height:auto;min-height:0;width:100%}
 .project-image-link[data-image-fit=contain]{padding:16px}.project-image-index{font-size:9px;left:12px;top:10px}.project-image-arrow,.is-archive .project-image-arrow{width:42px;height:42px;right:0;bottom:0}.project-image-arrow .icon{width:20px;height:20px}
 .project-card-meta,.work-grid .project-card-meta,.related-grid .project-card-meta{font-size:9px;line-height:1.7;gap:12px;margin-top:16px;min-height:0;margin-bottom:12px}.project-card-meta span+span{margin:0}.project-card h3,.work-grid .project-card h3,.related-grid .project-card h3{font-size:25px;line-height:1.3;min-height:0;margin-bottom:14px}.project-card-link>p,.work-grid .project-card-link>p,.related-grid .project-card-link>p{font-size:17px;line-height:1.8;min-height:0;margin-bottom:18px}.card-case-link{font-size:13px}.related-grid .project-card:last-child{display:flex}
 .section-heading{margin-bottom:30px}.section-heading>div+div>p,.section-heading>p{font-size:17px;line-height:1.8}.section-heading .text-link{font-size:13px}.section-heading h2{margin-top:22px}
 .competition-feature-top{display:block;margin-top:24px;margin-bottom:26px}.competition-feature-top h2{font-size:34px;line-height:1.22}.competition-feature-top>div{margin-top:25px}.competition-feature-top>div>p{font-size:17px;line-height:1.85}.competition-feature-art{padding:15px;margin-top:20px}.competition-feature-art::before{inset:8px -8px -8px 8px}.competition-feature-art>span{margin-top:17px;font-size:12px;gap:15px;padding:11px 13px}.competition-feature-caption{font-size:12px;margin-top:25px}.competition-hero .artwork-figure,.competition-concept .artwork-figure{padding:12px}.competition-title h1{font-size:36px}.competition-title .lead{font-size:19px}.artwork-figure.is-drawing figcaption{font-size:12px;line-height:1.8;margin-top:17px}.competition-concept-copy h2{font-size:32px}.competition-concept-copy p{font-size:17px;line-height:1.85}.boards-grid .artwork-open{padding:12px}
 .page-intro{padding-top:132px;padding-bottom:42px}.page-intro h1{font-size:37px;line-height:1.18}.page-intro .lead{font-size:18px;line-height:1.85;margin-top:25px}
 .case-hero h1{font-size:37px}.case-hero-copy>p:last-child{font-size:18px}.case-hero{min-height:570px;height:75svh}.case-hero-copy{padding-bottom:70px}.case-image-note{font-size:12px;line-height:1.85}.case-image-note>span{font-size:11px;margin-top:14px}.case-story h2{font-size:31px;line-height:1.25}.case-story .lead{font-size:19px}.case-contributions li>p{font-size:17px;line-height:1.85}.case-gallery-images figcaption{font-size:12px}
 .pmo-feature{display:flex;flex-direction:column}.pmo-image{height:270px;min-height:0;width:100%}.pmo-image::after{background:linear-gradient(0deg,var(--dark),transparent 40%)}.pmo-copy{padding:33px var(--gutter) 48px}.pmo-copy h2{font-size:32px;line-height:1.25;margin:24px 0}.pmo-copy>p{font-size:17px;line-height:1.85}.pmo-copy>small{font-size:12px;line-height:1.85}
 .expertise-row h3{font-size:22px;line-height:1.35}.expertise-detail{padding-left:0}.expertise-detail p{font-size:17px}.expertise-detail li{font-size:15px}.expertise-detail .text-link{font-size:12px}
 .career-preview{display:block}.career-preview>div>p:not(.eyebrow){font-size:17px;line-height:1.85}.career-mini{margin-top:35px}.career-mini-row{font-size:16px}.career-mini-row .mono{font-size:10px}.career-mini-row small{font-size:12px}.career-panel>p:not(.eyebrow){font-size:17px}.career-panel h2{font-size:36px}.timeline-tabs strong{font-size:14px}.timeline-tabs .mono{font-size:10px}
 .education-grid,.internship-grid{grid-template-columns:1fr;gap:12px}.education-record{padding:25px 0 28px}.education-record h3{font-size:26px;line-height:1.3;margin-bottom:17px}.education-record .eyebrow{font-size:11px;margin-bottom:20px}.education-award{font-size:18px;line-height:1.7}.education-location{font-size:13px}.education-record>p:last-of-type:not(.education-location){font-size:17px;line-height:1.85}.education-record>.text-link{font-size:12px}.education-dates{font-size:12px;margin-top:8px;line-height:1.8}.internship-heading{margin-top:20px}.education-section>.section-heading h2{font-size:33px}
 .closing-cta>div>h2{font-size:34px;line-height:1.2}.closing-cta>div{align-items:center;margin-top:25px;margin-bottom:22px}.closing-email{font-size:16px}.circle-link{height:49px;width:49px}.circle-link .icon{height:23px;width:23px}
 .contact-page{padding-top:133px;padding-bottom:52px}.contact-intro h1{font-size:36px;line-height:1.2}.contact-intro>.lead{font-size:18px;line-height:1.85}.contact-actions h2{font-size:25px}.contact-actions p{font-size:17px;line-height:1.85}.email-link{font-size:clamp(18px,5.2vw,24px);overflow-wrap:anywhere;max-width:100%}.direct-contact{gap:8px}.copy-email{flex:none;min-width:36px}.contact-location{font-size:15px}
 .footer-top p{font-size:14px}.footer-bottom,.footer-bottom nav{font-size:11px}.draft-status,.draft-status>.updated{font-size:10px}.legal-page h1{font-size:38px}.legal-copy p,.legal-copy li{font-size:17px}.navigation-panel nav a{font-size:clamp(23px,6.8vw,32px);line-height:1.4}
}
@media(max-width:370px){:root{--gutter:19px}.brand-name{font-size:22px}.brand-line{font-size:6px}.header-end{gap:14px}.hero-copy h1{font-size:34px}.hero-actions{gap:15px}.hero-actions .button{font-size:11px;padding:14px;gap:15px}.hero-actions .text-link{font-size:11px;gap:9px}.story-introduction h2{font-size:31px}.story-country-controls button{font-size:12px;padding:13px 8px;gap:7px}.story-map-frame{min-height:305px}.story-map-legend{max-width:45%;font-size:8px}.story-map-overview{max-width:120px;font-size:9px}.contact-intro h1{font-size:33px}.closing-cta>div>h2{font-size:31px}.project-card h3,.work-grid .project-card h3{font-size:24px}}
@media(prefers-reduced-motion:reduce){
 .spatial-continuum{display:none}
 .spatial-drawing,.spatial-drawing *,.story-map,.story-map *{animation:none!important;transition:none!important}
 .section::after,.competition-feature-art::before{transform:none!important}
 .project-card-link:hover img,.project-card-link:focus-visible img{transform:none!important}
 .project-card::before{transform:none!important}
 .project-structural-frame path{stroke-dashoffset:0!important}
 .project-image-link>img{clip-path:none!important}
 .reveal{opacity:1!important;translate:none!important;transform:none!important}
}

/* Editorial refinement: two local font families, one measured page grid. */
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-variable.woff') format('woff');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('/assets/fonts/source-sans-3-variable.woff') format('woff');font-style:normal;font-weight:200 900;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('/assets/fonts/source-sans-3-italic-variable.woff') format('woff');font-style:italic;font-weight:200 900;font-display:swap}
:root{--content-max:1440px;--gutter:max(clamp(23px,4.6vw,78px),calc((100vw - var(--content-max))/2));--font:Manrope,Arial,sans-serif;--body-font:'Source Sans 3',Arial,sans-serif;--serif:'Source Sans 3',Arial,sans-serif;--paper:#e8e1d5;--paper-deep:#dcd2c2;--ink:#202522;--dark:#19201e;--muted:#51594f;--accent:#755031;--bronze-light:#d1ac7f;--line:#aaa08d}
body{font-family:var(--body-font);font-size:19px;line-height:1.7;font-weight:400;letter-spacing:0;font-synthesis:none;color:var(--ink);background:var(--paper)}
h1,h2,h3,h4,.brand,.footer-brand,nav,.button,.text-link,button,.eyebrow,.mono,.project-card-meta{font-family:var(--font)}
h1,h2,h3,h4{font-weight:550;letter-spacing:-.035em;text-wrap:balance}
h1{font-size:clamp(40px,4.9vw,72px);line-height:1.13}
h2{font-size:clamp(32px,3.35vw,48px);line-height:1.2}
h3{font-weight:550;line-height:1.3}
p{line-height:1.7;text-wrap:pretty}
em{font-family:var(--body-font);font-style:italic;font-weight:450;letter-spacing:-.02em;color:var(--accent)}
.eyebrow,.mono{letter-spacing:.075em;font-weight:550}
.eyebrow{font-size:11px;line-height:1.7}
.lead{font-size:22px;line-height:1.65}
.section{padding-block:clamp(56px,5.8vw,84px)}
.section-heading{align-items:center;column-gap:7%;margin-bottom:36px}
.section-heading h2{max-width:22ch}
.section-heading>div+div{max-width:420px}
.section-heading>div+div>p,.section-heading>p{font-size:19px;line-height:1.7;max-width:44ch}
.section-number{color:var(--accent)}
.text-link,.button{font-size:14px;font-weight:550;line-height:1.6;letter-spacing:0}
.brand-name{font-size:28px;font-weight:650;letter-spacing:-.055em;line-height:1.25}
.brand-line{font-size:8px;font-weight:600;letter-spacing:.075em;line-height:1.6}
.desktop-nav{gap:24px;margin-right:0}
.desktop-nav a{font-size:13px;font-weight:550;max-width:200px;line-height:1.5;letter-spacing:-.01em}
.languages,.contact-nav{font-family:var(--font);font-size:12px;font-weight:550;line-height:1.5}
.site-header,.site-header.is-scrolled{height:88px;background:#19201ef5;color:var(--paper)}
.header-end{gap:22px}
.hero-copy h1{font-family:var(--font);font-size:clamp(47px,5.25vw,78px);line-height:1.12;font-weight:500;letter-spacing:-.045em;max-width:1080px}
.hero-copy h1 em{font-family:var(--body-font);font-style:italic;font-weight:450;color:var(--bronze-light);letter-spacing:-.025em}
.hero-positioning{font-size:15px!important;max-width:75ch;color:var(--paper);line-height:1.8}
.hero-bottom>p{font-size:20px;line-height:1.7;max-width:43ch;color:var(--paper)}
.hero-copy{padding-top:190px;padding-bottom:180px}
.home-hero{min-height:800px;height:94svh}
.hero-media-controls button{font-size:12px}
.hero-media-controls>a,.hero-location,.scroll-link{font-size:11px;line-height:1.6;color:var(--paper)}
.hero-media-controls>a{max-width:260px}
.intro-layout{grid-template-columns:1fr 1fr;column-gap:7%}
.intro-layout h2{font-size:clamp(34px,3.35vw,48px);line-height:1.22;max-width:21ch}
.intro-copy .lead{font-size:23px;line-height:1.65}
.intro-copy>p:not(.lead){font-size:19px;line-height:1.75;max-width:56ch}
.credential-ribbon p{font-size:14px;line-height:1.7}
.credential-ribbon>span{font-family:var(--font);font-size:13px}
.credential-ribbon{padding-block:24px}
/* Text stays fully visible; only architectural lines and imagery follow scroll. */
.motion-ready .reveal,.motion-ready .reveal.in-view{opacity:1;transform:none;translate:none;transition:none}
.spatial-continuum{z-index:0;right:calc(var(--gutter) - 220px);width:min(600px,46vw);top:18vh;height:65vh;mask-image:linear-gradient(90deg,transparent,#000 75%)}
main>.section,main>article,main>.pmo-feature{position:relative;z-index:1}
.spatial-frame{stroke-width:1.05}
.spatial-columns{stroke-width:.8;opacity:.58}
.spatial-grid{stroke-width:.6;opacity:.28}
.spatial-slabs{fill-opacity:.035;stroke-opacity:0}
.spatial-stars{stroke-width:.8}
.spatial-guide,.spatial-origin{display:none}
.spatial-interlude{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:5%;min-height:440px;background:linear-gradient(110deg,#dfd5c5,var(--paper) 65%);overflow:hidden}
.spatial-interlude-copy{max-width:560px;align-self:center}
.spatial-interlude-copy h2{font-family:var(--font);font-size:clamp(30px,2.8vw,43px);font-weight:550;line-height:1.22;max-width:none;margin-top:24px;letter-spacing:-.045em}
.spatial-interlude-copy h2 em{font-family:var(--body-font);font-style:italic;font-weight:450;color:var(--accent);letter-spacing:-.02em;white-space:nowrap}
.spatial-interlude-copy>p:last-child{font-size:19px;line-height:1.75;max-width:46ch;margin-top:24px}
.spatial-object{width:100%;max-width:620px;justify-self:center;color:#61563f}
.spatial-object-drawing{display:block;width:100%;min-height:0;max-height:420px;margin:0;aspect-ratio:4/3;overflow:visible}
.spatial-caption{font-family:var(--font);font-size:11px;color:var(--muted);letter-spacing:.06em;margin:0;text-align:center}
/* Light surfaces explicitly reset the former dark-atlas text and local tokens. */
.international-story{color:var(--ink);--line:#aaa08d;--muted:#51594f;--accent:#755031;background:linear-gradient(var(--paper),#dfd6c7);padding-block:64px}
.story-introduction{grid-template-columns:1fr 1fr;gap:24px 7%;align-items:center;margin-bottom:36px}
.story-introduction>.eyebrow{color:var(--accent);margin-bottom:2px}
.story-introduction h2{font-size:clamp(33px,3.3vw,48px);line-height:1.22;color:var(--ink)}
.story-introduction>p:last-child{font-size:22px;line-height:1.7;color:var(--ink);max-width:46ch}
.story-atlas-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);background:var(--paper);border-color:var(--line)}
.story-map-column{grid-column:1;grid-row:auto;padding:0 24px 24px;min-width:0}
.story-map-frame{grid-column:auto;grid-row:auto;width:auto;margin:-1px -24px 0;aspect-ratio:1.05;height:auto;min-height:420px;background:radial-gradient(ellipse at 45% 40%,#34423a,#192720 85%)}
.story-map{inset:45px 12px 78px;width:calc(100% - 24px);height:calc(100% - 123px)}
.story-country-controls{grid-column:auto;grid-row:auto}
.story-country-controls button{font-family:var(--font);font-size:16px;font-weight:550;line-height:1.5;min-height:62px;padding:16px 22px;gap:16px}
.story-country-controls button:first-child{padding-left:22px}
.story-country-controls button .mono{font-size:11px;opacity:1}
.story-country-panel{grid-column:2;grid-row:auto;padding:28px;max-height:760px;background:var(--paper);color:var(--ink);overscroll-behavior:contain}
.story-country-heading h3,.story-project-focus h4{color:var(--ink);font-size:27px;font-weight:550}
.story-country-heading .eyebrow,.story-project-links>.eyebrow{color:var(--accent);font-size:11px}
.story-country-text,.story-project-focus>p:not(.eyebrow){color:var(--ink);font-size:18px;line-height:1.75}
.story-project-focus>p:not(.eyebrow){font-size:16px}
.story-period,.story-education small,.story-internships small{color:var(--muted);font-size:14px;line-height:1.65}
.story-roles{margin-top:0;margin-bottom:18px}
.story-roles span{color:var(--ink);font-size:12px;line-height:1.6;padding:5px 9px;border-color:#aa9c84}
.story-country-code{font-family:var(--font);font-size:32px;font-weight:500;line-height:1.2;color:var(--accent);border:0;border-left:1px solid var(--accent);padding:0 0 0 12px}
.story-project-links>a,.story-education a,.story-internships a{color:var(--ink);font-size:16px;min-height:44px}
.story-education strong,.story-internships strong{font-size:17px;font-weight:600}
.story-education span{font-size:16px;color:var(--ink)}
.story-project-focus{border:0;border-left:1px solid var(--accent);background:#d7cbb833;padding:12px 18px}
.story-map-hint{color:var(--ink);font-size:14px;line-height:1.7;max-width:68ch}
.story-journey-note{font-size:13px;line-height:1.7;color:var(--muted)}
.story-place-controls button{font-size:13px;min-height:44px;padding:9px 12px;color:var(--ink);line-height:1.6}
.story-place-controls button[aria-pressed=true]{color:var(--paper)}
.story-map-legend{left:20px;bottom:18px;right:20px;max-width:none;gap:8px 14px;justify-content:flex-start;flex-direction:row;font-family:var(--body-font);font-size:13px;line-height:1.5;color:#f0e7d8;padding-right:0;pointer-events:none}
.story-map-overview{top:12px;right:14px;left:auto;bottom:auto;min-height:44px;max-width:145px;font-family:var(--body-font);font-size:13px;line-height:1.5;padding:8px 11px;background:#192720;color:#f0e7d8;border-color:#9e967f}
.atlas-topline{top:18px;left:20px;right:175px;font-size:10px;letter-spacing:.04em;line-height:1.5;color:#eedbc0}
.atlas-topline>span:last-child{display:none}
.story-country{stroke:#91a08a;stroke-width:.6;fill:#3b4a3f}
.story-country--egypt,.story-country--germany,.story-country--kuwait{fill:#6c765b;stroke:#d8bd94;stroke-width:1.1}
.story-country.is-active{fill:#a68c60;stroke:#f4d7ad;stroke-width:1.5}
.story-country-anchor text,.story-place-marker text{font-family:var(--font);font-size:4.4px;font-weight:600;fill:#fff2de;stroke:#192720;stroke-width:1.2;paint-order:stroke;letter-spacing:0}
.story-place-marker text{font-size:4.1px}
.story-country-anchor circle:not(.story-hit){fill:#e2bd85;stroke:#192720;stroke-width:.65}
[data-story-level=country] .story-country-anchor{display:initial}
[data-story-level=country] .story-country-anchor.is-active{visibility:hidden}
.story-place-symbol{fill:#e3c190;stroke:#17271f;stroke-width:.7}
.story-place-marker.is-selected .story-place-symbol{fill:#fff3d8;stroke:#fff3d8;stroke-width:1}
.story-connection{stroke:#dab886;stroke-width:.9;stroke-dasharray:2 4;stroke-dashoffset:calc((1 - var(--section-progress,1))*12);opacity:.6;animation:none!important}
.story-map [role=button]:focus-visible{outline:none;filter:drop-shadow(0 0 1px #fff2de)}
.map-pulse,.draft-status>span:first-child{animation:none!important}
.atlas-footer>.text-link{font-size:14px;line-height:1.6}
.atlas-footer>a:last-child{font-size:12px}
/* Shared image modules; every homepage entry, including Europan, uses this grid. */
.selected-grid,.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 32px}
.project-image-link,.selected-grid .project-card:nth-child(n) .project-image-link,.work-grid .project-image-link{aspect-ratio:16/10;border:0}
.project-structural-frame{opacity:.38}
.project-structural-frame .card-frame-depth{display:none}
.project-card .project-image-link[data-image-fit=contain]{padding:0;background:#ddd2c0}
.project-card .project-image-link[data-image-fit=contain]>img{width:min(calc(100% - 28px),var(--asset-native-width))!important;height:min(calc(100% - 28px),var(--asset-native-height))!important;box-shadow:none}
.project-card h3,.work-grid .project-card h3{font-size:26px;font-weight:550;line-height:1.3;min-height:2.6em;margin-bottom:13px;letter-spacing:-.03em}
.project-card-meta,.work-grid .project-card-meta,.related-grid .project-card-meta{font-size:11px;font-weight:550;line-height:1.6;letter-spacing:.035em;min-height:36px;margin-top:19px;color:var(--muted)}
.project-card-link>p,.work-grid .project-card-link>p,.related-grid .project-card-link>p{font-family:var(--body-font);font-size:19px;line-height:1.65;min-height:3.3em;color:var(--muted)}
.card-case-link{font-family:var(--font);font-size:13px;min-height:44px;font-weight:550}
.project-image-index{font-size:11px;line-height:1.5}
/* Freiraum has one open stone composition and one bronze construction line. */
.competition-hero{background:var(--paper)}
.competition-hero .artwork-figure{padding:0;border:0;background:transparent;max-width:1180px;margin:36px auto 0}
.competition-hero .artwork-open{background:transparent;overflow:visible;padding:0}
.competition-hero .artwork-figure::before{content:'';display:block;width:18%;height:22px;border-top:1px solid var(--accent);border-left:1px solid var(--accent);transform-origin:left;transform:scaleX(var(--section-progress,1));pointer-events:none}
.competition-hero .artwork{max-width:1180px;width:100%;height:auto;box-shadow:none;background:transparent}
.competition-hero .artwork-open-label{position:relative;display:flex;justify-content:flex-end;width:max-content;max-width:100%;margin:12px 0 0 auto;font-size:12px;min-height:44px;padding:9px 12px}
.competition-title h1{font-size:clamp(37px,4.5vw,64px);line-height:1.15;max-width:900px}
.competition-title>.lead{max-width:56ch;font-size:22px;line-height:1.65}
.competition-concept .artwork-figure{border:0;box-shadow:none;padding:0;background:transparent}
.competition-concept .artwork-open{background:transparent;box-shadow:none}
.competition-concept .artwork{box-shadow:none}
.competition-concept-copy>p:last-child,.competition-team p{font-size:19px;line-height:1.75}
.artwork-figure>figcaption,.artwork-figure.is-drawing figcaption,.image-credit,.gallery-credit,.case-image-note{font-size:14px;line-height:1.7;color:var(--muted)}
.case-story .lead{font-size:22px;line-height:1.7}
.case-story>div+div>p:not(.lead),.case-contributions li>p{font-size:19px;line-height:1.75}
.case-hero-copy>p:last-child{font-size:21px}
.pmo-copy>p{font-size:19px;line-height:1.75;color:var(--paper)}
.pmo-copy>small{font-size:14px;line-height:1.7;color:#d8d1c2}
.pmo-copy .eyebrow,.site-footer em{color:var(--bronze-light)}
.career-mini-row small,.timeline-tabs .mono{font-size:13px}
.career-preview>div>p:not(.eyebrow),.career-panel>p:not(.eyebrow){font-size:19px;line-height:1.75}
.education-award{font-size:20px}
.education-location,.education-dates{font-size:14px}
.education-record>p:last-of-type:not(.education-location){font-size:18px;line-height:1.75}
.contact-intro h1{font-size:clamp(35px,3.8vw,54px);line-height:1.19;max-width:22ch}
.contact-intro>.lead,.contact-actions p{font-size:20px;line-height:1.7}
.contact-page{min-height:0;padding-top:155px;padding-bottom:74px;align-items:center}
.closing-cta>div>h2{font-size:clamp(33px,3.5vw,50px);line-height:1.2;max-width:25ch}
.email-link{font-size:clamp(20px,2.2vw,32px)}
.footer-top p{font-family:var(--body-font);font-size:17px;line-height:1.7;color:#ddd6c9}
.footer-bottom,.footer-bottom nav{font-size:12px;line-height:1.6}
@media(max-width:1100px){
 .site-header,.site-header.is-scrolled{height:82px}.brand-name{font-size:27px}
 .hero-copy{padding-top:164px}.hero-copy h1{font-size:clamp(45px,6.4vw,64px)}.home-hero{min-height:820px}
 .story-introduction>p:last-child{font-size:20px}.story-atlas-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
 .story-country-panel{padding:25px;max-height:720px}.story-map-frame{min-height:450px;aspect-ratio:.92}
 .story-country-heading h3{font-size:24px}.spatial-interlude-copy h2{font-size:clamp(29px,3.1vw,35px)}
 .project-card h3,.work-grid .project-card h3{font-size:24px}
}
@media(max-width:900px){
 .story-introduction{display:grid;grid-template-columns:1fr;gap:24px}.story-introduction>p:last-child{margin:0;max-width:60ch}
 .story-atlas-layout{grid-template-columns:1fr}.story-country-panel{grid-column:1;grid-row:auto;max-height:none;padding:28px}
 .story-map-frame{aspect-ratio:1.55;min-height:400px}.story-country-text{max-width:64ch}
 .story-map-legend{font-size:13px}.story-project-links{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
 .spatial-interlude{grid-template-columns:1fr;gap:25px;min-height:0}.spatial-interlude-copy{max-width:600px}.spatial-interlude-copy h2{font-size:38px}.spatial-interlude-copy>p:last-child{max-width:54ch}
 .spatial-object{max-width:560px}.spatial-object-drawing{max-height:370px}
 .spatial-continuum{right:-18vw;width:65vw;max-height:500px}
 .intro-layout h2{font-size:35px}.intro-copy .lead{font-size:21px}.intro-copy>p:not(.lead){font-size:19px}
 .pmo-copy{padding:36px 28px}.pmo-copy>p{font-size:18px}
 .project-card-link>p,.work-grid .project-card-link>p{font-size:18px}.selected-grid,.work-grid{gap:38px 26px}
 .competition-title>.lead{font-size:21px}
}
@media(max-width:600px){
 :root{--gutter:23px}
 body{font-size:18px;line-height:1.7}
 .section{padding-block:50px}.section-heading>div+div>p,.section-heading>p{font-size:18px;line-height:1.7}
 .site-header,.site-header.is-scrolled{height:78px}.brand-name{font-size:25px}.brand-line{font-size:7px;letter-spacing:.06em}.header-end{gap:16px}
 .languages,.menu-toggle{font-size:12px}.home-hero{min-height:820px;max-height:none;height:auto}
 .hero-copy{padding:144px var(--gutter) 188px}.hero-copy h1{font-size:clamp(37px,9.6vw,53px);line-height:1.15;letter-spacing:-.045em}
 .hero-copy .eyebrow{font-size:11px;line-height:1.7}.hero-positioning{font-size:14px!important;max-width:32ch;line-height:1.75}
 .hero-bottom>p{font-size:19px;line-height:1.7}.hero-actions .button,.hero-actions .text-link{font-size:13px}
 .hero-media-controls{max-width:200px}.hero-media-controls>a{font-size:11px}.hero-media-controls button{font-size:12px}.scroll-link{font-size:11px;line-height:1.6}.hero-foot{gap:16px}
 .credential-ribbon p{font-size:13px;line-height:1.75}.credential-ribbon>span{font-size:13px}
 .intro-layout h2{font-size:34px}.intro-copy .lead{font-size:22px}.intro-copy>p:not(.lead){font-size:19px}
 .intro-copy .text-link{font-size:14px}.metrics>div>span{font-size:12px;line-height:1.6}
 .story-introduction h2{font-size:clamp(31px,8.3vw,41px);line-height:1.24;letter-spacing:-.035em}
 .story-introduction>.eyebrow{font-size:10px}.story-introduction>p:last-child{font-size:20px;line-height:1.7}
 .story-country-controls button,.story-country-controls button:first-child{font-size:13px;gap:7px;padding:14px 9px;min-height:58px;justify-content:center}.story-country-controls button .mono{display:none}
 .story-map-column{padding:0 16px 20px}.story-map-frame{margin-inline:-16px;min-height:360px;aspect-ratio:1.05}.story-map{inset:48px 7px 74px;width:calc(100% - 14px);height:calc(100% - 122px)}
 .story-map-overview{top:10px;right:11px;max-width:142px;font-size:12px;min-height:44px}.atlas-topline{left:15px;right:163px;top:15px;font-size:9px;letter-spacing:.03em}
 .story-map-legend{bottom:15px;left:15px;right:15px;max-width:none;font-size:12px;gap:7px 14px;flex-direction:row;line-height:1.6}
 .story-map-hint{font-size:14px;line-height:1.7}.story-journey-note{font-size:13px}.story-place-controls button{font-size:13px;min-height:44px}
 .story-country-panel{padding:25px 19px}.story-country-heading h3{font-size:25px}.story-country-heading .eyebrow{font-size:11px}.story-country-code{font-size:29px;padding-left:10px}
 .story-country-text{font-size:19px;line-height:1.7}.story-roles span{font-size:12px}.story-period{font-size:14px}
 .story-project-links{display:block}.story-project-links>a{font-size:17px;min-height:44px}.story-education strong,.story-internships strong{font-size:18px}.story-education span{font-size:17px}.story-education small,.story-internships small{font-size:14px}
 .story-project-focus h4{font-size:24px}.story-project-focus>p:not(.eyebrow){font-size:17px}.atlas-footer>.text-link{font-size:13px}.atlas-footer>a:last-child{font-size:12px}
 .spatial-interlude{gap:20px}.spatial-interlude-copy h2{font-size:clamp(28px,7.4vw,38px);line-height:1.25;letter-spacing:-.04em}.spatial-interlude-copy>p:last-child{font-size:19px;line-height:1.75;max-width:43ch}
 .spatial-object{max-width:440px}.spatial-object-drawing{width:100%;margin:0;min-height:0;max-height:300px}.spatial-caption{font-size:10px;margin-top:6px;line-height:1.7}
 .spatial-continuum{width:70vw;right:-30vw;opacity:.08!important}
 .selected-grid,.work-grid,.related-grid{grid-template-columns:1fr;gap:37px}.project-card h3,.work-grid .project-card h3{font-size:26px;min-height:0}.project-card-link>p,.work-grid .project-card-link>p,.related-grid .project-card-link>p{font-size:19px;min-height:0;line-height:1.65}
 .project-card-meta,.work-grid .project-card-meta,.related-grid .project-card-meta{font-size:11px;min-height:0;line-height:1.6}.card-case-link{font-size:13px}
 .competition-title h1{font-size:37px;line-height:1.2}.competition-title>.lead{font-size:21px}.competition-hero .artwork-figure{padding:0;margin-top:30px}.competition-hero .artwork{max-width:100%}
 .competition-concept-copy>p:last-child,.competition-team p{font-size:19px}.artwork-figure>figcaption,.artwork-figure.is-drawing figcaption,.image-credit,.gallery-credit,.case-image-note{font-size:14px;line-height:1.7}
 .case-hero h1{font-size:38px;line-height:1.18}.case-hero-copy>p:last-child{font-size:20px;line-height:1.7}.case-story .lead{font-size:22px;line-height:1.7}.case-story>div+div>p:not(.lead),.case-contributions li>p{font-size:19px}
 .pmo-copy{padding:30px var(--gutter) 48px}.pmo-copy h2{font-size:33px}.pmo-copy>p{font-size:19px}.pmo-copy>small{font-size:14px}
 .career-preview>div>p:not(.eyebrow),.career-panel>p:not(.eyebrow){font-size:19px}.career-mini-row small,.timeline-tabs .mono{font-size:12px}
 .education-award{font-size:20px}.education-location,.education-dates{font-size:14px}.education-record>p:last-of-type:not(.education-location){font-size:19px}
 .page-intro h1{font-size:38px;line-height:1.2}.page-intro .lead{font-size:21px;line-height:1.7}
 .contact-page{padding-top:134px;padding-bottom:55px}.contact-intro h1{font-size:36px;line-height:1.22}.contact-intro>.lead,.contact-actions p{font-size:20px;line-height:1.7}.email-link{font-size:clamp(19px,5.4vw,26px)}
 .closing-cta>div>h2{font-size:33px;line-height:1.24}.footer-top p{font-size:17px}.footer-bottom,.footer-bottom nav{font-size:12px}
}
@media(max-width:370px){:root{--gutter:19px}.brand-name{font-size:23px}.brand-line{font-size:6.5px}.header-end{gap:13px}.hero-copy h1{font-size:35px}.hero-actions{gap:15px}.hero-actions .button{font-size:12px;padding:13px;gap:15px}.hero-actions .text-link{font-size:12px;gap:10px}.spatial-interlude-copy h2{font-size:27px}.story-introduction h2{font-size:30px}.contact-intro h1{font-size:33px}.closing-cta>div>h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.spatial-drawing *,.story-map *,.project-structural-frame *{animation:none!important;transition:none!important}.story-connection{stroke-dashoffset:0}.spatial-interlude .spatial-object{transform:none}.competition-hero .artwork-figure::before{transform:none}}

/* Native-resolution cutout: original opaque drawing pixels, exterior canvas only. */
.is-competition .project-image-link[data-image-fit=contain]{background:var(--paper)}
.is-competition .project-structural-frame{display:none}
.competition-hero .artwork-figure{max-width:1056px}
.competition-hero .artwork{max-width:1056px}
.viewer-image[src*="freiraum-district-cutout"]{background:var(--paper)}
/* Shared light-surface closing and transparent drawing overrides. */
.closing-cta{color:var(--ink)}
.closing-cta>.eyebrow{color:var(--accent)}
.closing-email{color:var(--ink)}
.project-card.is-competition .project-image-link img{background:transparent}
.hero-copy{max-width:none}
.languages a{opacity:1;color:var(--paper)}
.languages a:not([aria-current]){color:#c2bcb0}
.live-dot{animation:none!important}
.viewer-image-wrap.is-cutout{background:var(--paper)}
.viewer-image-wrap.is-cutout .viewer-image{background:transparent}
.site-header .brand-dot{color:var(--bronze-light)}
.home-hero{height:auto;min-height:max(800px,94svh);max-height:none}
@media(max-width:1280px){.desktop-nav{display:none}.menu-toggle{display:flex}.contact-nav{display:none}}
/* Contrast checked against the darkest stone stops as well as the base paper. */
:root{--muted:#444c42;--accent:#68482c}
.international-story{--muted:#444c42;--accent:#68482c}
.site-header.over-image:not(.is-scrolled){background:#19201ef5}
.pmo-copy .section-number{color:var(--bronze-light)}
.career-panel{background:var(--dark);color:var(--paper)}
.career-panel .text-link{color:var(--paper)}
.registration-credential>small{color:var(--muted);font-size:14px}
/* Fine construction lines stay at the page edge, clear of the reading columns. */
.spatial-continuum{z-index:2;mask-image:linear-gradient(90deg,transparent 35%,#000 95%)}
@media(max-width:900px){.spatial-continuum{display:none}}
@media(max-width:370px){.menu-toggle>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}}

/* V5 foundations, V4 spatial character. Native scrolling remains unpinned. */
:root{--motion-ease:cubic-bezier(.22,.72,.18,1);--card-ratio:16/10}
h1,h2,h3,h4{font-weight:500!important}
.brand-name,.footer-brand{font-weight:600;letter-spacing:-.045em}
.desktop-nav a,.languages,.contact-nav,.text-link,.button{font-weight:500}
.hero-copy h1{letter-spacing:-.04em;line-height:1.12}
.hero-copy h1 em{font-weight:450;letter-spacing:-.015em}
.section-heading h2{max-width:25ch}
.project-card-meta{letter-spacing:.025em}
.artwork-figure>figcaption,.gallery-credit,.case-image-note,.image-credit{font-family:var(--body-font);font-size:15px;line-height:1.65}

/* The four-layer object from V4 is visible again, with a controlled reading-space mask. */
.spatial-continuum{display:block;z-index:3;right:-13vw;top:11vh;width:min(780px,59vw);height:76vh;mask-image:linear-gradient(90deg,transparent 4%,#000 85%);opacity:var(--spatial-opacity,.28);color:#88613f;transition:none}
.spatial-site-drawing{max-height:730px}
.spatial-frame{stroke-width:1.1;opacity:.95}
.spatial-columns{stroke-width:.75;opacity:.62}
.spatial-grid{stroke-width:.5;opacity:.29}
.spatial-slabs{fill:currentColor;fill-opacity:.025;stroke-width:.35;stroke-opacity:.25}
.spatial-stars{stroke-width:.8;opacity:.28}
.spatial-guide{display:block;stroke-width:.5;stroke-dasharray:2 7;opacity:.25}
.spatial-origin{display:block;opacity:.5}
.spatial-interlude{grid-template-columns:.9fr 1.3fr;gap:0;min-height:560px;padding-block:44px;background:linear-gradient(125deg,#d8cdbc,var(--paper) 70%);overflow:hidden}
.spatial-interlude-copy{max-width:530px;z-index:2}
.spatial-interlude-copy h2{font-size:clamp(33px,3.35vw,48px);line-height:1.18;letter-spacing:-.045em;margin-top:25px}
.spatial-interlude-copy h2 em{font-family:var(--body-font);font-style:italic;font-weight:450;letter-spacing:-.015em;white-space:nowrap}
.spatial-interlude-copy>p:last-child{font-size:20px;line-height:1.75;max-width:43ch;margin-top:25px}
.spatial-object{max-width:820px;width:100%;color:#625844;position:relative;z-index:1}
.spatial-object-drawing{width:calc(100% + 65px);max-height:560px;min-height:430px;max-width:none;margin-left:-20px;aspect-ratio:4/3}
.spatial-caption{font-family:var(--font);font-size:11px;letter-spacing:.055em;margin:-15px 0 0;line-height:1.7;color:var(--muted)}

/* Film first: the same structural object, drawn over its right-hand spatial field. */
.home-hero{isolation:isolate;overflow:hidden;--hero-progress:0}
.hero-spatial-stage{position:absolute;inset:8% -4% 0 37%;z-index:1;pointer-events:none;color:#dab98b;mask-image:linear-gradient(90deg,transparent 2%,#000 40%);opacity:.48}
.hero-spatial-drawing{position:absolute;width:100%;height:100%;max-height:900px;right:0;top:1%}
.hero-spatial-stage .spatial-frame{stroke-width:1.05;stroke-dasharray:1;stroke-dashoffset:calc(.7 - var(--hero-progress)*.7)}
.hero-spatial-stage .spatial-grid{stroke-width:.55;opacity:.33}
.hero-spatial-stage .spatial-stars{opacity:.48!important}
.hero-spatial-stage .spatial-guide,.hero-spatial-stage .spatial-origin{display:none}
.hero-plan-lines{position:absolute;inset:0;width:100%;height:100%;stroke:currentColor;stroke-width:.75;opacity:.48}
.hero-plan-lines path{vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--hero-progress))}
.hero-photo{transform-origin:65% 50%;transform:translateY(calc(var(--hero-progress)*25px)) scale(calc(1 + var(--hero-progress)*.025));will-change:auto}
.hero-copy,.hero-foot{z-index:3}
.hero-copy{position:relative}
.hero-passing-plane{position:absolute;inset:0;z-index:2;background:var(--paper);pointer-events:none;clip-path:polygon(100% calc(113% - var(--hero-progress)*67%),100% 100%,calc(122% - var(--hero-progress)*83%) 100%);opacity:1}
.hero-passing-plane::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 60%,#805b3924);clip-path:polygon(100% 45%,100% 100%,35% 100%)}

/* A travelling bronze edge closes the outgoing surface as it leaves the viewport. */
[data-spatial-section]{isolation:isolate}
.section-spatial-plane{display:block;position:absolute;pointer-events:none;inset:auto 0 -1px;height:95px;z-index:4;background:var(--paper);border-top:1px solid #805b3955;clip-path:polygon(0 60%,100% 0,100% 100%,0 100%);transform:translateY(calc((1 - var(--section-exit,0))*102%));transform-origin:center bottom}
.spatial-interlude>.section-spatial-plane{z-index:3}
.section-spatial-plane::after{content:'';position:absolute;inset:0;background:linear-gradient(125deg,transparent 60%,#b39b7636)}

/* A modular photographic opening, separate from the case-study link. */
.project-card{display:flex;flex-direction:column;align-items:stretch;min-width:0}
button.project-image-link,.selected-grid .project-card:nth-child(n) button.project-image-link,.work-grid button.project-image-link,.related-grid button.project-image-link{position:relative;display:flex;flex:none;align-items:center;justify-content:center;width:100%;aspect-ratio:16/10;height:auto;min-height:0;padding:0;border:0;overflow:hidden;background:#dcd2c2;isolation:isolate}
.project-image-link>img{position:absolute;inset:0;width:100%;height:100%;margin:auto;object-fit:cover;object-position:var(--image-position,50% 50%);transform:none!important}
.project-card button.project-image-link[data-image-fit=contain]>img{width:min(calc(100% - 28px),var(--asset-native-width))!important;height:min(calc(100% - 28px),var(--asset-native-height))!important;object-fit:contain;box-shadow:none}
.project-card.is-competition button.project-image-link{background:var(--paper)}
.project-card.is-competition button.project-image-link>img{background:transparent}
.project-structural-frame{opacity:.55;color:#ead9bd}
.project-structural-frame .card-frame-depth{display:block;opacity:.45}
[data-image-fit=contain] .project-structural-frame{color:var(--accent);opacity:.42}
.is-competition .project-structural-frame{display:none}
.image-open-caption{position:absolute;left:14px;bottom:14px;background:#19201ef2;color:#f2e9da;font:500 11px/1.5 var(--font);padding:7px 10px;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s;pointer-events:none}
.project-image-link:hover .image-open-caption,.project-image-link:focus-visible .image-open-caption{opacity:1;transform:none}
.project-card-link{display:flex;flex:1;flex-direction:column;padding-bottom:20px}
.project-card h3,.work-grid .project-card h3{font-size:26px;line-height:1.3;letter-spacing:-.028em;min-height:2.6em}
.project-card-meta,.work-grid .project-card-meta,.related-grid .project-card-meta{font:500 11px/1.65 var(--font);color:var(--muted);min-height:36px;margin:18px 0 10px;gap:16px}
.project-card-link>p,.work-grid .project-card-link>p{font:400 19px/1.65 var(--body-font);color:var(--muted);min-height:3.3em;margin-bottom:20px}
.card-case-link{font:500 13px/1.6 var(--font);min-height:44px;margin-top:auto}
@supports(grid-template-rows:subgrid){
 .selected-grid,.work-grid,.related-grid{row-gap:0;align-items:stretch}
 .project-card{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;padding-bottom:42px;border:0}
 .project-card-link{display:contents}
 .project-card-meta{align-self:start}
 .project-card h3,.work-grid .project-card h3,.related-grid .project-card h3{min-height:0;margin-bottom:13px;align-self:start}
 .project-card-link>p,.work-grid .project-card-link>p,.related-grid .project-card-link>p{min-height:0;margin-bottom:18px;align-self:start}
 .card-case-link{align-self:end;border-bottom:1px solid var(--line);padding-bottom:18px;margin-top:0}
 .project-card-link:focus-visible .card-case-link{outline:2px solid currentColor;outline-offset:3px}
}

/* An accurate atlas assembled from the same construction grid. */
.international-story{position:relative;overflow:visible;--atlas-grid:1;--atlas-land:1;--atlas-connections:1;--atlas-markers:1;--atlas-labels:1;--atlas-exit:1}
.story-map-frame{border:1px solid #b59a704d;background:radial-gradient(ellipse at 38% 38%,#34443b,#192720 84%);box-shadow:inset 0 0 80px #111c1745}
.story-graticule{opacity:calc(.1 + var(--atlas-grid)*.2);stroke:#c7b99c;stroke-width:.5}
.story-graticule path{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--atlas-grid))}
.story-land{clip-path:inset(0 calc((1 - var(--atlas-land))*100%) 0 0)}
.story-connection{stroke:#e0bc88;stroke-width:1.1;stroke-dasharray:1!important;stroke-dashoffset:calc(1 - var(--atlas-connections));opacity:.82;animation:none!important}
.story-country-anchor{opacity:var(--atlas-markers);transition:filter .25s}
.story-country-anchor text{opacity:var(--atlas-labels);font-weight:550;stroke-width:1.4}
.story-country-anchor:focus-visible,.story-country-anchor:hover{opacity:1;filter:drop-shadow(0 0 1px #f9d39a)}
.story-country-anchor:focus-visible text,.story-country-anchor:hover text{opacity:1}
.story-place-marker.is-country-selected{opacity:var(--atlas-markers)}
.story-place-marker.is-selected,.story-place-marker:focus-visible{opacity:1}
.story-place-marker text{font-weight:550}
.story-focus-geometry{fill:none;stroke:#d9b786;stroke-width:.55;opacity:calc(var(--atlas-connections)*.48);pointer-events:none;stroke-linejoin:round}
.story-focus-geometry>path{vector-effect:none;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--atlas-connections))}
.story-focus-axis{opacity:.45}
.story-marker-pulse{fill:none!important;stroke:#e1bd89!important;stroke-width:.6;opacity:0;transform-origin:center;transform-box:fill-box}
.story-country-anchor.is-active>.story-marker-pulse{animation:atlas-pulse 950ms ease-out 1}
@keyframes atlas-pulse{0%{opacity:.7;transform:scale(.7)}100%{opacity:0;transform:scale(2.8)}}
[data-story-hovered=egypt] .story-country--egypt,[data-story-hovered=kuwait] .story-country--kuwait,[data-story-hovered=germany] .story-country--germany{fill:#a48c64;stroke:#f2d4a9}
.story-country{transition:fill .3s,stroke .3s}
.story-exit-line{display:block;position:absolute;z-index:4;pointer-events:none;left:70%;bottom:-54px;height:108px;width:1px;background:linear-gradient(#8d6645,#8d664500);transform-origin:top;transform:scaleY(var(--atlas-exit))}
.story-exit-line::before{content:'';position:absolute;left:-4px;top:0;width:8px;height:8px;border:1px solid #8d6645;transform:rotate(45deg)}

/* A shared photograph changes scale; the page beneath stays in place. */
body.gallery-open{overflow:hidden}
.image-viewer{width:100vw;height:100dvh;max-width:none;max-height:none;border:0;inset:0;padding:24px 30px 20px;margin:0;background:#19201e;color:#f0e7d9;overflow:hidden}
.image-viewer[open]{display:flex;flex-direction:column;gap:18px}
.image-viewer::backdrop{background:#101714ed;backdrop-filter:blur(3px)}
.viewer-toolbar{display:flex;align-items:center;gap:22px;flex:none;min-height:46px;border-bottom:1px solid #9e8f764d;padding-bottom:14px}
.viewer-toolbar h2{font:500 15px/1.5 var(--font);margin-right:auto;letter-spacing:0}
.viewer-toolbar button,.viewer-count{font:500 13px/1.5 var(--font);min-height:44px;color:#f0e7d9}
.viewer-main{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:20px;flex:1;min-height:120px;height:auto;overflow:hidden}
.viewer-main>button{font-size:24px;border:1px solid #aa96745c;align-self:center;min-height:52px;color:#f0e7d9}
.viewer-main>button:disabled{opacity:.25;cursor:default}
.viewer-image-wrap{display:flex;align-items:center;justify-content:center;position:relative;min-width:0;min-height:0;width:100%;height:100%;overflow:auto;touch-action:pan-y}
.viewer-image{display:block;width:auto;height:auto;max-width:min(100%,var(--viewer-native-width,100%));max-height:100%;object-fit:contain;margin:auto;flex:none}
.viewer-image-wrap.is-zoomed{display:block}
.viewer-image-wrap.is-zoomed .viewer-image{max-width:none;max-height:none;width:150%;height:auto}
.viewer-image-wrap.is-cutout{background:var(--paper)}
.viewer-details{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr) auto;gap:12px 32px;align-items:start;max-height:26dvh;overflow:auto;flex:none;padding-top:12px;border-top:1px solid #9e8f764d}
.viewer-caption{font:400 16px/1.55 var(--body-font);max-width:80ch;color:#eee4d3}
.viewer-credit{font:400 14px/1.55 var(--body-font);color:#d5c8b3}
.viewer-credit a{text-decoration:underline;text-underline-offset:3px}
.viewer-case-link{font:500 12px/1.5 var(--font);color:#ead4af;min-height:44px}
.site-header{view-transition-name:portfolio-header}
::view-transition-group(portfolio-photo){animation-duration:480ms;animation-timing-function:var(--motion-ease)}
::view-transition-old(portfolio-photo),::view-transition-new(portfolio-photo){width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
html[data-visual-transition=gallery]::view-transition-old(root),html[data-visual-transition=gallery]::view-transition-new(root){animation:none;mix-blend-mode:normal}
html[data-visual-transition=page]::view-transition-old(root){animation:spatial-page-out 380ms var(--motion-ease) both;transform-origin:50% 38%}
html[data-visual-transition=page]::view-transition-new(root){animation:spatial-page-in 460ms var(--motion-ease) both}
@keyframes spatial-page-out{to{transform:perspective(1500px) translateZ(-50px) scale(.985);clip-path:polygon(0 0,100% 0,75% 100%,0 100%)}}
@keyframes spatial-page-in{from{clip-path:polygon(100% 0,100% 0,100% 100%,68% 100%);transform:translateY(8px)}to{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transform:none}}

@media(max-width:1100px){
 .spatial-interlude{grid-template-columns:.95fr 1.15fr;min-height:490px}.spatial-interlude-copy h2{font-size:34px}.spatial-interlude-copy>p:last-child{font-size:19px}
 .spatial-object-drawing{min-height:390px;max-height:480px;width:calc(100% + 75px);margin-left:-30px}
 .viewer-details{grid-template-columns:1fr 1fr}.viewer-case-link{grid-column:1/-1;min-height:34px}
}
@media(max-width:900px){
 .spatial-continuum{display:block;right:-31vw;width:82vw;opacity:calc(var(--spatial-opacity,.28)*.65);mask-image:linear-gradient(90deg,transparent 20%,#000 90%)}
 .spatial-interlude{grid-template-columns:1fr;gap:22px;min-height:0;padding-block:48px}.spatial-interlude-copy{max-width:600px}.spatial-interlude-copy h2{font-size:40px}.spatial-interlude-copy>p:last-child{max-width:54ch}
 .spatial-object{max-width:630px;justify-self:center}.spatial-object-drawing{width:100%;margin:0;min-height:0;max-height:500px}.spatial-caption{margin-top:-8px}
 .hero-spatial-stage{inset:16% -12% 0 23%;opacity:.38}.hero-plan-lines{opacity:.3}
 .project-card h3,.work-grid .project-card h3{font-size:24px}
}
@media(max-width:600px){
 .brand-name{font-weight:600;letter-spacing:-.045em}.hero-copy h1{line-height:1.15;letter-spacing:-.04em}
 .spatial-continuum{display:block!important;right:-45vw;width:102vw;opacity:.17!important;top:18vh;height:68vh;mask-image:linear-gradient(90deg,transparent 25%,#000 90%)}
 .spatial-interlude-copy h2{font-size:clamp(28px,7.5vw,38px);line-height:1.23}.spatial-interlude-copy>p:last-child{font-size:19px;line-height:1.75}
 .spatial-interlude{padding-block:48px;gap:25px}.spatial-object-drawing{width:calc(100% + 20px);margin-left:-10px;max-height:390px;min-height:0}.spatial-caption{font-size:10px;margin-top:-4px}
 .hero-spatial-stage{inset:26% -30% -2% 20%;opacity:.28;mask-image:linear-gradient(90deg,transparent,#000 80%)}.hero-plan-lines{opacity:.3}.hero-passing-plane{clip-path:polygon(100% calc(115% - var(--hero-progress)*55%),100% 100%,calc(130% - var(--hero-progress)*80%) 100%)}
 .section-spatial-plane{height:65px}.story-exit-line{left:76%;height:80px;bottom:-40px}
 .image-open-caption{font-size:10px;left:10px;bottom:10px}.project-card h3,.work-grid .project-card h3{font-size:26px}.project-card-meta{font-size:11px}.project-card-link>p{font-size:19px}
 .project-card{padding-bottom:35px}
 .story-map-legend{font-size:12px;line-height:1.5}.story-focus-geometry{stroke-width:.5}
 .image-viewer{padding:13px 12px 16px}.image-viewer[open]{gap:12px}.viewer-toolbar{gap:14px;flex-wrap:wrap;padding-bottom:8px}.viewer-toolbar h2{font-size:13px}.viewer-toolbar button,.viewer-count{font-size:12px}.viewer-toolbar button{padding:0 3px}
 .viewer-main{grid-template-columns:28px minmax(0,1fr) 28px;gap:8px}.viewer-main>button{font-size:20px;min-height:44px;border:0}.viewer-details{display:block;max-height:29dvh;padding:10px 6px 0}.viewer-caption{font-size:15px;line-height:1.55}.viewer-credit{font-size:13px;margin-top:9px}.viewer-case-link{display:inline-flex;font-size:12px;margin-top:9px}
}
@media(prefers-reduced-motion:reduce){
 .spatial-continuum{display:none!important}.hero-spatial-stage{opacity:.28}.hero-spatial-stage path{stroke-dashoffset:0!important}.hero-photo{transform:none!important}.hero-passing-plane,.section-spatial-plane{display:none}
 .story-land{clip-path:none}.story-graticule path,.story-focus-geometry>path,.story-connection{stroke-dashoffset:0!important}.story-country-anchor,.story-country-anchor text{opacity:1!important}.story-marker-pulse{animation:none!important}.story-exit-line{transform:none}.story-country{transition:none}
 ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
}

/* The country journey shares the main portfolio's type, components and geometry. */
.journey-prologue{position:relative;overflow:hidden;padding-block:80px 54px;background:var(--paper);color:var(--ink)}
.journey-prologue>h2{font-size:clamp(32px,3.5vw,52px);line-height:1.17;letter-spacing:-.035em;max-width:24ch;margin:24px 0 44px}
.journey-stops{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px}
.journey-stops article{border-top:1px solid var(--line);padding-top:20px;min-width:0}
.journey-stops .mono{font-size:11px;color:var(--accent)}
.journey-stops h3{font-size:27px;line-height:1.3;letter-spacing:-.025em;margin:16px 0 12px}
.journey-stops p{font-size:19px;line-height:1.65;max-width:36ch;color:var(--muted)}
.journey-route{height:74px;margin-top:34px;color:#88613f;opacity:.7}
.journey-route svg{width:100%;height:100%;stroke:currentColor;stroke-width:1;overflow:visible}
.journey-route path{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--section-progress,1))}
.journey-film{position:relative;isolation:isolate;overflow:hidden;min-height:720px;height:86svh;max-height:1100px;color:#f2eadf;background:#19201e;display:flex;align-items:center;padding:90px var(--gutter) 120px;--scene-progress:0}
.scene-photo{position:absolute;inset:0;z-index:-3;transform:translateY(calc((var(--scene-progress) - .5)*30px)) scale(1.035)}
.scene-photo img,.scene-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;max-width:none}
.scene-video{opacity:0;transition:opacity .7s ease}
.scene-photo.is-playing .scene-video{opacity:1}
.scene-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#111a17ed 0%,#111a17da 45%,#111a17cc 68%,#111a1726 100%),linear-gradient(0deg,#111a17e8,transparent 30%);pointer-events:none}
.scene-copy{position:relative;z-index:2;max-width:570px}
.scene-copy .eyebrow{color:#e8d1b1;font-size:12px;line-height:1.6}
.scene-copy h2{color:#f2eadf;font-size:clamp(36px,4.4vw,65px);line-height:1.13;letter-spacing:-.035em;margin:24px 0}
.scene-copy>p:not(.eyebrow){font-size:21px;line-height:1.7;max-width:43ch;color:#eee5d8}
.scene-copy .text-link,.scene-copy .button{color:#f2eadf;margin-top:24px;font-size:14px}
.scene-structure{position:absolute;inset:8% -6% 0 42%;z-index:-1;color:#e5bf89;opacity:.6;mask-image:linear-gradient(90deg,transparent,#000 45%);pointer-events:none}
.scene-structure .scene-spatial-drawing{width:100%;height:100%}
.scene-structure .spatial-guide,.scene-structure .spatial-origin{display:none}
.scene-trace{position:absolute;inset:0;width:100%;height:100%;stroke:currentColor;stroke-width:.85;opacity:.7}
.scene-trace path{vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--scene-progress))}
.scene-controls{position:absolute;left:var(--gutter);right:var(--gutter);bottom:30px;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:5;font:500 12px/1.6 var(--font);color:#f0e7d9}
.scene-controls button{display:inline-flex;gap:12px;align-items:center;min-height:44px;color:inherit}
.scene-controls>a{max-width:45ch;text-align:right;color:inherit;font-size:11px}
.scene-exit-plane{position:absolute;bottom:-1px;right:0;width:45%;height:30%;background:var(--paper);clip-path:polygon(100% 0,100% 100%,0 100%);transform:translateY(calc((1 - var(--section-exit,0))*100%));z-index:3;pointer-events:none}
.journey-film--germany .scene-photo{object-position:center}
.journey-film--germany .scene-copy{margin-bottom:80px}
.journey-professional{position:absolute;left:var(--gutter);right:var(--gutter);bottom:110px;display:flex;gap:30px;z-index:3;border-top:1px solid #c4ac864d;padding-top:22px;color:#f0e7d9}
.journey-professional>span{font:500 13px/1.6 var(--font);max-width:28ch;display:flex;gap:13px}
.journey-professional small{color:#e0c39d;font:500 10px/1.9 var(--font)}
.journey-coda{font-size:clamp(22px,2.4vw,34px);line-height:1.45;letter-spacing:-.02em;max-width:36ch;margin-top:25px;margin-bottom:42px;color:var(--ink)}
.project-portfolio-intro{max-width:60ch;margin:0 0 34px;font-size:20px;line-height:1.65;color:var(--muted)}
.portfolio-drawing .artwork-open{background:#eee9e0}
.portfolio-drawing .artwork{object-fit:contain;max-height:800px}
.portfolio-original .artwork-open{max-width:min(100%,var(--portfolio-max-width,100%));margin-inline:auto;background:transparent}
.portfolio-original img.artwork{width:auto;height:auto;max-width:100%;max-height:none;object-fit:contain;margin-inline:auto}
.portfolio-original figcaption{max-width:var(--portfolio-max-width,100%);margin-inline:auto}
.case-gallery-images.multiple .portfolio-panorama{grid-column:1/-1}
.case-hero--portrait{background:var(--dark)}
.case-hero--portrait .case-hero-photo img{object-fit:contain;object-position:80% center;background:var(--dark)}
.case-hero--portrait .case-shade{background:linear-gradient(90deg,#19201ef2 2%,#19201ed9 38%,#19201e20 76%)}
.case-source-links{margin:22px 0;display:flex;gap:22px;flex-wrap:wrap}
.viewer-image-wrap.is-zoomed{touch-action:pan-x pan-y}
.viewer-image-wrap.is-zoomed .viewer-image{width:var(--viewer-source-width,150%);height:auto;max-width:none}
.design-comparison{padding-block:24px;font-size:13px;border-top:1px solid #75807166;color:#eee5d8}
.image-open-caption{visibility:hidden}
.project-image-link:hover .image-open-caption,.project-image-link:focus-visible .image-open-caption{visibility:visible}
@media(min-width:1800px){:root{--gutter:max(7vw,calc((100vw - 1440px)/2))}}
@media(max-width:1000px){
 .journey-film{min-height:670px;padding-block:75px 120px}.scene-copy{max-width:480px}.scene-copy h2{font-size:49px}.scene-copy>p:not(.eyebrow){font-size:20px}.scene-structure{inset:14% -20% 0 28%;opacity:.45}
 .journey-stops{gap:26px}.journey-stops p{font-size:18px}.journey-stops h3{font-size:24px}
}
@media(max-width:600px){
 .journey-prologue{padding-block:48px 38px}.journey-prologue>h2{font-size:33px;margin-bottom:30px}.journey-stops{grid-template-columns:1fr;gap:26px}.journey-stops article{padding-top:17px;display:grid;grid-template-columns:25px minmax(0,1fr);gap:0 13px}.journey-stops h3{margin:0 0 8px;font-size:25px}.journey-stops .mono{padding-top:7px}.journey-stops p{grid-column:2;font-size:19px;max-width:40ch}.journey-route{margin-top:26px;height:45px}
 .journey-film{height:auto;min-height:700px;padding-block:74px 125px;align-items:center}.scene-copy{max-width:100%}.scene-copy h2{font-size:39px;line-height:1.15}.scene-copy>p:not(.eyebrow){font-size:19px;line-height:1.65}.scene-shade{background:linear-gradient(90deg,#111a17ed,#111a17d9 65%,#111a17bb),linear-gradient(0deg,#111a17ef,transparent 40%)}.scene-structure{inset:20% -65% 5% 15%;opacity:.35}.scene-photo img,.scene-video{object-position:65% center}
 .scene-controls{bottom:22px;align-items:flex-start;gap:12px}.scene-controls>a{max-width:52%;font-size:10px}.scene-controls button{font-size:11px;gap:8px;align-items:flex-start;padding-top:3px}
 .journey-film--germany{min-height:790px;padding-bottom:220px}.journey-film--germany .scene-copy{margin-bottom:10px}.journey-professional{bottom:100px;display:grid;grid-template-columns:1fr;gap:10px;padding-top:18px}.journey-professional>span{max-width:none;font-size:12px;gap:12px}.journey-coda{font-size:25px;margin-bottom:32px}
}
@media(prefers-reduced-motion:reduce){
 .journey-route path,.scene-trace path{stroke-dashoffset:0!important}.scene-photo{transform:none!important}.scene-video{transition:none}.scene-exit-plane{display:none}.scene-structure{opacity:.3}
}

/* Selected Spatial revision: compact modules and a quieter continuous construction. */
.presentation-spatial .selected-section>.section-heading,.presentation-spatial .selected-grid{max-width:1240px;margin-inline:auto}
.presentation-spatial .selected-grid{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:24px;row-gap:36px}
.presentation-spatial .selected-grid .project-card:nth-child(n){transform:none;translate:none;padding-bottom:0}
.presentation-spatial .selected-grid .project-image-link{aspect-ratio:16/10;border:0;border-radius:0}
.presentation-spatial .selected-grid .project-image-index{font-size:10px;top:10px;left:10px}
.presentation-spatial .selected-grid .project-image-arrow{right:10px;bottom:10px;width:30px;height:30px}
.presentation-spatial .selected-grid .project-card-meta{font-size:11px;line-height:1.65;gap:10px;min-height:36px;margin:15px 0 9px;letter-spacing:.015em}
.presentation-spatial .selected-grid h3{font-size:20px;line-height:1.35;letter-spacing:-.025em;min-height:4.05em;margin-bottom:10px;overflow-wrap:anywhere}
.presentation-spatial .selected-grid .project-card-link>p{font-size:17px;line-height:1.6;min-height:4.8em;margin-bottom:16px}
.presentation-spatial .selected-grid .card-case-link{font-size:12px;line-height:1.6;padding-bottom:16px;min-height:44px}
.presentation-spatial .selected-grid .project-structural-frame{opacity:.32}
.presentation-spatial .selected-grid .image-open-caption{font-size:10px;padding:5px 8px;max-width:calc(100% - 65px);text-align:left}
@supports(grid-template-rows:subgrid){
 .presentation-spatial .selected-grid{row-gap:0}
 .presentation-spatial .selected-grid .project-card{grid-row:span 5;row-gap:0;padding-bottom:36px}
 .presentation-spatial .selected-grid h3,.presentation-spatial .selected-grid .project-card-meta,.presentation-spatial .selected-grid .project-card-link>p{min-height:0}
}

.presentation-spatial .spatial-continuum{width:min(660px,51vw);right:-12vw;top:14vh;height:68vh;z-index:1;color:#88613f;mask-image:linear-gradient(90deg,transparent 24%,#000 92%);transition:none}
.presentation-spatial .spatial-interlude{grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);align-items:center;gap:clamp(26px,4vw,60px);min-height:490px;padding-block:56px;background:linear-gradient(118deg,#ded4c5,var(--paper) 80%)}
.presentation-spatial .spatial-interlude-copy{max-width:510px}
.presentation-spatial .spatial-interlude-copy h2{font-size:clamp(30px,3.1vw,46px);line-height:1.2;letter-spacing:-.035em}
.presentation-spatial .spatial-interlude-copy h2 em{white-space:normal}
.presentation-spatial .spatial-interlude-copy>p:last-child{font-size:20px;line-height:1.75;max-width:43ch}
.presentation-spatial .spatial-object{width:100%;max-width:580px;justify-self:center;color:#705940}
.presentation-spatial .spatial-object-drawing{width:100%;height:auto;aspect-ratio:4/3;min-height:0;max-height:440px;margin:0}
.presentation-spatial .spatial-caption{margin:4px 0 0;text-align:center;font-size:10px;letter-spacing:.04em}
.presentation-spatial .spatial-grid{stroke-width:.6;opacity:.25}
.presentation-spatial .spatial-frame{stroke-width:1.05;opacity:.94}
.presentation-spatial .spatial-columns{stroke-width:.7;opacity:.55}
.presentation-spatial .spatial-slabs{fill-opacity:.015;stroke-opacity:.12}
.presentation-spatial .spatial-guide{opacity:.12;stroke-width:.5}
.presentation-spatial .spatial-origin{opacity:.3}
.presentation-spatial .section-spatial-plane{height:52px;z-index:0;border:0;background:linear-gradient(140deg,#d7cab22b,transparent 72%);clip-path:polygon(0 92%,70% 20%,100% 0,100% 100%,0 100%);opacity:.65;transform:translateY(calc((1 - var(--section-exit,0))*103%))}
.presentation-spatial .section-spatial-plane::after{background:linear-gradient(135deg,transparent 60%,#b39b761f)}
.presentation-spatial .hero-spatial-stage{opacity:.4}
.presentation-spatial .hero-photo{transform:translateY(calc(var(--hero-progress)*18px)) scale(calc(1 + var(--hero-progress)*.018))}
.presentation-spatial .hero-foot::before{content:'';position:absolute;inset:-12px -14px;background:#19201ef2;border-top:1px solid #d1ac7f30;z-index:-1;pointer-events:none;opacity:clamp(0,calc(var(--hero-progress)*1.8),1)}

/* Shared route maths lands exactly on all three country anchors. */
.story-route-guide{stroke:#ddc299;stroke-width:.65;opacity:calc(var(--atlas-land,1)*.16);vector-effect:non-scaling-stroke;pointer-events:none}
.story-connection{stroke:#ddbd8f;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;opacity:.9;vector-effect:non-scaling-stroke}
.story-connection--1{stroke-dashoffset:calc(1 - var(--atlas-legOne,1))}
.story-connection--2{stroke-dashoffset:calc(1 - var(--atlas-legTwo,1))}
.story-country-anchor circle.story-anchor-ring{fill:none;stroke:#d9b888;stroke-width:.4;opacity:.6}
.story-country-anchor circle.story-anchor-node{fill:#e3c496;stroke:#1d2a24;stroke-width:.55}
.story-country-anchor text{font-size:4.25px;font-weight:550;stroke-width:1.1;fill:#f4eadb;letter-spacing:0}
.story-place-marker text{font-size:4px;font-weight:500;stroke-width:1.25;fill:#f4eadb}
.story-focus-geometry{stroke-width:.38;opacity:calc(var(--atlas-connections,1)*.34)}
.story-focus-axis{display:none}
.story-country{transition:fill .45s ease,stroke .45s ease}
.story-exit-line{height:84px;bottom:-42px;opacity:.65;left:74%}
.presentation-spatial .story-atlas-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.presentation-spatial .story-map-frame{aspect-ratio:1.12;min-height:390px;background:radial-gradient(ellipse at 45% 40%,#2c3a32,#192720 86%);box-shadow:none;border:0}
.presentation-spatial .story-map{inset:44px 10px 68px;width:calc(100% - 20px);height:calc(100% - 112px)}
.presentation-spatial .story-graticule{stroke-width:.45;opacity:calc(.07 + var(--atlas-grid,1)*.13)}
.presentation-spatial .story-map-legend{font-size:12px;gap:8px 15px;line-height:1.55}
.presentation-spatial .story-country-controls{border-bottom:1px solid var(--line)}
.presentation-spatial .story-country-panel{padding:28px;overflow-wrap:break-word}

/* The original Hamburg opening is balanced by one contained Kuwait scene. */
.presentation-spatial .spatial-closing-film{height:clamp(470px,60svh,650px);min-height:470px;max-height:650px;padding-block:75px 110px}
.presentation-spatial .spatial-closing-film .scene-copy{max-width:520px}
.presentation-spatial .spatial-closing-film .scene-copy h2{font-size:clamp(34px,3.8vw,54px);line-height:1.17;letter-spacing:-.032em;margin:22px 0}
.presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:20px;line-height:1.7;max-width:42ch}
.presentation-spatial .spatial-closing-film .scene-structure{inset:9% -4% 0 44%;opacity:.36}
.presentation-spatial .spatial-closing-film .scene-photo{transform:translateY(calc((var(--scene-progress) - .5)*16px)) scale(1.02)}
.spatial-motion .presentation-spatial .spatial-closing-film .scene-photo{clip-path:polygon(calc((1 - var(--scene-progress)) * 9%) calc((1 - var(--scene-progress)) * 13%),100% 0,100% calc(88% + var(--scene-progress)*12%),0 100%)}
.presentation-spatial .spatial-closing-film .scene-exit-plane{width:100%;height:22px;background:var(--paper);clip-path:polygon(0 75%,70% 25%,100% 0,100% 100%,0 100%)}
.presentation-spatial .spatial-closing-film .scene-trace{opacity:.55}
.presentation-spatial .spatial-closing-film .scene-controls{bottom:25px}
.presentation-spatial .closing-cta{padding-top:68px}
@media(max-width:1279px){
 .presentation-spatial .selected-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:940px;column-gap:28px}
 .presentation-spatial .selected-section>.section-heading{max-width:940px}
 .presentation-spatial .selected-grid h3{font-size:22px;min-height:2.7em}.presentation-spatial .selected-grid .project-card-link>p{font-size:18px;min-height:3.2em}
 .presentation-spatial .spatial-interlude{gap:28px}.presentation-spatial .spatial-interlude-copy h2{font-size:34px}
 .presentation-spatial .story-atlas-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
}
@media(max-width:900px){
 .presentation-spatial .spatial-interlude{grid-template-columns:1fr;gap:28px;padding-block:48px}.presentation-spatial .spatial-interlude-copy{max-width:620px}.presentation-spatial .spatial-object{max-width:500px}.presentation-spatial .spatial-object-drawing{max-height:375px}
 .presentation-spatial .spatial-continuum{width:67vw;right:-26vw;top:19vh;opacity:calc(var(--spatial-opacity,.2)*.65)!important}
 .presentation-spatial .story-atlas-layout{grid-template-columns:1fr}.presentation-spatial .story-map-frame{aspect-ratio:1.5;min-height:360px}.presentation-spatial .story-country-panel{padding:26px}
 .presentation-spatial .spatial-closing-film{height:auto;min-height:510px}.presentation-spatial .spatial-closing-film .scene-copy{max-width:470px}.presentation-spatial .spatial-closing-film .scene-copy h2{font-size:42px}
}
@media(max-width:600px){
 .presentation-spatial .selected-grid{grid-template-columns:minmax(0,1fr);max-width:390px;gap:32px}.presentation-spatial .selected-section>.section-heading{max-width:390px}.presentation-spatial .selected-grid h3{font-size:24px;min-height:0}.presentation-spatial .selected-grid .project-card-link>p{font-size:19px;min-height:0}.presentation-spatial .selected-grid .project-card-meta{font-size:11px;min-height:0}.presentation-spatial .selected-grid .card-case-link{font-size:13px}
 .presentation-spatial .spatial-interlude-copy h2{font-size:clamp(28px,7.4vw,36px);line-height:1.25}.presentation-spatial .spatial-interlude-copy>p:last-child{font-size:19px}.presentation-spatial .spatial-object{max-width:400px}.presentation-spatial .spatial-object-drawing{max-height:300px;min-height:0;width:100%;margin:0}.presentation-spatial .spatial-caption{font-size:9px;margin-top:8px}
 .presentation-spatial .spatial-continuum{right:-40vw;width:91vw;opacity:calc(var(--spatial-opacity,.2)*.55)!important;mask-image:linear-gradient(90deg,transparent 36%,#000 95%)}
 .presentation-spatial .story-map-frame{aspect-ratio:1.08;min-height:340px}.presentation-spatial .story-map{inset:48px 5px 70px;width:calc(100% - 10px);height:calc(100% - 118px)}.presentation-spatial .story-map-legend{font-size:12px;gap:6px 12px}.presentation-spatial .story-country-panel{padding:24px 20px}
 .presentation-spatial .section-spatial-plane{height:34px}.presentation-spatial .spatial-closing-film{min-height:550px;max-height:none;padding-block:65px 125px}.presentation-spatial .spatial-closing-film .scene-copy h2{font-size:36px}.presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:19px}.presentation-spatial .spatial-closing-film .scene-structure{inset:24% -37% 0 24%;opacity:.25}.presentation-spatial .spatial-closing-film .scene-photo img,.presentation-spatial .spatial-closing-film .scene-video{object-position:63% center}.presentation-spatial .closing-cta{padding-top:52px}
}
@supports(grid-template-rows:subgrid){
 @media(max-width:1279px) and (min-width:601px){.presentation-spatial .selected-grid h3,.presentation-spatial .selected-grid .project-card-link>p{min-height:0}}
 @media(max-width:600px){.presentation-spatial .selected-grid{row-gap:0}.presentation-spatial .selected-grid .project-card{padding-bottom:32px}}
}
@media(prefers-reduced-motion:reduce){
 .presentation-spatial .spatial-continuum{display:none!important}.presentation-spatial .section-spatial-plane,.presentation-spatial .spatial-closing-film .scene-exit-plane{display:none}
 .presentation-spatial .spatial-closing-film .scene-photo{clip-path:none!important;transform:none!important}.story-connection--1,.story-connection--2{stroke-dashoffset:0!important}.story-country,.story-country-panel{transition:none!important}
 .presentation-spatial .hero-foot::before{opacity:0!important}
}

/* Spatial 8: one visual thread, full-bleed modules and a content-sized story atlas. */
.presentation-spatial .selected-grid button.project-image-link[data-image-fit]{height:auto;min-height:0;aspect-ratio:16/10;padding:0;display:block;overflow:hidden;background:#dcd2c2}
.presentation-spatial .selected-grid button.project-image-link[data-image-fit]>img.project-thumbnail{position:absolute;inset:0;width:100%!important;height:100%!important;min-width:100%;min-height:100%;max-width:none;max-height:none;margin:0;padding:0;object-fit:cover!important;object-position:var(--image-position,50% 50%);transform:none;filter:none;clip-path:none!important}
.presentation-spatial .selected-grid .project-structural-frame{display:none}
.presentation-spatial .selected-grid .project-card-link{min-width:0}

/* The opening film has one quiet geometric composition and one consistent edge. */
.presentation-spatial .hero-spatial-stage{inset:16% -2% 29% 59%;opacity:.18;mask-image:linear-gradient(90deg,transparent,#000 38%);transform:translateY(calc(var(--hero-progress,0)*-12px));transition:none}
.presentation-spatial .hero-line-composition{width:100%;height:100%;stroke:#e0bc87;stroke-width:.7}
.presentation-spatial .hero-line-composition path{vector-effect:non-scaling-stroke}
.presentation-spatial .hero-grid{opacity:.12}
.presentation-spatial .hero-shade{background:linear-gradient(90deg,#111a17ef 0%,#111a17c9 39%,#111a1770 67%,#111a1740 100%),linear-gradient(0deg,#19201e 0%,#19201ed9 9%,transparent 36%)}
.presentation-spatial .hero-photo{transform:translateY(calc(var(--hero-progress,0)*8px)) scale(1.012)}
.presentation-spatial .hero-copy{padding-top:clamp(145px,18vh,195px);padding-bottom:175px}
.presentation-spatial .hero-copy h1{max-width:1150px;font-size:clamp(43px,4.85vw,72px);line-height:1.13}
.presentation-spatial .hero-copy h1 em{font-family:var(--body-font);font-style:italic;font-weight:450}
.presentation-spatial .hero-positioning{font-size:16px!important;line-height:1.65}
.presentation-spatial .hero-bottom{margin-top:22px;align-items:flex-end;gap:42px}
.presentation-spatial .hero-bottom>p{font-size:19px;line-height:1.65;max-width:38ch}
.presentation-spatial .hero-foot{bottom:18px;padding-block:12px 0;border-top:1px solid #cabba638;align-items:center;gap:20px}
.presentation-spatial .hero-foot::before{display:none}
.presentation-spatial .hero-media-controls{flex-direction:row;align-items:center;gap:18px;max-width:590px}
.presentation-spatial .hero-media-controls>button{border:0;background:transparent;padding:8px 0;min-height:44px;font-size:11px;white-space:nowrap}
.presentation-spatial .hero-media-controls>a{max-width:32ch;font-size:11px;line-height:1.5;color:#e4dacb;text-decoration:none}
.presentation-spatial .credential-ribbon{position:relative;z-index:2;background:var(--paper);color:var(--ink);border:0;border-bottom:1px solid #b5a993;padding:22px var(--gutter);gap:24px;min-height:82px}
.presentation-spatial .credential-ribbon>p{font-size:13px;line-height:1.65;max-width:64ch;color:var(--ink)}
.presentation-spatial .credential-ribbon>span{font-size:17px;line-height:1.5;color:#755031;gap:12px}
.presentation-spatial .credential-ribbon>span>span{font-size:12px;color:var(--ink);max-width:23ch}
.presentation-spatial .intro-section{padding-top:62px;background:var(--paper)}

/* The introduction and country detail share the left column; map and controls sit opposite. */
.presentation-spatial .international-story{padding-block:56px 46px;background:linear-gradient(180deg,var(--paper),#e3dacc 80%,#ded4c5)}
.presentation-spatial .story-composition{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.22fr);gap:26px 48px;max-width:1240px;margin-inline:auto;align-items:start}
.presentation-spatial .story-introduction{grid-column:1;grid-row:1;display:block;margin:0;max-width:460px}
.presentation-spatial .story-introduction>.eyebrow{margin:0 0 17px;font-size:11px;line-height:1.65}
.presentation-spatial .story-introduction h2{font-size:clamp(30px,2.5vw,38px);line-height:1.22;letter-spacing:-.033em;max-width:none}
.presentation-spatial .story-introduction>p:last-child{font-size:18px;line-height:1.65;margin:19px 0 0;max-width:45ch}
.presentation-spatial .story-atlas-layout{display:contents;border:0;background:transparent}
.presentation-spatial .story-map-column{grid-column:2;grid-row:1/span 2;padding:0;border:0;min-width:0}
.presentation-spatial .story-country-controls{border:1px solid var(--line);margin:0 0 14px;grid-template-columns:repeat(3,minmax(0,1fr))}
.presentation-spatial .story-country-controls button,.presentation-spatial .story-country-controls button:first-child{padding:11px 13px;min-height:48px;gap:10px;font-size:14px;justify-content:center;line-height:1.5}
.presentation-spatial .story-country-controls button .mono{font-size:10px}
.presentation-spatial .story-map-frame{width:100%;margin:0;aspect-ratio:1.36;min-height:380px;max-height:520px;background:radial-gradient(ellipse at 46% 38%,#2d3a32,#192720 86%)}
.presentation-spatial .story-map{inset:51px 9px 67px;width:calc(100% - 18px);height:calc(100% - 118px)}
.presentation-spatial .atlas-topline{top:19px;left:18px;right:160px;font-size:9px;line-height:1.5}
.presentation-spatial .atlas-topline>span:last-child{display:none}
.presentation-spatial .story-map-overview{top:11px;right:12px;font-size:12px;min-height:44px}
.presentation-spatial .story-map-legend{left:17px;right:17px;bottom:15px;max-width:none;font-size:12px;gap:7px 14px;line-height:1.55}
.presentation-spatial .story-map-hint{font-size:13px;line-height:1.65;margin-top:13px;max-width:none}
.presentation-spatial .story-journey-note{font-size:12px;line-height:1.65;margin-top:7px}
.presentation-spatial .story-place-controls{gap:6px;margin-top:13px}
.presentation-spatial .story-place-controls button{min-height:44px;font-size:12px;line-height:1.4;padding:9px 11px}
.presentation-spatial .story-country-panel{grid-column:1;grid-row:2;max-height:385px;overflow:auto;padding:23px 14px 8px 0;background:transparent;border-top:1px solid var(--line);scrollbar-gutter:stable;color:var(--ink)}
.presentation-spatial .story-country-heading{margin-bottom:14px;gap:15px}
.presentation-spatial .story-country-code{font-size:24px;padding-left:10px}
.presentation-spatial .story-country-heading h3{font-size:22px;line-height:1.35}
.presentation-spatial .story-country-heading .eyebrow{font-size:10px;margin-bottom:7px}
.presentation-spatial .story-roles{margin:0 0 12px;gap:6px}
.presentation-spatial .story-roles span{font-size:11px;padding:3px 7px}
.presentation-spatial .story-period{font-size:12px;line-height:1.6;margin-top:10px}
.presentation-spatial .story-country-text{font-size:17px;line-height:1.65;margin-top:14px}
.presentation-spatial .story-education,.presentation-spatial .story-internships,.presentation-spatial .story-project-links{margin-top:22px;padding-top:16px}
.presentation-spatial .story-education strong,.presentation-spatial .story-internships strong{font-size:16px;line-height:1.5}
.presentation-spatial .story-education span{font-size:15px;line-height:1.5}
.presentation-spatial .story-education small,.presentation-spatial .story-internships small{font-size:12px;line-height:1.65}
.presentation-spatial .story-project-links{display:block}
.presentation-spatial .story-project-links>a{font-size:15px;min-height:44px;padding-block:10px;line-height:1.5}
.presentation-spatial .story-project-focus{margin-top:20px;padding:10px 14px}
.presentation-spatial .story-project-focus h4{font-size:22px;line-height:1.35}
.presentation-spatial .atlas-footer{grid-column:1/-1;margin-top:0;padding-top:17px;gap:20px;border-top:1px solid var(--line)}
.presentation-spatial .atlas-footer .text-link{font-size:13px}
.presentation-spatial .story-exit-line{display:none}

/* Crisp symbols at exact coordinates; 48px invisible targets stay independent of their size. */
.story-route-guide{stroke-width:.7;opacity:calc(var(--atlas-land,1)*.2)}
.story-connection{stroke:#d7b88d;stroke-width:.9;opacity:.88;pointer-events:none}
.story-route-travel{stroke:#fff0d0;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:.06 1!important;stroke-dashoffset:calc(.06 - var(--route-progress,1));opacity:calc(var(--route-progress,1)*(1 - var(--route-progress,1))*3.2);vector-effect:non-scaling-stroke;pointer-events:none}
.story-route-travel--1{--route-progress:var(--atlas-legOne,1)}
.story-route-travel--2{--route-progress:var(--atlas-legTwo,1)}
.story-place-symbol{stroke-width:.35}
.story-study-ring{fill:none;stroke:#b6d2ca;stroke-width:.35}
.story-place-selection{fill:none;stroke:#f3d6a9;stroke-width:.35;opacity:0;pointer-events:none}
.story-place-marker.is-selected .story-place-selection,.story-place-marker:focus-visible .story-place-selection{opacity:.85}
.story-place-marker.is-selected .story-place-symbol{fill:#fff1ce;stroke:#192720;stroke-width:.3}
.story-place-marker:focus-visible .story-place-symbol{stroke:#fff;stroke-width:.55}
.story-place-marker text{pointer-events:none;font-size:4px;stroke-width:1.2}
.story-hit{pointer-events:all}
.story-place-marker[aria-hidden=true],.story-country-anchor[aria-hidden=true]{pointer-events:none}
.story-place-marker[aria-hidden=true] .story-hit,.story-country-anchor[aria-hidden=true] .story-hit{pointer-events:none}
.story-country-anchor circle.story-anchor-ring{stroke-width:.28;opacity:.5}
.story-country-anchor circle.story-anchor-node{stroke-width:.4}
.story-focus-geometry{stroke-width:.28;opacity:calc(var(--atlas-connections,1)*.17)}

/* An architectural setting-out line continues along the section edges. Its light follows scroll. */
.presentation-spatial .section-spatial-plane{height:100px;left:0;right:0;bottom:-32px;overflow:visible;background:none;clip-path:none;transform:none;opacity:.26;color:#88613f;z-index:0;mask-image:linear-gradient(90deg,transparent 12%,#000 58%)}
.presentation-spatial .section-spatial-plane::after{display:none}
.section-weave{width:100%;height:100%;stroke:currentColor;stroke-width:.65;overflow:visible;transform:translateY(calc((1 - var(--threshold-progress,1))*8px));pointer-events:none}
.weave-datum{opacity:.32;stroke-width:.45}
.weave-interlock{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--threshold-progress,1));opacity:.7}
.weave-travel{stroke-width:1;stroke-dasharray:.045 1;stroke-dashoffset:calc(.045 - var(--threshold-progress,1));opacity:calc(var(--threshold-progress,1)*(1 - var(--threshold-progress,1))*3)}
.presentation-spatial .spatial-interlude .section-spatial-plane{bottom:-30px;opacity:.2}
.presentation-spatial .spatial-interlude{background:linear-gradient(180deg,#ded4c5,var(--paper))}
.presentation-spatial .selected-section{background:linear-gradient(180deg,var(--paper),#e3dacb)}

/* Kuwait stays before contact. A clear architectural window balances a quiet reading surface. */
.presentation-spatial .spatial-closing-film{height:clamp(560px,43vw,660px);min-height:560px;max-height:660px;padding-block:78px 112px;background:#19201e;--coda-frame-height:100%}
.presentation-spatial .spatial-closing-film .scene-copy{max-width:min(440px,36vw)}
.presentation-spatial .spatial-closing-film .scene-copy h2{font-size:clamp(33px,3.2vw,48px);margin:22px 0;line-height:1.18}
.presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:20px;line-height:1.65;max-width:37ch}
.presentation-spatial .spatial-closing-film .scene-photo{left:36%;top:-5px;bottom:-5px;right:-3px;transform:translateY(calc((var(--scene-progress,.5) - .5)*8px)) scale(1.012);filter:brightness(1.07) contrast(1.025) saturate(.9)}
.presentation-spatial .spatial-closing-film .scene-photo img,.presentation-spatial .spatial-closing-film .scene-video{object-position:51% 48%}
.spatial-motion .presentation-spatial .spatial-closing-film .scene-photo{clip-path:polygon(calc((1 - var(--scene-progress,1))*3%) 0,100% 0,100% 100%,0 100%,0 calc((1 - var(--scene-progress,1))*8%))}
.presentation-spatial .spatial-closing-film .scene-shade{background:linear-gradient(90deg,#19201e 0%,#19201e 29%,#19201ef2 34%,#19201e85 43%,#19201e12 59%,#19201e0a 100%),linear-gradient(0deg,#19201e9c,transparent 22%)}
.presentation-spatial .spatial-closing-film .scene-structure{inset:15% -7% 22% 68%;opacity:.17;mask-image:linear-gradient(90deg,transparent,#000 50%)}
.presentation-spatial .spatial-closing-film .scene-spatial-drawing{display:none}
.presentation-spatial .spatial-closing-film .coda-weave{width:100%;height:100%;stroke-width:.65;opacity:.65;transform:rotate(-45deg) scale(1.15)}
.presentation-spatial .spatial-closing-film .scene-trace .weave-datum{opacity:.3;stroke-dasharray:none}
.presentation-spatial .spatial-closing-film .scene-trace .weave-interlock{stroke-dashoffset:calc(1 - var(--scene-progress,1))}
.presentation-spatial .spatial-closing-film .scene-trace .weave-travel{display:none}
.presentation-spatial .spatial-closing-film .scene-controls{bottom:25px;padding-top:12px;border-top:1px solid #c7b59b36;align-items:center;gap:22px}
.presentation-spatial .spatial-closing-film .scene-controls button{font-size:11px;min-height:44px}
.presentation-spatial .spatial-closing-film .scene-controls>a{font-size:11px;max-width:40ch}
.coda-threshold{position:absolute;left:0;right:0;top:-1px;width:100%;height:36px;z-index:4;pointer-events:none;transform:translateY(calc(var(--scene-progress,0)*-9px))}
.coda-threshold-surface{fill:var(--paper)}
.coda-threshold-line{fill:none;stroke:#af9270;stroke-width:.55;vector-effect:non-scaling-stroke}
.presentation-spatial .spatial-closing-film .scene-exit-plane{height:16px;transform:none;clip-path:polygon(0 55%,76% 55%,80% 0,100% 0,100% 100%,0 100%);background:var(--paper)}
.presentation-spatial .education-section--compact{background:var(--paper)}

@media(max-width:1100px){
 .presentation-spatial .story-composition{grid-template-columns:minmax(0,.93fr) minmax(0,1.12fr);column-gap:28px}
 .presentation-spatial .story-introduction h2{font-size:30px}
 .presentation-spatial .story-introduction>p:last-child{font-size:17px}
 .presentation-spatial .story-map-frame{min-height:380px}
 .presentation-spatial .story-country-controls button,.presentation-spatial .story-country-controls button:first-child{gap:7px;font-size:13px;padding-inline:8px}
 .presentation-spatial .spatial-closing-film .scene-copy{max-width:40vw}
 .presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:19px}
 .presentation-spatial .spatial-closing-film .scene-photo{left:35%}
}
@media(max-width:900px){
 .presentation-spatial .story-composition{grid-template-columns:minmax(0,1fr);gap:25px;max-width:700px}
 .presentation-spatial .story-introduction,.presentation-spatial .story-map-column,.presentation-spatial .story-country-panel{grid-column:1;grid-row:auto}
 .presentation-spatial .story-introduction{max-width:620px}
 .presentation-spatial .story-introduction h2{font-size:34px}
 .presentation-spatial .story-introduction>p:last-child{font-size:19px;max-width:58ch}
 .presentation-spatial .story-map-frame{aspect-ratio:1.45;min-height:375px;max-height:480px}
 .presentation-spatial .story-country-panel{max-height:none;overflow:visible;padding:23px 0 0}
 .presentation-spatial .story-country-text{max-width:65ch}
 .presentation-spatial .story-country-controls button{font-size:15px}
 .presentation-spatial .hero-copy h1{font-size:clamp(37px,5.8vw,52px)}
 .presentation-spatial .hero-bottom{display:block}
 .presentation-spatial .hero-actions{margin-top:22px}
 .presentation-spatial .hero-media-controls{max-width:400px;gap:12px}
 .presentation-spatial .hero-media-controls>a{font-size:10px;max-width:25ch}
 .presentation-spatial .spatial-closing-film .scene-copy{max-width:43vw}
 .presentation-spatial .spatial-closing-film .scene-copy h2{font-size:34px}
}
@media(max-width:600px){
 .presentation-spatial .home-hero{height:auto;min-height:850px;max-height:none}
 .presentation-spatial .hero-copy{padding-top:137px;padding-bottom:170px}
 .presentation-spatial .hero-copy h1{font-size:clamp(30px,8.1vw,40px);line-height:1.19;letter-spacing:-.035em}
 .presentation-spatial .hero-positioning{font-size:13px!important;line-height:1.7;max-width:33ch}
 .presentation-spatial .hero-bottom>p{font-size:19px;max-width:34ch}
 .presentation-spatial .hero-spatial-stage{inset:16% -37% 41% 53%;opacity:.12}
 .presentation-spatial .hero-foot{bottom:20px;align-items:flex-start;padding-top:10px;gap:14px}
 .presentation-spatial .hero-media-controls{flex-direction:column;align-items:flex-end;gap:3px;max-width:59%}
 .presentation-spatial .hero-media-controls>button{font-size:10px;white-space:normal;text-align:right;padding:5px 0}
 .presentation-spatial .hero-media-controls>a{font-size:10px;max-width:24ch}
 .presentation-spatial .scroll-link{font-size:10px;max-width:100px;gap:9px;line-height:1.6;min-height:44px;align-items:center}
 .presentation-spatial .credential-ribbon{padding:20px var(--gutter);gap:15px;min-height:0;display:flex;flex-wrap:wrap;align-items:center}
 .presentation-spatial .credential-ribbon>p{font-size:12px}
 .presentation-spatial .credential-ribbon>span{font-size:15px}
 .presentation-spatial .credential-ribbon>span>span{font-size:11px;max-width:none}
 .presentation-spatial .intro-section{padding-top:44px}
 .presentation-spatial .international-story{padding-block:42px 36px}
 .presentation-spatial .story-composition{gap:23px}
 .presentation-spatial .story-introduction h2{font-size:clamp(29px,7.7vw,35px)}
 .presentation-spatial .story-introduction>p:last-child{font-size:18px;line-height:1.7;margin-top:17px}
 .presentation-spatial .story-introduction>.eyebrow{font-size:10px;margin-bottom:15px}
 .presentation-spatial .story-map-frame{min-height:345px;aspect-ratio:1.08;max-height:none}
 .presentation-spatial .story-map{inset:54px 5px 78px;width:calc(100% - 10px);height:calc(100% - 132px)}
 .presentation-spatial .atlas-topline{left:14px;right:132px;top:17px;font-size:8px}
 .presentation-spatial .story-map-overview{font-size:11px;right:10px;max-width:122px}
 .presentation-spatial .story-map-legend{left:14px;right:14px;bottom:14px;gap:6px 12px;font-size:11px;max-width:none}
 .presentation-spatial .story-country-controls{margin-bottom:12px}
 .presentation-spatial .story-country-controls button,.presentation-spatial .story-country-controls button:first-child{font-size:13px;min-height:48px;gap:7px;padding:10px 6px}
 .presentation-spatial .story-country-controls button .mono{font-size:9px}
 .presentation-spatial .story-place-controls button{font-size:12px;min-height:44px}
 .presentation-spatial .story-country-heading h3{font-size:23px}
 .presentation-spatial .story-country-text{font-size:18px}
 .presentation-spatial .atlas-footer{display:flex;flex-wrap:wrap;align-items:center;font-size:11px;gap:15px}
 .presentation-spatial .atlas-footer .text-link{font-size:13px}
 .presentation-spatial .section-spatial-plane{height:65px;bottom:-24px;opacity:.2;mask-image:linear-gradient(90deg,transparent 28%,#000)}
 .presentation-spatial .spatial-closing-film{--coda-frame-height:clamp(230px,64vw,340px);display:block;height:auto;min-height:0;max-height:none;padding:calc(var(--coda-frame-height) + 26px) var(--gutter) 112px}
 .presentation-spatial .spatial-closing-film .scene-photo{left:0;right:0;top:-2px;bottom:auto;height:calc(var(--coda-frame-height) + 2px);filter:brightness(1.05) contrast(1.02) saturate(.9);transform:none}
 .presentation-spatial .spatial-closing-film .scene-photo img,.presentation-spatial .spatial-closing-film .scene-video{object-position:51% 48%}
 .presentation-spatial .spatial-closing-film .scene-copy{max-width:100%}
 .presentation-spatial .spatial-closing-film .scene-copy h2{font-size:34px;line-height:1.2;margin:19px 0}
 .presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:19px;line-height:1.65;max-width:40ch}
 .presentation-spatial .spatial-closing-film .scene-shade{height:calc(var(--coda-frame-height) + 3px);background:linear-gradient(0deg,#19201e 0%,#19201e2e 28%,transparent 65%)}
 .presentation-spatial .spatial-closing-film .scene-structure{inset:auto -22% 20% 54%;height:240px;opacity:.12}
 .presentation-spatial .spatial-closing-film .scene-controls{bottom:24px;gap:15px;align-items:center}
 .presentation-spatial .spatial-closing-film .scene-controls button{font-size:11px;max-width:49%}
 .presentation-spatial .spatial-closing-film .scene-controls>a{font-size:10px;max-width:46%}
 .coda-threshold{height:24px}
}
@media(prefers-reduced-motion:reduce){
 .presentation-spatial .hero-spatial-stage{transform:none}
 .story-route-travel,.weave-travel{display:none!important}
 .weave-interlock{stroke-dashoffset:0!important}
 .section-weave,.coda-threshold{transform:none!important}
 .presentation-spatial .section-spatial-plane{display:block;opacity:.14}
 .presentation-spatial .spatial-closing-film .scene-photo{transform:none!important;clip-path:none!important}
}
.story-country-anchor[aria-hidden=true]{display:none}
[data-story-level=country] .story-country-anchor[aria-hidden=false]{display:block}
.story-map-markers:has(.story-place-marker:hover) .story-place-marker:not(:hover):not(:focus-visible) text{opacity:0}

/* Spatial: programme context, quiet perimeter framing and a clean film window. */
.presentation-spatial .metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:42px;padding-top:28px;align-items:start}
.presentation-spatial .metrics>div{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0}
.presentation-spatial .metrics strong{font-size:52px;line-height:1.12;font-weight:450;letter-spacing:-.045em;white-space:nowrap}
.presentation-spatial .metrics strong>span{font-size:24px;letter-spacing:-.025em;margin-left:4px;color:#755031}
.presentation-spatial .metrics>div>span{display:block;font-size:15px;line-height:1.5;max-width:23ch;margin:0;color:var(--ink)}
.presentation-spatial .metrics .pmp-metric{font-size:46px}
.programme-metric-note{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-top:24px;font:400 13px/1.65 var(--body-font);color:#51594f;max-width:1240px}
.programme-metric-note>span{max-width:80ch}
.programme-metric-note a{color:#755031;min-height:44px;display:inline-flex;align-items:flex-start;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}

/* A slow highlight passes beyond both ends before its invisible reset. */
.story-flow-group{opacity:var(--atlas-connections,1);pointer-events:none}
.story-route-flow{stroke:#ffe8bf;stroke-width:1.65;stroke-linecap:round;stroke-dasharray:.045 1.2;vector-effect:non-scaling-stroke;animation:story-route-flow 14s linear infinite;animation-play-state:paused;pointer-events:none}
.story-route-flow--echo{stroke-width:1;stroke-dasharray:.025 1.2;animation-delay:-7s}
.is-route-active .story-route-flow{animation-play-state:running}
@keyframes story-route-flow{
 0%{stroke-dashoffset:.07;opacity:0}
 7%{opacity:.7}
 90%{opacity:.7}
 100%{stroke-dashoffset:-1.07;opacity:0}
}

/* The local object unfolds and resolves, then leaves the photographs a clear entrance. */
.presentation-spatial .spatial-object{opacity:var(--framework-visibility,1);transform:translateY(calc((1 - var(--framework-visibility,1))*-12px));transition:none;will-change:auto}
.presentation-spatial .spatial-object-drawing{max-width:560px;max-height:420px;margin-inline:auto}
.presentation-spatial .spatial-object .spatial-frame{stroke-width:1;opacity:.88}
.presentation-spatial .spatial-object .spatial-grid{stroke-width:.55;opacity:.19}
.presentation-spatial .spatial-object .spatial-columns{stroke-width:.7;opacity:.54}
.presentation-spatial .spatial-object .spatial-slabs{fill-opacity:.012;stroke-opacity:.08}
.presentation-spatial .spatial-interlude>.section-spatial-plane{opacity:calc(var(--framework-visibility,1)*.15)}
.presentation-spatial .selected-section>.section-spatial-plane{display:none}

/* Four setting-out corners sit outside the image, preserving all eight crops. */
.presentation-spatial .project-image-module{position:relative;aspect-ratio:16/10;min-width:0;overflow:visible}
.presentation-spatial .selected-grid .project-image-module>.project-image-link{width:100%;display:block}
.project-perimeter{position:absolute;inset:-5px;width:calc(100% + 10px);height:calc(100% + 10px);max-width:none;color:#8b6746;stroke:currentColor;stroke-width:.75;opacity:.56;pointer-events:none;overflow:visible;transition:opacity .35s ease,color .35s ease}
.project-perimeter path{vector-effect:non-scaling-stroke}
.project-image-module:hover .project-perimeter,.project-image-module:focus-within .project-perimeter{opacity:1;color:#755031}
.presentation-spatial .selected-grid .project-card{overflow:visible}

/* A single rectangular composition sits in the same warm stone as its neighbours. */
.presentation-spatial .spatial-closing-film{display:block;isolation:isolate;overflow:visible;height:auto;min-height:0;max-height:none;padding:44px var(--gutter);background:var(--paper);color:#f2eadf}
.coda-composition{position:relative;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.28fr);max-width:1240px;margin-inline:auto;align-items:stretch;background:#19201e;border:1px solid #8d785b;overflow:hidden;isolation:isolate}
.presentation-spatial .spatial-closing-film .scene-copy{grid-column:1;grid-row:1;position:relative;z-index:2;max-width:none;width:auto;padding:43px 34px 38px;align-self:center}
.presentation-spatial .spatial-closing-film .scene-copy .eyebrow{font-size:11px;line-height:1.65;color:#e8d1b1}
.presentation-spatial .spatial-closing-film .scene-copy h2{font-size:clamp(30px,2.65vw,39px);line-height:1.2;margin:21px 0;letter-spacing:-.03em}
.presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:20px;line-height:1.65;max-width:39ch}
.coda-media{position:relative;grid-column:2;grid-row:1;min-height:440px;overflow:hidden;isolation:isolate}
.presentation-spatial .spatial-closing-film .scene-photo{position:absolute;inset:0;z-index:0;height:100%;width:100%;transform:none!important;clip-path:none!important;filter:brightness(1.045) contrast(1.02) saturate(.92)}
.presentation-spatial .spatial-closing-film .scene-photo img,.presentation-spatial .spatial-closing-film .scene-video{object-position:52% 48%;object-fit:cover}
.coda-media-join{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#19201e99,transparent 20%);pointer-events:none}
.presentation-spatial .spatial-closing-film .scene-controls{position:relative;grid-column:1/-1;grid-row:2;left:auto;right:auto;bottom:auto;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:10px 28px;border-top:1px solid #c9b18a38;background:#19201e;min-height:64px;z-index:2}
.presentation-spatial .spatial-closing-film .scene-controls button{font-size:11px;line-height:1.6;max-width:none;min-height:44px;align-items:center}
.presentation-spatial .spatial-closing-film .scene-controls>a{font-size:11px;line-height:1.6;max-width:45%;color:#e4dacb}
.presentation-spatial .spatial-closing-film .coda-threshold,.presentation-spatial .spatial-closing-film .scene-exit-plane{display:none}
.presentation-spatial .closing-cta{padding-top:44px;background:var(--paper)}
@media(max-width:1100px){
 .presentation-spatial .metrics{gap:22px}.presentation-spatial .metrics strong{font-size:47px}.presentation-spatial .metrics strong>span{font-size:21px}.presentation-spatial .metrics>div>span{font-size:14px}.programme-metric-note{font-size:12px}
 .coda-composition{grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr)}
 .presentation-spatial .spatial-closing-film .scene-copy{padding:35px 27px}
 .presentation-spatial .spatial-closing-film .scene-copy h2{font-size:32px}
 .presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:19px}
}
@media(max-width:900px){
 .coda-composition{grid-template-columns:minmax(0,1fr);max-width:700px}
 .coda-media{grid-column:1;grid-row:1;aspect-ratio:16/9;min-height:0;max-height:420px}
 .presentation-spatial .spatial-closing-film .scene-copy{grid-column:1;grid-row:2;padding:32px;max-width:none}
 .presentation-spatial .spatial-closing-film .scene-copy h2{font-size:37px}
 .presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){max-width:58ch;font-size:20px}
 .presentation-spatial .spatial-closing-film .scene-controls{grid-row:3;padding:9px 28px}
 .coda-media-join{background:linear-gradient(0deg,#19201e4d,transparent 25%)}
 .programme-metric-note{display:block}.programme-metric-note a{display:flex;margin-top:10px;min-height:34px;align-items:center}
}
@media(max-width:600px){
 .presentation-spatial .metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;margin-top:32px;padding-top:24px}
 .presentation-spatial .metrics strong{font-size:45px}.presentation-spatial .metrics .pmp-metric{font-size:39px}.presentation-spatial .metrics strong>span{font-size:19px}.presentation-spatial .metrics>div>span{font-size:14px;line-height:1.55;max-width:21ch}.programme-metric-note{font-size:12px;line-height:1.7;margin-top:23px}
 .presentation-spatial .spatial-object-drawing{max-height:300px}
 .presentation-spatial .spatial-closing-film{padding-block:34px}
 .coda-media{aspect-ratio:16/10;min-height:190px;max-height:none}
 .presentation-spatial .spatial-closing-film .scene-copy{padding:26px 23px 29px}
 .presentation-spatial .spatial-closing-film .scene-copy h2{font-size:32px;margin:19px 0}
 .presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:19px;line-height:1.65}
 .presentation-spatial .spatial-closing-film .scene-controls{padding:10px 20px;gap:14px;align-items:center}
 .presentation-spatial .spatial-closing-film .scene-controls button{font-size:11px;max-width:48%;gap:8px}
 .presentation-spatial .spatial-closing-film .scene-controls>a{font-size:10px;max-width:47%;line-height:1.65}
 .presentation-spatial .closing-cta{padding-top:34px}
}
@media(prefers-reduced-motion:reduce){
 .story-flow-group{display:none!important}.story-route-flow{animation:none!important}
 .presentation-spatial .spatial-object{opacity:1;transform:none}
 .project-perimeter{transition:none}
}

/* One image system on the homepage, project index and related work. */
.presentation-spatial .project-image-module>button.project-image-link[data-image-fit]{position:relative;display:block;width:100%;height:auto;min-height:0;aspect-ratio:16/10;padding:0;overflow:hidden;background:#dcd2c2}
.presentation-spatial .project-image-module>button.project-image-link[data-image-fit]>img.project-thumbnail{position:absolute;inset:0;width:100%!important;height:100%!important;min-width:100%;min-height:100%;max-width:none;max-height:none;margin:0;padding:0;object-fit:cover!important;object-position:var(--image-position,50% 50%);transform:none;filter:none;clip-path:none!important}
.presentation-spatial .project-explorer{padding-top:18px}
.presentation-spatial .explorer-toolbar,.presentation-spatial .filter-row,.presentation-spatial .results-heading,.presentation-spatial #project-results{max-width:1120px;margin-inline:auto}
.presentation-spatial .work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:30px;row-gap:36px;align-items:stretch}
.presentation-spatial .work-grid .project-card{min-width:0;transform:none;translate:none;overflow:visible;padding-bottom:0}
.presentation-spatial .work-grid .project-card-link{display:flex;flex-direction:column;min-width:0;padding:0}
.presentation-spatial .work-grid .project-card-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;min-height:36px;margin:16px 0 9px;font-size:11px;line-height:1.65;letter-spacing:.015em}
.presentation-spatial .work-grid .project-card-meta>span:last-child{text-align:right}
.presentation-spatial .work-grid .project-card h3{font-size:22px;line-height:1.35;letter-spacing:-.025em;min-height:2.7em;margin:0 0 12px;overflow-wrap:anywhere}
.presentation-spatial .work-grid .project-card-link>p{font-size:18px;line-height:1.6;min-height:4.8em;margin:0 0 17px;color:#51594f}
.presentation-spatial .work-grid .card-case-link{display:inline-flex;align-items:center;gap:18px;font-size:12px;line-height:1.6;min-height:44px;margin-top:auto;padding-bottom:12px}
.presentation-spatial .work-grid .project-image-index{font-size:10px;top:10px;left:10px}
.presentation-spatial .work-grid .project-image-arrow{right:10px;bottom:10px;width:30px;height:30px}
.presentation-spatial .work-grid .image-open-caption{font-size:10px;padding:5px 8px;max-width:calc(100% - 65px);text-align:left}
.project-references{margin-top:68px;padding-top:32px;border-top:1px solid var(--line)}
.project-references>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:35px;margin-bottom:28px}
.project-references h2{font-size:29px;letter-spacing:-.025em;line-height:1.3}
.project-references>div>p{font:400 17px/1.7 var(--body-font);max-width:42ch;color:#51594f}
.project-reference{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.8fr) auto;gap:30px;padding:24px 0;border-top:1px solid var(--line);align-items:start;transition:color .25s ease}
.project-reference:hover{color:#755031}
.project-reference-meta{font:500 12px/1.65 var(--font)}
.project-reference-meta small{display:block;margin-top:4px;font-weight:400}
.project-reference>span:nth-child(2)>strong{display:block;font:500 21px/1.4 var(--font);letter-spacing:-.02em}
.project-reference>span:nth-child(2)>span{display:block;font:400 17px/1.65 var(--body-font);margin-top:7px;color:#51594f;max-width:50ch}
.project-reference-link{display:inline-flex;align-items:center;gap:14px;min-height:44px;font-size:12px}

/* About: concise progression, paired project films, then the international story. */
.about-practice,.about-project-films{max-width:calc(1120px + var(--gutter)*2);margin-inline:auto}
.about-practice{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:72px;padding-top:24px;padding-bottom:64px}
.about-practice-intro h2{font-size:clamp(32px,3.2vw,44px);line-height:1.2;margin:25px 0 28px;letter-spacing:-.035em}
.about-practice-intro>.lead{font-size:22px;line-height:1.65}
.about-practice-intro>p:not(.eyebrow):not(.lead){font:400 19px/1.7 var(--body-font);margin-top:21px}
.about-practice-intro>.about-membership{font-size:13px!important;line-height:1.7!important;padding-top:20px;border-top:1px solid var(--line);color:#51594f}
.about-practice-steps{border-top:1px solid var(--line);align-self:start}
.about-practice-steps article{display:grid;grid-template-columns:30px minmax(0,1fr);gap:22px;padding:25px 0;border-bottom:1px solid var(--line)}
.about-practice-steps .mono{padding-top:5px;color:#755031}
.about-practice-steps h3{font-size:24px;line-height:1.3;letter-spacing:-.025em;margin-bottom:11px}
.about-practice-steps p{font:400 19px/1.7 var(--body-font);color:#51594f}
.about-project-films{padding-top:36px;padding-bottom:64px}
.about-project-films>.section-heading{align-items:end;gap:60px;margin-bottom:42px}
.about-project-films .section-heading h2{font-size:clamp(31px,3vw,42px);line-height:1.2;letter-spacing:-.035em;margin-top:24px}
.about-project-films .section-heading>p{font:400 19px/1.7 var(--body-font);max-width:43ch;color:#51594f}
.project-films-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.project-film{min-width:0;display:flex;flex-direction:column;align-items:stretch}
.project-film>.eyebrow{font-size:11px;line-height:1.7;letter-spacing:.045em;color:#755031;margin-bottom:12px;min-height:19px}
.project-film>h3{font-size:25px;line-height:1.35;letter-spacing:-.028em;min-height:2.7em;margin-bottom:21px}
.project-film-window{position:relative;aspect-ratio:16/9;isolation:isolate;overflow:hidden;background:#19201e}
.project-film-window>img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--poster-position,50% 50%);filter:none}
.project-film-trigger{position:absolute;left:18px;bottom:18px;z-index:2;display:flex;align-items:center;gap:14px;background:#19201ef2;color:#f2eadf;text-align:left;padding:12px 16px;min-height:60px;max-width:calc(100% - 36px);font:500 13px/1.5 var(--font)}
.project-film-trigger:hover{background:#19201e}
.project-film-trigger small{display:block;font:400 11px/1.5 var(--body-font);color:#e2d6c3;margin-top:4px}
.project-film-play-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d4bb94;border-radius:50%;font-size:22px;flex-shrink:0}
.project-film-player{position:absolute;inset:0;z-index:1;pointer-events:none}
.project-film.is-playing .project-film-player{pointer-events:auto;z-index:3}
.project-film-player>iframe{display:block;width:100%;height:100%;border:0;background:#19201e}
.project-film-controls{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:45px;border-bottom:1px solid var(--line);font:500 11px/1.6 var(--font);color:#755031}
.project-film-controls>a,.project-film-controls>button{min-height:44px;display:inline-flex;align-items:center;padding-block:8px}
.project-film-controls>button{flex-shrink:0;font-size:11px;text-decoration:underline;text-underline-offset:4px;padding-inline:0}
.project-film-poster-credit{font:400 12px/1.65 var(--body-font);color:#51594f;margin-top:10px;min-height:3.3em}
.project-film-copy{margin-top:20px;display:flex;flex:1;flex-direction:column}
.project-film-copy>.project-film-context{font:400 16px/1.7 var(--body-font);color:#51594f;margin-bottom:23px}
.project-film-copy>.eyebrow{font-size:11px;color:#755031;margin-bottom:11px}
.project-film-copy>p:not(.eyebrow):not(.project-film-context){font:400 19px/1.7 var(--body-font);margin-bottom:20px}
.project-film-copy>.text-link{align-self:flex-start;margin-top:auto;font-size:13px;min-height:44px}
.project-film-fallback{font:400 12px/1.6 var(--font);align-self:flex-start;padding-block:11px;color:#755031;text-decoration:underline;text-underline-offset:4px}
@supports(grid-template-rows:subgrid){
 @media(min-width:761px){
  .project-films-grid{row-gap:0}
  .project-film{display:grid;grid-template-rows:subgrid;grid-row:span 10;row-gap:0}
  .project-film-copy{display:contents}
  .project-film-copy>.project-film-context{margin-top:20px}
  .project-film-copy>.text-link{align-self:end;justify-self:start}
  .project-film-fallback{justify-self:start}
 }
}
@supports(grid-template-rows:subgrid){
 .presentation-spatial .work-grid{row-gap:0}
 .presentation-spatial .work-grid .project-card{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;padding-bottom:38px}
 .presentation-spatial .work-grid .project-card-link{display:contents}
 .presentation-spatial .work-grid .project-card h3,.presentation-spatial .work-grid .project-card-meta,.presentation-spatial .work-grid .project-card-link>p{min-height:0}
 .presentation-spatial .work-grid .card-case-link{align-self:end}
}
@media(max-width:1100px){
 .presentation-spatial .work-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:880px;margin-inline:auto}
 .about-practice{gap:40px}.about-practice-intro>.lead{font-size:21px}
 .project-films-grid{gap:28px}.about-project-films>.section-heading{gap:35px}
}
@media(max-width:760px){
 .about-practice{grid-template-columns:minmax(0,1fr);gap:34px;padding-top:12px;padding-bottom:40px;max-width:700px}
 .about-practice-intro h2{font-size:36px}
 .about-practice-steps article{padding:23px 0}
 .about-practice-steps h3{font-size:24px}
 .about-project-films{padding-top:28px;padding-bottom:38px;max-width:700px}
 .about-project-films>.section-heading{display:block;margin-bottom:32px}
 .about-project-films .section-heading h2{font-size:34px}
 .about-project-films .section-heading>p{margin-top:23px;max-width:none}
 .project-films-grid{grid-template-columns:minmax(0,1fr);gap:43px}
 .project-film>h3{min-height:0;font-size:27px;margin-bottom:21px}
 .project-film-poster-credit{min-height:0}
 .project-references>div:first-child{display:block}.project-references>div>p{margin-top:15px}
 .project-reference{grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:16px 24px}
 .project-reference-link{grid-column:2}
}
@media(max-width:650px){
 .presentation-spatial .work-grid{grid-template-columns:minmax(0,1fr);max-width:390px;row-gap:0}
 .presentation-spatial .work-grid .project-card{padding-bottom:36px}
 .presentation-spatial .work-grid .project-card h3{font-size:24px;min-height:0}
 .presentation-spatial .work-grid .project-card-link>p{font-size:19px;min-height:0}
 .presentation-spatial .work-grid .project-card-meta{min-height:0}
 .presentation-spatial .work-grid .card-case-link{font-size:13px}
 .project-references{margin-top:25px}.project-references h2{font-size:27px}
 .project-reference{display:flex;flex-direction:column;gap:13px;padding-block:24px}
 .project-reference-meta{display:flex;flex-wrap:wrap;gap:8px 16px}.project-reference-meta small{margin:0}
 .project-reference>span:nth-child(2)>strong{font-size:22px}
 .project-reference-link{font-size:13px;min-height:36px}
 .project-film-trigger{left:13px;bottom:13px;padding:10px 12px;max-width:calc(100% - 26px);font-size:12px;gap:10px}
 .project-film-trigger small{font-size:10px}.project-film-controls{gap:12px}
 .project-film-controls>button{font-size:10px}
}

/* Spatial 10 — one type hierarchy, one image perimeter, one cinematic closing scene. */
.presentation-spatial{--reading:#51594f;--bronze-ink:#755031;--type-label:11px;--type-body:19px;--type-leading:1.7}
.presentation-spatial :is(h1,h2,h3,h4){font-family:var(--font);text-wrap:balance}
.presentation-spatial :is(p,figcaption){text-wrap:pretty}
.presentation-spatial .eyebrow{font-size:var(--type-label);line-height:1.65;letter-spacing:.065em}
.presentation-spatial .page-intro{padding-top:150px;padding-bottom:48px}
.presentation-spatial .page-intro h1{font-size:clamp(40px,5.2vw,72px);line-height:1.13;font-weight:550;letter-spacing:-.04em}
.presentation-spatial .page-intro .lead{max-width:50ch;font-size:22px;line-height:1.65}
.presentation-spatial :is(.intro-copy,.case-story,.expertise-detail,.career-panel,.about-practice-intro)>p{line-height:var(--type-leading)}
.presentation-spatial :is(.section-heading,.career-preview,.closing-cta)>div>h2{line-height:1.2;letter-spacing:-.035em}
.presentation-spatial .case-story h3{font-size:24px;line-height:1.35;letter-spacing:-.025em}
.presentation-spatial :is(.expertise-detail,.career-panel,.case-output-grid,.case-contributions) p{max-width:66ch}
.presentation-spatial :is(.project-card-meta,.project-film-poster-credit,.programme-metric-note){color:var(--reading)}
.presentation-spatial .about-practice-intro>.about-membership{font-size:14px!important}

/* No secondary card rules or inner outlines compete with the four external corners. */
.presentation-spatial .project-card::before,.presentation-spatial .project-card::after,
.presentation-spatial .project-image-link::before,.presentation-spatial .project-image-link::after{content:none;display:none}
.presentation-spatial .project-card-link,.presentation-spatial .card-case-link{border:0}
.presentation-spatial .project-image-module>.project-perimeter{inset:-4px;width:calc(100% + 8px);height:calc(100% + 8px);stroke-width:.85;opacity:.57;color:#805b39}
.presentation-spatial .project-image-module:hover>.project-perimeter,
.presentation-spatial .project-image-module:focus-within>.project-perimeter{color:#755031;opacity:.9}
.presentation-spatial :is(.selected-grid,.work-grid,.related-grid) .project-card-meta{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:10px;line-height:1.65;align-items:start}
.presentation-spatial .project-card-meta>span:last-child{text-align:right;overflow-wrap:break-word}
.presentation-spatial :is(.selected-grid,.work-grid,.related-grid) .card-case-link{min-height:44px;padding-block:8px;margin-bottom:0}
.presentation-spatial .selected-grid{row-gap:44px}
.presentation-spatial .work-grid{row-gap:44px}
@supports(grid-template-rows:subgrid){
 .presentation-spatial :is(.selected-grid,.work-grid){row-gap:0}
 .presentation-spatial :is(.selected-grid,.work-grid) .project-card{padding-bottom:44px}
 .presentation-spatial :is(.selected-grid,.work-grid) .card-case-link{padding-block:8px}
}

/* A visible setting-out line develops into a complete courtyard pavilion. */
.presentation-spatial .spatial-interlude{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr);min-height:112svh;align-items:stretch;gap:clamp(28px,5vw,76px);padding-block:72px;overflow:clip;background:linear-gradient(115deg,#ded4c5,var(--paper) 78%)}
.presentation-spatial .spatial-interlude-copy{align-self:center;max-width:510px}
.presentation-spatial .spatial-interlude-copy h2{font-size:clamp(32px,3.1vw,46px);line-height:1.2}
.presentation-spatial .spatial-interlude-copy>p:last-child{font-size:20px;line-height:1.7;max-width:43ch}
.presentation-spatial .spatial-object{align-self:stretch;position:relative;width:100%;height:auto;max-width:640px;margin:0;justify-self:center;color:#805b39;transform:none}
.presentation-spatial .construction-graphic{position:sticky;top:18svh;max-width:640px;margin-inline:auto}
.presentation-spatial .spatial-object-drawing{display:block;aspect-ratio:4/3;width:100%;height:auto;min-height:0;max-height:none;max-width:none;margin:0;overflow:visible}
.presentation-spatial .spatial-object :is(.spatial-guide,.spatial-origin){display:none}
.presentation-spatial .spatial-object .spatial-frame{stroke-width:1.12;opacity:.94}
.presentation-spatial .spatial-object .spatial-grid{stroke-width:.68;opacity:.38}
.presentation-spatial .spatial-object .spatial-columns{stroke-width:.92;opacity:.73}
.presentation-spatial .spatial-object .spatial-slabs{fill:currentColor;fill-opacity:.035;stroke:none}
.presentation-spatial .spatial-object .spatial-stars{stroke-width:.85}
.construction-stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;margin:0;padding:15px 0 0;border-top:1px solid #ac9b84;gap:6px;font:500 11px/1.55 var(--font);color:#51594f}
.construction-stages li{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;text-align:center}
.construction-stages li>.mono{font-size:10px;font-weight:400;letter-spacing:.04em}
.construction-stages li.is-current{color:#755031;font-weight:700}
.presentation-spatial .spatial-object .spatial-caption{display:block;margin:21px 0 0;font-size:10px;line-height:1.65;letter-spacing:.07em;text-align:center;color:#51594f}
.presentation-spatial .spatial-interlude>.section-spatial-plane{display:none}

/* The approved Kuwait film is a full-width scene; its architecture remains the focus. */
.presentation-spatial .spatial-closing-film{display:block;position:relative;isolation:isolate;width:100%;height:100svh;min-height:700px;max-height:none;padding:0;overflow:hidden;background:#19201e;color:#f2eadf}
.presentation-spatial .spatial-closing-film>.scene-photo{position:absolute;inset:0;z-index:0;width:100%;height:100%;transform:none!important;clip-path:none!important;filter:brightness(1.02) contrast(1.02) saturate(.96)}
.presentation-spatial .spatial-closing-film .scene-photo :is(img,video){width:100%;height:100%;max-width:none;object-fit:cover;object-position:60% 52%;transform:none}
.coda-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#111a18f5 0%,#111a18e6 22%,#111a18b8 38%,#111a182b 62%,transparent 80%),linear-gradient(0deg,#19201eeb,transparent 22%)}
.coda-content{position:relative;z-index:2;display:flex;align-items:center;height:100%;max-width:calc(1240px + var(--gutter)*2);margin-inline:auto;padding:80px var(--gutter) 110px}
.presentation-spatial .spatial-closing-film .scene-copy{position:relative;grid-column:auto;grid-row:auto;align-self:auto;z-index:auto;width:min(38vw,460px);max-width:460px;padding:0;margin:0;opacity:1;transform:none}
.presentation-spatial .spatial-closing-film .scene-copy .eyebrow{color:#e8d1b1;font-size:11px;line-height:1.65}
.presentation-spatial .spatial-closing-film .scene-copy h2{font-size:clamp(42px,4.1vw,62px);font-weight:500;line-height:1.17;letter-spacing:-.035em;margin:25px 0;color:#f2eadf}
.presentation-spatial .spatial-closing-film .scene-copy h2 em{color:#e0bd91;font-weight:450}
.presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:21px;line-height:1.65;max-width:35ch;color:#f2eadf}
.presentation-spatial .spatial-closing-film>.scene-controls{position:absolute;left:var(--gutter);right:var(--gutter);bottom:24px;grid-column:auto;grid-row:auto;z-index:3;max-width:1240px;margin-inline:auto;padding:0;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:0;background:transparent;color:#f2eadf}
.presentation-spatial .spatial-closing-film .scene-controls button{font:500 11px/1.6 var(--font);min-height:44px;max-width:48%;align-items:center;gap:10px;padding:8px 0}
.presentation-spatial .spatial-closing-film .scene-controls>a{font:400 12px/1.65 var(--body-font);max-width:45%;color:#f2eadf;min-height:44px;display:flex;align-items:center;justify-content:flex-end}
.presentation-spatial .closing-cta{padding-top:64px;background:var(--paper)}
@media(max-width:1100px){
 .presentation-spatial .page-intro h1{font-size:52px}
 .presentation-spatial .spatial-interlude{gap:28px}
 .presentation-spatial .spatial-interlude-copy h2{font-size:36px}
 .presentation-spatial .spatial-closing-film .scene-copy{width:42vw}
}
@media(max-width:900px){
 .presentation-spatial .spatial-interlude{grid-template-columns:minmax(0,1fr);gap:24px;min-height:112svh;padding-block:54px;align-content:start}
 .presentation-spatial .spatial-interlude-copy{max-width:600px;align-self:start}
 .presentation-spatial .spatial-interlude-copy>p:last-child{max-width:55ch}
 .presentation-spatial .spatial-object{max-width:560px;min-height:50svh}
 .presentation-spatial .construction-graphic{position:sticky;top:110px;max-width:560px}
 .presentation-spatial .spatial-closing-film{--coda-film-height:clamp(340px,76svh,760px);height:auto;min-height:0;padding:0}
 .presentation-spatial .spatial-closing-film>.scene-photo{height:var(--coda-film-height);bottom:auto}
 .coda-shade{height:var(--coda-film-height);bottom:auto;background:linear-gradient(0deg,#19201e 0%,#19201e9c 7%,transparent 24%)}
 .coda-content{height:auto;display:block;padding:calc(var(--coda-film-height) + 25px) var(--gutter) 108px}
 .presentation-spatial .spatial-closing-film .scene-copy{width:100%;max-width:580px;margin-inline:auto;padding:0}
 .presentation-spatial .spatial-closing-film .scene-copy h2{font-size:43px;margin:21px 0}
 .presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:20px;max-width:52ch}
 .presentation-spatial .spatial-closing-film>.scene-controls{bottom:22px;max-width:580px}
}
@media(max-width:600px){
 .presentation-spatial .page-intro{padding-top:126px;padding-bottom:35px}
 .presentation-spatial .page-intro h1{font-size:clamp(37px,10vw,48px);line-height:1.16}
 .presentation-spatial .page-intro .lead{font-size:20px;line-height:1.7}
 .presentation-spatial :is(.selected-grid,.work-grid) .project-card-meta{font-size:11px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);margin-top:18px}
 .presentation-spatial :is(.selected-grid,.work-grid) .project-card{padding-bottom:36px}
 .presentation-spatial .selected-grid{row-gap:0}
 .presentation-spatial .spatial-interlude{min-height:calc(100svh + 180px);gap:16px;padding-block:44px}
 .presentation-spatial .spatial-interlude-copy h2{font-size:clamp(29px,8vw,38px)}
 .presentation-spatial .spatial-interlude-copy>p:last-child{font-size:19px;line-height:1.7}
 .presentation-spatial .spatial-object{min-height:45svh;max-width:460px}
 .presentation-spatial .construction-graphic{top:90px}
 .construction-stages{font-size:10px;gap:3px;padding-top:13px}
 .construction-stages li{gap:5px}
 .presentation-spatial .spatial-object .spatial-caption{font-size:9px;margin-top:17px;letter-spacing:.055em}
 .presentation-spatial .spatial-closing-film .scene-copy h2{font-size:37px}
 .presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:19px;line-height:1.7}
 .presentation-spatial .spatial-closing-film .scene-controls button{font-size:10px}
 .presentation-spatial .spatial-closing-film .scene-controls>a{font-size:11px}
 .presentation-spatial .closing-cta{padding-top:44px}
}
@media(prefers-reduced-motion:reduce){
 .presentation-spatial .spatial-object{opacity:1;transform:none}
 .presentation-spatial .project-perimeter{transition:none}
}

/* Spatial11: connected route, a legible pavilion, compact supporting project films. */
.story-route-guide{stroke:#d2ac78;stroke-width:1.45;opacity:.78;stroke-dasharray:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.story-connection{stroke:#e0bf91;stroke-width:1.45;opacity:.58;vector-effect:non-scaling-stroke}
.story-flow-group{opacity:1}
.story-route-flow{stroke:#fff0cf;stroke-width:1.9;stroke-dasharray:.042 1.2;animation:spatial-route-travel 18s linear infinite;animation-play-state:paused}
.story-route-flow--halo{stroke:#f4d7a3;stroke-width:4.5;stroke-dasharray:.046 1.2;animation-delay:0s;filter:blur(.7px);opacity:.25}
.is-route-active .story-route-flow{animation-play-state:running}
@keyframes spatial-route-travel{0%{stroke-dashoffset:.06;opacity:0}5%{opacity:.92}94%{opacity:.92}100%{stroke-dashoffset:-1.06;opacity:0}}
.story-route-flow--halo{animation-name:spatial-route-halo}
@keyframes spatial-route-halo{0%{stroke-dashoffset:.06;opacity:0}5%{opacity:.22}94%{opacity:.22}100%{stroke-dashoffset:-1.06;opacity:0}}

/* One measured datum travels from the atlas into the construction chapter. */
.presentation-spatial .international-story .story-exit-line{left:auto;right:calc(var(--gutter) + 20%);height:76px;bottom:-38px;opacity:.4}
.presentation-spatial .spatial-interlude{min-height:118svh;padding-top:68px;padding-bottom:76px;background:linear-gradient(180deg,#e2d9cb 0%,#e6ddcf 38%,var(--paper) 100%);overflow:clip}
.pavilion-entry,.pavilion-exit{position:absolute;pointer-events:none;color:#98734e;opacity:.35;z-index:0}
.pavilion-entry{top:0;right:22%;height:112px;width:35%;transform:translateY(calc((1 - var(--framework-progress,0))*-16px))}
.pavilion-exit{bottom:0;right:var(--gutter);width:min(42%,560px);height:78px;opacity:calc(var(--framework-visibility,1)*.28)}
.pavilion-entry path,.pavilion-exit path{stroke:currentColor;stroke-width:.7;vector-effect:non-scaling-stroke;stroke-linecap:round}
.pavilion-entry path{stroke-dasharray:1;stroke-dashoffset:clamp(0,calc(1 - var(--framework-progress,0)*4),1)}
.pavilion-exit path{stroke-dasharray:1;stroke-dashoffset:clamp(0,calc(6 - var(--framework-progress,0)*6),1)}
.presentation-spatial .spatial-interlude-copy{align-self:center}
.presentation-spatial .spatial-interlude-copy h2{font-size:clamp(32px,3vw,44px);line-height:1.23;font-weight:550}
.presentation-spatial .spatial-object{max-width:620px;color:#805c3b}
.presentation-spatial .construction-graphic{top:17svh}
.presentation-spatial .spatial-object-drawing{aspect-ratio:24/17;overflow:visible}
.presentation-spatial .spatial-object [data-spatial-path]{vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.presentation-spatial .spatial-object .spatial-frame{stroke-width:var(--pavilion-datum-width,.8);opacity:var(--pavilion-datum,.52)}
.presentation-spatial .spatial-object .spatial-grid{stroke-width:.66;opacity:var(--pavilion-grid,.14)}
.presentation-spatial .spatial-object .spatial-rear{stroke:currentColor;stroke-width:.65;opacity:.42}
.presentation-spatial .spatial-object .spatial-columns{stroke-width:1.12;opacity:.9}
.presentation-spatial .spatial-object .spatial-slabs{fill:#ddcfbb;fill-opacity:1;stroke:#805c3b;stroke-width:.92;stroke-opacity:1;opacity:var(--pavilion-roof,1)}
.presentation-spatial .spatial-object .spatial-eaves{fill:#b8a084;fill-opacity:.65;stroke:#805c3b;stroke-width:.7;opacity:var(--pavilion-roof,1)}
.presentation-spatial .spatial-object .spatial-walls{fill:#c5b398;fill-opacity:.7;stroke:#805c3b;stroke-width:.72;opacity:1}
.presentation-spatial .spatial-object .spatial-glass{fill:#bbc4bc;fill-opacity:.26;stroke:#805c3b;stroke-width:.55;opacity:1}
.presentation-spatial .spatial-object .spatial-courtyard{fill:#acb6a5;fill-opacity:.22;stroke:#805c3b;stroke-width:.5;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-floor{fill:#c2b39d;fill-opacity:.55;stroke:#805c3b;stroke-width:.55;opacity:1}
.presentation-spatial .spatial-object .spatial-stars{stroke:#805c3b;stroke-width:.62;fill:none}
.presentation-spatial .spatial-object .spatial-roofLine{stroke:#805c3b;stroke-width:.65;opacity:.78}
.construction-stages{margin-top:12px;border-top-color:#b9a88e;padding-top:15px;font-size:11px}
.presentation-spatial .spatial-object .spatial-caption{font-size:10px;letter-spacing:.06em;margin-top:18px}
.presentation-spatial .selected-section{padding-top:58px}
.presentation-spatial .selected-section::after{display:none}

/* The two approved lead films retain their layout; rail films form a quieter second row. */
.project-films-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}
.project-films-secondary>.project-film--compact{display:grid;grid-template-rows:auto auto;grid-row:auto;row-gap:0;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:0 23px;align-content:start}
.project-film-media{min-width:0}
.project-film--compact .project-film-window{aspect-ratio:16/9}
.project-film--compact .project-film-trigger{left:10px;bottom:10px;min-height:44px;padding:8px 10px;gap:8px;max-width:calc(100% - 20px);font-size:11px}
.project-film--compact .project-film-trigger small{font-size:10px;margin-top:2px}
.project-film--compact .project-film-play-icon{width:25px;height:25px;font-size:17px}
.project-film--compact .project-film-controls{font-size:10px;line-height:1.6;gap:9px}
.project-film--compact .project-film-poster-credit{font-size:11px;line-height:1.65;min-height:0;margin-top:9px}
.project-film-summary{min-width:0}
.project-film-summary>.eyebrow{color:var(--bronze-ink);font-size:10px;letter-spacing:.035em;margin:0 0 11px}
.project-film-summary>h3{font-size:23px;line-height:1.3;letter-spacing:-.025em;margin:0 0 14px;min-height:0}
.project-film-summary>.project-film-context{font:400 16px/1.65 var(--body-font);color:var(--reading);margin:0 0 17px}
.project-film-contribution{font:400 17px/1.65 var(--body-font);margin:0 0 14px}
.project-film-contribution>span{display:block;color:var(--bronze-ink);font:500 10px/1.6 var(--font);letter-spacing:.06em;text-transform:uppercase;margin-bottom:7px}
.project-film-summary>.text-link{font-size:12px;min-height:44px}
.project-film--compact>.project-film-fallback{grid-column:2;justify-self:start;align-self:end}
.project-value-sources{scroll-margin-top:110px;margin-top:44px;padding-top:32px;border-top:1px solid var(--line)}
.project-value-sources>p{max-width:78ch}
.project-values-table{width:100%;border-collapse:collapse;margin:25px 0;font:400 16px/1.7 var(--body-font);table-layout:fixed}
.project-values-table th,.project-values-table td{text-align:left;vertical-align:top;padding:18px 18px 18px 0;border-bottom:1px solid var(--line);overflow-wrap:break-word}
.project-values-table th{font:500 11px/1.6 var(--font);color:var(--accent)}
.project-values-table th:first-child{width:27%}.project-values-table th:nth-child(2){width:19%}
.project-values-table td>strong{display:block;font:500 17px/1.5 var(--font);margin-bottom:6px}
.project-values-table small{display:block;font-size:13px;line-height:1.65;margin-top:6px;color:var(--reading)}
.project-values-table a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.project-value-method{font-size:16px;line-height:1.75;max-width:78ch}
.presentation-spatial .education-record{min-width:0}
.presentation-spatial .education-record h3{font-size:clamp(25px,2.4vw,33px);line-height:1.3;font-weight:500;letter-spacing:-.025em}
.presentation-spatial .education-award{font-size:21px;line-height:1.6;max-width:39ch}
.presentation-spatial .education-record>p:last-of-type:not(.education-location){font-size:19px;line-height:1.75;max-width:48ch}
@media(max-width:1100px){
 .project-films-secondary{grid-template-columns:minmax(0,1fr);gap:32px}
 .project-films-secondary>.project-film--compact{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:0 30px}
 .project-film--compact .project-film-trigger{font-size:12px}
 .project-film-summary>h3{font-size:26px}
 .project-film-summary>.project-film-context,.project-film-contribution{font-size:18px}
}
@media(max-width:900px){
 .presentation-spatial .spatial-interlude{min-height:118svh;padding-block:52px}
 .pavilion-entry{width:50%;right:12%;height:78px;opacity:.24}
 .pavilion-exit{height:48px;width:65%}
 .presentation-spatial .spatial-object{max-width:580px;min-height:53svh}
 .presentation-spatial .construction-graphic{top:105px}
}
@media(max-width:600px){
 .presentation-spatial .spatial-interlude{min-height:calc(100svh + 190px);padding-block:44px;gap:20px}
 .presentation-spatial .spatial-object{min-height:45svh;max-width:460px}
 .presentation-spatial .spatial-interlude-copy h2{font-size:clamp(29px,8vw,38px)}
 .presentation-spatial .construction-graphic{top:88px}
 .construction-stages{font-size:10px;gap:4px}
 .presentation-spatial .selected-section{padding-top:44px}
 .project-films-secondary{margin-top:35px;padding-top:28px;gap:38px}
 .project-films-secondary>.project-film--compact{display:block}
 .project-film-summary{margin-top:24px}
 .project-film-summary>h3{font-size:26px}
 .project-film--compact .project-film-poster-credit{font-size:12px}
 .project-film--compact .project-film-trigger{font-size:12px;left:13px;bottom:13px;padding:10px 12px;max-width:calc(100% - 26px)}
 .project-film--compact .project-film-trigger small{font-size:11px}
 .project-film--compact .project-film-controls{font-size:11px}
 .project-film--compact .project-film-play-icon{width:30px;height:30px;font-size:20px}
 .project-film--compact>.project-film-fallback{display:inline-flex;margin-top:3px}
 .project-values-table,.project-values-table tbody,.project-values-table tr,.project-values-table td{display:block;width:100%}
 .project-values-table thead{display:none}.project-values-table td{border:0;padding:6px 0}
 .project-values-table tr{border-bottom:1px solid var(--line);padding:18px 0}
 .project-values-table td:first-child{font-size:19px;font-weight:600}
 .project-values-table td:nth-child(2){font-size:18px;color:var(--accent)}
 .presentation-spatial .education-record h3{font-size:27px}
 .presentation-spatial .education-award{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
 .story-route-guide{opacity:.8}.story-flow-group{display:none!important}
 .story-route-flow{animation:none!important}.pavilion-entry path,.pavilion-exit path{stroke-dashoffset:0}.pavilion-entry,.pavilion-exit{transform:none;transition:none}
}

/* Spatial12: one route stroke; one grounded arcade scene between atlas and photographs. */
.presentation-spatial .story-route-guide{stroke:#d2ac78;stroke-width:1.45;opacity:.86;stroke-opacity:1;stroke-dasharray:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;filter:none}
.presentation-spatial .story-flow-group{opacity:1}
.presentation-spatial .story-route-flow{stroke:#edcea0;stroke-width:1.45;stroke-opacity:1;stroke-linecap:round;vector-effect:non-scaling-stroke;filter:none;animation-name:spatial-route-refinement}
@keyframes spatial-route-refinement{0%{stroke-dashoffset:.06;opacity:0}5%{opacity:.60}94%{opacity:.60}100%{stroke-dashoffset:-1.06;opacity:0}}
.presentation-spatial.page-home .international-story>.section-spatial-plane{display:none}
.presentation-spatial .spatial-interlude{display:flex;align-items:center;grid-template-columns:none;min-height:clamp(680px,94svh,960px);padding:clamp(48px,5.1vw,76px) var(--gutter);gap:0;overflow:clip;background:linear-gradient(180deg,#ded4c5 0%,#e3dacc 28%,var(--paper) 88%)}
.arcade-composition{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.22fr);align-items:center;gap:48px;max-width:1240px;width:100%;margin-inline:auto;min-width:0}
.presentation-spatial .spatial-interlude-copy{align-self:center;max-width:460px;min-width:0}
.presentation-spatial .spatial-interlude-copy h2{font-size:clamp(32px,3vw,44px);line-height:1.23;margin-top:23px}
.presentation-spatial .spatial-interlude-copy>p:last-child{max-width:39ch;margin-top:25px}
.presentation-spatial .spatial-object{align-self:center;justify-self:stretch;max-width:660px;min-height:0;width:100%;margin:0;transform:none;min-width:0}
.presentation-spatial .construction-graphic{position:relative;top:auto;max-width:660px;margin:0}
.presentation-spatial .spatial-object-drawing{width:100%;height:auto;min-height:0;max-height:none;max-width:none;margin:0;aspect-ratio:134/99;overflow:hidden;color:#805c3b}
.presentation-spatial .spatial-object .spatial-frame,.presentation-spatial .spatial-object .spatial-arches{stroke:currentColor;stroke-width:1.05;stroke-opacity:1;opacity:1;fill:none}
.presentation-spatial .spatial-object .spatial-columns{stroke-width:.72;opacity:.42}
.presentation-spatial .spatial-object .spatial-rear{stroke-width:.72;opacity:.46;fill:none}
.presentation-spatial .spatial-object .spatial-grid{stroke-width:.55;opacity:var(--pavilion-grid,.13)}
.presentation-spatial .spatial-object .spatial-walls{fill:#d8c7ae;fill-opacity:1;fill-rule:evenodd;stroke:none;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-backWalls{fill:#dbceb9;fill-opacity:1;fill-rule:evenodd;stroke:#805c3b;stroke-width:.5;stroke-opacity:.42;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-reveals{fill:#bba083;fill-opacity:.66;stroke:#805c3b;stroke-width:.5;stroke-opacity:.6;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-floor{fill:#d0c1a9;fill-opacity:.5;stroke:#805c3b;stroke-width:.55;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-courtyard{fill:#b1b6a3;fill-opacity:.34;stroke:#805c3b;stroke-width:.5;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-roofLine{stroke-width:.65;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-slabs{fill:#e2d5c1;fill-opacity:1;stroke:#805c3b;stroke-width:.75;opacity:var(--pavilion-roof,1)}
.presentation-spatial .spatial-object .spatial-eaves{fill:#bda78a;fill-opacity:1;stroke:#805c3b;stroke-width:.55;opacity:var(--pavilion-roof,1)}
.presentation-spatial .construction-stages{margin:4px 6% 0;padding:0;border:0;gap:8px;font-size:11px;line-height:1.6}
.presentation-spatial .construction-stages li{border-top:1px solid #b6a58e;padding-top:11px;gap:5px}
.presentation-spatial .construction-stages li.is-current{border-top-color:#805c3b}
.presentation-spatial .spatial-object .spatial-caption{font-size:10px;letter-spacing:.055em;line-height:1.6;margin-top:16px}
@media(max-width:1100px){.arcade-composition{gap:30px}.presentation-spatial .spatial-interlude-copy h2{font-size:34px}}
@media(max-width:900px){
 .presentation-spatial .spatial-interlude{min-height:calc(100svh + 80px);padding-block:50px;align-items:center}
 .arcade-composition{grid-template-columns:minmax(0,1fr);gap:24px}
 .presentation-spatial .spatial-interlude-copy{max-width:620px;align-self:auto}
 .presentation-spatial .spatial-interlude-copy>p:last-child{max-width:51ch}
 .presentation-spatial .spatial-object{max-width:610px;justify-self:center;min-height:0}
 .presentation-spatial .construction-graphic{top:auto;position:relative}
}
@media(max-width:600px){
 .presentation-spatial .spatial-interlude{min-height:calc(100svh + 120px);padding-block:44px;gap:0}
 .arcade-composition{gap:25px}
 .presentation-spatial .spatial-interlude-copy h2{font-size:clamp(29px,8vw,38px)}
 .presentation-spatial .spatial-object{max-width:460px;min-height:0}
 .presentation-spatial .construction-stages{margin-inline:0;gap:5px;font-size:10px}
 .presentation-spatial .construction-stages li{padding-top:9px;gap:4px}
 .presentation-spatial .spatial-object .spatial-caption{font-size:9px;margin-top:13px}
}
@media(prefers-reduced-motion:reduce){
 .presentation-spatial .spatial-interlude{min-height:0}
 .presentation-spatial .spatial-object{opacity:1;transform:none}
 .presentation-spatial .story-route-guide{opacity:.86}
 .presentation-spatial .story-route-flow{animation:none!important}
}

/* Spatial13: shared arcade dimensions, complete courtyard and legible solid corners. */
.presentation-spatial .spatial-object .spatial-rear,.presentation-spatial .spatial-object .spatial-columns{opacity:var(--arcade-wire,0);stroke:#967652;stroke-width:.72;fill:none}
.presentation-spatial .spatial-object .spatial-floor{fill:#d2c4af;fill-opacity:1;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-courtyard{fill:#c0c1aa;fill-opacity:1;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-backWalls,.presentation-spatial .spatial-object .spatial-courtFar,.presentation-spatial .spatial-object .spatial-courtNear{fill:#d9cbb5;fill-opacity:1;fill-rule:evenodd;stroke:#8b6845;stroke-width:.65;stroke-opacity:1;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-courtNear{fill:#cdbb9f}
.presentation-spatial .spatial-object .spatial-reveals,.presentation-spatial .spatial-object .spatial-backReveals,.presentation-spatial .spatial-object .spatial-courtFarReveals,.presentation-spatial .spatial-object .spatial-courtNearReveals{fill:#b8a080;fill-opacity:1;stroke:#94734f;stroke-width:.55;stroke-opacity:1;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-slabs{stroke:none}
.presentation-spatial .spatial-object .spatial-innerEaves{fill:#bba386;fill-opacity:1;stroke:#805c3b;stroke-width:.65;opacity:var(--pavilion-roof,1)}
.presentation-spatial .spatial-object .spatial-roofEdges{fill:none;stroke:#805c3b;stroke-width:.75;opacity:var(--pavilion-roof,1)}

/* Spatial14: an airy measured drawing, including the completed Arcade stage. */
.presentation-spatial .spatial-object .spatial-frame,.presentation-spatial .spatial-object .spatial-arches{stroke:#805c3b;stroke-width:.82;stroke-opacity:.86;fill:none}
.presentation-spatial .spatial-object .spatial-rear,.presentation-spatial .spatial-object .spatial-columns{opacity:calc(var(--arcade-wire,0)*.32);stroke-width:.55;fill:none}
.presentation-spatial .spatial-object .spatial-walls{fill:#a7835e;fill-opacity:.035;stroke:none;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-backWalls{fill:none;stroke:#987651;stroke-width:.55;stroke-opacity:.28;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-courtFar,.presentation-spatial .spatial-object .spatial-courtNear{fill:#a7835e;fill-opacity:.018;stroke:#94714c;stroke-width:.55;stroke-opacity:.42;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-reveals,.presentation-spatial .spatial-object .spatial-backReveals,.presentation-spatial .spatial-object .spatial-courtFarReveals,.presentation-spatial .spatial-object .spatial-courtNearReveals{fill:#a7835e;fill-opacity:.025;stroke:#94714c;stroke-width:.42;stroke-opacity:.25;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-floor{fill:none;stroke:#94714c;stroke-width:.55;stroke-opacity:.38;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-courtyard{fill:none;stroke:#94714c;stroke-width:.4;stroke-opacity:.18;opacity:var(--pavilion-mass,1)}
.presentation-spatial .spatial-object .spatial-roofLine{stroke-width:.65;stroke-opacity:.75}
.presentation-spatial .spatial-object .spatial-backReveals{fill:none;stroke:none}
.presentation-spatial .spatial-object .spatial-courtFarReveals,.presentation-spatial .spatial-object .spatial-courtNearReveals{stroke-opacity:.14}
.presentation-spatial .spatial-object .spatial-slabs{fill:none;stroke:none}
.presentation-spatial .spatial-object .spatial-eaves,.presentation-spatial .spatial-object .spatial-innerEaves{fill:none;stroke:#94714c;stroke-width:.4;stroke-opacity:.28;opacity:var(--pavilion-roof,1)}
.presentation-spatial .spatial-object .spatial-roofEdges{fill:none;stroke:#805c3b;stroke-width:.65;stroke-opacity:.64;opacity:var(--pavilion-roof,1)}

/* A local ribbon handover replaces whole-card entrances. Text never moves. */
.presentation-spatial .selected-grid .project-card,.presentation-spatial .selected-grid .project-card-link{opacity:1;transform:none;translate:none;transition:none}
.project-ribbons{display:none;position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.project-ribbon{position:absolute;inset:0;display:block;background-image:var(--ribbon-image);background-size:cover;background-position:var(--image-position,50% 50%);background-repeat:no-repeat;clip-path:inset(var(--band-top) 0 var(--band-bottom) 0);transform:translateX(var(--band-shift,0px));opacity:var(--band-opacity,1)}
@media(min-width:601px){
 .presentation-spatial .selected-grid .is-ribbon-ready:not(.is-ribbon-complete)>.project-ribbons{display:block}
 .presentation-spatial .selected-grid .is-ribbon-ready:not(.is-ribbon-complete)>img.project-thumbnail{opacity:0}
 .presentation-spatial .selected-grid .is-ribbon-moving .project-ribbon{will-change:transform,opacity}
}
@media(max-width:600px){
 .presentation-spatial .selected-grid button.project-image-link.is-ribbon-ready[data-ribbon-slot]>img.project-thumbnail{opacity:var(--ribbon-progress,1);clip-path:inset(0 0 calc((1 - var(--ribbon-progress,1))*6%) 0)!important}
}
.presentation-spatial .selected-grid button.project-image-link.is-ribbon-ready[data-ribbon-slot]:focus-visible>img.project-thumbnail{opacity:1!important;clip-path:none!important}


.presentation-spatial .selected-grid .project-image-link:focus-visible>.project-ribbons{display:none!important}
@media(prefers-reduced-motion:reduce){
 .presentation-spatial .selected-grid .project-ribbons{display:none!important}
 .presentation-spatial .selected-grid button.project-image-link.is-ribbon-ready[data-ribbon-slot]>img.project-thumbnail{opacity:1!important;clip-path:none!important}
}

.presentation-spatial .selected-grid [data-ribbon-slot]>.project-image-index,.presentation-spatial .selected-grid [data-ribbon-slot]>.project-image-arrow,.presentation-spatial .selected-grid [data-ribbon-slot]>.image-open-caption{z-index:2}

/* Spatial15: one lower courtyard frame, connected to the project narrative. */
.presentation-spatial .spatial-interlude{min-height:clamp(600px,84svh,820px);padding-block:clamp(46px,4.5vw,66px)}
.presentation-spatial .arcade-composition{gap:42px}
.presentation-spatial .spatial-interlude-copy{max-width:440px}
.presentation-spatial .spatial-interlude-copy h2{font-size:clamp(32px,2.6vw,40px);line-height:1.23;margin-top:22px}
.presentation-spatial .spatial-interlude-copy>p:last-child{font:400 19px/1.72 var(--body-font);max-width:43ch;margin-top:24px;color:var(--reading)}
.presentation-spatial .spatial-object,.presentation-spatial .construction-graphic{max-width:620px}
.presentation-spatial .spatial-object-drawing{aspect-ratio:67/34}
.presentation-spatial .construction-stages{margin:2px 4% 0;gap:8px}
.presentation-spatial .spatial-object .spatial-caption{font:400 11px/1.6 var(--body-font);letter-spacing:.025em;text-transform:none;margin-top:15px}
.presentation-spatial .spatial-object .spatial-backWalls{stroke-width:.6;stroke-opacity:.32}
.presentation-spatial .spatial-object .spatial-reveals{fill-opacity:.018;stroke-opacity:.18}
.presentation-spatial .spatial-object .spatial-eaves,.presentation-spatial .spatial-object .spatial-innerEaves{stroke-opacity:.15}
.presentation-spatial .spatial-object .spatial-floor{stroke-opacity:.28}
@media(max-width:1100px){.presentation-spatial .arcade-composition{gap:28px}}
@media(max-width:900px){
 .presentation-spatial .spatial-interlude{min-height:calc(100svh + 30px);padding-block:48px}
 .presentation-spatial .arcade-composition{gap:24px}
 .presentation-spatial .spatial-interlude-copy{max-width:620px}
 .presentation-spatial .spatial-object{max-width:580px}
}
@media(max-width:600px){
 .presentation-spatial .spatial-interlude{padding-block:44px}
 .presentation-spatial .spatial-interlude-copy h2{font-size:clamp(29px,8vw,34px)}
 .presentation-spatial .spatial-interlude-copy>p:last-child{font-size:18px;line-height:1.7;margin-top:21px}
 .presentation-spatial .spatial-object{max-width:460px}
 .presentation-spatial .construction-stages{margin-inline:0;gap:5px;font-size:10px}
 .presentation-spatial .spatial-object .spatial-caption{font-size:11px;margin-top:14px;max-width:36ch;margin-inline:auto}
 .presentation-spatial .selected-grid button.project-image-link.is-ribbon-ready[data-ribbon-slot]>img.project-thumbnail{clip-path:inset(0 0 calc((1 - var(--ribbon-progress,1))*4%) 0)!important}
}
@media(prefers-reduced-motion:reduce){
 .presentation-spatial .spatial-interlude{min-height:0}
 .presentation-spatial .selected-grid button.project-image-link.is-ribbon-ready[data-ribbon-slot]>img.project-thumbnail{opacity:1!important;clip-path:none!important}
}
.presentation-spatial .selected-grid button.project-image-link.is-ribbon-ready[data-ribbon-slot]:focus-visible>img.project-thumbnail{opacity:1!important;clip-path:none!important}


/* Spatial16: an in-place, measured arcade; only this drawing is restyled. */
.presentation-spatial .spatial-object-drawing path:not(.spatial-occluder){fill:none;stroke-linecap:round;stroke-linejoin:round}
.presentation-spatial .spatial-object-drawing .spatial-frame,.presentation-spatial .spatial-object-drawing .spatial-arches{stroke:#805c3b;stroke-width:.82;stroke-opacity:.86;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-frame{opacity:var(--pavilion-datum,1)}
.presentation-spatial .spatial-object-drawing .spatial-grid{stroke:#94714c;stroke-width:.58;stroke-opacity:.44;opacity:var(--pavilion-grid,0)}
.presentation-spatial .spatial-object-drawing .spatial-walls{stroke:#805c3b;stroke-width:.72;stroke-opacity:.76;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-reveals{stroke:#94714c;stroke-width:.58;stroke-opacity:.48;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-courtNear{stroke:#94714c;stroke-width:.48;stroke-opacity:.39;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-backWalls{stroke:#94714c;stroke-width:.62;stroke-opacity:.40;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-backReveals,.presentation-spatial .spatial-object-drawing .spatial-courtFar{stroke:#94714c;stroke-width:.48;stroke-opacity:.22;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-floor{stroke:#94714c;stroke-width:.5;stroke-opacity:.26;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-courtyard{stroke:#94714c;stroke-width:.55;stroke-opacity:.35;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-columns,.presentation-spatial .spatial-object-drawing .spatial-roofLine{stroke:#805c3b;stroke-width:.58;stroke-opacity:.60;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-roofEdges{stroke:#805c3b;stroke-width:.72;stroke-opacity:.68;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-innerEaves{stroke:#94714c;stroke-width:.6;stroke-opacity:.48;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-eaves,.presentation-spatial .spatial-object-drawing .spatial-slabs{stroke:#94714c;stroke-width:.48;stroke-opacity:.32;opacity:1}
.presentation-spatial .spatial-object-drawing .spatial-occluder{fill:#000;stroke:none;opacity:var(--pavilion-mass,1)}

/* Spatial 19: browser-reviewed controls, captions, atlas and interaction timing. */
:root{--motion-fast:180ms;--motion-control:280ms;--motion-ease:cubic-bezier(.2,.7,.2,1)}
html{scrollbar-gutter:stable}
.site-header,.button{transition-duration:var(--motion-control);transition-timing-function:var(--motion-ease)}
.text-link,.text-link:hover{gap:16px;transition:color var(--motion-fast) ease}
.presentation-spatial .text-link,.presentation-spatial .text-link:hover{gap:16px}
.text-link>.icon{transition:transform var(--motion-control) var(--motion-ease)}
.text-link:hover>.icon{transform:translateX(3px)}
.site-header .languages a{min-width:30px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.site-header .brand{flex:0 1 auto;min-width:0}
.site-header .menu-toggle{gap:10px}
.brand-name{white-space:nowrap}
.brand-line{font-size:9px;line-height:1.5;max-width:190px;white-space:normal;text-wrap:balance}
.site-footer .footer-bottom nav a,.site-footer .footer-linkedin{font-size:13px;line-height:1.6;min-height:44px;display:inline-flex;align-items:center}
.site-footer .footer-bottom nav{flex-wrap:wrap;gap:6px 22px}
.draft-status{font-size:12px;line-height:1.6;flex-wrap:wrap;gap:8px 14px}
.presentation-spatial{--reading:#4e574f}
.presentation-spatial .project-card-meta{font-size:12px;line-height:1.6}
.presentation-spatial :is(.selected-grid,.work-grid,.related-grid) .project-card-meta>span{width:auto;max-width:none;min-width:0;overflow-wrap:normal;hyphens:auto}
.presentation-spatial .project-card-link>p{font-size:16px;line-height:1.65}
.presentation-spatial .card-case-link{font-size:13px;line-height:1.6}
.presentation-spatial :is(.project-film-poster-credit,.programme-metric-note,.case-image-note){font-size:13px;line-height:1.65}
.presentation-spatial .hero-media-controls>button,.presentation-spatial .hero-media-controls>a{font-size:12px;line-height:1.6;min-height:44px}
.presentation-spatial .spatial-closing-film .scene-controls button,.presentation-spatial .spatial-closing-film .scene-controls>a{font-size:13px;line-height:1.6}
.presentation-spatial :is(input[type=search],input[type=email],textarea){font-size:16px}
.presentation-spatial :is(.page-intro,.section-heading,.case-story,.about-practice-intro) p{max-width:62ch}
.presentation-spatial :is(.project-card,.story-introduction,.story-country-panel,.story-map-column){min-width:0}
.presentation-spatial :is(.project-card h3,.story-country-heading h3,.story-project-focus h4){overflow-wrap:break-word}
.presentation-spatial .case-hero-copy{min-width:0;max-width:min(100%,1100px)}
.presentation-spatial .case-hero h1{overflow-wrap:anywhere;hyphens:auto}
.presentation-spatial .project-image-link img{transition:transform 600ms var(--motion-ease),filter 280ms ease}
.presentation-spatial .project-image-link:hover img{transform:scale(1.018)}
.presentation-spatial [data-ribbon-slot].is-ribbon-ready:not(.is-ribbon-complete):hover img{transform:none}
.presentation-spatial .project-perimeter{transition:opacity var(--motion-control) ease,color var(--motion-control) ease}
.presentation-spatial .construction-stages{font-size:11px}
.presentation-spatial .spatial-object .spatial-caption{font-size:12px;line-height:1.6;letter-spacing:.035em}

/* Keep the approved two columns and geography. No nested scrolling or extra runway. */
.presentation-spatial .story-composition{gap:24px 48px}
.presentation-spatial .story-country-panel{max-height:none;overflow:visible;overscroll-behavior:auto;scrollbar-gutter:auto;padding:22px 0 0;min-height:320px}
.presentation-spatial .story-country-heading{align-items:center;gap:14px;margin-bottom:12px}
.presentation-spatial .story-country-heading h3{font-size:23px;line-height:1.3;max-width:26ch}
.presentation-spatial .story-country-heading .eyebrow{font-size:11px;line-height:1.6;margin-bottom:5px}
.presentation-spatial .story-country-code{font-size:25px;padding-left:10px;align-self:stretch;display:flex;align-items:center}
.presentation-spatial .story-period{font:400 14px/1.6 var(--body-font);color:#51594f;margin:0}
.presentation-spatial .story-country-text{font:400 18px/1.65 var(--body-font);margin:12px 0 0;max-width:48ch}
.presentation-spatial .story-background-links,.presentation-spatial .story-project-links{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.presentation-spatial .story-background-links>.eyebrow,.presentation-spatial .story-project-links>.eyebrow{font-size:11px;margin-bottom:4px;color:#755031}
.presentation-spatial .story-background-links>a,.presentation-spatial .story-project-links>a,.presentation-spatial .story-more-projects a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;padding:10px 0;border-bottom:1px solid #b8ad99;color:var(--ink);font-size:15px;line-height:1.5}
.presentation-spatial .story-background-links strong{display:block;font-size:15px;line-height:1.45;font-weight:550}
.presentation-spatial .story-background-links small{display:block;font:400 14px/1.5 var(--body-font);color:#51594f;margin-top:3px}
.presentation-spatial .story-background-links .icon,.presentation-spatial .story-more-projects .icon{width:18px;height:18px}
.presentation-spatial .story-project-focus{margin:18px 0 0;padding:10px 14px;background:transparent}
.presentation-spatial .story-project-focus h4{font-size:22px;line-height:1.35;margin-top:10px}
.presentation-spatial .story-project-focus>p:not(.eyebrow){font:400 16px/1.6 var(--body-font);margin-top:8px}
.presentation-spatial .story-project-focus>.text-link{font-size:14px;min-height:44px;margin-top:6px}
.presentation-spatial .story-locations{border-top:1px solid var(--line);margin-top:16px}
.presentation-spatial :is(.story-locations,.story-more-projects)>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none;cursor:pointer;min-height:48px;padding:10px 0;font:500 14px/1.6 var(--font);color:#755031}
.presentation-spatial :is(.story-locations,.story-more-projects)>summary::-webkit-details-marker{display:none}
.presentation-spatial :is(.story-locations,.story-more-projects)>summary>span:last-child{font-size:20px;line-height:1;transition:transform var(--motion-control) var(--motion-ease)}
.presentation-spatial :is(.story-locations,.story-more-projects)[open]>summary>span:last-child{transform:rotate(45deg)}
.presentation-spatial .story-place-controls{gap:8px;margin:0 0 6px}
.presentation-spatial .story-place-controls button{font-size:14px;line-height:1.5;min-height:44px;padding:9px 13px;background:#e8e1d5;border-color:#99886e;transition:color var(--motion-control) ease,background var(--motion-control) ease,border-color var(--motion-control) ease}
.presentation-spatial .story-place-controls button[aria-pressed=true]{background:#223029;border-color:#223029;color:#f2eadf}
.presentation-spatial .story-country-controls button,.presentation-spatial .story-country-controls button:first-child{font-size:15px;min-height:50px;padding:11px 12px;gap:9px;transition:background var(--motion-control) ease,color var(--motion-control) ease}
.presentation-spatial .story-country-controls button[aria-pressed=true]{background:#223029;color:#f2eadf}
.presentation-spatial .story-country-controls button .mono{font-size:11px}
.presentation-spatial .story-map-frame{background:#223029;box-shadow:none}
.presentation-spatial .story-country{fill:#3b4a41;stroke:#81907f;stroke-width:.6;transition:fill 480ms var(--motion-ease),stroke 480ms var(--motion-ease)}
.presentation-spatial .story-country--egypt,.presentation-spatial .story-country--germany,.presentation-spatial .story-country--kuwait{fill:#58664f;stroke:#c5b291;stroke-width:.9}
.presentation-spatial .story-country.is-active{fill:#90794f;stroke:#f1d4a4;stroke-width:1.2}
.presentation-spatial .story-country:hover{stroke:#f1d4a4}
.presentation-spatial .story-country:focus-visible{fill:#a18b60;stroke:#fff2dd;stroke-width:1.8}
.presentation-spatial .story-place-marker{transition:opacity 320ms var(--motion-ease)}
.presentation-spatial .story-place-marker.is-selected .story-place-symbol{fill:#fff2dd;stroke:#fff2dd;stroke-width:.65}
.presentation-spatial .story-place-selection{fill:none;stroke:#edcea0;stroke-width:.4;opacity:0;transition:opacity 320ms ease}
.presentation-spatial .story-place-marker.is-selected .story-place-selection,.presentation-spatial .story-place-marker:focus-visible .story-place-selection{opacity:.9}
.presentation-spatial .story-country-anchor text,.presentation-spatial .story-place-marker text{fill:#f5ecdf;stroke:#223029;stroke-width:1.1}
.presentation-spatial .story-focus-geometry{opacity:.14;transition:none;pointer-events:none}
.presentation-spatial .story-graticule{opacity:.11}
.presentation-spatial .story-map-legend{font-size:13px;line-height:1.6;gap:7px 16px;left:18px;right:18px;bottom:15px;color:#f2e9db}
.presentation-spatial .story-map-legend>span{gap:7px;white-space:nowrap}
.presentation-spatial .story-map-legend i{width:7px;height:7px;flex:none}
.presentation-spatial .story-map-legend i.diamond{rotate:none;transform:rotate(45deg)}
.presentation-spatial .atlas-topline{font-size:11px;letter-spacing:.035em;line-height:1.5;left:18px;right:150px;top:20px;color:#e8d1b1}
.presentation-spatial .story-map-overview{font-size:14px;line-height:1.5;min-height:44px;max-width:138px;right:12px;top:12px;bottom:auto;padding:8px 12px;background:#223029;border-color:#ab9b80;color:#f2e9db}
.presentation-spatial .story-map-overview[aria-pressed=true]{border-color:#e4c38e}
.presentation-spatial .story-map-hint{font:400 15px/1.6 var(--body-font);margin-top:14px;color:var(--ink)}
.presentation-spatial .story-journey-note{font:400 14px/1.6 var(--body-font);margin-top:6px;color:#51594f}
.presentation-spatial .atlas-footer .text-link{font-size:14px}
.presentation-spatial .atlas-footer>a:last-child{font:400 13px/1.6 var(--body-font);min-height:44px;display:flex;align-items:center;color:#51594f}
.presentation-spatial :is(.story-country-controls button,.story-place-controls button,.story-locations>summary,.story-more-projects>summary):focus-visible{outline:2px solid #755031;outline-offset:4px}
.presentation-spatial .story-map-overview:focus-visible,.presentation-spatial :is(.home-hero,.spatial-closing-film) button:focus-visible{outline-color:#f2d1a0}
::view-transition-old(root){animation-duration:180ms;animation-timing-function:ease-out}
::view-transition-new(root){animation-duration:280ms;animation-timing-function:var(--motion-ease)}
@media(max-width:1100px){
 .presentation-spatial .story-composition{column-gap:34px}
 .presentation-spatial .story-map-legend{font-size:13px;gap:6px 12px}
}
@media(max-width:900px){
 .presentation-spatial .story-country-panel{min-height:0;padding-top:22px}
 .presentation-spatial .story-introduction>p:last-child{font-size:19px;line-height:1.65}
 .presentation-spatial .story-country-text{max-width:62ch}
 .presentation-spatial .story-composition{row-gap:24px}
}
@media(max-width:600px){
 .presentation-spatial .story-introduction>.eyebrow{font-size:11px;line-height:1.6}
 .presentation-spatial .story-introduction>p:last-child{font-size:18px}
 .presentation-spatial .story-country-controls button,.presentation-spatial .story-country-controls button:first-child{font-size:14px;padding:10px 5px;gap:5px}
 .presentation-spatial .story-country-controls button .mono{display:none}
 .presentation-spatial .story-map-frame{min-height:355px}
 .presentation-spatial .story-map{inset:62px 5px 88px;width:calc(100% - 10px);height:calc(100% - 150px)}
 .presentation-spatial .atlas-topline{font-size:10px;left:14px;right:145px;top:18px;max-width:140px}
 .presentation-spatial .story-map-overview{font-size:13px;right:10px;max-width:134px}
 .presentation-spatial .story-map-legend{left:14px;right:14px;font-size:13px;gap:6px 12px;bottom:14px}
 .presentation-spatial .story-country-heading h3{font-size:22px}
 .presentation-spatial .story-country-code{font-size:24px}
 .presentation-spatial .story-country-text{font-size:18px}
 .presentation-spatial .hero-media-controls>button,.presentation-spatial .hero-media-controls>a{font-size:12px}
 .presentation-spatial .spatial-closing-film .scene-controls button,.presentation-spatial .spatial-closing-film .scene-controls>a{font-size:12px}
 .presentation-spatial .project-card-meta{font-size:11px}
 .site-footer .footer-bottom nav{gap:4px 18px}
}
@media(hover:none){.presentation-spatial .project-image-link:hover img{transform:none}.text-link:hover>.icon{transform:none}}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .site-header,.button,.text-link>.icon,.presentation-spatial .project-image-link img,.presentation-spatial .project-perimeter,.presentation-spatial .story-country,.presentation-spatial .story-place-marker,.presentation-spatial .story-place-selection,.presentation-spatial .story-country-controls button,.presentation-spatial .story-place-controls button,.presentation-spatial summary>span:last-child{transition:none!important}
 .text-link:hover>.icon,.presentation-spatial .project-image-link:hover img{transform:none}
 ::view-transition-old(root),::view-transition-new(root){animation:none!important}
}

/* Spatial 20: a calmer editorial rhythm, with the approved photographs and model. */
.presentation-spatial :is(.intro-section,.home-expertise,.career-preview,.education-section--compact,.closing-cta){padding-inline:max(var(--gutter),calc((100% - 1240px)/2))}
.presentation-spatial .intro-layout{column-gap:8%;align-items:start}
.presentation-spatial .intro-copy>.lead{font-size:23px;line-height:1.65}
.presentation-spatial .intro-copy>p:not(.lead){font-size:19px;line-height:1.7}
.presentation-spatial .intro-copy>.text-link{margin-top:22px}
.presentation-spatial .career-mini-row{min-height:100px}
.presentation-spatial .career-mini-row small{font-size:14px;line-height:1.6}
.presentation-spatial .career-mini-row>.mono{font-size:12px;line-height:1.6}
.presentation-spatial .home-expertise{background:linear-gradient(180deg,#dcd3c3,#d9cfbf)}

/* The nth-child reset used to outrank the subgrid's row spacing. */
@supports(grid-template-rows:subgrid){
 .presentation-spatial .selected-grid .project-card:nth-child(n),
 .presentation-spatial .work-grid .project-card:nth-child(n){padding-bottom:40px}
}
.presentation-spatial .education-section--compact{padding-block:48px 54px}
.presentation-spatial .education-section--compact .section-heading{align-items:start;margin-bottom:28px;gap:32px}
.presentation-spatial .education-section--compact .section-heading h2{font-size:clamp(28px,2.7vw,38px);line-height:1.25;max-width:24ch}
.presentation-spatial .education-section--compact .section-heading>p{font-size:18px;line-height:1.65;max-width:42ch}
.presentation-spatial .education-section--compact .education-grid{gap:32px}
.presentation-spatial .education-section--compact .education-record{padding:20px 0 0}
.presentation-spatial .education-section--compact .education-record .eyebrow{margin-bottom:14px}
.presentation-spatial .education-section--compact .education-record h3{font-size:24px;line-height:1.35;margin-bottom:10px}
.presentation-spatial .education-section--compact .education-record>.education-award{font-size:18px;line-height:1.55;margin-bottom:12px}
.presentation-spatial .education-section--compact .education-location{font-size:14px;line-height:1.6;margin:0}
.presentation-spatial .education-section--compact>.text-link{margin-top:24px}

/* Category buttons on desktop, a complete native picker on small screens. */
.project-category-select{display:none}
.presentation-spatial .filter-row{gap:12px 20px}
.presentation-spatial .filter-row button{font-size:13px;line-height:1.6;min-height:44px}
.presentation-spatial .results-heading{font-size:12px;line-height:1.6}
.presentation-spatial .project-film-trigger small{font-size:12px;line-height:1.55}
.presentation-spatial .project-film-controls{font-size:13px;line-height:1.6}
.presentation-spatial .project-film-trigger{max-width:calc(100% - 32px)}
.presentation-spatial .contact-page{align-items:start;column-gap:8%}
.presentation-spatial .contact-intro{align-self:start}
.presentation-spatial .copy-email{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.presentation-spatial .copy-email>.icon{width:22px;height:22px}
.presentation-spatial .contact-actions>article>p{max-width:42ch}
.presentation-spatial .contact-actions .mono{font-size:12px;line-height:1.6}
@media(min-width:1000px){
 .presentation-spatial .home-expertise .expertise-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px;align-items:start}
 .presentation-spatial .home-expertise .expertise-row summary{grid-template-columns:28px minmax(0,1fr) 24px;gap:18px;min-height:98px;padding:24px 0}
 .presentation-spatial .home-expertise .expertise-row summary h3{font-size:26px;line-height:1.35;letter-spacing:-.025em}
 .presentation-spatial .home-expertise .expertise-detail{display:block;padding:0 0 28px 46px}
 .presentation-spatial .home-expertise .expertise-detail>p{font-size:18px;line-height:1.65;margin-bottom:18px}
 .presentation-spatial .home-expertise .expertise-detail li{font-size:15px;line-height:1.6}
 .presentation-spatial .home-expertise .expertise-row:nth-last-child(-n+2){border-bottom:1px solid #bfc3b8}
}
@media(max-width:900px){
 .presentation-spatial .intro-copy>.lead{font-size:21px}
 .presentation-spatial .intro-copy>p:not(.lead){font-size:18px}
 .presentation-spatial .education-section--compact .section-heading{display:block}
 .presentation-spatial .education-section--compact .section-heading>p{margin-top:18px}
}
@media(max-width:650px){
 .presentation-spatial .filter-row{display:none}
 .presentation-spatial .project-category-select{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:16px 0 4px;color:var(--ink);font:400 13px/1.6 var(--body-font)}
 .presentation-spatial .project-category-select select{min-width:0;width:100%;min-height:46px;padding:8px 30px 8px 12px;border:1px solid #a99980;border-radius:0;background:var(--paper);color:var(--ink);font:400 16px/1.5 var(--body-font)}
 .presentation-spatial .project-category-select select:focus-visible{outline:2px solid #755031;outline-offset:3px}
}
@media(max-width:600px){
 .presentation-spatial .intro-copy>.lead{font-size:20px}
 .presentation-spatial .intro-copy>p:not(.lead){font-size:18px}
 .presentation-spatial .career-mini-row{grid-template-columns:82px minmax(0,1fr) 20px;gap:12px}
 .presentation-spatial .career-mini-row>.mono{font-size:11px}
 .presentation-spatial .career-mini-row small{font-size:13px}
 .presentation-spatial .education-section--compact{padding-block:40px 46px}
 .presentation-spatial .education-section--compact .education-grid{gap:24px}
 .presentation-spatial .education-section--compact .education-record h3{font-size:23px}
 .presentation-spatial .project-film-trigger small{font-size:11px}
 .presentation-spatial .project-film-trigger{left:12px;bottom:12px;max-width:calc(100% - 24px)}
}

/* Spatial 21: image-led cases, complete drawings and deliberate native limits. */
.presentation-spatial .case-study:not(.case-study--archive) .case-hero-photo img{object-position:var(--case-image-position,50% 54%)}
.presentation-spatial .case-study .case-hero--portrait{max-height:none}
.presentation-spatial .case-hero--portrait{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.88fr);gap:18px 48px;align-items:center;height:auto;min-height:720px;max-height:none;padding:144px max(var(--gutter),calc((100% - 1240px)/2)) 48px}
.presentation-spatial .case-hero--portrait .case-hero-copy{grid-column:1;grid-row:1;padding:0;width:100%;max-width:none}
.presentation-spatial .case-hero--portrait h1{font-size:clamp(38px,4.1vw,60px);line-height:1.15;text-wrap:balance}
.presentation-spatial .case-hero--portrait .case-hero-copy>p:last-child{max-width:36ch}
.presentation-spatial .case-hero--portrait .case-hero-photo{position:relative;inset:auto;grid-column:2;grid-row:1;width:100%;max-width:520px;justify-self:end;height:auto;aspect-ratio:4/5;min-height:0;overflow:hidden;transform:none;clip-path:none}
.presentation-spatial .case-hero--portrait .case-hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:none}
.presentation-spatial .case-hero--portrait .case-shade{display:none}
.presentation-spatial .case-hero--portrait .case-hero-location{position:static;grid-column:2;grid-row:2;justify-self:end;margin:0;transform:none;line-height:1.6}
.presentation-spatial .case-hero--archive .case-hero-photo{padding:0;min-height:0;background:transparent;border:0;box-shadow:none}
.presentation-spatial .case-hero--archive .case-hero-photo>img{box-shadow:none}
.presentation-spatial .case-gallery-images{align-items:start;gap:48px 36px}
.presentation-spatial .case-gallery-images .artwork-figure{min-width:0;max-width:min(100%,var(--portfolio-max-width,100%),var(--gallery-native-width));justify-self:center;width:100%}
.presentation-spatial .case-gallery-images .artwork-open{display:block;min-height:0;padding:0;background:transparent;width:100%;max-width:100%;overflow:hidden}
.presentation-spatial .case-gallery-images img.artwork{display:block;width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain;margin:0}
.presentation-spatial .case-gallery-images .portfolio-drawing .artwork-open{background:#eee9e0}
.presentation-spatial :is(.case-gallery-images,.boards-grid) .artwork-open-label{position:relative;inset:auto;display:flex;justify-content:flex-end;align-items:center;gap:14px;width:100%;min-height:44px;background:transparent;color:var(--ink);padding:10px 0 0;font-size:12px}
.presentation-spatial :is(.case-gallery-images,.boards-grid) .artwork-open-label .icon{width:18px;height:18px}
.presentation-spatial .case-gallery-images figcaption{max-width:100%;font-size:14px;line-height:1.65;margin-top:12px}
.presentation-spatial .case-gallery-images .gallery-credit{font-size:12px;line-height:1.65}
.presentation-spatial .boards-grid{align-items:start}
.presentation-spatial .boards-grid .artwork-figure{padding:0;min-width:0;max-width:100%;background:transparent}
.presentation-spatial .boards-grid .artwork-open{padding:0;min-height:0;background:transparent;width:100%;overflow:hidden}
.presentation-spatial .boards-grid img.artwork{width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain}
.presentation-spatial .boards-grid figcaption{font-size:13px;line-height:1.65;margin-top:12px}
.presentation-spatial .source-image-window{display:block;position:relative;overflow:hidden;width:100%;max-width:var(--window-width);aspect-ratio:var(--window-ratio);margin-inline:auto}
.presentation-spatial .source-image-window img{position:absolute;left:var(--source-left);top:var(--source-top);width:var(--source-width)!important;height:var(--source-height)!important;max-width:none!important;max-height:none!important;margin:0!important;object-fit:fill!important;box-shadow:none!important}
/* Optical clarity, retaining the exact centred model and in-place tracing. */
.presentation-spatial .spatial-object-drawing .spatial-walls{stroke-width:.8;stroke-opacity:.84}
.presentation-spatial .spatial-object-drawing :is(.spatial-columns,.spatial-roofLine){stroke-width:.64;stroke-opacity:.68}
.presentation-spatial .construction-stages{font-size:12px;line-height:1.5}
.presentation-spatial .construction-stages li.is-current{font-weight:600}
@media(max-width:1100px) and (min-width:651px){
 .presentation-spatial .case-hero--portrait{gap:28px;padding-top:130px;min-height:640px}
 .presentation-spatial .case-hero--portrait h1{font-size:clamp(34px,4.5vw,46px)}
 .presentation-spatial .case-hero--portrait .case-hero-copy>p:last-child{font-size:19px}
}
@media(max-width:900px){
 .presentation-spatial .case-study:not(.case-study--archive) .case-hero-photo img{object-position:var(--case-mobile-position,50% 54%)}
 .presentation-spatial .case-hero:not(.case-hero--archive):not(.case-hero--portrait){display:flex;flex-direction:column;align-items:stretch;height:auto;min-height:0;max-height:none;padding:96px 0 0}
 .presentation-spatial .case-hero:not(.case-hero--archive):not(.case-hero--portrait) .case-hero-photo{position:relative;inset:auto;order:0;width:100%;height:auto;aspect-ratio:16/10;transform:none;clip-path:none}
 .presentation-spatial .case-hero:not(.case-hero--archive):not(.case-hero--portrait) .case-shade{display:none}
 .presentation-spatial .case-hero:not(.case-hero--archive):not(.case-hero--portrait) .case-hero-copy{order:1;padding:30px var(--gutter) 0;width:100%;max-width:100%}
 .presentation-spatial .case-hero:not(.case-hero--archive):not(.case-hero--portrait) .back-link{margin-bottom:22px}
 .presentation-spatial .case-hero:not(.case-hero--archive):not(.case-hero--portrait) .case-hero-location{position:static;order:2;padding:20px var(--gutter) 28px}
 .presentation-spatial .case-hero:not(.case-hero--archive):not(.case-hero--portrait) h1{font-size:clamp(34px,5.6vw,49px);line-height:1.18;text-wrap:balance}
 .presentation-spatial .case-gallery-images{gap:38px}
}
@media(max-width:650px){
 .presentation-spatial .case-hero--portrait{display:flex;flex-direction:column;align-items:stretch;gap:24px;min-height:0;padding:110px var(--gutter) 28px}
 .presentation-spatial .case-hero--portrait .case-hero-copy{order:0}
 .presentation-spatial .case-hero--portrait .back-link{margin-bottom:24px}
 .presentation-spatial .case-hero--portrait h1{font-size:36px}
 .presentation-spatial .case-hero--portrait .case-hero-photo{order:1;max-width:440px;align-self:center;aspect-ratio:4/5}
 .presentation-spatial .case-hero--portrait .case-hero-location{order:2;align-self:start;margin:0}
 .presentation-spatial .case-gallery-images figcaption{font-size:13px}
 .presentation-spatial .construction-stages{font-size:11px}
}
.presentation-spatial .hero-photo :is(.hero-poster,.hero-video){object-position:61% 50%}

/* Release privacy notice remains outside the image and playback controls. */
.project-film-privacy{max-width:76ch;font-size:.875rem;line-height:1.65;margin:0 0 2rem;color:var(--ink,#252923)}
.project-film-privacy a{text-decoration:underline;text-underline-offset:.2em}
.legal-copy a{overflow-wrap:anywhere}
/* Give legal headings breathing room below Atelier's fixed navigation. */
.section.legal-page{padding-top:160px}
@media(max-width:600px){.section.legal-page{padding-top:120px}}

/* Spatial 22 / Atelier. Independent edition; the original Spatial 21 is unchanged. */
:root{--paper:#eee8dd;--ink:#222b25;--bronze:#765439;--atelier-rule:rgba(90,74,53,.25)}
.presentation-spatial{background:var(--paper);--stone:#eee8dd;--reading:#4e574f}
.presentation-spatial :is(.section,.pmo-feature){padding-inline:max(var(--gutter),calc((100% - 1240px)/2))}
.site-header,.site-footer{padding-inline:max(var(--gutter),calc((100% - 1240px)/2))}
.presentation-spatial .section-spatial-plane{display:none}
.presentation-spatial .closing-geometry{display:none}
.presentation-spatial :is(h1,h2,h3){text-wrap:balance}
.presentation-spatial .eyebrow{font-size:11px;line-height:1.6;letter-spacing:.12em}
.presentation-spatial .section-heading{align-items:start;gap:40px;margin-bottom:36px}
.presentation-spatial .section-heading h2{font-size:clamp(34px,3.3vw,48px);line-height:1.2;letter-spacing:-.045em}
.presentation-spatial .section-heading>div+div>p{font-size:18px;line-height:1.6}
.presentation-spatial :is(.home-expertise,.career-preview,.education-section,.international-story,.selected-section){background:var(--paper)}
.presentation-spatial .home-expertise{border-top:1px solid var(--atelier-rule)}
.presentation-spatial .text-link{font-size:14px;line-height:1.5;min-height:44px}
.presentation-spatial .button{font-size:13px;min-height:48px;padding:14px 21px}
.presentation-spatial .atelier-hero{display:grid;grid-template-columns:1fr 1fr;position:relative;height:min(92svh,930px);min-height:740px;max-height:none;padding:86px 0 0;background:var(--paper);color:var(--ink);overflow:hidden}
.presentation-spatial .atelier-hero .hero-copy{grid-column:1;grid-row:1;position:relative;z-index:2;width:100%;max-width:none;padding:66px 48px 36px max(var(--gutter),calc((100vw - 1240px)/2));display:flex;flex-direction:column;justify-content:center;transform:none;opacity:1}
.presentation-spatial .atelier-hero .hero-copy>.eyebrow{color:var(--bronze);margin-bottom:31px;display:flex;gap:16px;align-items:center}
.presentation-spatial .atelier-hero .hero-copy>.eyebrow:before{content:'';width:42px;height:1px;background:currentColor;transform-origin:left;animation:atelier-rule 700ms ease both}
.presentation-spatial .atelier-hero h1{font-size:clamp(39px,4.05vw,59px);line-height:1.14;letter-spacing:-.055em;max-width:13.8em;margin:0;color:var(--ink)}
.presentation-spatial .atelier-hero h1 em{font-size:1em;color:var(--bronze)}
.presentation-spatial .atelier-hero .hero-positioning{color:#4e574f;font-size:14px;line-height:1.7;max-width:none;margin:27px 0 0;letter-spacing:0}
.presentation-spatial .atelier-hero .hero-bottom{display:block;margin-top:26px}
.presentation-spatial .atelier-hero .hero-bottom>p{color:#4e574f;max-width:38ch;font-size:19px;line-height:1.6;margin:0 0 28px}
.presentation-spatial .atelier-hero .hero-actions{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}
.presentation-spatial .atelier-hero .hero-actions .text-link{color:var(--ink)}
.presentation-spatial .atelier-hero .scroll-link{color:#4e574f;font-size:12px;line-height:1.5;margin-top:45px;align-self:flex-start;min-height:44px}
.presentation-spatial .atelier-hero .hero-photo{grid-column:2;grid-row:1;position:relative;inset:auto;width:100%;height:100%;margin:0;transform:none;clip-path:none;overflow:hidden}
.presentation-spatial .atelier-hero .hero-photo img,.presentation-spatial .atelier-hero .hero-photo video{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:61% 50%;filter:none;transform:none;scale:1}
.presentation-spatial .atelier-hero .hero-photo:after{content:'';position:absolute;inset:55% 0 0;pointer-events:none;background:linear-gradient(transparent,rgba(15,25,20,.82))}
.atelier-film-label{position:absolute;top:27px;left:28px;right:28px;z-index:2;display:flex;justify-content:space-between;gap:14px;font-size:11px;line-height:1.5;color:white;text-shadow:0 1px 5px #111;background:rgba(20,30,23,.3);padding:10px 12px;border-top:1px solid rgba(255,255,255,.55)}
.presentation-spatial .atelier-hero .hero-media-controls{position:absolute;z-index:4;left:calc(50% + 28px);right:28px;bottom:26px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 18px;color:#fff;background:none;padding:0}
.presentation-spatial .atelier-hero .hero-media-controls>a,.presentation-spatial .atelier-hero .hero-media-controls>button{color:white;font-size:12px;max-width:none}
.presentation-spatial .credential-ribbon{background:var(--paper);color:var(--ink);padding:20px max(var(--gutter),calc((100% - 1240px)/2));border-bottom:1px solid var(--atelier-rule);font-size:13px}
.presentation-spatial .credential-ribbon p,.presentation-spatial .credential-ribbon>span{color:#4e574f;font-size:13px;line-height:1.7}
.presentation-spatial .intro-section{padding-block:72px 54px}
.presentation-spatial .intro-layout{grid-template-columns:.88fr 1.22fr;gap:7%;margin-top:30px}
.presentation-spatial .intro-layout h2{font-size:clamp(35px,3.4vw,49px);line-height:1.2}
.presentation-spatial .intro-copy>.lead{font-size:22px;line-height:1.6}
.presentation-spatial .intro-copy>p:not(.lead){font-size:18px;line-height:1.7}
.presentation-spatial .metrics{margin-top:42px;padding-top:25px}
.presentation-spatial .metrics strong{font-size:55px;line-height:1.15}
.presentation-spatial .metrics .pmp-metric{font-size:39px}
.presentation-spatial .metrics>div>span{font-size:13px;line-height:1.6}
.presentation-spatial .international-story{padding-top:40px;padding-bottom:38px}
.presentation-spatial .story-introduction h2{font-size:clamp(33px,3.2vw,46px);line-height:1.22}
.presentation-spatial .story-introduction>p:not(.eyebrow){font-size:18px;line-height:1.7}
.presentation-spatial .story-country-panel{border-top:1px solid var(--atelier-rule);padding-top:22px}
.presentation-spatial .atlas-footer{border-color:var(--atelier-rule)}
.presentation-spatial .spatial-interlude{background:var(--paper);padding-top:48px;padding-bottom:60px;min-height:clamp(570px,79svh,770px)}
.presentation-spatial .arcade-composition{max-width:1240px;margin-inline:auto;border-top:1px solid var(--atelier-rule);padding-top:36px;grid-template-columns:.88fr 1.22fr;gap:5%;align-items:center}
.presentation-spatial .spatial-interlude-copy{max-width:none}
.presentation-spatial .spatial-interlude-copy h2{font-size:clamp(33px,3.2vw,46px);line-height:1.2;margin-bottom:22px}
.presentation-spatial .spatial-interlude-copy>p:not(.eyebrow){font-size:18px;line-height:1.7;max-width:42ch}
.presentation-spatial .spatial-object{width:100%;max-width:none;margin:0}
.presentation-spatial .construction-stages{margin-top:16px}
.presentation-spatial .construction-stages li{font-size:12px;line-height:1.55}
.presentation-spatial .spatial-caption{font-size:10px;line-height:1.6;letter-spacing:.08em;margin-top:15px}
.presentation-spatial .selected-section{padding-block:30px 66px}
.presentation-spatial .selected-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 36px;max-width:1240px;margin-inline:auto}
.presentation-spatial .selected-grid .project-card:nth-child(n){display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);grid-template-rows:1fr;grid-row:auto;gap:22px;align-items:start;padding:0 0 28px;margin:0;transform:none;max-width:none;border-bottom:1px solid var(--atelier-rule)}
.presentation-spatial .selected-grid .project-image-module{grid-column:1;grid-row:1;align-self:start;width:100%;margin:0}
.presentation-spatial .selected-grid .project-card-link{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-self:stretch;gap:0;padding:0;border:0;min-width:0}
.presentation-spatial .selected-grid .project-card-meta{display:block;margin:0 0 11px;font-size:11px;line-height:1.65;letter-spacing:.025em;color:#5b645b}
.presentation-spatial .selected-grid .project-card-meta>span{display:block;width:auto;max-width:none;text-align:left!important}
.presentation-spatial .selected-grid .project-card-meta>span+span{margin-top:4px}
.presentation-spatial .selected-grid .project-card h3{font-size:21px;line-height:1.3;margin:0 0 12px;min-height:0;letter-spacing:-.025em}
.presentation-spatial .selected-grid .project-card-link>p{font-size:16px;line-height:1.6;margin:0 0 16px;min-height:0}
.presentation-spatial .selected-grid .card-case-link{margin-top:auto;padding:0;min-height:36px;border:0;font-size:12px}
.presentation-spatial :is(.selected-grid,.work-grid,.related-grid) .project-perimeter{inset:-3px;width:calc(100% + 6px);height:calc(100% + 6px)}
.presentation-spatial .project-perimeter path{stroke-width:.7;stroke:var(--bronze);vector-effect:non-scaling-stroke}
.presentation-spatial .project-image-link img{transition:transform 500ms cubic-bezier(.2,.7,.2,1)}
.presentation-spatial .project-image-index{font-size:11px;background:rgba(20,28,22,.72);padding:5px 8px;color:white;left:10px;top:10px}
.presentation-spatial .work-grid{gap:36px 30px}
.presentation-spatial .work-grid .project-card h3{font-size:23px;line-height:1.32}
.presentation-spatial .home-expertise{padding-block:62px}
.presentation-spatial .atelier-pmo{background:#222b25;color:#eee8dd;display:grid;grid-template-columns:1fr 1fr;gap:0 64px;min-height:0;padding-block:58px 34px}
.presentation-spatial .atelier-pmo .pmo-copy{grid-column:1;grid-row:1;padding:12px 0 24px;align-self:center}
.presentation-spatial .atelier-pmo .pmo-copy>.eyebrow{font-size:11px;color:#dfbd92;margin:0 0 25px}
.presentation-spatial .atelier-pmo .section-number{color:#dfbd92}
.presentation-spatial .atelier-pmo h2{font-size:clamp(34px,3.15vw,46px);line-height:1.22;margin:0 0 22px}
.presentation-spatial .atelier-pmo .pmo-copy>p:not(.eyebrow){font-size:19px;line-height:1.7;color:#e1ddd2;max-width:45ch}
.presentation-spatial .atelier-pmo .pmo-copy>.text-link{display:inline-flex;color:#eee8dd;margin-top:23px}
.presentation-spatial .atelier-pmo .pmo-copy>small{font-size:12px;line-height:1.65;color:#c8cec3;max-width:48ch;margin-top:20px}
.presentation-spatial .atelier-pmo .pmo-image{grid-column:2;grid-row:1;position:relative;margin:0;align-self:center;height:auto;min-height:0;overflow:visible}
.presentation-spatial .atelier-pmo .pmo-image img{position:static;display:block;width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;object-position:50% 50%;filter:none}
.presentation-spatial .atelier-pmo figcaption{font-size:12px;line-height:1.55;color:#c8cec3;padding:12px 0 0}
.atelier-pmo-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;list-style:none;margin:32px 0 0;padding:23px 0 0;border-top:1px solid #687262}
.atelier-pmo-fields li{display:flex;gap:20px;font-size:16px;line-height:1.5;color:#eee8dd}
.atelier-pmo-fields .mono{font-size:11px;color:#dfbd92;padding-top:4px}
.presentation-spatial .career-preview{padding-block:66px;column-gap:7%}
.presentation-spatial .career-preview h2{font-size:clamp(33px,3.2vw,46px);line-height:1.25}
.presentation-spatial .career-preview>div>p:not(.eyebrow){font-size:18px;line-height:1.7;max-width:40ch}
.presentation-spatial .career-mini-row{min-height:97px;font-size:19px;gap:18px}
.presentation-spatial .education-section--compact{border-top:1px solid var(--atelier-rule);padding-block:42px 54px}
.presentation-spatial .closing-cta{background:var(--paper);padding-block:64px 48px}
.presentation-spatial .closing-cta h2{font-size:clamp(40px,5vw,70px);line-height:1.12}
.presentation-spatial .closing-email{font-size:clamp(18px,2vw,25px)}
.presentation-spatial .closing-cta .atelier-contact-links{display:flex;gap:18px 30px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--atelier-rule);padding-top:22px;margin-top:32px;font-size:14px;color:#4e574f}
.atelier-contact-links a{display:inline-flex;gap:12px;min-height:44px;align-items:center}
.atelier-contact-links .icon{width:18px;height:18px}
.atelier-contact-links>span{margin-left:auto}
.presentation-spatial .page-intro{padding-top:142px;padding-bottom:42px;background:var(--paper)}
.presentation-spatial .page-intro h1{font-size:clamp(40px,4.6vw,65px);line-height:1.16;letter-spacing:-.045em}
.presentation-spatial .page-intro .lead{font-size:20px;line-height:1.65}
.presentation-spatial :is(.about-practice,.about-practice-intro,.project-films){max-width:none;margin-inline:0}
.presentation-spatial .about-practice-intro h1,.presentation-spatial .about-practice-intro h2{font-size:clamp(37px,4vw,57px);line-height:1.2}
.presentation-spatial .project-film-trigger{backdrop-filter:none;background:rgba(24,34,26,.9)}
.presentation-spatial .project-film h3{font-size:26px;line-height:1.3}
.presentation-spatial .about-contact{background:var(--paper)}
@keyframes atelier-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes atelier-page-in{from{opacity:0}to{opacity:1}}
@keyframes atelier-page-out{from{opacity:1}to{opacity:0}}
::view-transition-old(root){animation:180ms ease both atelier-page-out;clip-path:none}
::view-transition-new(root){animation:260ms ease both atelier-page-in;clip-path:none}
@media(max-width:1100px){
 .presentation-spatial .atelier-hero .hero-copy{padding-right:30px;padding-top:45px}
 .presentation-spatial .atelier-hero h1{font-size:clamp(34px,4.3vw,46px)}
 .presentation-spatial .atelier-pmo{column-gap:36px}
}
@media(max-width:1000px){
 .presentation-spatial .selected-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 .presentation-spatial .selected-grid .project-card:nth-child(n){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;padding-bottom:30px}
 .presentation-spatial .selected-grid .project-card h3{font-size:26px}
}
@media(max-width:900px){
 .presentation-spatial .arcade-composition{grid-template-columns:minmax(0,1fr);gap:28px;max-width:700px}
 .presentation-spatial .spatial-interlude{min-height:calc(100svh + 10px);padding-top:40px}
 .presentation-spatial .spatial-interlude-copy{max-width:560px}
 .presentation-spatial .spatial-object{max-width:700px}
 .presentation-spatial .intro-layout{grid-template-columns:1fr;gap:28px}
 .presentation-spatial .intro-copy{max-width:64ch}
 .presentation-spatial .atelier-hero .hero-bottom>p{font-size:18px}
 .presentation-spatial .atelier-hero .hero-actions{gap:8px 18px}
 .presentation-spatial .atelier-hero .hero-actions .text-link{font-size:13px}
 .atelier-film-label{left:18px;right:18px;font-size:10px;display:block}
 .atelier-film-label span{display:block;margin-top:4px}
 .presentation-spatial .atelier-hero .hero-media-controls{left:calc(50% + 18px);right:18px;bottom:18px}
}
@media(max-width:700px){
 .presentation-spatial .atelier-hero{grid-template-columns:1fr;grid-template-rows:auto auto auto;height:auto;min-height:0;padding-top:79px;overflow:clip}
 .presentation-spatial .atelier-hero .hero-copy{grid-column:1;grid-row:1;padding:42px var(--gutter) 32px;max-width:560px;margin:auto}
 .presentation-spatial .atelier-hero h1{font-size:clamp(33px,8.1vw,46px);line-height:1.16;letter-spacing:-.045em}
 .presentation-spatial .atelier-hero .hero-copy>.eyebrow{margin-bottom:22px}
 .presentation-spatial .atelier-hero .hero-positioning{margin-top:23px;font-size:13px;max-width:none}
 .presentation-spatial .atelier-hero .hero-bottom{margin-top:22px}
 .presentation-spatial .atelier-hero .hero-bottom>p{font-size:18px;line-height:1.6;margin-bottom:24px}
 .presentation-spatial .atelier-hero .hero-actions{gap:12px 22px}
 .presentation-spatial .atelier-hero .hero-actions .button{font-size:12px}
 .presentation-spatial .atelier-hero .scroll-link{margin-top:23px;font-size:12px}
 .presentation-spatial .atelier-hero .hero-photo{grid-column:1;grid-row:2;width:100%;height:auto;aspect-ratio:16/10}
 .presentation-spatial .atelier-hero .hero-photo:after{display:none}
 .atelier-film-label{top:16px;left:var(--gutter);right:var(--gutter);display:flex;font-size:10px}
 .atelier-film-label span{margin:0}
 .presentation-spatial .atelier-hero .hero-media-controls{grid-column:1;grid-row:3;position:relative;inset:auto;background:#222b25;padding:6px var(--gutter);min-height:56px;align-items:center;gap:5px 14px}
 .presentation-spatial .atelier-hero .hero-media-controls>a{max-width:52%;font-size:11px;text-align:right}
 .presentation-spatial .credential-ribbon{padding-block:19px;gap:10px}
 .presentation-spatial .credential-ribbon p,.presentation-spatial .credential-ribbon>span{font-size:12px}
 .presentation-spatial .intro-section{padding-block:46px}
 .presentation-spatial .intro-layout h2{font-size:34px}
 .presentation-spatial .intro-copy>.lead{font-size:20px}
 .presentation-spatial .intro-copy>p:not(.lead){font-size:17px}
 .presentation-spatial .metrics strong{font-size:43px}
 .presentation-spatial .metrics .pmp-metric{font-size:32px}
 .presentation-spatial .metrics>div>span{font-size:12px}
 .presentation-spatial .section-heading{margin-bottom:28px}
 .presentation-spatial .section-heading h2{font-size:34px}
 .presentation-spatial .section-heading>div+div>p{font-size:17px}
 .presentation-spatial .selected-grid{max-width:440px}
 .presentation-spatial .selected-grid .project-card:nth-child(n){display:flex;flex-direction:column;gap:20px;padding-bottom:25px}
 .presentation-spatial .selected-grid .project-card-link{width:100%}
 .presentation-spatial .selected-grid .project-card-meta{display:flex;justify-content:space-between;gap:16px;margin-bottom:10px;font-size:11px}
 .presentation-spatial .selected-grid .project-card-meta>span{flex:1}
 .presentation-spatial .selected-grid .project-card-meta>span+span{text-align:right!important;margin-top:0}
 .presentation-spatial .selected-grid .project-card h3{font-size:24px}
 .presentation-spatial .selected-grid .project-card-link>p{font-size:17px;margin-bottom:12px}
 .presentation-spatial .selected-grid .card-case-link{font-size:13px}
 .presentation-spatial .spatial-interlude-copy h2{font-size:34px}
 .presentation-spatial .spatial-interlude-copy>p:not(.eyebrow){font-size:17px}
 .presentation-spatial .construction-stages li{font-size:11px}
 .presentation-spatial .construction-stages li>.mono{font-size:10px}
 .presentation-spatial .spatial-caption{font-size:9px}
 .presentation-spatial .atelier-pmo{display:flex;flex-direction:column;padding-block:36px;gap:28px}
 .presentation-spatial .atelier-pmo .pmo-copy{padding:0}
 .presentation-spatial .atelier-pmo h2{font-size:34px}
 .presentation-spatial .atelier-pmo .pmo-copy>p:not(.eyebrow){font-size:18px}
 .presentation-spatial .atelier-pmo .pmo-image{width:100%}
 .presentation-spatial .atelier-pmo .pmo-image img{aspect-ratio:16/10}
 .atelier-pmo-fields{grid-template-columns:1fr;gap:19px;margin:0;width:100%}
 .atelier-pmo-fields li{font-size:16px}
 .presentation-spatial .career-mini-row{font-size:17px;gap:12px}
 .presentation-spatial .page-intro{padding-top:122px;padding-bottom:32px}
 .presentation-spatial .page-intro .lead{font-size:18px}
 .presentation-spatial .closing-cta{padding-block:45px 36px}
 .presentation-spatial .closing-cta h2{font-size:40px}
 .atelier-contact-links>span{width:100%;margin-left:0}
}
@media(prefers-reduced-motion:reduce){
 .presentation-spatial .atelier-hero .hero-copy>.eyebrow:before{animation:none}
 ::view-transition-old(root),::view-transition-new(root){animation:none!important}
 .presentation-spatial .project-image-link img{transition:none}
 .presentation-spatial .spatial-interlude{min-height:0}
}
/* Browser pass 1: clearer photographs, aligned rails and complete German hero. */
.presentation-spatial .atelier-pmo .pmo-image:after{display:none}
.presentation-spatial :is(.explorer-toolbar,.filter-row,.results-heading,#project-results){max-width:1240px}
.presentation-spatial .about-project-films{max-width:none;margin-inline:0}
.presentation-spatial .atelier-hero .scroll-link{max-width:none;width:auto}
@media(min-width:701px){
 html[lang=de] .presentation-spatial .atelier-hero h1{font-size:clamp(34px,3.45vw,50px)}
 .presentation-spatial .atelier-hero .hero-copy{min-height:0}
}

/* Atelier 23. Immediate content, cinematic films, restrained architectural motion. */
:root{--atelier-ease:cubic-bezier(.22,.72,.22,1);--atelier-control:240ms}
.presentation-spatial .atelier-hero{display:block;width:100%;height:100svh;min-height:760px;padding:0;background:#25322c;color:#f4eee3;isolation:isolate}
.presentation-spatial .atelier-hero .hero-photo{position:absolute;inset:0;width:100%;height:100%;z-index:0;margin:0}
.presentation-spatial .atelier-hero .hero-photo :is(img,video){object-fit:cover;object-position:58% 48%;width:100%;height:100%;transform:none;filter:none}
.presentation-spatial .atelier-hero .hero-photo:after{display:block;z-index:1;inset:0;background:linear-gradient(90deg,rgba(17,28,23,.86),rgba(17,28,23,.65) 43%,rgba(17,28,23,.12) 75%,rgba(17,28,23,.08)),linear-gradient(0deg,rgba(17,28,23,.76),transparent 23%)}
.presentation-spatial .atelier-hero .hero-copy{position:relative;z-index:2;width:100%;max-width:1424px;height:100%;margin-inline:auto;padding:140px max(var(--gutter),calc((100% - 1240px)/2)) 130px;justify-content:center;color:#f4eee3}
.presentation-spatial .atelier-hero .hero-copy>.eyebrow{color:#ead1ad;margin-bottom:23px}
.presentation-spatial .atelier-hero h1{max-width:880px;font-size:clamp(43px,4.5vw,66px);line-height:1.12;color:#f4eee3;letter-spacing:-.045em;text-wrap:initial}
html[lang=de] .presentation-spatial .atelier-hero h1{font-size:clamp(42px,4.3vw,62px)}
.presentation-spatial .atelier-hero h1 em{color:#e2bd8f}
.presentation-spatial .atelier-hero .hero-positioning{font-size:15px;line-height:1.6;color:#eee8dd;margin-top:24px}
.presentation-spatial .atelier-hero .hero-bottom{margin-top:21px}
.presentation-spatial .atelier-hero .hero-bottom>p{color:#eee8dd;max-width:39ch;font-size:19px;line-height:1.6;margin-bottom:25px}
.presentation-spatial .atelier-hero .hero-actions .button{color:#222b25;background:#eee8dd;border-color:#eee8dd}
.presentation-spatial .atelier-hero .hero-actions .text-link{color:#f4eee3}
.presentation-spatial .atelier-hero .scroll-link{color:#eee8dd;position:absolute;left:max(var(--gutter),calc((100% - 1240px)/2));bottom:31px;margin:0;font-size:12px}
.presentation-spatial .atelier-hero .hero-media-controls{position:absolute;left:auto;right:max(var(--gutter),calc((100% - 1240px)/2));bottom:26px;width:440px;max-width:45%;justify-content:flex-end;gap:0 24px;padding:0;background:transparent}
.presentation-spatial .atelier-hero .hero-media-controls>button{min-height:44px}
.presentation-spatial .atelier-hero .hero-media-controls>a{font-size:11px;line-height:1.5;max-width:230px;text-align:right}
.presentation-spatial .atelier-hero .atelier-film-label{top:auto;left:auto;right:max(var(--gutter),calc((100% - 1240px)/2));bottom:112px;padding:12px 0 0;max-width:360px;background:none;border-color:rgba(238,232,221,.45);font-size:11px;gap:42px}
.presentation-spatial .atelier-hero .hero-poster,.presentation-spatial .spatial-closing-film .scene-poster{opacity:1;visibility:visible}
.presentation-spatial :is(.hero-video,.scene-video){transition:opacity 240ms linear}

/* Geography is present from the server-rendered first frame. Only the route moves. */
.presentation-spatial .story-land{clip-path:none!important}
.presentation-spatial .story-country-anchor,.presentation-spatial .story-country-anchor text,.presentation-spatial .story-place-marker.is-country-selected{opacity:1}
.presentation-spatial .story-flow-group{opacity:1}
.presentation-spatial .story-focus-geometry{opacity:.17}
.presentation-spatial .story-focus-geometry>path{stroke-dashoffset:0}
.presentation-spatial .story-graticule{opacity:.16}
.presentation-spatial .story-graticule path{stroke-dashoffset:0}
.presentation-spatial .story-route-guide{opacity:1}

/* Compact drawing chapter on the same editorial rails. No rotation or model morphing. */
.presentation-spatial .spatial-interlude{min-height:0;padding-top:30px;padding-bottom:38px}
.presentation-spatial .arcade-composition{padding-top:32px;grid-template-columns:.9fr 1.2fr;gap:5%;align-items:center}
.presentation-spatial .spatial-object{max-width:650px;justify-self:end}
.presentation-spatial .construction-graphic{width:100%;padding:0}
.presentation-spatial .spatial-object-drawing{width:100%;max-width:650px;height:auto;aspect-ratio:670/340}
.presentation-spatial .construction-stages{margin-top:15px}
.presentation-spatial .construction-stages li{position:relative}
.presentation-spatial .construction-stages li:after{content:'';position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--bronze);transform:scaleX(var(--step-fill,0));transform-origin:left;pointer-events:none}
.presentation-spatial .selected-section{padding-top:26px}

/* Original photograph stays visible. A pale material wash withdraws in horizontal bands. */
.presentation-spatial .selected-grid button.project-image-link.is-ribbon-ready[data-ribbon-slot]>img.project-thumbnail{opacity:1!important;clip-path:none!important}
.presentation-spatial .selected-grid .project-ribbon{background-image:none!important;background-color:rgba(238,232,221,.16);opacity:calc(1 - var(--band-opacity,1));transform:none!important}
.presentation-spatial .selected-grid .is-ribbon-moving .project-ribbon{will-change:auto}
.presentation-spatial .project-perimeter{transition:opacity var(--atelier-control) var(--atelier-ease);opacity:.65}
.presentation-spatial .project-image-link img{transition:transform 420ms var(--atelier-ease)}
.presentation-spatial .project-card :is(.icon,.project-image-arrow){transition:transform var(--atelier-control) var(--atelier-ease),background-color var(--atelier-control) var(--atelier-ease)}
.presentation-spatial .project-card:focus-within .project-perimeter{opacity:1}
.presentation-spatial .text-link .icon{transition:transform var(--atelier-control) var(--atelier-ease)}
@media(hover:hover) and (pointer:fine){
 .presentation-spatial .project-card:hover .project-perimeter{opacity:1}
 .presentation-spatial .project-image-link:hover img{transform:scale(1.018)}
 .presentation-spatial .project-image-link:hover .project-image-arrow .icon{transform:translate(1px,-1px)}
 .presentation-spatial .project-card-link:hover .card-case-link .icon,.presentation-spatial .text-link:hover .icon{transform:translateX(3px)}
}
/* Headings never wait behind an opacity gate; movement is a short, single settling gesture. */
.presentation-spatial .atelier-arrival.in-view h2{animation:atelier-heading-settle 400ms var(--atelier-ease) both}
@keyframes atelier-heading-settle{from{transform:translateY(6px)}to{transform:translateY(0)}}

/* Kuwait remains before contact. Full bleed, matched poster/video crop, readable overlays. */
.presentation-spatial .spatial-closing-film{height:100svh;min-height:700px;max-height:none;width:100%;padding:0;overflow:hidden}
.presentation-spatial .spatial-closing-film>.scene-photo{inset:0;height:100%;width:100%;filter:none;transform:none!important}
.presentation-spatial .spatial-closing-film .scene-photo :is(img,video){object-position:60% 52%;object-fit:cover}
.presentation-spatial .spatial-closing-film .coda-shade{height:100%;inset:0;background:linear-gradient(90deg,rgba(17,28,23,.88),rgba(17,28,23,.72) 30%,rgba(17,28,23,.18) 60%,transparent 82%),linear-gradient(0deg,rgba(17,28,23,.8),transparent 22%)}
.presentation-spatial .spatial-closing-film .coda-content{position:relative;z-index:2;height:100%;padding:95px max(var(--gutter),calc((100% - 1240px)/2)) 125px;display:flex;align-items:center;background:transparent}
.presentation-spatial .spatial-closing-film .scene-copy{width:450px;max-width:43%;padding:0;margin:0}
.presentation-spatial .spatial-closing-film .scene-copy h2{font-size:clamp(38px,4vw,58px);line-height:1.15}
.presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:20px;line-height:1.65}
.presentation-spatial .spatial-closing-film>.scene-controls{position:absolute;left:max(var(--gutter),calc((100% - 1240px)/2));right:max(var(--gutter),calc((100% - 1240px)/2));bottom:25px;margin:0;padding:14px 0 0;border-top:1px solid rgba(238,232,221,.28);background:none}
.presentation-spatial .spatial-closing-film:before,.presentation-spatial .spatial-closing-film:after{display:none}
::view-transition-old(root){animation:atelier-page-out 120ms ease both}
::view-transition-new(root){animation:atelier-page-in 180ms ease both}

@media(max-width:1000px){
 .presentation-spatial .atelier-hero .hero-copy{padding-inline:var(--gutter);max-width:none}
 .presentation-spatial .atelier-hero h1,html[lang=de] .presentation-spatial .atelier-hero h1{font-size:clamp(39px,5.9vw,58px)}
 .presentation-spatial .atelier-hero .atelier-film-label{display:none}
 .presentation-spatial .atelier-hero .hero-media-controls{max-width:50%;width:330px}
 .presentation-spatial .arcade-composition{grid-template-columns:1fr 1.1fr;gap:5%}
 .presentation-spatial .spatial-interlude-copy h2{font-size:33px}
 .presentation-spatial .spatial-interlude-copy>p:not(.eyebrow){font-size:17px;line-height:1.65}
 .presentation-spatial .spatial-closing-film .scene-copy{max-width:49%;width:400px}
}
@media(max-width:700px){
 .presentation-spatial .atelier-hero{height:100svh;min-height:820px}
 .presentation-spatial .atelier-hero .hero-copy{height:100%;padding:133px var(--gutter) 175px;justify-content:center}
 .presentation-spatial .atelier-hero .hero-copy>.eyebrow{font-size:11px;margin-bottom:23px}
 .presentation-spatial .atelier-hero h1,html[lang=de] .presentation-spatial .atelier-hero h1{font-size:clamp(32px,8.6vw,46px);line-height:1.14;max-width:none}
 .presentation-spatial .atelier-hero .hero-photo:after{background:linear-gradient(90deg,rgba(17,28,23,.82),rgba(17,28,23,.46)),linear-gradient(0deg,rgba(17,28,23,.86),transparent 30%)}
 .presentation-spatial .atelier-hero .hero-photo :is(img,video){object-position:59% 50%}
 .presentation-spatial .atelier-hero .hero-positioning{font-size:13px;line-height:1.7;margin-top:23px;max-width:30ch}
 .presentation-spatial .atelier-hero .hero-bottom{margin-top:20px}
 .presentation-spatial .atelier-hero .hero-bottom>p{font-size:17px;line-height:1.65;max-width:34ch;margin-bottom:24px}
 .presentation-spatial .atelier-hero .hero-actions{gap:8px 17px}
 .presentation-spatial .atelier-hero .hero-actions :is(.button,.text-link){font-size:12px}
 .presentation-spatial .atelier-hero .scroll-link{bottom:112px;font-size:11px}
 .presentation-spatial .atelier-hero .hero-media-controls{left:var(--gutter);right:var(--gutter);bottom:19px;width:auto;max-width:none;flex-direction:row;align-items:center;justify-content:space-between;gap:5px 12px;border-top:1px solid rgba(238,232,221,.3);padding-top:12px}
 .presentation-spatial .atelier-hero .hero-media-controls>button{font-size:11px;max-width:46%}
 .presentation-spatial .atelier-hero .hero-media-controls>a{font-size:10px;line-height:1.5;max-width:49%}
 .presentation-spatial .spatial-interlude{padding-top:24px;padding-bottom:32px}
 .presentation-spatial .arcade-composition{grid-template-columns:1fr;gap:27px;padding-top:29px}
 .presentation-spatial .spatial-interlude-copy h2{font-size:34px}
 .presentation-spatial .spatial-object{max-width:560px;justify-self:center}
 .presentation-spatial .construction-stages li{font-size:11px}
 .presentation-spatial .spatial-caption{font-size:10px}
 .presentation-spatial .spatial-closing-film{height:100svh;min-height:820px}
 .presentation-spatial .spatial-closing-film .scene-photo :is(img,video){object-position:68% 50%}
 .presentation-spatial .spatial-closing-film .coda-content{align-items:flex-end;padding:100px var(--gutter) 145px}
 .presentation-spatial .spatial-closing-film .scene-copy{max-width:100%;width:420px}
 .presentation-spatial .spatial-closing-film .scene-copy h2{font-size:36px;line-height:1.18;margin:20px 0}
 .presentation-spatial .spatial-closing-film .scene-copy>p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:34ch}
 .presentation-spatial .spatial-closing-film .coda-shade{background:linear-gradient(0deg,rgba(17,28,23,.98) 0%,rgba(17,28,23,.85) 28%,rgba(17,28,23,.36) 55%,rgba(17,28,23,.06) 82%)}
 .presentation-spatial .spatial-closing-film>.scene-controls{left:var(--gutter);right:var(--gutter);bottom:19px;gap:18px}
 .presentation-spatial .spatial-closing-film .scene-controls :is(button,a){font-size:11px;line-height:1.55}
}
@media(prefers-reduced-motion:reduce){
 .presentation-spatial .atelier-arrival.in-view h2{animation:none}
 .presentation-spatial :is(.project-perimeter,.project-image-link img,.project-card .icon,.text-link .icon,.hero-video,.scene-video){transition:none!important}
 .presentation-spatial .project-image-link:hover img,.presentation-spatial .text-link:hover .icon{transform:none!important}
 .presentation-spatial .selected-grid .project-ribbons{display:none!important}
 ::view-transition-old(root),::view-transition-new(root){animation:none!important}
}

/* Atelier 24: proportional typography and a restrained geographic opening. */
.presentation-spatial{
 --type-display:clamp(2rem,1.33rem + 2.2vw,3.25rem);
 --type-title:clamp(2rem,1.45rem + 1.8vw,3rem);
 --type-section:clamp(1.875rem,1.4rem + 1.45vw,2.625rem);
 --type-card:clamp(1.25rem,1.1rem + .4vw,1.5rem);
 --type-body:clamp(1.0625rem,1rem + .17vw,1.1875rem);
}
.presentation-spatial :is(.section-heading h2,.intro-layout h2,.story-introduction h2,.spatial-interlude-copy h2,.atelier-pmo h2,.career-preview h2){font-size:var(--type-section);line-height:1.23;letter-spacing:-.035em}
.presentation-spatial :is(.page-intro h1,.about-practice-intro h1,.about-practice-intro h2){font-size:var(--type-title);line-height:1.2;letter-spacing:-.04em}
.presentation-spatial :is(.competition-title h1,.contact-intro h1,.legal-page h1){font-size:var(--type-title);line-height:1.2;letter-spacing:-.04em}
.presentation-spatial .case-hero:not(.case-hero--archive) h1{font-size:var(--type-display);line-height:1.2;letter-spacing:-.04em;max-width:24ch}
.presentation-spatial .case-story h2{font-size:var(--type-section);line-height:1.25;letter-spacing:-.035em}
.presentation-spatial .page-intro .lead{font-size:var(--type-body);line-height:1.65;max-width:54ch}
.presentation-spatial .intro-copy>.lead{font-size:clamp(1.1875rem,1.08rem + .35vw,1.375rem);line-height:1.65}
.presentation-spatial :is(.selected-grid,.work-grid) .project-card h3{font-size:var(--type-card);line-height:1.32;letter-spacing:-.025em}
.presentation-spatial .project-film h3{font-size:clamp(1.375rem,1.1rem + .7vw,1.625rem);line-height:1.3}
.presentation-spatial .closing-cta h2{font-size:var(--type-title);line-height:1.2;letter-spacing:-.035em}
.presentation-spatial .spatial-closing-film .scene-copy h2{font-size:var(--type-title);line-height:1.2}
.presentation-spatial .spatial-caption{font-size:11px;line-height:1.65;letter-spacing:.045em}
/* One editorial column leaves the city in view. */
.presentation-spatial .atelier-hero .hero-copy{max-width:none;padding-top:155px;padding-bottom:145px;justify-content:center}
.presentation-spatial .atelier-hero .hero-copy>.eyebrow{font-size:12px;letter-spacing:.14em;margin-bottom:23px}
.presentation-spatial .atelier-hero .hero-copy>.eyebrow:before{width:30px;animation-duration:450ms}
.presentation-spatial .atelier-hero h1,html[lang=de] .presentation-spatial .atelier-hero h1{font-size:var(--type-display);line-height:1.18;letter-spacing:-.038em;max-width:650px;text-wrap:initial}
.presentation-spatial .atelier-hero h1 em{display:inline-block;margin-top:.15em;letter-spacing:-.025em}
.presentation-spatial .atelier-hero .hero-positioning{font-size:13px;line-height:1.7;max-width:49ch;margin-top:26px;color:#e2ddd2}
.presentation-spatial .atelier-hero .hero-bottom{margin-top:17px;max-width:520px}
.presentation-spatial .atelier-hero .hero-bottom>p{font-size:var(--type-body);line-height:1.65;max-width:39ch;margin-bottom:25px}
.presentation-spatial .atelier-hero .hero-photo:after{background:linear-gradient(90deg,rgba(17,28,23,.86),rgba(17,28,23,.64) 36%,rgba(17,28,23,.13) 69%,rgba(17,28,23,.06)),linear-gradient(0deg,rgba(17,28,23,.8),transparent 22%)}
.presentation-spatial .atelier-hero .atelier-location{position:absolute;z-index:3;top:128px;left:max(var(--gutter),calc((100% - 1240px)/2));right:max(var(--gutter),calc((100% - 1240px)/2));display:flex;align-items:center;gap:14px;color:#e8e2d7;font-size:11px;line-height:1.6;letter-spacing:.08em;pointer-events:none}
.atelier-location-mark{width:15px;height:15px;flex:none;color:#e2bd8f}
.atelier-location-rule{height:1px;background:rgba(238,232,221,.28);width:72px;transform-origin:left;animation:atelier-rule 500ms var(--atelier-ease) both}
.atelier-location-note{display:none}
.presentation-spatial .atelier-hero .hero-media-controls>a{font-size:12px;max-width:260px}
.presentation-spatial .atelier-hero .scroll-link{font-size:12px}
@media(min-width:1001px) and (max-height:800px){
 .presentation-spatial .atelier-hero{min-height:720px}
 .presentation-spatial .atelier-hero .atelier-location{top:111px}
 .presentation-spatial .atelier-hero .hero-copy{padding-top:149px;padding-bottom:112px}
}
@media(max-width:1000px){
 .presentation-spatial .atelier-hero h1,html[lang=de] .presentation-spatial .atelier-hero h1{max-width:640px}
 .presentation-spatial .atelier-hero .atelier-location{top:121px}
 .presentation-spatial .atelier-hero .hero-copy{padding-top:170px;padding-bottom:145px}
}
@media(max-width:700px){
 .presentation-spatial{--type-display:clamp(1.8125rem,1.25rem + 2.65vw,2.5rem);--type-title:clamp(1.9375rem,1.6rem + 1.4vw,2.5rem);--type-section:clamp(1.8125rem,1.5rem + 1.3vw,2.25rem)}
 .presentation-spatial .atelier-hero{min-height:780px}
 .presentation-spatial .atelier-hero .hero-copy{padding-top:171px;padding-bottom:170px;justify-content:center}
 .presentation-spatial .atelier-hero .hero-copy>.eyebrow{font-size:11px;margin-bottom:20px}
 .presentation-spatial .atelier-hero h1,html[lang=de] .presentation-spatial .atelier-hero h1{line-height:1.2;max-width:560px}
 .presentation-spatial .atelier-hero .hero-positioning{font-size:12px;line-height:1.75;max-width:39ch;margin-top:23px}
 .presentation-spatial .atelier-hero .hero-bottom{margin-top:16px}
 .presentation-spatial .atelier-hero .hero-bottom>p{font-size:17px;max-width:35ch;margin-bottom:22px}
 .presentation-spatial .atelier-hero .hero-photo:after{background:linear-gradient(90deg,rgba(17,28,23,.82),rgba(17,28,23,.43)),linear-gradient(0deg,rgba(17,28,23,.88),transparent 30%)}
 .presentation-spatial .atelier-hero .atelier-location{top:111px;gap:11px;font-size:11px}
 .atelier-location-rule{width:35px}
 .atelier-location-note{display:none}
 .presentation-spatial .atelier-hero .hero-media-controls>a{font-size:11px;max-width:51%}
 .presentation-spatial .atelier-hero .hero-media-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:14px}
 .presentation-spatial .atelier-hero .hero-media-controls>button,.presentation-spatial .atelier-hero .hero-media-controls>a{width:auto;max-width:none;min-width:0}
 .presentation-spatial .atelier-hero .scroll-link{bottom:111px;font-size:11px}
 .presentation-spatial .spatial-caption{font-size:10px}
}
@media(prefers-reduced-motion:reduce){.atelier-location-rule{animation:none}}
/* The drawing stays delicate; its invisible targets remain easy to activate. */
.world-countries{pointer-events:none}
.map-point{pointer-events:bounding-box}
.map-hit{fill:transparent!important;stroke:none!important;pointer-events:all}

/* Atelier 25: a quiet film colophon, with a separate functional control. */
.presentation-spatial .atelier-hero .hero-positioning{max-width:650px;letter-spacing:.01em}
.atelier-hero .hero-role-group{white-space:nowrap}
.atelier-hero .hero-role-divider{padding-inline:.12em;color:#c9bdac}
.presentation-spatial .atelier-hero .hero-film-meta{position:absolute;z-index:4;right:max(var(--gutter),calc((100% - 1240px)/2));bottom:26px;display:flex;align-items:center;gap:22px;color:#eee8dd}
.atelier-hero .hero-film-note{text-align:right;min-width:0}
.atelier-hero .hero-film-labels{display:flex;align-items:baseline;justify-content:flex-end;flex-wrap:wrap;gap:4px 13px;margin:0 0 5px;line-height:1.5}
.atelier-hero .hero-film-place{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.atelier-hero .hero-film-caption{font-size:13px;font-style:italic;letter-spacing:.01em;color:#ead1ad;white-space:nowrap}
.atelier-hero .hero-film-caption:before{content:'';display:inline-block;width:17px;height:1px;margin:0 13px 4px 0;background:rgba(234,209,173,.55)}
.atelier-hero .hero-film-credit{display:inline-flex;align-items:center;gap:7px;min-height:24px;font-size:11px;line-height:1.6;letter-spacing:.015em;color:#d7d3ca;text-decoration:none;text-underline-offset:4px}
.atelier-hero .hero-film-credit:hover{text-decoration:underline;color:#fff}
.atelier-hero .hero-film-toggle{appearance:none;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;padding:0;border:1px solid rgba(238,232,221,.48);border-radius:50%;background:rgba(17,28,23,.2);color:#f4eee3;cursor:pointer;transition:background-color 180ms ease,border-color 180ms ease}
.atelier-hero .hero-film-toggle:hover{background:rgba(238,232,221,.12);border-color:#ead1ad}
.atelier-hero .hero-film-toggle:focus-visible,.atelier-hero .hero-film-credit:focus-visible{outline:2px solid #ead1ad;outline-offset:5px}
.atelier-hero .hero-film-toggle .video-state-icon{position:relative;display:block;width:12px;height:14px;font-size:0;line-height:0}
.atelier-hero .hero-film-toggle .video-state-icon:before{content:'';position:absolute;inset:0 1px;border-left:2px solid currentColor;border-right:2px solid currentColor}
.atelier-hero .hero-film-toggle[aria-pressed=false] .video-state-icon:before{inset:1px 0 1px 2px;border:0;border-left:10px solid currentColor;border-top:6px solid transparent;border-bottom:6px solid transparent}
.atelier-hero .hero-film-toggle:disabled{cursor:default;opacity:.6}
@media(max-width:700px){
 .presentation-spatial .atelier-hero .hero-positioning{max-width:none;line-height:1.8}
 .atelier-hero .hero-role-group{display:block}
 .atelier-hero .hero-role-divider{display:none}
 .presentation-spatial .atelier-hero .hero-film-meta{left:var(--gutter);right:var(--gutter);bottom:22px;justify-content:space-between;gap:16px}
 .atelier-hero .hero-film-labels{column-gap:10px;margin-bottom:4px}
 .atelier-hero .hero-film-place{font-size:10px;letter-spacing:.1em}
 .atelier-hero .hero-film-caption{font-size:12px}
 .atelier-hero .hero-film-caption:before{width:12px;margin-right:10px}
 .atelier-hero .hero-film-credit{font-size:10px}
}
@media(max-width:370px){
 .atelier-hero .hero-film-labels{column-gap:8px}
 .atelier-hero .hero-film-caption:before{display:none}
}
@media(prefers-reduced-motion:reduce){.atelier-hero .hero-film-toggle{transition:none}}
/* Atelier25.1: interactive model inspection and editorial gallery. */
.presentation-spatial .construction-stages li{padding-top:0}
.presentation-spatial .construction-stages button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:100%;min-height:64px;padding:11px 3px 8px;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;transition:color 180ms ease,background-color 180ms ease}
.presentation-spatial .construction-stages button .mono{font-size:10px;font-weight:400}
.presentation-spatial .construction-stages button:hover{color:#74502f;background:#8869430f}
.presentation-spatial .construction-stages button[aria-pressed=true]{color:#744c28;font-weight:650}
.presentation-spatial .construction-stages button:focus-visible,.architecture-stage-note button:focus-visible{outline:2px solid #805c3b;outline-offset:3px}
.architecture-stage-note{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-height:4.5em;margin:11px 4% 0;color:#50574e;font:400 13px/1.65 var(--font)}
.architecture-stage-note p{margin:0;max-width:43ch}
.architecture-stage-note button{flex:0 0 auto;max-width:115px;padding:0 0 5px;min-height:44px;font:500 11px/1.5 var(--font);border:0;border-bottom:1px solid #a88c68;background:transparent;color:#684728;text-align:right;cursor:pointer}
.presentation-spatial .spatial-object-drawing>path[data-spatial-path]{transition:stroke-opacity 240ms ease}
.presentation-spatial .spatial-object-drawing.is-inspecting>path[data-spatial-path]{stroke-opacity:.19}
.presentation-spatial .spatial-object-drawing .architecture-focus{fill:none;stroke:#91632d;stroke-width:1.25;stroke-opacity:1;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}
.presentation-spatial .story-country-anchor[aria-hidden=true],.presentation-spatial .story-place-marker[aria-hidden=true]{visibility:hidden}
@media(max-width:600px){.architecture-stage-note{margin-inline:0;font-size:12px;min-height:6em}.architecture-stage-note button{max-width:86px}.presentation-spatial .construction-stages button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.presentation-spatial .spatial-object-drawing>path[data-spatial-path],.presentation-spatial .construction-stages button{transition:none}}
html:has(.image-viewer[open]){overflow:hidden;scrollbar-gutter:auto}
.image-viewer[open]{box-sizing:border-box;display:grid;grid-template-rows:auto minmax(100px,1fr) auto;gap:16px;inset:0;margin:auto;width:min(1560px,calc(100vw - 32px));height:calc(100dvh - 32px);max-width:none;max-height:none;padding:20px 24px;background:#eee8dd;color:#26352d;overflow:hidden}
.image-viewer .viewer-toolbar{display:flex;flex-wrap:wrap;gap:12px;min-height:44px;padding:0 0 13px;border-bottom:1px solid #b8ad9c}
.image-viewer .viewer-toolbar h2{font:500 17px/1.4 var(--font);color:#26352d;margin:0 auto 0 0;max-width:none}
.image-viewer .viewer-toolbar button,.image-viewer .viewer-count{color:#354339;font:500 13px/1.5 var(--font)}
.image-viewer .viewer-count{min-height:0;margin:0 7px 0 0}
.image-viewer .viewer-toolbar button,.image-viewer .viewer-main>button{position:static;display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:8px 13px;border:1px solid #9b8c77;background:#f8f4ec;color:#26352d;cursor:pointer}
.image-viewer .viewer-toolbar [data-gallery-zoom]{order:0}.image-viewer .viewer-toolbar [data-gallery-close]{margin:0}
.image-viewer .viewer-toolbar button:hover,.image-viewer .viewer-toolbar button[aria-pressed=true],.image-viewer .viewer-main>button:hover{background:#26352d;color:#f8f4ec;border-color:#26352d}
.image-viewer button:focus-visible,.image-viewer a:focus-visible,.image-viewer .viewer-details:focus-visible,.image-viewer .viewer-image-wrap:focus-visible{outline:2px solid #79502e;outline-offset:3px}
.image-viewer .viewer-main{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:16px;min-width:0;min-height:0;height:auto;margin:0;padding:0;overflow:hidden}
.image-viewer .viewer-main>button{width:44px;height:52px;align-self:center;font-size:24px;padding:0}.image-viewer .viewer-main>button:disabled{opacity:.35;cursor:default}
.image-viewer .viewer-image-wrap{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:0;overflow:auto;background:#e5ddd0}
.image-viewer .viewer-image{display:block;flex:none;margin:auto;width:auto;height:auto;max-height:100%;max-width:min(100%,var(--viewer-native-width,100%));object-fit:contain;background:transparent}
.image-viewer .viewer-image-wrap.is-zoomed{display:block;touch-action:pan-x pan-y;overscroll-behavior:contain}
.image-viewer .viewer-image-wrap.is-zoomed .viewer-image{width:var(--viewer-source-width,1600px);height:auto;max-height:none;max-width:none}
.image-viewer .viewer-details{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr);gap:12px 36px;max-height:32dvh;min-height:0;overflow:auto;overscroll-behavior:contain;padding:16px 18px 9px;border-top:1px solid #b8ad9c;background:#f7f3eb;color:#26352d;scrollbar-color:#9b8c77 #e5ddd0}
.image-viewer .viewer-project{font:500 17px/1.4 var(--font);letter-spacing:-.02em;margin:0 0 6px;color:#26352d}
.image-viewer .viewer-caption{font:400 15px/1.65 var(--font);color:#37453b;text-align:left;max-width:74ch;margin:0}
.image-viewer .viewer-credit{font:400 12px/1.65 var(--font);color:#555d51;margin:0}.image-viewer .viewer-credit a{color:#69462a;text-decoration:underline;text-underline-offset:3px}
.image-viewer .viewer-case-link{display:inline-flex;font:500 12px/1.5 var(--font);color:#69462a;min-height:44px;margin-top:5px}
.image-viewer .viewer-instructions{grid-column:1/-1;margin:0;font:400 11px/1.6 var(--font);color:#5b6358}
@media(max-width:700px){
 .image-viewer[open]{width:100vw;height:100dvh;padding:12px;gap:12px;grid-template-rows:auto minmax(100px,1fr) auto}
 .image-viewer .viewer-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding-bottom:10px}
 .image-viewer .viewer-toolbar h2{grid-row:1;grid-column:1;font-size:14px}.image-viewer .viewer-count{grid-row:1;grid-column:2;justify-self:end;margin:0}
 .image-viewer .viewer-toolbar button{grid-row:2;min-width:0;max-width:100%;font-size:12px}.image-viewer .viewer-toolbar [data-gallery-close]{grid-column:2}
 .image-viewer .viewer-main{grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr) 44px;gap:8px}.image-viewer .viewer-image-wrap{grid-row:1;grid-column:1/-1}
 .image-viewer .viewer-main>button{grid-row:2;width:52px;height:44px;min-height:44px}.image-viewer .viewer-main>button:last-child{justify-self:end}
 .image-viewer .viewer-details{grid-template-columns:1fr;gap:10px;max-height:34dvh;padding:12px}.image-viewer .viewer-project{font-size:15px}.image-viewer .viewer-caption{font-size:13px;line-height:1.6}.image-viewer .viewer-credit{font-size:11px}.image-viewer .viewer-case-link{margin:2px 0 0}
}
.case-location{border-top:1px solid var(--line);padding-top:48px;padding-bottom:48px}
.case-location .section-heading{align-items:start;gap:38px;margin-bottom:28px}.presentation-spatial .case-location .section-heading h2{font-size:var(--type-section);max-width:20ch}.case-location .section-heading>p{font-size:16px;line-height:1.7;max-width:61ch}
.location-plan-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(240px,1fr);gap:42px;align-items:start}.location-plan-layout figure{margin:0;min-width:0}
.location-plan-open{display:block;position:relative;width:100%;padding:0;border:1px solid #c0b29e;background:#f3eee5;color:#26352d;cursor:zoom-in;text-align:left}.location-plan-open img{display:block;width:100%;height:auto;aspect-ratio:10/7;object-fit:contain}.location-plan-open>span{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-top:1px solid #c0b29e;font:500 12px/1.5 var(--font)}.location-plan-open:hover>span{background:#e6ddce}
.location-plan-layout figcaption,.location-plan-note{font-size:12px;line-height:1.7;color:#5b6358;margin-top:12px}.location-plan-sources>.eyebrow{margin-bottom:12px}.location-plan-sources>a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #bcb09d;color:#5f442d;font-size:14px;line-height:1.6;text-decoration:none}.location-plan-sources>a:hover{text-decoration:underline;text-underline-offset:4px}.location-plan-sources details{margin-top:22px;font-size:14px;line-height:1.7}.location-plan-sources summary{min-height:44px;cursor:pointer;color:#364338}.location-plan-sources details>p{margin:8px 0 16px}
@media(max-width:800px){.location-plan-layout{grid-template-columns:1fr;gap:25px}.case-location .section-heading{display:block}.case-location .section-heading>p{margin-top:19px}.case-location{padding-block:36px}}

/* Atelier 26: readable connections using the original symmetric model. */
.presentation-spatial .spatial-object-drawing.is-inspecting>path[data-spatial-path]{stroke-opacity:.12}
.presentation-spatial .spatial-object-drawing[data-inspection-stage="0"]>path[data-spatial-path]{stroke-opacity:.065}
.presentation-spatial .spatial-object-drawing .architecture-focus{fill:none;stroke:#82572e;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}
.presentation-spatial .spatial-object-drawing .architecture-focus path{fill:none;stroke:inherit;vector-effect:non-scaling-stroke}
.presentation-spatial .spatial-object-drawing[data-inspection-stage="3"]>path[data-spatial-path]{stroke-opacity:.08}
.motion-ready .presentation-spatial .project-card.reveal{opacity:1;translate:0 0;transition:none}
html[data-visual-transition=page]::view-transition-old(root){animation:atelier-page-out 120ms ease both;clip-path:none;transform:none}
html[data-visual-transition=page]::view-transition-new(root){animation:atelier-page-in 180ms ease both;clip-path:none;transform:none}
.image-viewer .viewer-toolbar [data-gallery-close] span{font-size:22px;line-height:1}
.presentation-spatial .construction-stages button{white-space:nowrap;overflow-wrap:normal;padding-inline:0}
/* Route/focus restoration is immediate; explicit anchor and top controls retain smooth scrolling. */
html{scroll-behavior:auto}

/* Atelier 27 — the career sequence and credentials share an open editorial grid. */
.presentation-spatial .career-section{align-items:start}
.presentation-spatial .timeline-tabs{align-self:start;display:block;overflow:visible;min-width:0;border:0;padding:0;scroll-snap-type:none}
.presentation-spatial .timeline-tabs::before{display:none}
.presentation-spatial .timeline-tabs button{position:relative;isolation:isolate;display:grid;grid-template-columns:104px minmax(0,1fr);align-items:center;gap:20px;min-height:78px;width:100%;padding:24px 0 24px 28px;border:0;border-radius:0;background:transparent;text-align:left;scroll-snap-align:none;transition:color 180ms ease}
.presentation-spatial .timeline-tabs button::after{content:'';position:absolute;z-index:-1;left:3px;top:0;bottom:0;width:1px;background:var(--atelier-rule);pointer-events:none}
.presentation-spatial .timeline-tabs button:first-child::after{top:50%}
.presentation-spatial .timeline-tabs button:last-child::after{bottom:50%}
.presentation-spatial .timeline-tabs button::before{content:'';display:block;position:absolute;z-index:1;left:1px;top:50%;width:5px;height:5px;border-radius:0;background:#b4a38c;box-shadow:0 0 0 4px var(--paper);transform:translateY(-50%);transition:background 180ms ease}
.presentation-spatial .timeline-tabs button+button{background-image:linear-gradient(var(--atelier-rule),var(--atelier-rule));background-size:calc(100% - 28px) 1px;background-position:right top;background-repeat:no-repeat}
.presentation-spatial .timeline-tabs button:hover{color:var(--bronze)}
.presentation-spatial .timeline-tabs button[aria-selected=true]{background-color:transparent;color:var(--bronze)}
.presentation-spatial .timeline-tabs button[aria-selected=true]::before{background:var(--bronze);box-shadow:0 0 0 4px var(--paper)}
.presentation-spatial .timeline-tabs button[aria-selected=true] strong{text-decoration:underline;text-decoration-color:var(--bronze);text-underline-offset:6px;text-decoration-thickness:1px}
.presentation-spatial .timeline-tabs button:focus-visible{outline:2px solid var(--bronze);outline-offset:5px}
.presentation-spatial .timeline-tabs .mono{font-size:12px;line-height:1.6;white-space:nowrap;color:#73583e}
.presentation-spatial .timeline-tabs strong{display:block;min-width:0;margin:0;font-size:15px;font-weight:500;line-height:1.6}
.presentation-spatial .timeline-tabs small{position:absolute;top:7px;right:0;font-size:10px;line-height:1.5;letter-spacing:.04em;color:var(--bronze)}
.presentation-spatial .timeline-tabs button:first-child::before{outline:1px solid var(--bronze);outline-offset:2px}
.presentation-spatial .credential-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,80px);align-items:start;margin-bottom:44px}
.presentation-spatial .credential-grid article{padding:24px 0 0;min-width:0;min-height:0;border:0;border-top:1px solid var(--atelier-rule);background:none;color:var(--ink);overflow:visible}
.presentation-spatial .credential-geometry{display:none}
.presentation-spatial .pmp-credential>.eyebrow{color:var(--bronze)}
.presentation-spatial .pmp-credential>strong{font-size:clamp(58px,5vw,72px);font-weight:400;line-height:1.15;color:var(--bronze);margin-top:22px}
.presentation-spatial .pmp-credential h3{font-size:23px;line-height:1.4;margin-top:12px}
.presentation-spatial .pmp-credential>p:not(.eyebrow){font-size:16px;line-height:1.7;color:var(--reading);margin-top:10px}
.presentation-spatial .pmp-credential>small{font-size:13px;line-height:1.7;color:var(--reading);margin-top:20px}
.presentation-spatial .registration-credential h3{max-width:20ch;font-size:clamp(28px,2.6vw,34px);line-height:1.3;margin-top:23px}
.presentation-spatial .registration-credential>p:not(.eyebrow){max-width:43ch;font-size:17px;line-height:1.7;color:var(--reading);margin-top:20px}
@media(max-width:1100px){
 .presentation-spatial .timeline-tabs button{grid-template-columns:1fr;gap:3px;min-height:86px;padding-block:18px}
 .presentation-spatial .timeline-tabs strong{font-size:15px}
 .presentation-spatial .timeline-tabs small{top:14px}
}
@media(max-width:700px){
 .presentation-spatial .career-section{grid-template-columns:minmax(0,1fr);gap:30px}
 .presentation-spatial .timeline-tabs button{grid-template-columns:95px minmax(0,1fr);gap:13px;min-height:74px;padding:21px 0 21px 24px}
 .presentation-spatial .timeline-tabs button+button{background-size:calc(100% - 24px) 1px}
 .presentation-spatial .timeline-tabs .mono{font-size:11px}
 .presentation-spatial .timeline-tabs strong{font-size:14px;line-height:1.6}
 .presentation-spatial .timeline-tabs small{top:4px;font-size:10px}
 .presentation-spatial .credential-grid{grid-template-columns:minmax(0,1fr);gap:30px;margin-bottom:32px}
 .presentation-spatial .credential-grid article{padding-top:22px}
 .presentation-spatial .registration-credential h3{font-size:30px;max-width:20ch}
}
@media(prefers-reduced-motion:reduce){
 .presentation-spatial .timeline-tabs button,.presentation-spatial .timeline-tabs button::before{transition:none}
}

/* Atelier 28 — geographic boundaries stay intact; annotation is screen-sized. */
.presentation-spatial .map-explorer{align-items:start;background:#e7e9e0}
.presentation-spatial .map-canvas{align-self:start}
.presentation-spatial .world-map{height:clamp(420px,40vw,590px);flex:none;background:#e7e9e0}
.presentation-spatial .world-countries path{fill:#d2d8cc;stroke:#a3ad9a;stroke-width:.65;stroke-linejoin:round}
.presentation-spatial .world-countries .country-active{fill:#bac5b0;stroke:#96a48b}
.presentation-spatial .world-countries .country-selected{fill:#aab99d;stroke:#7b8b6e}
.presentation-spatial .map-point{pointer-events:bounding-box}
.presentation-spatial .map-point text{pointer-events:all;font-weight:500;fill:#27352c;stroke:#e7e9e0}
.presentation-spatial .map-point.selected text{font-weight:650}
.presentation-spatial .map-point .map-dot{fill:#8b623f;stroke:#f3efe5;stroke-width:1.2}
.presentation-spatial .map-point .map-pulse{fill:#8b623f;opacity:.12}
.presentation-spatial .map-point.selected .map-pulse,.presentation-spatial .map-point:focus .map-pulse,.presentation-spatial .map-point:hover .map-pulse{opacity:.25}
.presentation-spatial .map-label-leader{stroke:#8b623f;stroke-width:.65;vector-effect:non-scaling-stroke;opacity:.7;pointer-events:none}
.presentation-spatial .map-controls{bottom:57px}
.presentation-spatial .map-controls button{min-height:36px;font-size:11px}
.presentation-spatial .map-controls button:nth-child(4){display:block}
.presentation-spatial .map-bottomline{background:#e7e9e0;font-size:10px;line-height:1.5}
.presentation-spatial .map-topline{font-size:10px;line-height:1.5}
.presentation-spatial .map-sidebar>h3{font-size:23px;line-height:1.28;max-width:none;margin:12px 0 20px}
.presentation-spatial .map-project-item strong{font-size:12px;line-height:1.5}
.presentation-spatial .map-project-item small{font-size:10px;line-height:1.5}
.presentation-spatial .map-selected img{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;max-height:none}
.presentation-spatial .map-selected h4{font-size:18px}
.presentation-spatial .map-selected .text-link{font-size:12px}
.presentation-spatial .map-project-list{max-height:340px}
.presentation-spatial .map-note{font-size:12px;line-height:1.6}
@media(max-width:900px){.presentation-spatial .world-map{height:430px}.presentation-spatial .map-sidebar{grid-template-columns:1fr 1.25fr;gap:16px 28px}}
@media(max-width:600px){.presentation-spatial .world-map{height:370px}.presentation-spatial .map-sidebar{display:block;padding:26px var(--gutter)}.presentation-spatial .map-sidebar>h3{font-size:23px;max-width:25ch}.presentation-spatial .map-project-list{max-height:320px}.presentation-spatial .map-controls{left:18px;bottom:68px;gap:5px}.presentation-spatial .map-controls button{min-height:38px;padding:0 10px}.presentation-spatial .map-bottomline{align-items:flex-start;min-height:58px;padding:12px 18px}.presentation-spatial .map-topline{padding:16px 18px}.presentation-spatial .map-selected img{object-position:center}}
@media(prefers-reduced-motion:reduce){.presentation-spatial .map-point *{transition:none!important}}
@media(min-width:901px){
  .presentation-spatial .map-sidebar{display:flex;flex-direction:column;height:calc(clamp(420px,40vw,590px) + 100px)}
  .presentation-spatial .map-sidebar>h3,.presentation-spatial .map-sidebar>.eyebrow,.presentation-spatial .map-selected{flex:none}
  .presentation-spatial .map-project-list{flex:1;min-height:100px;max-height:none}
}
/* SVG group outlines use map units in Chromium; draw the focus indicator in
   screen-scaled marker geometry instead of magnifying the global outline. */
.presentation-spatial .world-map .map-point:focus,.presentation-spatial .world-map .map-point:focus-visible{outline:none}
.presentation-spatial .world-map .map-point:focus-visible .map-pulse{fill:transparent;opacity:1;stroke:#704d30;stroke-width:1.5;vector-effect:non-scaling-stroke}

/* Atelier 28: let complete images and their captions share the editorial grid. */
.presentation-spatial .case-gallery-images{padding:0}
.presentation-spatial .case-gallery-images figcaption{text-align:left}
.presentation-spatial .case-gallery--cultural-centre .portfolio-panorama{grid-column:auto;align-self:center}
.presentation-spatial .competition-hero{padding-top:128px}
.presentation-spatial .competition-hero>.back-link{display:inline-flex;align-items:center;min-height:36px;margin-bottom:24px}
.presentation-spatial .about-portrait{display:flex;align-items:center;gap:28px;margin:0;padding:0 0 28px;border-bottom:1px solid var(--line)}
.presentation-spatial .about-practice-steps:has(.about-portrait){border-top:0}
.presentation-spatial .about-portrait img{display:block;width:160px;height:160px;flex:none;object-fit:cover}
.presentation-spatial .about-portrait figcaption{min-width:0;max-width:24ch}
.presentation-spatial .about-portrait strong{display:block;font-size:22px;font-weight:500;letter-spacing:-.025em;line-height:1.3}
.presentation-spatial .about-portrait span{display:block;margin-top:8px;font-size:13px;line-height:1.6;color:var(--muted)}
/* Native-width limits remain in place for smaller archival originals. */
@media(min-width:901px){
 .presentation-spatial .case-story{padding-top:64px;padding-bottom:54px}
}
@media(max-width:900px){.presentation-spatial .competition-hero{padding-top:112px}}
@media(max-width:600px){
 .presentation-spatial .competition-hero{padding-top:108px}
 .presentation-spatial .about-portrait{gap:22px;padding-bottom:24px}
 .presentation-spatial .about-portrait img{width:144px;height:144px}
 .presentation-spatial .about-portrait strong{font-size:20px}
}

/* Atelier 29 — restore the credential's contrast; give the portrait one quiet frame. */
.presentation-spatial .credential-grid .pmp-credential{
 padding:32px 36px 34px;
 border:0;
 background:var(--dark);
 color:var(--paper);
}
.presentation-spatial .pmp-credential>.eyebrow{color:#d6c1a5}
.presentation-spatial .pmp-credential>strong{
 color:#e0c7a5;
 font-size:clamp(60px,5vw,72px);
 margin-top:22px;
}
.presentation-spatial .pmp-credential h3{color:var(--paper);max-width:24ch}
.presentation-spatial .pmp-credential>p:not(.eyebrow){color:#ddd5c8}
.presentation-spatial .pmp-credential>small{color:#c9c3b8;max-width:48ch}
.presentation-spatial .about-portrait{gap:28px;align-items:center}
.presentation-spatial .about-portrait .portrait-frame{
 display:block;
 flex:none;
 padding:6px;
 margin:0;
 border:1px solid #9c8266;
 background:transparent;
 line-height:0;
}
.presentation-spatial .portrait-frame img{
 width:160px;
 height:160px;
 max-width:none;
 opacity:1;
 filter:none;
 transform:none;
}
.presentation-spatial .about-portrait figcaption{flex:1;max-width:24ch}
.presentation-spatial .cv-recruitment{scroll-margin-top:112px}
.presentation-spatial .cv-focus-link{display:flex;width:fit-content;margin-top:12px}
.presentation-spatial .contact-page{row-gap:42px}
.presentation-spatial .contact-page>.cv-recruitment{grid-column:1/-1;padding-top:30px;border-top:1px solid var(--atelier-rule);min-width:0}
.presentation-spatial .cv-unified-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;margin-top:14px;align-items:start}
.presentation-spatial .cv-unified-download h2{font-size:29px;line-height:1.3;letter-spacing:-.035em;margin:0}
.presentation-spatial .cv-unified-download>p{font-size:16px;line-height:1.7;color:var(--reading);margin-top:12px}
.presentation-spatial .cv-profile-actions{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:18px}
.presentation-spatial .cv-profile-actions .text-link{font-size:13px;min-height:44px;gap:12px;margin:0;white-space:nowrap}
.presentation-spatial .cv-profile-actions .icon{width:15px;height:15px}
.presentation-spatial .cv-opportunities h3{font-size:17px;line-height:1.5;font-weight:500;letter-spacing:-.015em;margin:3px 0 10px}
.presentation-spatial .cv-opportunities p{font-size:16px;line-height:1.7;color:var(--reading);margin:0;max-width:64ch}
@media(max-width:700px){
 .presentation-spatial .contact-page>.cv-recruitment{margin-top:20px;padding-top:26px}
 .presentation-spatial .cv-unified-grid{grid-template-columns:minmax(0,1fr);gap:26px}
}
@media(max-width:600px){
 .presentation-spatial .credential-grid .pmp-credential{padding:27px 25px 29px}
 .presentation-spatial .pmp-credential>strong{font-size:62px}
 .presentation-spatial .pmp-credential h3{font-size:22px}
 .presentation-spatial .about-portrait{gap:20px}
 .presentation-spatial .portrait-frame img{width:132px;height:132px}
 .presentation-spatial .cv-recruitment{scroll-margin-top:90px}
}
@media(max-width:370px){
 .presentation-spatial .about-portrait{gap:17px}
 .presentation-spatial .portrait-frame img{width:116px;height:116px}
}
