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

.banner-v21__item {
  position: relative;
}

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

.banner-v21__content {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  z-index: 1;
}
[dir=ltr] .banner-v21__content {
  left: 10rem;
}
[dir=rtl] .banner-v21__content {
  right: 10rem;
}
@media (max-width: 767px) {
  [dir=ltr] .banner-v21__content {
    left: 2rem;
  }
  [dir=rtl] .banner-v21__content {
    right: 2rem;
  }
}

.banner-v21__title {
  font-size: clamp(3rem, calc(2.5cqw + 2rem), 5rem);
  margin-bottom: 4rem;
  padding-bottom: 2rem;
  position: relative;
}
@media (max-width: 767px) {
  .banner-v21__title {
    margin-bottom: 2rem;
    padding-bottom: 1rem;
  }
}

.banner-v21__title::before {
  content: "";
  width: 7.5rem;
  position: absolute;
  bottom: 0px;
  left: 0px;
  border-bottom: 1px solid;
}

.banner-v21__subtitle {
  font-size: clamp(2.5rem, calc(1.875cqw + 1.75rem), 4rem);
  font-weight: 300;
  text-transform: capitalize;
}