:root{--paper:#f6f5f0;--ink:#252922;--muted:#707469;--line:#d9dbd1;--accent:#c0cc50;--green:#343e32}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #788227;outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1{font-size:clamp(58px,7vw,108px);line-height:1.03;letter-spacing:-.065em;margin-bottom:28px}h2{font-size:clamp(30px,3.5vw,48px);line-height:1.15;letter-spacing:-.045em}h3{font-size:23px;letter-spacing:-.035em}p{line-height:1.7}.wrap{width:calc(100% - 112px);max-width:1440px;margin-inline:auto}.header{height:118px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:16px}.brand-mark{font-size:51px;font-weight:800;letter-spacing:-5px;line-height:1}.brand-dot{color:#8c982e}.brand-city{font-size:11px;letter-spacing:2.5px;border-left:1px solid #999e90;padding:10px 0 10px 17px}.header nav{display:flex;align-items:center;gap:34px;font-size:14px}.header nav a{padding:14px 0;position:relative}.header nav a:hover:after,.header nav a[aria-current]:after{content:'';position:absolute;left:0;right:0;bottom:3px;height:2px;background:var(--ink)}.language{margin-left:20px;font-size:12px;border-left:1px solid var(--line);padding-left:28px}.language span{margin-left:12px}.menu-toggle{display:none}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:500;line-height:1.6}.small-dot{width:7px;height:7px;background:#8b982f;display:inline-block;border-radius:50%;margin-right:7px}.home-intro{padding-top:46px;padding-bottom:40px}.intro-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:34px}.intro-row h1{margin:0}.intro-row h1>span{color:#7a7f70}.intro-aside{max-width:310px;padding:0 5px 8px 0;font-size:16px}.intro-aside p{margin-bottom:25px}.text-link{display:inline-flex;gap:25px;align-items:center;border-bottom:1px solid #979d8e;padding:10px 0;font-size:14px}.text-link:hover{border-color:var(--ink)}.text-link span{font-size:24px;line-height:1}.hero>a{display:block;position:relative;height:clamp(350px,43vw,650px);overflow:hidden;background:#c7c9bf}.hero img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.hero a:hover img{transform:scale(1.025)}.hero>a:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7));pointer-events:none}.hero-caption{position:absolute;bottom:32px;left:34px;right:34px;color:white;z-index:1;display:flex;align-items:end;justify-content:space-between;gap:24px}.hero-caption h2{font-size:clamp(23px,2.2vw,34px);max-width:680px;margin:9px 0 0;letter-spacing:-.02em}.hero-caption .eyebrow{font-size:10px}.hero-arrow{border:1px solid #ffffff80;border-radius:50%;width:52px;height:52px;display:grid;place-items:center;font-size:27px;flex-shrink:0}.section{padding-block:100px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:38px}.section-heading h2{margin-bottom:0}.section-heading .eyebrow{margin-bottom:23px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 28px}.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}.featured-grid .project-card:first-child{grid-column:1/-1}.featured-grid .project-card:first-child .project-image{aspect-ratio:2.25}.project-image{display:block;aspect-ratio:1.48;background:#e4e4db;position:relative;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-image:hover img{transform:scale(1.04)}.image-arrow{position:absolute;right:13px;bottom:13px;background:var(--paper);width:37px;height:37px;border-radius:50%;display:grid;place-items:center;font-size:24px}.card-meta{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);margin:16px 0 9px}.project-card h3{margin:0;line-height:1.3}.project-card[hidden]{display:none}.image-placeholder{height:100%;display:grid;place-items:center;padding:30px;font-size:24px;color:var(--muted)}.office-teaser{background:#e9eade;padding-block:85px}.office-teaser-inner{display:grid;grid-template-columns:1fr 2.5fr 1fr;gap:45px}.office-teaser h2{margin-bottom:26px}.office-teaser .prose{max-width:660px;margin-bottom:28px}.since{font-size:64px;letter-spacing:-4px;text-align:right;align-self:end}.since span{display:block;font-size:9px;letter-spacing:1.5px;margin-top:12px}.footer{background:var(--green);color:var(--paper);padding-top:65px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:50px}.footer h2{font-size:clamp(30px,3.8vw,52px);margin-bottom:0}.footer .eyebrow{color:#c4c9b9;margin-bottom:30px}.round-link{background:var(--accent);color:var(--ink);border-radius:50%;width:83px;height:83px;display:grid;place-items:center;font-size:43px;flex-shrink:0;margin-left:25px}.round-link:hover{background:#d4df73}.footer-bottom{border-top:1px solid #ffffff28;padding-block:26px;display:flex;gap:25px;justify-content:space-between;font-size:11px;color:#cbd0c4}.page-heading{padding-block:65px 55px}.page-heading>.eyebrow{margin-bottom:26px}.page-heading>p:last-child{font-size:18px;color:var(--muted);max-width:620px;margin-bottom:0}.accent{color:#97a23a}.section-bottom{padding-bottom:100px}.filters{display:flex;align-items:end;gap:22px;padding-block:24px;border-block:1px solid var(--line);margin-bottom:42px}.filters label{display:flex;flex-direction:column;gap:9px;font-size:11px;color:var(--muted);flex:1}.filters input,.filters select{border:1px solid var(--line);background:transparent;color:var(--ink);height:45px;padding:10px;font-size:14px;width:100%;min-width:0;border-radius:0}.result-count{font-size:12px;white-space:nowrap;margin:0 0 12px 20px}.back-link{font-size:13px;display:inline-block;margin-bottom:40px;color:var(--muted)}.detail-title{font-size:clamp(40px,5.5vw,76px);max-width:1120px}.project-cover img{width:100%;max-height:750px;object-fit:contain;background:#e8e9e1}.gallery-image{border:0;padding:0;background:transparent;display:block;position:relative;width:100%;text-align:left}.project-info{padding-block:70px 90px;display:grid;grid-template-columns:1fr 2.3fr;gap:80px}.project-info aside{font-size:14px}.project-info dt{color:var(--muted);font-size:11px;margin-bottom:7px}.project-info dd{margin:0 0 25px;line-height:1.6}.project-info .eyebrow{margin-bottom:26px}.prose{font-size:16px;line-height:1.85;overflow-wrap:anywhere}.prose p{line-height:inherit}.prose a{text-decoration:underline}.prose h2,.prose h3{font-size:26px}.prose ul{padding-left:22px}.planner-links{padding:0;list-style:none;line-height:2}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.gallery-grid img{width:100%;height:100%;aspect-ratio:1.45;object-fit:contain;background:#e8e9e1}.editorial{display:grid;grid-template-columns:1fr 2fr;gap:70px}.large-number{font-size:clamp(60px,8vw,120px);letter-spacing:-.075em;color:#8b9474}.editorial-label p{margin-top:10px}.lead-prose{font-size:23px;line-height:1.6}.content-heading{font-size:30px;margin:45px 0 30px}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.person-card img{width:100%;height:340px;object-fit:cover;object-position:top;background:#e3e5da;filter:grayscale(1)}.person-card h3{display:flex;justify-content:space-between;margin:18px 0 6px}.person-card p{font-size:13px;color:var(--muted)}.people-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}.people-list a{padding:20px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px}.people-list a>span:last-child{font-size:12px;color:var(--muted);text-align:right}.portrait{width:100%;max-width:350px}.award-row{display:grid;grid-template-columns:1fr 2fr 1.4fr;gap:40px;border-top:1px solid var(--line);padding-block:35px;align-items:start}.award-year{font-size:42px;color:#7b8562;letter-spacing:-2px}.award-row h2{font-size:30px;margin-bottom:15px}.award-row a,.award-row>div:last-child{font-size:14px;line-height:1.6}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:60px}.contact-email{font-size:clamp(24px,3.5vw,46px);letter-spacing:-.04em;border-bottom:1px solid var(--ink);padding-bottom:12px;display:inline-block}.contact-intro{margin-top:38px;color:var(--muted)}.contact-details>div{border-top:1px solid var(--line);padding:24px 0}.contact-details h2{font-size:13px;letter-spacing:0;color:var(--muted)}.contact-details p{margin-bottom:7px}.skip-link{position:fixed;top:-100px;left:16px;background:var(--ink);color:white;padding:15px;z-index:100}.skip-link:focus{top:10px}
@media(min-width:1500px){.home-intro{padding-top:60px;padding-bottom:50px}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.header nav{gap:22px}.brand-city{display:none}.intro-aside{font-size:14px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.office-teaser-inner{grid-template-columns:1fr 3fr}.since{grid-column:2;text-align:left}.project-info{gap:40px}.footer-bottom{flex-wrap:wrap}.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.award-row{grid-template-columns:100px 1.7fr 1fr;gap:20px}}
@media(max-width:680px){.wrap{width:calc(100% - 36px)}.header{height:88px;position:relative}.brand-mark{font-size:43px}.brand-city{display:block;font-size:9px}.header nav{gap:0;display:none;position:absolute;top:87px;left:-18px;right:-18px;padding:20px 28px;background:var(--paper);border-bottom:1px solid var(--line);z-index:10;flex-direction:column;align-items:stretch}.header nav.is-open{display:flex}.header nav a{padding:17px 0}.language{margin:16px 0 8px;padding:0;border:0}.menu-toggle{display:flex;gap:14px;align-items:center;background:none;border:0;font-size:13px;padding:12px 0 12px 12px}.menu-toggle span{font-size:20px}.home-intro{padding:30px 0}.eyebrow{font-size:9px;letter-spacing:1.3px}.intro-row{display:block;margin-top:25px}.intro-row h1{font-size:63px}.intro-aside{margin-top:24px;max-width:none;display:flex;align-items:end;gap:20px;justify-content:space-between}.intro-aside p{margin-bottom:0;font-size:12px}.intro-aside .text-link{font-size:11px;gap:12px}.hero>a{height:410px}.hero-caption{bottom:24px;left:20px;right:20px;gap:14px}.hero-caption h2{font-size:24px}.hero-arrow{width:40px;height:40px;font-size:23px}.section{padding-block:60px}.section-heading{align-items:start;gap:18px}.section-heading h2{font-size:30px}.section-heading>.text-link{font-size:11px;gap:10px;white-space:nowrap}.section-heading .eyebrow{margin-bottom:17px}.project-grid,.featured-grid{grid-template-columns:1fr;gap:32px}.featured-grid .project-card:first-child .project-image{aspect-ratio:1.48}.project-card h3{font-size:23px}.office-teaser{padding-block:48px}.office-teaser-inner{grid-template-columns:1fr;gap:18px}.office-teaser-inner>.eyebrow{margin-bottom:0}.since{grid-column:auto;font-size:50px;margin-top:15px}.office-teaser h2{font-size:35px}.footer{padding-top:45px}.footer-top{padding-bottom:36px}.footer h2{font-size:28px}.round-link{width:53px;height:53px;font-size:30px;margin-left:12px}.footer-bottom{display:grid;grid-template-columns:1fr;gap:16px;padding-block:24px}.page-heading{padding-block:42px 35px}.page-heading h1{font-size:57px}.page-heading .detail-title{font-size:40px;overflow-wrap:anywhere}.page-heading>p:last-child{font-size:16px}.section-bottom{padding-bottom:60px}.filters{flex-wrap:wrap;gap:16px}.filters label{flex-basis:calc(50% - 16px)}.filters label:first-child{flex-basis:100%}.result-count{margin:0}.project-info{grid-template-columns:1fr;gap:25px;padding-block:38px 50px}.project-info aside{border-bottom:1px solid var(--line);padding-bottom:20px}.gallery-grid{grid-template-columns:1fr;gap:16px}.editorial{grid-template-columns:1fr;gap:24px}.editorial-label{display:none}.lead-prose{font-size:20px}.people-grid{gap:22px}.person-card img{height:220px}.person-card h3{font-size:20px}.people-list{grid-template-columns:1fr}.award-row{grid-template-columns:70px 1fr;gap:16px}.award-row>div:last-child{grid-column:2}.award-year{font-size:31px}.award-row h2{font-size:25px}.contact-grid{grid-template-columns:1fr;gap:25px}.contact-email{font-size:32px}.back-link{margin-bottom:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.planner-role{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-bottom:12px}
