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

.banner-v57__item {
  position: relative;
}

.banner-v57__content {
  position: absolute;
  z-index: 1;
  top: 50%;
  transform: translateY(-50%);
  left: 5rem;
}
@media (max-width: 575px) {
  .banner-v57__content {
    left: 3rem;
  }
}

.banner-v57__img {
  display: block;
  height: 100%;
}
.banner-v57__img .xo-image {
  height: 100%;
}
.banner-v57__img img {
  height: 100%;
}
@media (max-width: 575px) {
  .banner-v57__img {
    height: 30rem;
  }
}

.banner-v57__subtitle {
  font-family: var(--font-heading-family);
  text-transform: uppercase;
  font-size: calc(var(--font-body-scale) * 1.4rem);
  line-height: 1.2;
  letter-spacing: 0.2rem;
  margin-bottom: 1.5rem;
  color: rgba(var(--color-foreground), 0.5);
}

.banner-v57__title {
  font-size: calc(var(--font-heading-scale) * var(--font-body-scale) * 3rem);
  line-height: 1.7;
  text-transform: uppercase;
  margin-bottom: 2rem;
}
@media (max-width: 575px) {
  .banner-v57__title {
    font-size: calc(var(--font-heading-scale) * var(--font-body-scale) * 2rem);
    line-height: 1.2;
    margin-bottom: 1.5;
  }
}

.banner-v57__description {
  font-family: var(--font-heading-family);
  width: 100%;
  position: relative;
  text-transform: capitalize;
  padding-bottom: 0.5rem;
  margin-bottom: 2.5rem;
  font-size: calc(var(--font-body-scale) * 1.6rem);
  color: rgba(var(--color-foreground), 0.5);
}
.banner-v57__description span {
  color: rgb(var(--color-accent));
}
@media (max-width: 575px) {
  .banner-v57__description {
    margin-bottom: 1.5;
  }
}