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

.banner-v31__title {
  font-size: clamp(3rem, calc(0.75vw + 2.7rem), 3.6rem);
}
@media (min-width: 768px) {
  .banner-v31__title {
    margin-bottom: 3rem;
  }
}

.banner-v31__description {
  font-size: calc(var(--font-body-scale) * 1.6rem);
  margin-bottom: 1.8rem;
}
@media (min-width: 768px) {
  .banner-v31__description {
    margin-bottom: 3.8rem;
  }
}

.banner-v31__content xo-grid {
  height: 100%;
}