:root{--bg:#f7f5f1;--ink:#111;--muted:#666;--bronze:#8d745b;--line:rgba(17,17,17,.14);--gutter:clamp(24px,4vw,72px);--header:88px;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}::selection{background:#d9cdbf}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:450;line-height:.98;letter-spacing:-.045em}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:999;top:8px;left:8px;padding:12px 16px;background:#111;color:#fff;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{position:fixed;z-index:100;inset:0 0 auto;height:var(--header);transition:background .5s,box-shadow .5s}.site-header.is-scrolled{background:rgba(247,245,241,.92);box-shadow:0 1px var(--line);backdrop-filter:blur(18px)}.header-inner{height:100%;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between}.brand{font-size:18px;font-weight:600;letter-spacing:-.03em}.custom-logo{width:auto;max-height:36px}.menu,.primary-nav ul{display:flex;align-items:center;gap:clamp(20px,3vw,48px);list-style:none;padding:0;margin:0}.primary-nav a,.site-footer a{position:relative;font-size:14px}.primary-nav a:after,.text-link:after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:currentColor;transition:right .45s var(--ease)}.primary-nav a:hover:after,.primary-nav a:focus-visible:after,.text-link:hover:after,.text-link:focus-visible:after{right:0}.menu-toggle{display:none;background:none;border:0;padding:10px}.menu-toggle>span:not(.screen-reader-text){display:block;width:24px;height:1px;background:#111;margin:6px}.hero{min-height:100svh;display:flex;padding:calc(var(--header) + 48px) var(--gutter) 48px}.hero-content{width:100%;display:flex;flex-direction:column;justify-content:space-between}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:600;color:var(--muted)}.hero h1{max-width:1200px;font-size:clamp(64px,11vw,180px);margin:40px 0}.hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:48px}.hero-bottom p{max-width:420px;color:var(--muted);font-size:clamp(17px,1.4vw,22px);margin:0}.text-link{display:inline-flex;gap:12px;align-items:center;position:relative;font-size:14px;width:max-content}.showcase{display:grid;grid-template-columns:35% 65%;position:relative;background:#ebe7df}.showcase-copy{grid-column:1}.discipline{height:100vh;min-height:700px;padding:var(--header) var(--gutter) 64px;display:flex;align-items:center}.discipline>div{max-width:410px}.discipline h3{font-size:clamp(48px,5vw,84px);margin:16px 0 32px}.discipline p:not(.eyebrow){color:var(--muted);font-size:17px;margin-bottom:32px}.showcase-visual{grid-column:2;position:absolute;inset:0 0 0 35%;height:100%}.image-stack{position:sticky;top:0;width:100%;height:100vh;overflow:hidden;background:#ddd8cf}.image-stack img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}.image-stack img:first-child{filter:grayscale(1)}.layer{opacity:0;visibility:hidden}.section{padding:clamp(112px,14vw,240px) var(--gutter)}.section-heading{display:grid;grid-template-columns:1fr 2fr auto;align-items:end;margin-bottom:clamp(64px,8vw,128px)}.section-heading h2{font-size:clamp(56px,8vw,128px);margin:0}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(40px,7vw,120px) clamp(20px,3vw,48px)}.project-card:nth-child(even){margin-top:15vw}.project-card img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:filter .7s,transform .9s var(--ease)}.project-card a{display:block;overflow:hidden}.project-card a:hover img{transform:scale(1.015);filter:brightness(.92)}.project-card-meta{display:flex;justify-content:space-between;gap:24px;padding-top:18px}.project-card-meta h3,.project-card-meta h2{font-size:20px;letter-spacing:-.02em;margin:0}.project-card-meta p{color:var(--muted);font-size:14px}.project-intro{grid-column:1/-1;font-size:clamp(30px,4vw,64px);max-width:1000px;line-height:1.15;letter-spacing:-.03em}.services-section{background:#111;color:#f7f5f1}.service-list a{display:grid;grid-template-columns:80px 1fr auto;align-items:center;padding:32px 0;border-bottom:1px solid rgba(255,255,255,.2)}.service-list strong{font-weight:400;font-size:clamp(40px,6vw,96px);letter-spacing:-.04em;transition:transform .6s var(--ease)}.service-list a:hover strong{transform:translateX(16px)}.service-list span{color:#aaa;font-size:12px}.about-section{display:grid;grid-template-columns:1fr 3fr;gap:40px}.about-section h2{font-size:clamp(48px,7vw,112px);max-width:1300px}.about-section div>p{max-width:580px;margin:64px 0 0 50%;color:var(--muted);font-size:18px}.contact-section{background:#dcd2c4;display:grid;grid-template-columns:3fr 1fr;gap:80px;align-items:end}.contact-section h2{font-size:clamp(56px,8vw,128px);max-width:1000px}.contact-email{font-size:clamp(20px,2.2vw,38px);border-bottom:1px solid}.contact-details{font-size:15px}.contact-details>a{display:block;margin:24px 0}.socials{display:flex;gap:20px}.site-footer{padding:56px var(--gutter);background:#111;color:#f7f5f1}.footer-grid{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.footer-grid p{text-align:right;color:#aaa;font-size:12px;margin:0}.footer-grid .menu{gap:24px}.page-hero{min-height:70vh;padding:calc(var(--header) + 80px) var(--gutter) 64px;display:flex;flex-direction:column;justify-content:end}.page-hero h1{font-size:clamp(72px,13vw,210px);margin:0}.archive-grid{padding-top:0}.project-hero{min-height:75vh;padding:calc(var(--header) + 64px) var(--gutter) 64px;display:grid;grid-template-columns:3fr 1fr;align-items:end;gap:64px}.project-hero h1{font-size:clamp(64px,11vw,180px);margin:0}.project-hero dl{margin:0}.project-hero dl div{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);padding:12px 0}.project-hero dt{color:var(--muted)}.project-hero dd{margin:0}.project-cover{margin:0;padding:0 var(--gutter)}.project-cover img{width:100%;max-height:85vh;object-fit:cover}.project-body{padding:clamp(80px,10vw,160px) var(--gutter);display:grid;grid-template-columns:1fr 2fr}.entry-content{grid-column:2;max-width:820px;font-size:clamp(18px,1.6vw,24px)}.entry-content>*+*{margin-top:1.5em}.entry-content a{text-decoration:underline}.project-gallery{padding:0 var(--gutter) 10vw;display:grid;gap:var(--gutter)}.project-gallery img{width:100%}.page-content .entry-content{margin:0 var(--gutter) 120px 35%}.not-found{min-height:100vh;padding:var(--header) var(--gutter);display:flex;flex-direction:column;justify-content:center}.not-found h1{font-size:clamp(64px,10vw,160px)}.comments-area{padding:80px var(--gutter);max-width:900px}
@media(max-width:900px){:root{--header:72px}.menu-toggle{display:block;z-index:2}.primary-nav{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s}.primary-nav.is-open{opacity:1;visibility:visible}.primary-nav ul{flex-direction:column;gap:24px}.primary-nav a{font-size:clamp(36px,10vw,64px)}.showcase{display:flex;flex-direction:column}.showcase-visual{position:relative;inset:auto;order:-1;height:auto}.image-stack{position:relative;height:auto;aspect-ratio:16/9;top:auto}.showcase-copy{display:block}.discipline{height:auto;min-height:75vh;padding:96px var(--gutter)}.section-heading{grid-template-columns:1fr auto}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{grid-column:1}.about-section,.contact-section{grid-template-columns:1fr}.about-section div>p{margin-left:0}.contact-details{margin-top:40px}.project-hero{grid-template-columns:1fr}.project-body{display:block}.entry-content{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-grid nav{margin:32px 0}.footer-grid p{text-align:left}.page-content .entry-content{margin-left:var(--gutter)}}
@media(max-width:600px){.hero{padding-bottom:32px}.hero h1{font-size:clamp(56px,18vw,90px)}.hero-bottom{align-items:start;flex-direction:column}.section{padding-top:96px;padding-bottom:96px}.project-grid{grid-template-columns:1fr;gap:64px}.project-card:nth-child(even){margin-top:0}.project-card-meta{display:block}.section-heading{display:block}.section-heading .text-link{margin-top:24px}.discipline{min-height:65vh}.service-list a{grid-template-columns:40px 1fr auto;padding:24px 0}.service-list strong{font-size:38px}.contact-email{overflow-wrap:anywhere}.footer-grid .menu{display:block}.footer-grid .menu li+li{margin-top:12px}.project-hero{min-height:70vh}.project-cover{padding:0}.project-gallery{padding-left:0;padding-right:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.layer{opacity:0!important;visibility:hidden!important}.layer:first-of-type{opacity:1!important;visibility:visible!important}}
@media(forced-colors:active){.text-link,.contact-email{border:1px solid;padding:6px}.site-header{border-bottom:1px solid}}
.wpcf7-form,.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:900px}.wpcf7-form p,.contact-form p{margin:0}.wpcf7-form p:last-of-type,.contact-form .full{grid-column:1/-1}.wpcf7-form label,.contact-form label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.wpcf7-form input:not([type=submit]),.wpcf7-form textarea,.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent;padding:14px 0;outline-offset:4px}.wpcf7-submit,.contact-form button{border:1px solid var(--ink);background:transparent;padding:14px 24px;cursor:pointer;transition:background .3s,color .3s}.wpcf7-submit:hover,.contact-form button:hover{background:var(--ink);color:var(--bg)}.map-placeholder{aspect-ratio:16/8;background:#d8d3ca;display:grid;place-items:center;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:11px}@media(max-width:600px){.wpcf7-form,.contact-form{grid-template-columns:1fr}.wpcf7-form p:last-of-type,.contact-form .full{grid-column:auto}}

/* Compact full-scene presentation. */
.hero h1{max-width:980px;font-size:clamp(52px,8vw,124px)}
.section-heading h2{font-size:clamp(44px,6vw,88px)}
.about-section h2{font-size:clamp(40px,5.5vw,82px)}
.contact-section h2{font-size:clamp(44px,6vw,92px)}
.page-hero h1{font-size:clamp(56px,9vw,132px)}
.project-hero h1{font-size:clamp(52px,8vw,120px)}
.not-found h1{font-size:clamp(52px,8vw,120px)}
.showcase{display:block;min-height:300vh;background:#111;color:#fff}
.showcase-copy{position:relative;z-index:2}
.discipline{height:100vh;min-height:620px;padding:var(--header) var(--gutter) clamp(40px,7vh,88px);align-items:end}
.discipline>div{max-width:560px;padding:96px 56px 40px;margin-left:0;background:linear-gradient(0deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.46) 55%,transparent 100%)}
.discipline h3{font-size:clamp(38px,4vw,64px);margin:10px 0 20px}
.discipline p:not(.eyebrow){color:rgba(255,255,255,.78);margin-bottom:22px}
.discipline .eyebrow{color:rgba(255,255,255,.62)}
.showcase-visual{position:absolute;z-index:1;inset:0;height:100%}
.image-stack{height:100svh;background:#111}
.image-stack img{object-fit:cover;object-position:center}
.mobile-showcase{display:none}
@media(max-width:900px){
  .hero{min-height:90svh;padding-top:calc(var(--header) + 32px)}.hero h1{font-size:clamp(46px,13vw,76px);margin:24px 0}.hero-bottom{gap:28px}
  .showcase{min-height:0}.showcase-copy,.showcase-visual{display:none}.mobile-showcase{display:block}
  .mobile-scene{position:relative;height:100svh;min-height:560px;overflow:hidden;background:#111;color:#fff}
  .mobile-scene-images,.mobile-scene-images img{position:absolute;inset:0;width:100%;height:100%}
  .mobile-scene-images img{object-fit:cover;object-position:center}.mobile-scene-images img:first-child{filter:grayscale(1)}
  .mobile-scene-layer{opacity:0}
  .mobile-scene-copy{position:absolute;z-index:2;inset:auto 0 0;padding:120px var(--gutter) max(32px,env(safe-area-inset-bottom));background:linear-gradient(0deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.64) 45%,transparent 100%)}
  .mobile-scene-copy h3{font-size:clamp(38px,11vw,58px);margin:8px 0 16px}.mobile-scene-copy>p:not(.eyebrow){max-width:440px;color:rgba(255,255,255,.78);margin-bottom:20px}.mobile-scene-copy .eyebrow{color:rgba(255,255,255,.6)}
  .section{padding-top:80px;padding-bottom:80px}.section-heading{margin-bottom:48px}.section-heading h2{font-size:clamp(40px,11vw,64px)}
  .about-section h2,.contact-section h2{font-size:clamp(38px,10vw,58px)}
}
@media(max-width:600px){.project-grid{gap:48px}.project-card img{aspect-ratio:4/5}.services-section .service-list strong{font-size:32px}.page-hero{min-height:52vh}.page-hero h1{font-size:clamp(48px,14vw,74px)}}
@media(prefers-reduced-motion:reduce){.mobile-scene-layer{opacity:1!important;visibility:visible!important}}
