:root{--paper:#fafaf8;--ink:#272824;--muted:#68685f;--line:#d8d8cf;--sand:#e9e6de}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.75 Inter,Arial,sans-serif}a{color:inherit;text-underline-offset:6px}img{display:block;width:100%;height:auto}figure{margin:0}p{margin:0 0 22px}h1,h2,h3{font-weight:300;line-height:1.12;letter-spacing:-.045em;margin:0}h2{font-size:clamp(35px,4.1vw,66px)}h3{font-size:27px}a:focus-visible,summary:focus-visible{outline:2px solid #76603f;outline-offset:6px}.skip{position:absolute;left:15px;top:-100px;z-index:10;background:white;padding:10px}.skip:focus{top:10px}.site-header{padding:18px 5vw;display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--paper)}.logo-link{display:block;flex-shrink:0;line-height:0}.logo-link img{width:270px;height:auto}.site-nav{display:flex;gap:25px;align-items:center;flex-wrap:wrap;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.site-nav a{text-decoration:none;padding:8px 0}.site-nav a[aria-current=page],.site-nav a:hover{border-bottom:1px solid}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:.16em;font-weight:500;margin-bottom:25px}.wrap{width:88%;max-width:1440px;margin:auto}.intro{width:88%;max-width:1440px;margin:auto;padding:64px 0 45px}.intro h1{font-size:clamp(64px,8.5vw,136px);line-height:1.01;letter-spacing:-.06em}.intro-bottom{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-top:34px}.intro-bottom p{font-size:17px;color:var(--muted);margin:0}.text-link{white-space:nowrap;text-decoration:none;font-size:12px;border-bottom:1px solid var(--ink);padding:8px 0}.text-link span{padding-left:50px}.hero{position:relative;height:69vw;max-height:760px;min-height:370px}.hero img{height:100%;object-fit:cover;object-position:center 51%}figcaption{font-size:10px;letter-spacing:.035em;line-height:1.5;color:var(--muted);padding-top:12px}.hero figcaption,.meeting figcaption{position:absolute;bottom:15px;right:25px;left:25px;color:white;text-align:right;text-shadow:0 1px 8px #000;padding:5px;background:linear-gradient(90deg,transparent,#0004)}.editorial{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding:115px 0}.copy{max-width:580px;color:var(--muted)}.copy .lead{font-size:24px;line-height:1.5;color:var(--ink);font-weight:300;letter-spacing:-.02em}.sketch-section{display:grid;grid-template-columns:1.1fr 1fr;background:var(--sand)}.sketch-section figure{position:relative;min-height:590px}.sketch-section figure img{height:100%;object-fit:cover}.sketch-section figcaption{position:absolute;bottom:15px;left:20px;background:#fafaf8dd;padding:5px 8px}.sketch-copy{padding:85px 6vw}.sketch-copy h2{margin-bottom:35px}.sketch-copy p:not(.eyebrow){color:#57574e;max-width:500px}.materials{display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw;padding:125px 0}.material-heading h2{margin-bottom:35px}.material-heading>p:last-child{max-width:380px;color:var(--muted)}.material-detail figure{height:480px;position:relative;margin-bottom:52px}.material-detail img{height:100%;object-fit:cover;object-position:70% 50%}.material-detail>p{max-width:500px;color:var(--muted);font-size:14px}.meeting{position:relative}.meeting figure{height:650px}.meeting img{height:100%;object-fit:cover;object-position:center 46%}.meeting:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#0008);pointer-events:none}.meeting-title{position:absolute;bottom:65px;left:6%;color:white;z-index:1}.meeting figcaption{z-index:1}.process{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding:120px 0}.section-heading>p:last-child{max-width:400px;margin-top:30px;color:var(--muted)}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{position:relative;list-style:none;cursor:pointer;padding:25px 35px 25px 0;font-size:18px;line-height:1.5;font-weight:400;display:flex;gap:20px}summary::-webkit-details-marker{display:none}summary span{font-size:10px;letter-spacing:.07em;margin-top:6px;color:var(--muted)}summary:after{content:'+';position:absolute;right:0;top:24px;font-size:22px;font-weight:300}details[open] summary:after{content:'−'}details>div{padding:0 30px 15px 34px;color:var(--muted);font-size:14px}.balance{background:#dedfd5;padding:70px 0 80px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:5vw;margin-top:40px}.three article{border-top:1px solid #adada2;padding-top:18px}.small-number{font-size:11px;display:block;margin-bottom:28px}.three h3{margin-bottom:24px}.three p{font-size:14px;color:#56594e;margin:0}.projects{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding:120px 0}.project-types article{border-top:1px solid var(--line);padding:24px 0 10px}.project-types h3{font-size:24px;letter-spacing:-.025em;margin-bottom:17px}.project-types p{font-size:14px;color:var(--muted)}.contact{padding:90px 0;border-top:1px solid var(--line)}.contact h2{font-size:clamp(48px,6vw,90px)}.contact-link{display:inline-flex;gap:70px;align-items:center;padding:15px 0;margin:32px 0 15px;border-bottom:1px solid;text-decoration:none}.contact>p:not(.eyebrow){font-size:13px;color:var(--muted)}.professional-link{font-size:12px;display:inline-block;margin-top:18px}.site-footer{border-top:1px solid var(--line);padding:35px 5vw;display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;font-size:12px}.site-footer .logo-link img{width:220px}
@media(min-width:1700px){.sketch-copy{padding-left:100px}.hero{max-height:880px}}@media(max-width:1000px){.site-header{flex-direction:column;align-items:flex-start}.site-nav{gap:10px 22px}.editorial,.materials,.process,.projects{gap:6vw;padding:75px 0}.sketch-copy{padding:55px 5vw}.sketch-section figure{min-height:520px}.meeting figure{height:560px}.material-detail figure{height:420px}.three{gap:3vw}}@media(max-width:700px){.intro{padding-top:38px}.intro-bottom{display:block}.intro-bottom p{font-size:15px}.text-link{display:inline-block;margin-top:24px}.hero{height:500px}.hero img{object-position:55% center}.editorial,.materials,.process,.projects{grid-template-columns:1fr;gap:32px;padding:65px 0}.copy .lead{font-size:22px}.sketch-section{grid-template-columns:1fr}.sketch-section figure{min-height:0;height:400px}.sketch-copy{padding:45px 6vw}.material-heading>p:last-child{max-width:100%}.material-detail figure{height:420px}.meeting figure{height:540px}.meeting img{object-position:55% center}.meeting-title{bottom:70px}.meeting-title h2{font-size:37px}.three{grid-template-columns:1fr;gap:35px}.small-number{margin-bottom:15px}.balance{padding:55px 0}.contact{padding:65px 0}.site-nav{font-size:10px;gap:6px 17px}.site-footer{align-items:flex-start;flex-direction:column}.hero figcaption,.meeting figcaption{font-size:9px}.professional-link{max-width:300px}.contact-link{gap:35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep the complete material composition visible, including brass handles. */
.material-detail figure{height:auto;margin-bottom:32px}.material-detail img{height:auto;object-fit:contain}

.phase-lead{font-size:19px;line-height:1.45;color:var(--ink);font-weight:300}.phase-outcome{border-top:1px solid var(--line);padding-top:18px;margin-top:25px}.phase-outcome strong{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}

.dialogue-photo{margin-top:38px;max-width:460px}.dialogue-photo img{height:auto;width:100%}.meeting figure{height:auto}.meeting img{height:auto;width:100%}.meeting-title{bottom:65px}@media(max-width:700px){.meeting-title h2{font-size:28px}.meeting-title{bottom:45px}.meeting-title .eyebrow{margin-bottom:10px}}

/* Full-width process section with independently expanding columns. */
.process{display:block}.process .section-heading{max-width:850px;margin-bottom:45px}.process .section-heading>p:last-child{max-width:720px;margin-top:25px}.process .steps{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 6vw;align-items:start}.process .step-column{min-width:0}.process details>div{font-size:16px}.process summary span{font-size:12px}.process .phase-outcome strong{font-size:12px}@media(max-width:700px){.process .steps{grid-template-columns:1fr}.process .section-heading{margin-bottom:30px}.process .step-column:first-child details:last-child{border-bottom:0}}

.references{padding:80px 0 100px;border-top:1px solid var(--line)}.reference-heading{margin-bottom:45px}.reference-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:65px 5vw;align-items:start}.reference-card{min-width:0}.reference-card>figure>img{width:100%;aspect-ratio:4/3;object-fit:cover}.reference-meta{font-size:14px;color:var(--muted);margin:22px 0 10px}.reference-card h3{font-size:32px;margin-bottom:20px}.reference-card>p:not(.reference-meta){max-width:600px;color:var(--muted)}.reference-role{font-size:14px}.reference-gallery{margin-top:25px}.reference-gallery summary{font-size:16px}.reference-gallery>div{padding:0 0 20px}.reference-gallery figure{margin:0 0 24px}.reference-gallery img{height:auto;width:100%}.references figcaption{font-size:12px}.reference-role strong{font-weight:500}@media(max-width:700px){.references{padding:55px 0 65px}.reference-grid{grid-template-columns:1fr;gap:45px}.reference-heading{margin-bottom:30px}}

.portfolio-invitation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9vw;border-top:1px solid var(--line);padding:75px 0}.portfolio-invitation h2{font-size:clamp(35px,3.7vw,56px)}.portfolio-invitation>div>p:not(.eyebrow){color:var(--muted);max-width:560px}.portfolio-invitation .text-link{white-space:normal;display:inline-block}.references .reference-overview-link{display:inline-block;margin-top:35px;font-size:14px}@media(max-width:700px){.portfolio-invitation{grid-template-columns:1fr;gap:28px;padding:55px 0}}

.projects-introduction h2{font-size:clamp(32px,3.4vw,48px);line-height:1.18;letter-spacing:-.035em;margin-bottom:30px}
.projects-introduction>p:not(.eyebrow){color:var(--muted)}
.projects-introduction .text-link{display:inline-block;white-space:normal;margin-top:0}

/* Architecture opens with the shared drawing table, followed by people and process. */
.meeting-opening figure{height:clamp(440px,72vh,820px)}
.meeting-opening img{height:100%;object-fit:cover;object-position:center 35%}
.meeting-opening .meeting-title{width:88%;bottom:70px}
.meeting-opening h1{font-size:clamp(36px,4.5vw,72px);line-height:1.12;letter-spacing:-.045em;max-width:960px}
.material-composition{margin-top:38px}
.material-composition img{height:auto;width:100%}
.material-composition figcaption{font-size:12px}
@media(max-width:700px){.meeting-opening figure{height:auto}.meeting-opening img{height:auto}.meeting-opening .meeting-title{bottom:60px}.meeting-opening h1{font-size:clamp(24px,7.2vw,42px)}.meeting-opening .meeting-title .eyebrow{font-size:11px}.material-composition{margin-top:30px}}
