.banner-v11__item {
  position: relative;
}

.banner-v11 xo-grid {
  column-gap: 5rem;
}

.banner-v11__item--left {
  display: flex;
  align-items: center;
}

.banner-v11__item--left .banner-v11__item-wrap {
  width: 100%;
}

@media (min-width: 768px) {
  .banner-v11__item--right {
    padding-left: calc(var(--padding-left) / 2);
    padding-right: calc(var(--padding-right) / 2);
  }
}
@media (min-width: 992px) {
  .banner-v11__item--right {
    padding-left: var(--padding-left);
    padding-right: var(--padding-right);
  }
}

.banner-v11__content {
  padding-top: 2.4rem;
}
@media (min-width: 768px) {
  .banner-v11__content {
    padding: 4.8rem 0;
  }
}

.banner-v11__title {
  font-weight: 500;
  font-size: clamp(3rem, calc(0.75vw + 2.7rem), 3.6rem);
  line-height: calc(1 + 0.2 / var(--font-heading-scale));
  margin-bottom: 1.6rem;
}

.banner-v11__subtitle {
  font-weight: 600;
  font-size: calc(var(--font-heading-scale) * 1.2rem);
  line-height: calc(1 + 0.1 / var(--font-heading-scale));
  text-transform: uppercase;
  letter-spacing: 0.24rem;
  margin-bottom: 0.8rem;
}

.banner-v11__desc {
  font-weight: 400;
  font-size: calc(var(--font-body-scale) * 1.5rem);
  line-height: calc(1 + 0.8 / var(--font-body-scale));
}

.banner-v11__subtitle,
.banner-v11__title,
.banner-v11__desc {
  color: color-mix(in srgb, rgb(var(--color-foreground)) calc(1 * 100%), #ffffff);
}

.banner-v11__img {
  display: grid;
}
.banner-v11__img img {
  max-height: 75rem;
}