/* Shared typography. Page layout and surfaces are defined in layout.css. */
:root{--section-space:clamp(2.5rem,4.5vw,4rem);--heading-size:clamp(2rem,4.2vw,3.75rem);--lead-size:clamp(1.0625rem,1.8vw,1.1875rem);--gold-light:#cfbd8d;--radius:.5rem}
main{overflow:clip}
.home-hero h1,.portfolio-intro h1,.about-intro h1,.services-intro h1,.contact-intro h1{font-size:clamp(3rem,6.7vw,6rem);line-height:1.06;letter-spacing:-.055em}
.section-heading h2,.home-section h2,.work-section h2,.process-section h2,.about-section h2,.about-principles h2,.project-cta h2,.contact-bottom h2{font-size:var(--heading-size);line-height:1.15;letter-spacing:-.04em;font-weight:500}
.section-heading{margin-bottom:2.5rem}.section-heading-content .section-summary{width:100%;max-width:none;margin-top:1.25rem}
.section-summary,.services-lead,.about-lead,.contact-lead,.portfolio-lead{font-size:var(--lead-size);line-height:1.8}
.section-kicker{display:flex;align-items:center;gap:.9rem;margin-bottom:1.75rem}.section-kicker p{margin:0;text-transform:uppercase;letter-spacing:.07em;font-size:.875rem}.section-index{display:grid;place-items:center;flex:none;width:2.5rem;height:2.5rem;border:1px solid #af9c6d80;border-radius:50%;color:var(--gold-light);font-size:.875rem}.section-rule{flex:1;height:1px;background:var(--line)}
.button,.text-link{font-size:.9375rem}.button{min-height:3rem;padding:.85rem 1.3rem;gap:1.5rem}.button:hover{transform:none}.site-header nav a{min-height:2.75rem;display:inline-flex;align-items:center}
.home-service{height:100%}.home-service p{flex:1}.enquiry-status{font-size:.9375rem;color:var(--muted)}.enquiry-form[hidden],.enquiry-draft-note[hidden]{display:none}.contact-shortcut{margin-bottom:1.5rem}
@media(max-width:40rem){.home-hero h1,.portfolio-intro h1,.about-intro h1,.services-intro h1,.contact-intro h1{font-size:clamp(2.75rem,11vw,4rem)}.project-links{gap:.75rem}.project-links .project-action{font-size:.875rem}}
.contact-sidebar .contact-intro h1{font-size:clamp(2.5rem,4.6vw,4.5rem);line-height:1.1}
