.banner-v12__item {
  position: relative;
  margin-bottom: 10rem;
}

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

.banner-v12__content {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  z-index: 2;
  width: 60%;
  background: rgba(var(--color-background));
  text-align: center;
  padding: 3rem 2rem;
}
@media (max-width: 767px) {
  .banner-v12__content {
    max-width: 30rem;
    padding: 2rem 1.5rem;
  }
}

.banner-v12__title {
  font-size: clamp(1.8rem, calc(1.5vw + 1.2rem), 3rem);
  letter-spacing: calc(var(--font-heading-scale) * 0.1rem);
}

.banner-v12__subtitle {
  font-size: clamp(1.2rem, calc(0.5vw + 1rem), 1.6rem);
  text-transform: uppercase;
  color: rgba(var(--color-accent));
}