/* The artwork includes its own typography. Its three compositions must stay uncropped. */
.main_banner.home-campaign {
  height: auto;
  background: #000;
}

.home-campaign .main_banner_container,
.home-campaign .main_banner_carousel,
.home-campaign .owl-stage-outer,
.home-campaign .owl-stage,
.home-campaign .owl-item {
  height: auto;
}

.home-campaign .main_banner_container {
  max-width: 1220px;
  margin: 0 auto;
}

.home-campaign__slide,
.home-campaign__slide picture {
  display: block;
  width: 100%;
  background: #000;
}

.home-campaign__slide picture {
  aspect-ratio: 1220 / 565;
}

.home-campaign .home-campaign__image {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
}

.home-campaign .main_banner_carousel:not(.owl-loaded) {
  display: block;
}

.home-campaign .main_banner_carousel:not(.owl-loaded) .home-campaign__slide:not(:first-child) {
  display: none;
}

.home-campaign .owl-dots {
  position: relative;
  inset: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 52px;
  margin: 0;
  background: #000;
}

.home-campaign .owl-dots .owl-dot {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 44px;
  padding: 0;
}

.home-campaign .owl-dots .owl-dot span {
  width: 6px;
  height: 6px;
  margin: 0;
  border-radius: 50%;
  background: #76767a;
  transition: background-color .15s ease;
}

.home-campaign .owl-dots .owl-dot.active span,
.home-campaign .owl-dots .owl-dot:hover span {
  background: #f5f5f7;
}

.home-campaign .banner_arrow {
  display: flex;
  top: auto;
  bottom: 4px;
  left: 12px;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: #f5f5f7;
  background: #1d1d1f;
  transition: background-color .15s ease;
}

.home-campaign .banner_right {
  left: auto;
  right: 12px;
}

.home-campaign .banner_arrow:hover {
  background: #333336;
}

.home-campaign .banner_arrow:focus-visible,
.home-campaign .owl-dot:focus-visible {
  outline: 2px solid #2997ff;
  outline-offset: 1px;
}

.home-campaign__slide:focus-visible {
  outline: 3px solid #2997ff;
  outline-offset: -3px;
}

@media (min-width: 768px) and (max-width: 1199px) {
  .home-campaign .main_banner_container {
    max-width: 880px;
  }

  .home-campaign__slide picture {
    aspect-ratio: 691 / 450;
  }
}

@media (max-width: 767px) {
  .home-campaign .main_banner_container {
    max-width: 480px;
  }

  .home-campaign__slide picture {
    aspect-ratio: 383 / 450;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-campaign .banner_arrow,
  .home-campaign .owl-dot span {
    transition: none;
  }
}
