/* Content must remain immediately visible if legacy animation JavaScript is slow. */
.js.csstransforms.csstransitions .revealable {
  opacity: 1;
  transition: none;
}

.hero .hero-static-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.hero .hero-static-media::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  content: "";
  background: rgba(0, 0, 0, 0.4);
}

.hero .hero-static-media > div,
.hero .hero-static-media .gallery__item-enhancement,
.hero .hero-static-media picture,
.hero .hero-static-media img {
  display: block;
  width: 100%;
  height: 100%;
}

.hero .hero-static-media img {
  object-fit: cover;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
