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

.banner-v20__item {
  position: relative;
}

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

.banner-v20__content {
  max-width: 26.5rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 7%;
  z-index: 2;
}

.banner-v20__title {
  font-size: clamp(2.4rem, calc(0.75vw + 2.1rem), 3rem);
  letter-spacing: calc(var(--font-heading-scale) * 0.2rem);
  line-height: calc(1 + 0.2 / var(--font-heading-scale));
  margin-bottom: 1.2rem;
  color: var(--title-color);
}