.banner-v8__wrap {
  position: relative;
}

.banner-v8__content {
  text-align: center;
  position: absolute;
  min-width: 100%;
  left: 0;
  right: 0;
  top: 50%;
  z-index: 2;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  .banner-v8__content {
    width: 90%;
    max-width: 50rem;
  }
  [dir=ltr] .banner-v8__content {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  [dir=rtl] .banner-v8__content {
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
  }
}

.banner-v8__title {
  font-weight: 500;
  font-size: clamp(4rem, calc(1.875vw + 3.25rem), 5.5rem);
  line-height: calc(1 + 0.2 / var(--font-heading-scale));
  color: color-mix(in srgb, rgb(var(--color-foreground)) calc(1 * 100%), #ffffff);
  padding: 2.4rem 0;
  margin: 0;
}

@media (min-width: 768px) {
  .banner-v8__btn {
    margin-top: 1.6rem;
  }
}

.banner-v8__img {
  position: relative;
  display: grid;
}
.banner-v8__img img {
  min-height: 45rem;
  max-height: 70rem;
}