/* SATC site-wide heading hierarchy — loaded after every page stylesheet. */
:root{
  --site-page-title:clamp(36px,3.2vw,52px);
  --site-section-title:clamp(27px,2.15vw,36px);
  --site-content-title:clamp(22px,1.55vw,28px);
  --site-heading-weight:800;
  --site-page-line-height:1.32;
  --site-section-line-height:1.45;
}

/* Page and hero titles */
.home-v2 .hero-slider .hero-slide-copy>.copy-block h1,
.about-page .about-hero h1,
.projects-archive .projects-hero h1,
.articles-page .articles-hero h1,
.articles-page .archive-intro h1,
.partners-page .partners-page-hero h1,
.info-page .info-hero h1,
.article-page .post-hero h1,
.single-project-page .project-hero-copy h1,
.single-model-page .model-detail-copy h1{
  font-size:var(--site-page-title)!important;
  font-weight:var(--site-heading-weight)!important;
  line-height:var(--site-page-line-height)!important;
  letter-spacing:-.025em!important;
}

/* Primary section titles */
.home-v2 .about-copy h2,
.home-v2 .numbers-heading h2,
.home-v2 .partners-head h2,
.home-v2 .projects-head h2,
.home-v2 .vision h2,
.home-v2 .news-heading h2,
.about-page .intro-heading h2,
.about-page .intro-copy h2,
.about-page .section-copy h2,
.about-page .mission-heading h2,
.about-page .principles-heading h2,
.about-page .sisters-heading h2,
.about-page .profile-download h2,
.projects-archive .featured-copy h2,
.projects-archive .catalog-head h2,
.articles-page .archive-heading h2,
.contact-page .contact-intro h2,
.contact-page .contact-location-head h2,
.single-project-page .project-description h2,
.single-project-page .project-section-head h2,
.single-model-page .model-plan-copy h2,
.single-model-page .project-section-head h2,
.single-model-page .model-request h2{
  font-size:var(--site-section-title)!important;
  font-weight:var(--site-heading-weight)!important;
  line-height:var(--site-section-line-height)!important;
  letter-spacing:-.015em!important;
}

/* Long-form content subsection titles remain one clear step smaller. */
.article-page .article-body h2,
.info-page .legal-block h2{
  font-size:var(--site-content-title)!important;
  font-weight:700!important;
  line-height:1.55!important;
}

@media(max-width:700px){
  :root{
    --site-page-title:clamp(32px,9vw,40px);
    --site-section-title:clamp(26px,7.4vw,32px);
    --site-content-title:clamp(21px,5.8vw,26px);
  }
}
