/* Client feedback, September 2026. Brand sample: #75785b. */
:root{--paper:#f7f2e6;--ink:#35382b;--muted:#616452;--line:#d5d6c6;--accent:#5b6144;--dark:#75785b;--brand:#75785b}
.header{background:rgba(247,242,230,.97)}
.brand{display:block;flex-shrink:0;letter-spacing:normal}
.brand-logo{width:180px;height:auto;display:block}
.brand small{font-size:9px;letter-spacing:.19em;margin-top:8px;text-align:center}
.footer .brand-logo{width:230px}
.nav-links{gap:23px;font-size:14px}
.nav-cta,.button{border-radius:999px;border:1px solid var(--brand);background:transparent;color:var(--accent);font-size:14px;font-weight:600;letter-spacing:.05em;min-height:50px;padding:12px 23px;text-align:center}
.nav-cta{font-size:12px;text-transform:uppercase;min-height:44px;padding:11px 19px}
.button.outline{color:var(--accent);border-color:var(--brand)}
.button:hover,.button.outline:hover,.nav-cta:hover{background:#62664a;color:white}
.line-link{font-size:15px;letter-spacing:0;line-height:1.5}
.eyebrow{font-size:13px;letter-spacing:.13em}
.copy,.hero .copy,.section-head p,.project-summary p,.about .copy,.service-card p,.benefits p,.step p,.contact p,.case-intro .copy,.split .copy,.zone-heading .copy,.drawing-description p,.drawing-description ul,.result p{font-size:17px;line-height:1.8}
.hero .copy{max-width:520px}
.hero-grid{gap:48px}
.hero-image img{aspect-ratio:1.04;object-fit:cover;object-position:50% 50%}
.image-note{font-size:14px;line-height:1.6;padding-top:55px}
.hero-bottom{font-size:12px;letter-spacing:.07em;gap:28px}
.tag{font-size:12px;letter-spacing:.07em}
.project-number,.project-meta{font-size:14px}
.project-summary{padding:36px}
.project-summary .line-link{font-size:15px}
.project-card{background:#e9eadf}
.about,.process,.footer{background:#eceee3}
.about-grid{gap:70px}
.about .role{font-size:17px;max-width:500px}
.portrait figcaption,figcaption,.plan-caption,.area-note,.small,.footer-bottom{font-size:14px;line-height:1.7}
.stats span{font-size:14px}
.service-card:nth-child(2){background:var(--brand);color:#fff}
.service-card:nth-child(2) p,.service-card:nth-child(2) .line-link{color:#fff}
.service-card .num{font-size:13px;letter-spacing:.05em}
.service-note{border-color:#d4d8bb}
.service-card .line-link,.step .line-link{font-size:15px}
.dark{color:#fff}
.dark .eyebrow,.dark .copy,.dark .muted,.drawing-description p,.drawing-description ul{color:#fff}
.dark .tab-button{color:white;border-color:#d7dbc4;font-size:14px}
.dark .tab-button[aria-selected=true]{color:#41462e;background:var(--paper);border-color:var(--paper)}
.dark .button{background:var(--paper);color:#454a33;border-color:var(--paper)}
.dark .button:hover{background:#fff;color:#35382b}
.rule-list li{font-size:17px;border-color:#c4c8ae}
.step .num,.zone-number{font-size:14px}
.step{grid-template-columns:65px 1fr 1.15fr}
summary{font-size:18px}
details p{font-size:17px;line-height:1.8}
.download-band p{font-size:17px}
.download-band .small{font-size:14px}
.footer nav,.footer address{font-size:16px}
.footer-label{font-size:13px}
.breadcrumbs,.case-nav{font-size:14px}
.case-facts dt{font-size:12px;letter-spacing:.07em}
.case-facts dd{font-size:17px}
.brief-list li,.area-row dt{font-size:16px}
.tab-button{font-size:14px;min-height:44px}
.author-quote{grid-template-columns:260px 1fr;max-width:1050px;gap:45px;align-items:center}
.author-quote img{width:260px;height:350px;object-fit:cover;object-position:center 35%}
.author-quote blockquote{font-size:29px;line-height:1.5}
.author-quote cite{font-size:16px;line-height:1.7}
.gallery-button:after{content:'＋';font-size:21px}
.lightbox-controls{font-size:14px}
.lightbox-controls button{min-width:44px;min-height:44px}
@media(max-width:1100px){.nav{gap:20px}.nav-links{gap:16px}.brand-logo{width:160px}.nav-cta{font-size:11px;padding-inline:15px}.about-grid{gap:45px}.service-card{padding:25px}.hero-grid{gap:35px}.hero h1{font-size:clamp(42px,5.2vw,60px)}}
@media(max-width:1000px){.menu-button{display:block}.nav-links{display:none;position:absolute;top:88px;left:0;right:0;background:var(--paper);padding:20px 28px 28px;border-bottom:1px solid var(--line)}.nav-links.open{display:flex;flex-direction:column;gap:0}.nav-links a{padding:12px 0;border-bottom:1px solid var(--line);font-size:19px}.menu-button{margin-left:0}.nav-cta{margin-left:auto}.hero-grid{grid-template-columns:1fr 1fr}.hero .actions{gap:15px}.about-grid{grid-template-columns:1fr 1.2fr;gap:35px}.service-grid{grid-template-columns:1fr}.service-card .num{margin-bottom:28px}.service-card p{max-width:700px}.author-quote{grid-template-columns:210px 1fr;gap:30px}.author-quote img{width:210px;height:300px}.author-quote blockquote{font-size:25px}}
@media(max-width:760px){.header{height:80px}.nav-links{top:80px}.brand-logo{width:150px}.brand small{font-size:8px}.nav{gap:14px}.nav-cta{font-size:11px;padding-inline:14px}.hero-grid,.about-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(40px,10.2vw,65px)}.hero .copy,.copy,.section-head p,.project-summary p,.about .copy,.service-card p,.benefits p,.step p,.contact p,.case-intro .copy,.split .copy,.zone-heading .copy,.drawing-description p,.drawing-description ul,.result p{font-size:16px}.eyebrow,.hero-top .eyebrow{font-size:12px;letter-spacing:.1em}.hero-bottom{font-size:11px;flex-wrap:wrap;gap:12px}.hero-image img{aspect-ratio:4/3}.image-note{font-size:13px}.project-summary{padding:25px}.project-number{margin-bottom:20px}.project-meta{flex-wrap:wrap;gap:10px}.service-card .line-link,.step .line-link{font-size:15px}.step{grid-template-columns:28px 1fr;gap:15px}.about .role{font-size:16px}.about h2{font-size:clamp(35px,10vw,43px)}.quote{font-size:28px}.author-quote{grid-template-columns:1fr;gap:28px;max-width:540px}.author-quote img{width:min(100%,300px);height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 34%}.author-quote blockquote{font-size:25px}.author-quote cite{font-size:15px}.download-band .button{font-size:14px}.download-band p{font-size:16px}.case-facts dt{font-size:12px}.case-facts dd{font-size:16px}.case-nav{gap:15px;font-size:14px}.result{grid-template-columns:80px 1fr}.footer-grid{gap:28px}.footer .brand-logo{width:200px}.portrait figcaption{font-size:12px}.lightbox-caption{font-size:12px}.button{font-size:14px;max-width:100%;white-space:normal}.plan-tabs,.drawing-tabs{gap:8px}.tab-button{padding:10px 12px}}
@media(max-width:420px){.nav-cta{display:none}.menu-button{margin-left:auto}.brand-logo{width:150px}.case-intro h1{font-size:clamp(37px,11vw,44px)}.case-hero .image-note{gap:14px;align-items:start;flex-direction:column}.contact h2{font-size:36px}.contact .button{width:100%;padding-inline:14px}.gallery-pair.portraits{grid-template-columns:1fr}.area-row{gap:12px}.area-row dd{font-size:22px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.hero h1{font-size:clamp(35px,10.2vw,43px)}}
