@font-face{font-family:Manrope;src:url('fonts/Manrope.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:'Source Serif';src:url('fonts/SourceSerif4-Regular.ttf') format('truetype');font-style:normal;font-weight:400 500;font-display:swap}
@font-face{font-family:'Source Serif';src:url('fonts/SourceSerif4-Semibold.ttf') format('truetype');font-style:normal;font-weight:600 800;font-display:swap}
@font-face{font-family:'Source Serif Display';src:url('fonts/SourceSerif4Display-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--ink:#0b2848;--paper:#fff;--soft:#f4f7fa;--blue:#1d5e91;--structure:#1e4267;--gold:#927a4b;--gold-text:#765522;--muted:#41546b;--line:#d4dfe8;--font:Manrope,'Segoe UI',Arial,sans-serif;--serif:'Source Serif',Georgia,serif;--display:'Source Serif Display','Source Serif',Georgia,serif;--gutter:clamp(22px,5vw,86px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height,88px) + 20px)}body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.75 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}h1,h2,h3,h4,p,figure{margin:0}h1,h2{font-family:var(--display);font-weight:400;line-height:1.12;letter-spacing:-.022em}h2{font-size:clamp(2.2rem,3.8vw,3.75rem)}h3,h4{font-weight:600;line-height:1.3;letter-spacing:-.025em}h3{font-size:1.6rem}h4{font-size:1.3rem}p{margin-bottom:1.3rem}img{display:block;max-width:100%}section[id],article[id]{scroll-margin-top:20px}::selection{color:#fff;background:var(--blue)}.meta,.eyebrow{font-size:.8125rem;line-height:1.55;font-weight:600;letter-spacing:.04em}.eyebrow{text-transform:uppercase;color:var(--gold-text)}
.header{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:14px var(--gutter);background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);transition:transform .2s ease}.brand{display:flex;flex-direction:column;line-height:1.12;min-height:44px;justify-content:center;flex-shrink:0}.brand>span{font-size:.64rem;letter-spacing:.025em;margin-bottom:4px}.brand strong{font-family:var(--serif);font-weight:600;font-size:1.7rem;letter-spacing:-.025em}.header-right{display:flex;align-items:center;gap:36px}#navigation{display:flex;gap:27px}#navigation a{font-size:.875rem;display:flex;align-items:center;min-height:44px;border-bottom:1px solid transparent}#navigation a:hover{border-bottom-color:var(--gold)}.languages{display:flex;gap:0}.languages a{font-size:.8125rem;min-width:44px;min-height:44px;display:grid;place-items:center;color:var(--muted)}.languages a[aria-current]{color:var(--ink);border-bottom:2px solid var(--gold);font-weight:700}.menu-toggle{display:none;min-width:44px;min-height:44px;color:inherit;background:transparent;border:0;padding:8px;cursor:pointer;gap:9px;align-items:center}.skip{position:fixed;z-index:100;background:white;color:var(--ink);padding:12px 25px;top:-100px;left:20px}.skip:focus{top:15px}
.hero{min-height:680px;position:relative;isolation:isolate;overflow:hidden;background:#f0f5f8;display:flex;align-items:center}.hero-image{position:absolute;inset:0;z-index:-1}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:60% 40%}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.99),rgba(255,255,255,.93) 27%,rgba(255,255,255,.67) 43%,transparent 67%)}.hero-image figcaption{position:absolute;z-index:1;bottom:27px;right:var(--gutter);font-size:.75rem;line-height:1.55;padding:13px 18px;background:rgba(255,255,255,.93);border-top:2px solid var(--gold)}.hero-image figcaption strong{font-family:var(--serif);font-size:1.22rem;font-weight:600}.hero-content{width:56%;max-width:860px;padding:65px 0 105px var(--gutter)}.hero .eyebrow{margin-bottom:15px;font-size:.84rem;letter-spacing:.08em}.hero-domain{font-size:.9rem;font-weight:500;line-height:1.5;margin-bottom:29px;color:var(--muted)}.hero h1{display:block;font-size:clamp(2.5rem,4.25vw,4.3rem);line-height:1.08;font-weight:400;max-width:680px;text-wrap:balance}.hero-audience{font-size:1rem;line-height:1.65;max-width:490px;margin:26px 0 0;color:var(--muted);text-wrap:pretty}.hero-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:52px;padding:14px 21px;font-size:.875rem;font-weight:600;line-height:1.5;transition:background .18s ease;border-radius:2px}.button .arrow{font-size:1.4rem;line-height:1}.button-blue,.button-white{background:var(--blue);color:white}.button-blue:hover,.button-white:hover{background:var(--ink)}.hero-secondary{display:inline-flex;gap:15px;align-items:center;font-size:.875rem;color:var(--blue);padding:10px 0;border-bottom:1px solid var(--blue);min-height:44px}.hero-secondary .arrow{font-size:1.3rem}.hero-bottom{position:absolute;bottom:28px;left:var(--gutter);max-width:52%;font-size:.72rem;color:var(--muted)}
.introduction{padding:70px var(--gutter);display:grid;grid-template-columns:1.3fr 1fr;gap:7vw;border-bottom:1px solid var(--line)}.introduction>p{font-size:clamp(1.15rem,1.6vw,1.45rem);line-height:1.7;margin:0;max-width:760px}.trust{display:grid;gap:17px;align-content:center}.trust>div{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:15px}.trust strong{font-family:var(--serif);font-size:1.55rem;font-weight:400;line-height:1.3}.trust span{font-size:.8125rem;color:var(--muted);line-height:1.5}
.section{padding:88px var(--gutter)}.section-label{display:flex;gap:16px;align-items:flex-start;margin-bottom:42px;font-size:.875rem;line-height:1.4}.section-label>span,.section-number{font-size:.8125rem;color:var(--gold-text);border-top:2px solid var(--gold);padding-top:8px;min-width:32px;font-weight:600}.section-label p{margin:0;padding-top:9px}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;margin-bottom:51px;align-items:end}.section-heading h2{max-width:750px;text-wrap:balance}.section-heading>p{margin:0;color:var(--muted);max-width:470px;font-size:1rem}.services{border-top:1px solid var(--line)}.service{border-bottom:1px solid var(--line)}.service>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:38px 1fr 1fr 42px;gap:25px;padding:29px 18px;align-items:center}.service>summary::-webkit-details-marker{display:none}.service-number{font-size:.875rem;align-self:start;padding-top:5px;color:var(--gold-text)}.service-heading{display:flex;flex-direction:column;gap:11px}.service-heading>.meta{color:var(--muted);font-weight:400;letter-spacing:0}.service-name{font-size:clamp(1.35rem,2vw,2rem);font-weight:600;line-height:1.23;letter-spacing:-.025em;max-width:510px}.service-question{font-size:.9375rem;line-height:1.7;color:var(--muted);max-width:550px}.expand{font-size:1.8rem;font-weight:300;display:grid;place-items:center;width:40px;height:44px;line-height:1;transition:transform .2s;color:var(--blue)}.service[open] .expand{transform:rotate(45deg)}.service[open]{background:var(--soft);box-shadow:inset 3px 0 var(--gold)}.service-body{padding:0 82px 32px 81px}.service-body p{max-width:880px;color:var(--muted);font-size:1rem;line-height:1.8}.service-subtitle{font-weight:600;color:var(--ink)!important;margin-bottom:13px}.service-links{display:flex;flex-wrap:wrap;gap:8px 30px;align-items:flex-start}.text-link{display:inline-flex;gap:18px;align-items:center;border-bottom:1px solid currentColor;padding:9px 0;color:var(--blue);font-size:.875rem;line-height:1.5;font-weight:600;min-height:44px}.text-link:hover{color:var(--ink)}.text-link .arrow{font-size:1.3rem;flex-shrink:0}.service-links .text-link{max-width:100%}.service-links .text-link>span:first-child{min-width:0;overflow-wrap:anywhere}.service-links .secondary-reference{font-weight:400}
.collaboration{background:var(--soft);border-top:1px solid var(--line)}.collaboration-heading{display:flex;gap:25px;align-items:flex-start;margin-bottom:40px}.collaboration h2{font-size:clamp(2rem,3.3vw,3.35rem)}.collaboration-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;margin:0;padding:0}.collaboration-steps li{border-top:1px solid var(--line);padding-top:20px;min-width:0}.step-number{font-size:.8125rem;font-weight:600;color:var(--gold-text)}.collaboration-steps h3{font-size:1.15rem;line-height:1.4;letter-spacing:-.02em;margin:17px 0 12px}.collaboration-steps p{font-size:.9375rem;line-height:1.75;color:var(--muted);margin:0}.collaboration-closing{max-width:970px;font-size:1.0625rem;line-height:1.8;border-left:2px solid var(--gold);margin:39px 0 0;padding-left:25px}
.projects{display:flex;flex-direction:column;gap:83px}.project{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.project-1 .project-visual{order:2}.project-1 .project-copy{order:1}.project-visual{min-width:0;min-height:430px;position:relative;overflow:hidden;margin:0;background:var(--soft)}.dossier{padding:34px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;background:var(--soft);border:1px solid var(--line);border-top:3px solid var(--gold)}.visual-top{display:flex;justify-content:space-between;gap:24px;font-size:.75rem;font-weight:500;line-height:1.6;color:var(--muted)}.dossier-question{font-family:var(--display);font-size:clamp(2.1rem,3.5vw,3.65rem);line-height:1.17;letter-spacing:-.015em;max-width:640px;margin:15px 0;text-wrap:balance}.visual-bottom{font-size:.75rem;border-top:1px solid var(--line);padding-top:18px;color:var(--blue)}.project-meta{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px;font-size:.75rem;color:var(--muted);margin-bottom:27px}.project-copy h3{font-family:var(--display);font-size:clamp(2rem,3.1vw,3.2rem);font-weight:400;line-height:1.13;margin-bottom:15px;max-width:660px}.project-service{font-size:.8125rem;color:var(--blue);font-weight:600;margin-bottom:25px}.project-service a{text-decoration:underline;text-underline-offset:4px;display:inline-block;padding-block:7px}.project-copy>p{font-size:1rem;color:var(--muted);line-height:1.75}.project-outcome{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.project-outcome h4{font-size:.8125rem;font-weight:600;line-height:1.5;letter-spacing:.015em;color:var(--gold-text);margin-bottom:9px}.project-outcome p{font-size:1rem;line-height:1.75;margin-bottom:12px}.architecture img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:61% center}.architecture figcaption{position:absolute;bottom:0;left:0;right:0;font-size:.75rem;padding:62px 22px 17px;background:linear-gradient(0deg,#0b2848f5,transparent);color:white;line-height:1.5}.architecture figcaption>span{display:block;margin-bottom:5px}.architecture figcaption small{font-size:.7rem}.architecture figcaption a{text-decoration:underline;text-underline-offset:3px}.blueprint{background:#e6edf3;padding:0}.blueprint>a{position:absolute;inset:0 0 50px;display:block;overflow:hidden}.blueprint img{height:100%;width:100%;object-fit:cover;object-position:50% 5%}.blueprint figcaption{position:absolute;bottom:0;left:0;right:0;padding:13px 20px;background:var(--structure);font-size:.75rem;line-height:1.5;color:white}.reference-heading{margin:80px 0 30px;display:flex;justify-content:space-between;gap:30px;align-items:baseline}.reference-heading h3{font-family:var(--serif);font-size:1.85rem;font-weight:400}.reference-heading .meta{color:var(--muted)}.reference{display:grid;grid-template-columns:38px .75fr 1.3fr;gap:25px;padding:28px 0;border-top:1px solid var(--line)}.reference-no{font-size:.8125rem;color:var(--gold-text)}.reference h4{font-family:var(--serif);font-size:1.7rem;font-weight:400}.reference .meta{font-size:.75rem;color:var(--muted);font-weight:500}.reference p{font-size:1rem;margin-bottom:12px}.reference .reference-service{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 8px;font-size:.8125rem;margin:13px 0 0}.reference-service a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px;color:var(--blue)}.reference .reference-competencies{font-size:.8125rem;color:var(--gold-text);line-height:1.7;margin:12px 0}
.about{background:var(--soft);border-block:1px solid var(--line)}.about-opening{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:center;padding-bottom:60px;border-bottom:1px solid var(--line)}.about-portrait{max-width:530px}.about-portrait img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-top:3px solid var(--gold)}.about-portrait figcaption{font-size:.75rem;line-height:1.7;padding-top:12px;color:var(--muted)}.about-copy h2{font-size:clamp(2.2rem,3.8vw,3.8rem);margin-bottom:25px}.about-copy>p{font-size:1rem;color:var(--muted)}.about-copy .about-sub{color:var(--ink);font-size:1.16rem;line-height:1.65;margin-bottom:22px}.about-copy .qualification{font-size:.8125rem;margin:25px 0 0;color:var(--gold-text)}.experience{display:grid;grid-template-columns:1.3fr .7fr;gap:7vw;margin-top:60px}.experience h3{font-family:var(--serif);font-size:2rem;font-weight:400;margin-bottom:29px}.experience dl{margin:0}.experience dl>div{display:grid;grid-template-columns:95px 1fr;gap:25px;padding:22px 0;border-top:1px solid var(--line)}.experience dt{font-size:.875rem;font-weight:600}.experience dd{margin:0;font-size:1rem;color:var(--muted)}.aef{background:white;padding:30px;align-self:start;border-top:2px solid var(--gold)}.aef .meta{color:var(--gold-text)}.aef h3{font-family:var(--display);font-size:4.5rem;line-height:1;margin:26px 0}.aef>p:last-child{font-size:.9375rem;line-height:1.8;color:var(--muted);margin:0}.milestone-heading{margin-top:58px}.milestone-heading h3{font-family:var(--serif);font-size:1.75rem;font-weight:400}.milestones{list-style:none;margin:29px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:29px 38px}.milestones li{border-top:1px solid var(--line);padding-top:18px;min-width:0}.milestones strong{display:block;font-family:var(--serif);font-size:1.6rem;font-weight:400;line-height:1.3;margin-bottom:10px;color:var(--gold-text)}.milestones span{font-size:.875rem;color:var(--muted)}
.knowledge-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:7vw}.knowledge-grid h2{font-size:clamp(2rem,3vw,3.05rem);margin-bottom:25px}.knowledge-grid p{font-size:1rem;line-height:1.8;color:var(--muted)}.research{padding:20px 0}.innovation{padding:20px 0 20px 32px;border-left:1px solid var(--line)}.innovation>.meta{display:none}.knowledge-grid .innovation h2{font-size:1.9rem;line-height:1.25}.academic{margin-top:24px;padding-top:33px;border-top:1px solid var(--line)}.academic h3{font-family:var(--serif);font-size:1.85rem;font-weight:400;margin-bottom:26px}.academic dl{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin:0}.academic dt{font-size:.875rem;font-weight:600;color:var(--blue);margin-bottom:10px}.academic dd{font-size:1rem;line-height:1.8;margin:0;color:var(--muted)}.clients{margin-top:65px;border-top:2px solid var(--gold);padding-top:29px}.clients h3{font-family:var(--serif);font-size:2rem;font-weight:400;margin-bottom:27px}.client-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 35px;margin:0;padding:0}.client-list li{display:flex;align-items:center;min-height:86px;border-bottom:1px solid var(--line);padding:16px 0;font-size:1rem;font-weight:500;line-height:1.6}.publications{margin-top:55px}.publications h3{margin-bottom:22px}.publication-list{padding-left:22px}.publication-list li{padding:10px 0}
.contact{background:var(--soft);border-top:1px solid var(--line);display:grid;grid-template-columns:145px 1fr;gap:35px}.contact h2{font-size:clamp(2.4rem,4.5vw,4.6rem);max-width:1000px;margin-bottom:45px}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:7vw}.contact-intro{font-size:1.0625rem;line-height:1.8;max-width:630px;color:var(--muted);margin-bottom:27px}.email,.phone,.linkedin-link,.footer-top a,.legal-contact a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;color:var(--blue)}.contact .email{display:flex;width:fit-content;text-decoration:underline;text-underline-offset:5px;font-size:.875rem;margin-top:18px;overflow-wrap:anywhere;user-select:text}.contact address{font-style:normal;border-left:1px solid var(--line);padding-left:30px;font-size:.875rem;color:var(--muted)}.contact-name{font-size:.9375rem;line-height:1.7}.contact-name strong{font-family:var(--serif);font-weight:600;font-size:1.55rem;color:var(--ink)}.phone{font-size:1.3rem;margin-top:5px}.linkedin-link{gap:12px;font-size:.875rem;border-bottom:1px solid currentColor;margin-top:10px}.copy-email{display:block;min-width:44px;min-height:44px;max-width:100%;padding:7px 12px;margin:4px 0 0;border:1px solid var(--line);background:transparent;color:var(--blue);font-size:.8125rem;line-height:1.5;text-align:left;cursor:pointer}.copy-email:hover{background:white}.copy-email:disabled{cursor:wait}.copy-status{font-size:.875rem;line-height:1.6;max-width:620px;margin:0}.copy-status:not(:empty){margin-top:12px}.no-js .copy-email,.no-js .copy-status{display:none}
.footer{padding:40px var(--gutter) 25px;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px}.footer-top>p{font-family:var(--serif);font-size:1.4rem;max-width:480px}.footer-top>div{display:flex;gap:25px;flex-wrap:wrap;font-size:.8125rem}.footer-top a:hover{text-decoration:underline}.footer-signature{font-family:var(--serif);font-size:2.5rem;font-weight:600;line-height:1.2;padding-top:12px}.footer-signature>span{color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;gap:25px;padding-top:22px;margin-top:20px;border-top:1px solid var(--line);font-size:.75rem;color:var(--muted)}
.case-hero{padding:36px var(--gutter) 60px;background:var(--soft);border-bottom:1px solid var(--line)}.case-breadcrumb{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:50px}.case-breadcrumb .meta{color:var(--gold-text)}.case-breadcrumb .text-link{font-weight:400;font-size:.8125rem}.case-hero>.eyebrow{margin-bottom:20px}.case-hero h1{font-size:clamp(3rem,6vw,6.2rem);max-width:1250px;line-height:1.09;margin-bottom:40px}.case-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.case-deck{font-family:var(--serif);font-size:1.9rem;line-height:1.3;max-width:500px}.case-intro>p:last-child{font-size:1.0625rem;line-height:1.8;color:var(--muted);max-width:750px;margin:0}.case-feature{display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding:65px var(--gutter);align-items:center}.case-feature .project-visual{min-height:360px}.case-feature>div:not(.project-visual)>h2{font-family:var(--font);font-size:clamp(1.8rem,2.5vw,2.5rem);font-weight:600;line-height:1.2;margin:24px 0}.case-feature>div:not(.project-visual)>p{font-size:1.0625rem;max-width:550px}.case-feature>div>.meta{color:var(--gold-text)}.case-body{display:grid;grid-template-columns:220px 1fr;gap:7vw;padding:30px var(--gutter) 85px}.case-nav{align-self:start;position:sticky;top:calc(var(--header-height,80px) + 24px)}.case-nav>.meta{margin-bottom:24px;color:var(--muted)}.case-nav>a:not(.text-link){display:flex;gap:14px;align-items:baseline;border-top:1px solid var(--line);padding:16px 0;font-size:.875rem;line-height:1.5;min-height:44px}.case-nav>a>span{color:var(--gold-text);font-size:.75rem}.case-nav .text-link{margin-top:22px}.case-section{display:grid;grid-template-columns:32px 1fr;gap:23px;margin-bottom:55px;padding-top:25px;border-top:1px solid var(--line)}.case-section-number{font-size:.8125rem;color:var(--gold-text);padding-top:6px}.case-section h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:27px}.case-section p{font-size:1.0625rem;line-height:1.85;max-width:850px;color:var(--muted)}.case-section .contributions-title{font-size:1rem;letter-spacing:0;line-height:1.5;margin:29px 0 14px}.contributions{list-style:none;padding:0;margin:0;max-width:850px}.contributions li{position:relative;padding:14px 0 14px 23px;border-top:1px solid var(--line);font-size:1rem;line-height:1.8;color:var(--muted)}.contributions li:before{content:'–';position:absolute;left:0;color:var(--gold-text)}.later-development{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}
.legal-page{padding:60px var(--gutter);max-width:1180px;margin:auto}.legal-page h1{font-size:clamp(2.7rem,5vw,4.5rem);margin-bottom:35px;overflow-wrap:anywhere}.legal-review{border-left:2px solid var(--gold);padding:20px 25px;background:var(--soft);margin-bottom:40px}.legal-review>strong{font-size:.875rem;color:var(--gold-text)}.legal-page .legal-review p{font-size:.9375rem;line-height:1.7;margin:10px 0 0}.legal-section{border-top:1px solid var(--line);padding:28px 0}.legal-section h2{font-family:var(--serif);font-size:1.85rem;line-height:1.3;margin-bottom:20px}.legal-section p{font-size:1rem;line-height:1.8;overflow-wrap:anywhere}.legal-contact{font-style:normal;font-size:1rem;line-height:1.9;overflow-wrap:anywhere}.legal-contact strong{display:inline-block;margin-bottom:10px}.legal-contact a{text-decoration:underline;text-underline-offset:4px}.legal-links{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:13px}.legal-links .text-link{font-size:.875rem;align-items:flex-start}.legal-links .text-link>span:first-child{overflow-wrap:anywhere}
@media(min-width:1700px){:root{--gutter:max(86px,calc((100vw - 1560px)/2))}.hero-content{max-width:none;width:55%}.hero{min-height:760px}}
@media(max-width:1100px){.header-right{gap:20px}#navigation{gap:18px}.brand strong{font-size:1.5rem}.hero{min-height:660px}.hero-content{width:58%}.hero h1{font-size:3.15rem}.hero-image img{object-position:64% center}.hero-image:after{background:linear-gradient(90deg,#fff,rgba(255,255,255,.92) 32%,rgba(255,255,255,.68) 46%,transparent 73%)}.hero-actions{gap:18px}.introduction{grid-template-columns:1fr 1fr;gap:5vw}.section{padding-block:70px}.service>summary{grid-template-columns:30px 1.2fr 1fr 35px;gap:16px}.service-body{padding-left:64px;padding-right:40px}.collaboration-steps{grid-template-columns:1fr 1fr;gap:30px}.contact{grid-template-columns:1fr}.contact .section-label{margin-bottom:4px}.client-list{grid-template-columns:1fr 1fr}.case-body{grid-template-columns:185px 1fr;gap:5vw}}
@media(max-width:850px){.header.header-hidden{transform:translateY(-110%)}.menu-toggle{display:flex}#navigation{display:none;position:absolute;top:100%;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:20px var(--gutter);flex-direction:column;gap:0;max-height:calc(100dvh - var(--header-height,90px));overflow-y:auto}#navigation.open{display:flex}#navigation a{padding:12px 0}.header-right{gap:14px}.hero-content{width:61%;padding-block:45px 90px}.hero h1{font-size:2.7rem}.hero-domain{font-size:.82rem}.hero .eyebrow{font-size:.76rem}.hero-image img{object-position:66% center}.hero-image figcaption{font-size:.65rem;max-width:38%;right:22px}.hero-image figcaption strong{font-size:1rem}.hero-audience{font-size:.9375rem}.hero-actions{gap:12px}.hero .button{padding:13px 16px}.section-heading{grid-template-columns:1fr;gap:25px}.section-heading>p{max-width:680px}.introduction{grid-template-columns:1fr;gap:35px}.trust{grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.trust>div{display:flex;flex-direction:column;gap:8px}.trust strong{font-size:1.35rem}.project,.project-1{grid-template-columns:1fr 1fr;gap:4vw}.project-visual{min-height:380px}.dossier{padding:24px}.dossier-question{font-size:2.25rem}.reference{grid-template-columns:28px .7fr 1.3fr;gap:18px}.about-opening{gap:5vw}.about-copy h2{font-size:2.3rem}.experience{grid-template-columns:1fr}.aef h3{font-size:3.7rem}.aef{max-width:650px}.knowledge-grid{gap:4vw}.contact-grid{gap:4vw}.case-body{display:block}.case-nav{position:static;display:flex;flex-wrap:wrap;gap:0 24px;margin-bottom:30px}.case-nav>.meta{width:100%}.case-nav .text-link{display:none}.case-nav>a:not(.text-link){flex:1;min-width:120px}.case-intro{gap:5vw}.no-js #navigation{display:flex;position:static;border:0;padding:0;max-height:none}.no-js .header{flex-wrap:wrap}.no-js .header-right{flex-wrap:wrap}.no-js .menu-toggle{display:none}}
@media(max-width:600px){:root{--gutter:22px}body{font-size:1rem}.header{display:grid;grid-template-columns:1fr;padding-block:9px;gap:7px}.brand{width:fit-content;min-height:35px}.brand>span{font-size:.58rem;margin-bottom:2px}.brand strong{font-size:1.35rem}.header-right{justify-content:space-between;width:100%;gap:14px}.languages a{font-size:.8125rem}.menu-toggle{font-size:.875rem}#navigation{padding-block:10px}.hero{display:flex;flex-direction:column;min-height:0;overflow:visible}.hero-content{order:0;width:100%;max-width:none;padding:34px var(--gutter) 28px;background:white}.hero .eyebrow{font-size:.75rem;margin-bottom:12px}.hero-domain{font-size:.8125rem;margin-bottom:22px}.hero h1{font-size:clamp(2rem,8.5vw,2.75rem);line-height:1.13;text-wrap:pretty;max-width:100%}.hero-audience{font-size:.9375rem;line-height:1.65;margin-top:21px}.hero-actions{gap:15px;margin-top:24px}.hero-secondary{font-size:.8125rem}.hero-image{position:relative;order:1;inset:auto;z-index:0;width:100%;aspect-ratio:1672/941}.hero-image img{position:absolute;inset:0;object-fit:cover;object-position:center}.hero-image:after{display:none}.hero-image figcaption{bottom:10px;right:12px;max-width:none;padding:7px 11px;font-size:.6rem}.hero-image figcaption strong{font-size:.92rem}.hero-bottom{position:static;order:2;max-width:none;width:100%;padding:10px var(--gutter);font-size:.65rem;background:var(--soft)}.introduction{padding-block:39px;gap:30px}.introduction>p{font-size:1.125rem;line-height:1.75}.trust{grid-template-columns:1fr;gap:15px}.trust>div{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:baseline;padding-bottom:13px}.trust strong{font-size:1.35rem}.trust span{font-size:.8125rem}.section{padding-block:52px}.section-label{margin-bottom:29px}.section-heading{margin-bottom:34px;gap:22px}h2,.collaboration h2{font-size:2.2rem}.service>summary{grid-template-columns:25px 1fr 28px;gap:13px;padding:24px 13px}.service-name{font-size:1.4rem}.service-heading>.meta{font-size:.75rem}.service-question{grid-column:2;grid-row:2;font-size:.9375rem;line-height:1.65}.service .expand{grid-column:3;grid-row:1;width:28px}.service-number{padding-top:3px}.service-body{padding:0 21px 24px 51px}.service-body p{font-size:1rem}.service-links{flex-direction:column;gap:8px}.service-links .text-link{font-size:.8125rem}.collaboration-heading{gap:18px;margin-bottom:31px}.collaboration-steps{grid-template-columns:1fr;gap:26px}.collaboration-steps h3{font-size:1.25rem;margin-top:12px}.collaboration-steps p{font-size:1rem}.collaboration-closing{font-size:1rem;padding-left:20px;margin-top:31px}.projects{gap:50px}.project,.project-1{grid-template-columns:1fr;gap:29px}.project-1 .project-visual{order:0}.project-1 .project-copy{order:1}.project-visual{min-height:330px;height:330px}.dossier{height:auto;min-height:320px;padding:26px}.dossier-question{font-size:2.35rem}.project-copy h3{font-size:2.25rem}.project-meta{margin-bottom:21px}.project-service{margin-bottom:22px}.reference-heading{margin-top:58px;display:block}.reference-heading .meta{margin-bottom:12px}.reference-heading h3{font-size:1.65rem}.reference{grid-template-columns:25px 1fr;gap:12px 15px;padding:23px 0}.reference>div{grid-column:2}.reference h4{font-size:1.65rem}.reference p{font-size:1rem}.about-opening{display:flex;flex-direction:column;gap:29px;padding-bottom:35px}.about-portrait{width:100%;max-width:480px}.about-copy h2{font-size:2.25rem}.about-copy .about-sub{font-size:1.125rem}.experience{margin-top:36px;gap:26px}.experience h3{font-size:1.85rem}.experience dl>div{grid-template-columns:1fr;gap:9px;padding:20px 0}.aef{padding:27px}.aef h3{font-size:3.5rem}.milestone-heading{margin-top:37px}.milestones{grid-template-columns:1fr;gap:21px}.milestones strong{font-size:1.5rem}.milestones li,.milestones strong,.milestones span{overflow-wrap:normal;word-break:normal;hyphens:auto}.knowledge-grid,.academic dl{grid-template-columns:1fr;gap:26px}.research{padding:0}.innovation{padding:26px 0 0;border-left:0;border-top:1px solid var(--line)}.knowledge-grid h2{font-size:2.1rem}.knowledge-grid .innovation h2{font-size:1.85rem}.academic{margin-top:18px;padding-top:26px}.academic h3{font-size:1.7rem}.client-list{grid-template-columns:1fr;gap:0}.client-list li{min-height:68px;font-size:1rem;padding:15px 0}.clients{margin-top:41px;padding-top:25px}.clients h3{font-size:1.85rem}.contact{gap:26px}.contact h2{font-size:2.5rem;margin-bottom:29px}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-intro{font-size:1rem}.contact address{padding:25px 0 0;border-left:0;border-top:1px solid var(--line)}.contact .email{font-size:.8125rem}.phone{font-size:1.3rem}.footer{padding-block:33px 23px}.footer-top{display:block}.footer-top>p{font-size:1.25rem;margin-bottom:17px}.footer-top>div{gap:8px 24px}.footer-signature{font-size:2.1rem}.footer-bottom{flex-direction:column;gap:8px;padding-top:19px;font-size:.7rem}.case-hero{padding-block:23px 38px}.case-breadcrumb{align-items:flex-start;margin-bottom:32px;gap:18px}.case-breadcrumb .meta{font-size:.7rem;max-width:90px;text-align:right}.case-hero h1{font-size:clamp(2.5rem,10vw,3.2rem);overflow-wrap:anywhere;hyphens:auto;margin-bottom:27px}.case-intro{grid-template-columns:1fr;gap:18px}.case-deck{font-size:1.7rem;margin:0}.case-intro>p:last-child{font-size:1rem}.case-feature{grid-template-columns:1fr;padding-block:38px;gap:28px}.case-feature .project-visual{min-height:320px;height:320px}.case-feature .dossier{height:auto}.case-feature>div:not(.project-visual)>h2{font-size:1.9rem;margin:19px 0}.case-feature>div:not(.project-visual)>p{font-size:1rem;margin:0}.case-body{padding-block:0 20px}.case-nav{gap:0;display:block}.case-nav>.meta{margin-bottom:15px}.case-nav>a:not(.text-link){padding:13px 0}.case-section{grid-template-columns:25px 1fr;gap:15px;margin-bottom:32px;padding-top:24px}.case-section h2{font-size:1.9rem;margin-bottom:22px}.case-section p,.contributions li{font-size:1rem;line-height:1.8}.legal-page{padding-block:38px}.legal-page h1{font-size:clamp(2rem,8.6vw,2.5rem);hyphens:auto}.legal-review{padding:17px 19px}.legal-section h2{font-size:1.55rem}.no-js #navigation{width:100%}.no-js .header-right{display:flex;flex-wrap:wrap}.no-js #navigation{order:3}.no-js .languages{order:1}}
@media(max-width:360px){:root{--gutter:19px}.hero h1{font-size:2rem}.hero .button{font-size:.8125rem;gap:20px}.service>summary{padding-inline:9px;gap:10px}.service-body{padding-left:44px;padding-right:17px}.service-name{font-size:1.3rem}.service-number{font-size:.75rem}.dossier-question{font-size:2rem}.contact .email{font-size:.75rem}.case-breadcrumb{flex-wrap:wrap}.case-breadcrumb .meta{text-align:left;max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.header,.skip,.hero-actions,.footer,.contact,.version,.case-nav,.copy-email,.copy-status{display:none}body{font-size:11pt;color:#000;background:white}.hero{min-height:0;display:block}.hero-image{display:none}.hero-content{padding:20px 0;width:100%}.hero h1{font-size:28pt}.hero-bottom{position:static}.section,.introduction,.case-body,.case-hero,.case-feature{padding:25px 0;background:white}.service-body{display:block!important}.service,.project{break-inside:avoid}.case-body{display:block}.collaboration-steps{grid-template-columns:1fr 1fr}.about *{color:#000}.hero-domain,.hero-audience{color:#000}.about-portrait{max-width:220px}}
.legal-example{border:1px dashed var(--gold);background:var(--soft);padding:24px;margin-bottom:24px}.legal-page .legal-example-label{font-size:.8125rem;line-height:1.6;font-weight:600;color:var(--gold-text);margin-bottom:15px}.legal-example h2{font-size:1.55rem}.legal-section p:last-child{margin-bottom:0}

/* Client and institution marks: original logos with readable names. */
.client-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:0 28px}
.client-list .client{min-width:0;min-height:186px;padding:25px 0 22px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:17px;text-align:center}
.client-mark{width:100%;height:80px;display:flex;align-items:center;justify-content:center}
.client-mark img{display:block;width:100%;height:76px;max-width:184px;object-fit:contain}
.client-claas .client-mark img{max-width:160px}
.client-spie .client-mark img{max-width:155px}
.client-aef .client-mark img{max-width:76px}
.client-ursa .client-mark img{max-width:116px}
.client-museum .client-mark img,.client-transnetbw .client-mark img{height:58px;padding:12px 10px;box-sizing:border-box}
.client-museum .client-mark img{background:#bc0c04}
.client-transnetbw .client-mark img{background:var(--ink)}
.client-name{max-width:100%;font-size:.8125rem;line-height:1.55;font-weight:500;color:var(--muted);overflow-wrap:anywhere}
.client-list .client-text{justify-content:center;padding-inline:8px}
.client-text .client-name{font-family:var(--serif);font-size:1.125rem;line-height:1.4;font-weight:400;color:var(--ink);max-width:240px}
@media(max-width:1100px){.client-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.client-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.client-list .client{min-height:166px;padding-block:20px;gap:13px}.client-mark{height:70px}.client-mark img{height:66px}.client-aef .client-mark img{max-width:66px}.client-museum .client-mark img,.client-transnetbw .client-mark img{height:52px;padding:11px 8px}.client-text .client-name{font-size:1rem}.client-name{font-size:.75rem}}

/* German final corrections, 3 October: clear groups and readable bibliography. */
.client-group{margin-top:32px}.client-group h4{font-family:var(--font);font-size:.875rem;font-weight:600;color:var(--muted);margin:0 0 8px}.client-group .client-list{grid-template-columns:repeat(6,minmax(0,1fr));gap:0 24px}
.client-name small{display:block;font-size:.75rem;line-height:1.5;margin-top:6px}.client-name a{text-decoration:underline;text-underline-offset:3px}
.client-baumit .client-mark img,.client-dushanbe .client-mark img{max-width:76px}
.publications{margin-top:65px;padding-top:35px;border-top:1px solid var(--line)}.publications>h3{font-family:var(--serif);font-size:2.2rem;font-weight:400;margin:0 0 30px}
.publication-group{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,3fr);gap:40px;margin-top:30px}.publication-group h4{font-family:var(--font);font-size:.875rem;line-height:1.65;font-weight:600;margin:0;padding-top:17px;color:var(--muted)}
.publication-list{list-style:none;padding:0;margin:0}.publication-list li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:20px;padding:17px 0 20px;border-top:1px solid var(--line)}
.publication-year{font-size:.875rem;color:var(--gold-text);font-weight:600;padding-top:2px}.publication-title{font-size:1rem;font-weight:600;line-height:1.7;margin:0 0 7px;overflow-wrap:anywhere}.publication-details{font-size:.875rem;color:var(--muted);line-height:1.65;margin:0}
@media(max-width:1100px){.client-group .client-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.client-group .client-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.publications{margin-top:41px;padding-top:25px}.publications>h3{font-size:1.85rem}.publication-group{grid-template-columns:1fr;gap:10px;margin-top:25px}.publication-group h4{padding-top:0}.publication-list li{grid-template-columns:40px minmax(0,1fr);gap:12px}.publication-title{font-size:.9375rem}}
@media(max-width:600px){.hero-image figcaption{top:10px;left:12px;bottom:auto;right:auto;max-width:52%;padding:5px 8px;font-size:.55rem;line-height:1.45}.hero-image figcaption strong{font-size:.8rem;font-weight:400}}

/* Aquapark: gesamtes Foto und gut lesbare Quellenangabe. */
.project-visual.aquapark,.case-feature .project-visual.aquapark{height:auto;min-height:0;display:flex;flex-direction:column;background:#fff}.project-visual.aquapark img{position:static;height:auto;width:100%;aspect-ratio:5/3;object-fit:contain}.project-visual.aquapark figcaption{position:static;color:var(--ink);background:#fff;padding:18px;display:block}.project-visual.aquapark figcaption small{display:block;margin-top:10px;line-height:1.6}


.context-photo{margin:24px 0 0;max-width:100%}.context-photo img{display:block;position:static;width:100%;height:auto}.context-photo figcaption{font-size:.75rem;line-height:1.6;margin-top:12px;color:var(--muted)}.aef-nujoma{max-width:280px}.drewitz-visualisierung{max-width:720px}

.modul-material{margin:0 var(--gutter) 64px;max-width:1200px}.modul-material img{width:100%;height:auto;display:block;object-fit:contain}.modul-material figcaption{font-size:.8125rem;line-height:1.6;margin:16px 0}.modul-material .text-link{margin-top:8px}

/* Einheitliche historische Referenzen: Bild links, Inhalt rechts. */
.reference.reference-illustrated{display:grid;grid-template-columns:minmax(0,45fr) minmax(0,55fr);grid-template-areas:"image title" "image copy";grid-template-rows:auto 1fr;column-gap:clamp(28px,4vw,64px);row-gap:16px;padding:40px 0;align-items:start}
.reference-illustrated>h4{grid-area:title;font-size:clamp(1.7rem,2.4vw,2.35rem);margin:0}
.reference-illustrated>.context-photo{grid-area:image;margin:0;max-width:none;width:100%}
.reference-illustrated>.reference-copy{grid-area:copy;min-width:0}
.reference-illustrated .context-photo img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:var(--soft)}
.reference-illustrated .modul-overview img{aspect-ratio:3/2}
.reference-illustrated figcaption{margin:10px 0 0;font-size:.75rem}
.aef .aef-nujoma{max-width:210px;margin-top:22px}
.modul-material{max-width:900px;margin:0 auto 56px;padding:0 var(--gutter)}
.modul-material>a:first-child{display:block;cursor:zoom-in}
.modul-introduction{font-size:1.0625rem;line-height:1.8;max-width:820px;margin:26px 0 0;color:var(--muted)}
@media(max-width:700px){
.reference.reference-illustrated{grid-template-columns:minmax(0,1fr);grid-template-areas:"title" "image" "copy";grid-template-rows:auto auto auto;gap:20px;padding:30px 0}
.reference-illustrated>.reference-copy{grid-column:1}
.reference-illustrated>h4{font-size:1.8rem}
.aef .aef-nujoma{max-width:240px}
.modul-material{margin-bottom:38px;padding:0 var(--gutter)}
}

/* Abschlusskorrekturen 08.10.2026 */
.about-portrait img{border-top:0}
.service-links .text-link,.service-links .secondary-reference{font-weight:600}
.memberships{margin-top:55px;padding-top:32px;border-top:1px solid var(--line)}
.memberships h3{font-family:var(--serif);font-size:1.85rem;font-weight:400;margin-bottom:28px}
.memberships ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.memberships li{min-width:0}.membership-logo{height:92px;display:flex;align-items:center;margin-bottom:18px}
.membership-logo img{max-width:200px;max-height:85px;width:auto;height:auto;object-fit:contain}
.memberships h4{font-size:1rem;margin:0 0 10px}.memberships p{font-size:.9rem;color:var(--muted);margin:0}
@media(max-width:650px){.memberships ul{grid-template-columns:1fr;gap:30px}.membership-logo{height:80px}.membership-logo img{max-height:75px}}
.membership-logo img{max-width:min(200px,100%)}.memberships h4,.memberships p{overflow-wrap:anywhere}.milestones strong{overflow-wrap:anywhere}
.membership-logo img[src$="raacs.svg"]{background:var(--blue);padding:10px;box-sizing:content-box;max-height:65px}
.milestones span{overflow-wrap:anywhere;hyphens:auto}

.reference.reference-text-only{grid-template-columns:minmax(0,45fr) minmax(0,55fr);gap:clamp(28px,4vw,64px);padding:40px 0}.reference-text-only h4{font-size:clamp(1.7rem,2.4vw,2.35rem)}.membership-logo img[src$="raacs.png"]{max-height:85px;width:auto;background:none;padding:0}@media(max-width:700px){.reference.reference-text-only{grid-template-columns:1fr;gap:20px}.reference-text-only .reference-copy{grid-column:1}}

/* Kompakte Textreferenz bis zum Eingang des Ladeburg-Fotos */
.reference.reference-text-only{display:block;max-width:900px}.reference-text-only h4{margin:0 0 18px}.reference-text-only .reference-copy{max-width:800px}.case-body.case-body-compact{display:block;max-width:1040px;margin-inline:auto}.case-body-compact .case-section{margin-bottom:38px}

/* Begrenzte Inhaltsblöcke brauchen Innenabstände unabhängig vom äußeren Breitbild-Seitenrand. */
.modul-material,.case-body.case-body-compact,.legal-page{padding-inline:min(var(--gutter),86px)}


/* Historische Detailseiten: gemeinsames Raster für Einleitung, Bild und Fachtext. */
.historical-case{display:grid;grid-template-columns:minmax(22px,1fr) 200px clamp(48px,5vw,72px) minmax(0,760px) minmax(22px,1fr)}
.historical-case>.case-hero{grid-column:1/-1;display:grid;grid-template-columns:subgrid;padding:32px 0 40px}
.historical-case>.case-hero>*{grid-column:4;max-width:none}
.historical-case>.case-hero>.case-breadcrumb{grid-column:2/5;margin-bottom:36px}
.historical-case .case-hero h1{font-size:clamp(2.5rem,4.6vw,4.6rem);margin-bottom:24px}
.historical-case .case-deck{font-size:1.8rem;margin-bottom:0}
.historical-case .modul-introduction{margin-top:22px}
.historical-case>.modul-material{grid-column:4;width:100%;max-width:none;margin:36px 0 40px;padding:0}
.historical-case>.modul-material figcaption{margin:12px 0 0}
.historical-case>.case-body{grid-column:2/5;display:grid;grid-template-columns:subgrid;gap:0;padding:0 0 56px;margin:0;max-width:none}
.historical-case>.case-body>.case-nav{grid-column:1}
.historical-case>.case-body>article{grid-column:3;min-width:0}
.historical-case>.case-body-compact{padding-top:36px}
.historical-case .case-section{display:block;position:relative;margin-bottom:36px;padding-top:24px}
.historical-case .case-section-number{position:absolute;right:calc(100% + 20px);top:25px;padding:0}
.historical-case .case-section h2{font-size:clamp(1.9rem,3vw,2.5rem);margin-bottom:22px}
.historical-case .case-section p{max-width:760px}
.historical-case>.contact{grid-column:1/-1}
@media(max-width:850px){
.historical-case{display:block}
.historical-case>.case-hero{display:block;padding:24px var(--gutter) 32px}
.historical-case>.case-hero>.case-breadcrumb{margin-bottom:28px}
.historical-case>.modul-material{width:auto;margin:28px var(--gutter) 32px}
.historical-case>.case-body{display:block;padding:0 var(--gutter) 32px}
.historical-case>.case-body-compact{padding-top:28px}
.historical-case .case-section-number{position:static;display:block;margin-bottom:10px}
.historical-case .case-nav{margin-bottom:30px}
.historical-case .case-deck{font-size:1.65rem}
}
.reference-illustrated .ladeburg-fuehrungsraum img{aspect-ratio:auto}
.reference-illustrated>.ladeburg-fuehrungsraum{max-width:420px}
