/* 1.4.3: Same height as Wartungsvertrag at every original picture breakpoint.
   Source sizes: 576x769, 768x768, 992x558, 1200x600, 1400x700, 2000x745. */
:root { --site-hero-height: max(240px, calc(133.50694444vw - 76px)); }
@media (min-width: 576px) { :root { --site-hero-height: max(240px, calc(100vw - 76px)); } }
@media (min-width: 768px) { :root { --site-hero-height: max(240px, calc(56.25vw - 76px)); } }
@media (min-width: 992px) { :root { --site-hero-height: max(240px, calc(50vw - 76px)); } }
@media (min-width: 1400px) { :root { --site-hero-height: max(240px, calc(37.25vw - 76px)); } }
.site-hero {
  height: var(--site-hero-height) !important;
  min-height: 0 !important;
  max-height: none !important;
  box-sizing: border-box;
}
.site-hero--image > .gallery-row,
.site-hero--image .gallery-item,
.site-hero--gallery .gallery-item,
.site-hero--image figure,
.site-hero--gallery figure,
.site-hero--image picture,
.site-hero--gallery picture {
  display: block; height: 100%; width: 100%; margin: 0; padding: 0;
}
.site-hero--image img,
.site-hero--gallery img {
  display: block; width: 100%; height: 100%; max-height: none;
  object-fit: cover; object-position: center;
}
.site-hero--carousel .carousel,
.site-hero--carousel .carousel-inner,
.site-hero--carousel .carousel-item {
  height: var(--site-hero-height) !important;
  min-height: 0 !important; max-height: none !important;
}
.site-hero--carousel .carousel-backgroundimage { background-size: cover; background-position: center; }
.site-hero--title { display: flex; align-items: center; padding-block: 0 !important; }
.site-hero--title > .frame-group-container { width: 100%; }
