.seo-region h2 { font-size:clamp(2.1rem,4vw,3.8rem); line-height:1.1; letter-spacing:-.04em; }
.seo-region h3 { margin-top:32px; font-size:clamp(1.15rem,2.3vw,1.6rem); line-height:1.35; }
.seo-region p a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }
/* Narrow screens: preserve whole words instead of clipping or splitting titles. */
@media (max-width:560px) {
  .page-hero > div { width:100%; min-width:0; }
  body .page-hero h1,body .quote-aside h1 {
    font-size:clamp(1.625rem,7vw,2.45rem);
    line-height:1.12;
    overflow-wrap:normal;
    word-break:normal;
  }
  body .section-heading h2,body .manifesto h2,body .engineering-copy h2,
  body .intro-grid h2,body .route-heading h2,body .route-cta h2,body .contact-copy h2,
  body .seo-region h2 {
    font-size:clamp(1.5rem,6.5vw,2.25rem);
    line-height:1.15;
    overflow-wrap:normal;
    word-break:normal;
  }
  .section-heading > div,.intro-grid > div,.route-cta > *,
  .contact-copy,.engineering-copy { min-width:0; }
}
.seo-region p:not(.eyebrow) { max-width:900px; line-height:1.8; color:#505760; margin:24px 0; }
footer .machine-links { font-size:.75rem; line-height:1.7; }
footer .machine-links a { text-decoration:underline; text-underline-offset:4px; }
