/* Corporate copy: concise opening, generous reading rhythm, detailed information on demand. */
.logo{clip-path:polygon(0 0,100% 0,100% 66%,29% 66%,29% 100%,0 100%)}
.hero h1{font-size:clamp(4rem,6.8vw,6.5rem);max-width:12em;line-height:1.06}
.hero-body{padding-top:90px;padding-bottom:20px}
.hero-intro{max-width:34em;font-size:1rem;line-height:1.85;color:#f4f1e9;margin:24px 0 0;text-wrap:pretty}
.hero-body .line-link{margin-top:18px}
.hero-shade{background:linear-gradient(90deg,rgba(12,17,14,.68),rgba(12,17,14,.08) 85%),linear-gradient(0deg,rgba(12,17,14,.6),transparent 80%)}
.expertise-layout{grid-template-columns:.85fr 1.15fr;align-items:start;gap:10%}
.expertise-intro h2{font-size:clamp(3rem,4.4vw,4.5rem);line-height:1.08}
.expertise-intro>p,.about-copy p,.quality-note,.process-grid p,.scope-grid p{font-size:1rem;line-height:1.85;color:var(--muted);text-wrap:pretty}
.expertise-intro>p{max-width:28em;margin:30px 0}
.expertise-list .service-item{gap:20px;align-items:baseline;padding:32px 0}
.service-item>div{min-width:0}
.expertise-list .service-number{flex:none;font-size:.75rem}
.expertise-list h3{font-size:clamp(1.75rem,2.3vw,2.25rem);font-family:var(--serif);letter-spacing:-.01em;line-height:1.2;font-weight:500}
.service-item p{font-size:1rem;line-height:1.85;color:var(--muted);margin:18px 0 0;text-wrap:pretty}
.text-disclosure{margin-top:24px}
.text-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:.875rem;line-height:1.65;padding:12px 0;color:var(--ink)}
.text-disclosure summary::-webkit-details-marker{display:none}
.text-disclosure summary::after{content:'+';flex:none;font-size:1.25rem;font-weight:400}
.text-disclosure[open] summary::after{content:'−'}
.text-disclosure summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.text-disclosure summary:hover{color:#806b44}
.text-disclosure p{font-size:1rem;line-height:1.85;color:var(--muted);margin:10px 0 20px}
.about{grid-template-columns:1fr 1fr;gap:9%;align-items:center}
.about-text h2{font-size:clamp(3rem,4.5vw,4.5rem);line-height:1.07}
.about-copy{margin-top:30px}
.about-copy p{margin:0 0 20px}
.about-image img{object-position:65% 50%}
.image-footnote{margin:20px 0 0;padding-top:15px;border-top:1px solid var(--rule);font-size:.75rem;line-height:1.7;color:var(--muted)}
.heritage-note{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-top:28px}
.quality-note{margin-top:25px;margin-bottom:0}
.process{background:#eeece5;border-top:1px solid var(--rule)}
.process .section-heading{align-items:end}
.section-intro{max-width:28em;font-size:1rem;line-height:1.85;color:var(--muted);margin:0}
.process-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 5%}
.process-grid li{border-top:1px solid #c3c1b6;padding-top:24px;min-width:0}
.process-number{font-size:.75rem;color:#806b44;letter-spacing:.08em}
.process-grid h3,.scope-grid h3{font-family:var(--serif);font-size:2rem;font-weight:500;line-height:1.15;letter-spacing:-.015em;margin:22px 0 16px}
.process-grid p,.scope-grid p{margin:0}
.project-summary{max-width:63em;color:var(--muted);font-size:1rem;line-height:1.9;margin:30px 0 0;text-wrap:pretty}
.project-meta{gap:12px 24px}
.project-scope{padding-top:75px;padding-bottom:75px;border-bottom:1px solid var(--rule)}
.scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5%}
.scope-grid h3{margin-top:0}
.materials-note{display:grid;grid-template-columns:1fr 2fr;gap:5%;border-top:1px solid var(--rule);margin-top:42px;padding-top:27px}
.materials-note .eyebrow{margin:5px 0 0;color:#796b52}
.materials-note p{font-size:1rem;line-height:1.8;margin:0;color:var(--muted)}
.contact-page{padding-bottom:85px}
.contact-intro{max-width:35em;font-size:1rem;line-height:1.85;color:var(--muted);margin-top:28px}
.contact-grid{margin-top:60px;grid-template-columns:1fr 1.2fr 1fr}
.contact-grid a{display:inline-block;min-height:44px;font-size:clamp(1.125rem,1.7vw,1.5rem);line-height:1.5}
.contact-locations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6%;margin-top:45px;padding-top:40px;border-top:1px solid var(--rule)}
.contact-locations .eyebrow{color:#796b52;font-size:.75rem;letter-spacing:.08em;margin-bottom:18px}
.contact-locations h2{font-family:var(--serif);font-weight:500;font-size:2.25rem;margin:0 0 15px}
.contact-locations address{font-style:normal;font-size:1rem;line-height:1.85;color:var(--muted);max-width:22em}
.contact-bottom{display:flex;justify-content:space-between;gap:35px;margin-top:50px;padding-top:32px;border-top:1px solid var(--rule)}
.contact-bottom .eyebrow{color:#796b52;margin-bottom:12px}
.contact-bottom p{font-size:1rem;line-height:1.9;margin:0}
.contact-bottom .line-link{padding-top:4px}
.footer-brand .footer-tag{letter-spacing:.15em}
@media(max-width:1000px){
 .expertise-layout{gap:7%;grid-template-columns:.8fr 1.2fr}
 .about{gap:7%;align-items:start}
 .process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 6%}
 .scope-grid{grid-template-columns:1fr;gap:30px}
 .contact-grid{grid-template-columns:1fr 1fr;gap:25px}
 .contact-locations{gap:4%}
}
@media(max-width:760px){
 .hero h1{font-size:clamp(3.125rem,10.5vw,4.75rem);max-width:11em}
 .hero-body{padding-top:85px;padding-bottom:30px}
 .hero-intro{font-size:1rem;max-width:30em;line-height:1.8;margin-top:22px}
 .hero{min-height:720px}
 .hero-caption{margin-bottom:30px}
 .expertise-layout,.about{grid-template-columns:1fr;gap:40px}
 .expertise-intro h2,.about-text h2{font-size:clamp(2.75rem,9vw,3.75rem)}
 .expertise-intro>p{margin:25px 0 20px}
 .expertise-list .service-item{padding:27px 0;gap:16px}
 .process .section-heading{align-items:start}
 .section-intro{max-width:100%}
 .process-grid{grid-template-columns:1fr;gap:30px}
 .process-grid h3,.scope-grid h3{font-size:1.875rem}
 .process-grid li{padding-top:22px}
 .project-summary{margin-top:22px;line-height:1.85}
 .project-scope{padding-top:50px;padding-bottom:50px}
 .materials-note{grid-template-columns:1fr;gap:13px;margin-top:30px;padding-top:25px}
 .contact-intro{margin-top:24px}
 .contact-grid{grid-template-columns:1fr;margin-top:40px;gap:20px}
 .contact-grid a{font-size:1.375rem}
 .contact-grid .eyebrow{margin-bottom:10px}
 .contact-locations{grid-template-columns:1fr;gap:32px;margin-top:30px;padding-top:32px}
 .contact-locations address{max-width:100%}
 .contact-locations h2{font-size:2rem}
 .contact-bottom{flex-direction:column;gap:28px;margin-top:35px}
 .contact-page{padding-bottom:60px}
}
@media(max-width:380px){.hero h1{font-size:3rem}.hero-body{padding-top:65px}.hero .eyebrow{letter-spacing:.14em}}

.project-scope>h2.eyebrow{font-family:var(--sans);font-size:.75rem;line-height:1.6;letter-spacing:.18em;margin-bottom:30px}
