/* Classic serif for large titles and section headings, site-wide.
   Loaded after every page stylesheet; !important is limited to these three
   properties so page styles keep control of size, color and spacing. */
h1, h2,
.service-card h3,
.engagement-card-copy h3,
.project-information h3,
.vz-work-copy h3,
.vz-show-copy h3,
.case-headline {
    font-family: Georgia, 'Times New Roman', serif !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em !important;
}

/* Heading scale — one size per level, identical on every page.
   Desktop (≥1024px): page title 80px · homepage section titles 66px · homepage project titles 44px.
   Smaller screens scale down smoothly so long titles still fit. */
main h1 { font-size: clamp(38px, 9vw, 60px) !important; line-height: 1.06 !important; }
/* Section titles — the same size on every page. */
.vz-home .vz-section-head h2, .vz-about-band h2,
.services-section-heading h2, .services-questions h2, .visual-map-heading h2, .proposal-heading h2,
.about-story h2, .about-section-heading h2, .about-principles h2,
.case-section h2, .contact-form-heading h2, .work-section-title h2 { font-size: clamp(30px, 7.5vw, 48px) !important; line-height: 1.12 !important; }
.vz-show-copy h3 { font-size: clamp(34px, 8vw, 42px) !important; line-height: 1.1 !important; margin: 12px 0 20px !important; }
@media (min-width: 1024px) {
    main h1 { font-size: 80px !important; }
    .vz-home .vz-section-head h2, .vz-about-band h2,
    .services-section-heading h2, .services-questions h2, .visual-map-heading h2, .proposal-heading h2,
    .about-story h2, .about-section-heading h2, .about-principles h2,
    .case-section h2, .contact-form-heading h2, .work-section-title h2 { font-size: 66px !important; }
    .vz-show-copy h3 { font-size: 54px !important; }
}
