/* 1.4.5: Reference: Dienstleistungen, "Planung, Bau und Pflege".
   Original H1 x 150% and H2 x 100%, including the 1200px RFS breakpoint.
   Equal typography whether the semantic heading is H1, H2 or a paragraph. */
:root {
  --hero-title-size: calc(2.0625rem + 2.25vw);
  --hero-subtitle-size: calc(1.325rem + .9vw);
}
@media (min-width: 1200px) {
  :root { --hero-title-size: 3.75rem; --hero-subtitle-size: 2rem; }
}
.site-hero .element-header,
.site-hero .carousel-item-header {
  font-size: var(--hero-title-size) !important;
  font-family: inherit; font-weight: 700 !important; line-height: 1.2 !important;
  text-align: center !important; margin: 0 0 1rem !important;
  letter-spacing: normal; text-transform: none;
}
.site-hero .element-subheader,
.site-hero .carousel-item-subheader {
  font-size: var(--hero-subtitle-size) !important;
  font-family: inherit; font-weight: 700 !important; line-height: 1.2 !important;
  text-align: center !important; margin: 0 0 1rem !important;
  letter-spacing: normal; text-transform: none;
}
.site-hero .element-header span,
.site-hero .element-subheader span { font-size: inherit !important; }
.site-hero .frame-header,
.site-hero .offer-hero-caption { text-align: center; }
.site-hero.offer-hero .offer-hero-caption {
  left: 5%; right: 5%; padding: 0; width: 90%;
}
/* Keep titles readable while preserving existing light/dark title-only panels. */
.site-hero--image .element-header,
.site-hero--image .element-subheader { color: #fff; }
