/* Editorial and navigation improvements from the first site audit. */
.hero h1{font-size:clamp(2.65rem,4.5vw,5.2rem);max-width:14ch;line-height:1.08}
.hero-intro{max-width:48ch}.report-intro h1{font-size:clamp(2.7rem,4.1vw,4.7rem)}
.services .section-heading>div{max-width:800px}
.practical-section{border-top:1px solid var(--line)}
.practical-section h2,.faq-section h2,.company-contact h2{font-size:clamp(2.2rem,3.6vw,3.8rem);max-width:24ch}
.practical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px;margin-top:40px}
.practical-grid h3{font:600 1.15rem/1.5 var(--sans);letter-spacing:0;margin-bottom:16px}
.practical-grid p{color:var(--muted);line-height:1.8}.practical-grid .text-link,.practical-section>.text-link{margin-top:24px}
.faq-section{background:var(--sand)}.faq-list{max-width:940px;margin-top:40px}
.faq-list details{border-top:1px solid #b8bcb1;padding:22px 0}.faq-list details:last-child{border-bottom:1px solid #b8bcb1}
.faq-list summary{cursor:pointer;font-size:1.0625rem;font-weight:600;line-height:1.5;padding-right:16px}
.faq-list summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}
.faq-list p{margin-top:18px;max-width:78ch;color:var(--muted);line-height:1.8}
.project-figure{border-top:1px solid var(--line)}.project-figure h2{color:var(--accent)}
.project-figure p:not(.eyebrow){margin:24px 0;max-width:78ch;color:var(--muted)}
.company-contact a{text-decoration:underline;text-underline-offset:4px}
.site-footer{display:grid;grid-template-columns:1.2fr 1fr 1.1fr;gap:48px;align-items:start;border-top:1px solid var(--line)}
.site-footer>div{text-align:left}.site-footer .brand{text-decoration:none;margin-bottom:22px}.site-footer .brand span{color:var(--ink)}
.site-footer p{margin:18px 0;max-width:34ch}.site-footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:6px;font-size:.875rem}
.site-footer nav a{padding:3px 0}.site-footer .nav-cta{margin:0;border:0}.site-footer .footer-contact>a{margin-bottom:10px;overflow-wrap:anywhere}
@media(max-width:1100px) and (min-width:901px){.header{gap:14px;padding-inline:3%}.header nav{gap:14px;font-size:.75rem}.header .brand{font-size:.9rem}}
@media(max-width:700px){.practical-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.site-footer{grid-template-columns:1fr;gap:26px}.site-footer nav{font-size:1rem}.hero h1{max-width:16ch;font-size:clamp(2.6rem,9vw,3.5rem)}}
