@media (max-width: 767px) {
  .banner-v5 {
    gap: 1.5rem;
  }
}

.banner-v5__item {
  position: relative;
}

.banner-v5__img {
  display: block;
  height: 100%;
}
.banner-v5__img .xo-image {
  height: 100%;
}
.banner-v5__img img {
  height: 100%;
}

.banner-v5__content {
  position: absolute;
  bottom: 50%;
  z-index: 2;
  max-width: 38rem;
  transform: translateY(50%);
  padding: 0 1.5rem;
}
[dir=ltr] .banner-v5__content {
  left: 3rem;
}
[dir=rtl] .banner-v5__content {
  right: 3rem;
}
@media (max-width: 991px) {
  .banner-v5__content {
    top: 50%;
    bottom: unset;
    padding: 1.5rem;
    transform: translateY(-50%);
  }
}

.banner-v5__subtitle {
  padding: 0.5rem 2rem;
  margin-bottom: 1.6rem;
  letter-spacing: 0.1rem;
  display: inline-block;
  font-size: calc(var(--font-body-scale) * 1.4rem);
  font-weight: 400;
  color: rgba(var(--color-foreground));
  background-color: rgba(var(--color-accent));
  clear: both;
}

.banner-v5__title {
  font-size: clamp(3rem, calc(1.875vw + 2.25rem), 4.5rem);
  line-height: calc(1 + 0.2 / var(--font-heading-scale));
  margin-bottom: 1.6rem;
  font-weight: 500;
}