.header {
  --swiper-pagination-color: #ffffff;
  --swiper-pagination-bullet-inactive-color: #ffffff;
  --swiper-pagination-bullet-inactive-opacity: 0.4;
  --swiper-navigation-color: #ffffff;
}

/* Feste Slider-Höhe (Bildverhältnis 1800×800) → alle Slides gleich hoch */
.header__slider {
  aspect-ratio: 1800 / 800;
  max-height: 1000px;
}
.header__slider .swiper-wrapper { height: 100%; }
.header__slide { height: 100%; }
.header__slide > a { display: block; height: 100%; }
.header__image { height: 100%; }
.header__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.header__text {
  position: absolute;
  bottom: 2rem;
  left: 4%;
  width: fit-content;
  max-width: 92%;
  color: rgb(var(--c-neutral-lightest));
}

/* Slogan-Optik wie Live: Titel = kleiner grauer Kasten, Beschreibung = großer Primär-Kasten.
   Beide Kästen laufen gleich breit (Breite = breitester Kasten = Beschreibung). */
.header__title,
.header__description {
  display: block;
  width: 100%;
  box-sizing: border-box;
  text-transform: uppercase;
  font-family: var(--f-family-2);
  color: rgb(var(--c-neutral-lightest));
}
/* Slogan-Schriftgröße wie Live: viewport-relativ (vw) mit Cap, NICHT %-fix — sonst mobil
   viel zu groß. Live: line1 = 1.5vw (cap 20px), line2 = 3.74vw (cap 49.92px). */
.header__title {
  font-weight: var(--f-weight-b);
  font-style: italic;
  font-size: min(1.5vw, 20px);
  line-height: 120%;
  background: rgb(var(--c-neutral));
  padding: 5px 15px;
  margin-bottom: 3px;
}
.header__description {
  font-weight: var(--f-weight-l);
  font-size: min(3.74vw, 49.92px);
  line-height: 110%;
  background: rgb(var(--c-primary));
  padding: 8px 15px;
}
@media (min-width: 1025px) {
  .header__title { padding: 10px 35px; }
  .header__description { padding: 12px 35px; }
}

.header__image {
  overflow: hidden;
  display: block;

  picture {
    height: 100%;
    width: 100%;
  }

  & video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  &.-left {
    & video,
    & img {
      object-position: left center;
    }
  }

  &.-right {
    & video,
    & img {
      object-position: right center;
    }
  }

  &.-top {
    & video,
    & img {
      object-position: center top;
    }
  }

  &.-bottom {
    & video,
    & img {
      object-position: center bottom;
    }
  }

  &.-bottom.-left {
    & video,
    & img {
      object-position: left bottom;
    }
  }

  &.-bottom.-right {
    & video,
    & img {
      object-position: right bottom;
    }
  }

  &.-top.-left {
    & video,
    & img {
      object-position: left top;
    }
  }

  &.-top.-right {
    & video,
    & img {
      object-position: right top;
    }
  }
}

/* =============================================================================
   Media Queries
   ========================================================================== */

@media (min-width: 800px) {
  div.header__text.-bottom {
    display: block;
  }
}