@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: 32rem;
  position: absolute;
  bottom: 5.5rem;
  transform: translateX(-50%);
  left: 50%;
  z-index: 2;
  text-align: center;
}

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