.banner-v248__grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--gap);
}

.banner-v248__item {
  position: relative;
}
.banner-v248__item:nth-child(1) {
  grid-column: 1/4;
}
@media (min-width: 992px) {
  .banner-v248__item:nth-child(1) {
    grid-column: 1/3;
  }
}
@media (min-width: 992px) {
  .banner-v248__item:nth-child(2) {
    grid-column: 3;
    grid-row: 1/3;
  }
}
@media (max-width: 767px) {
  .banner-v248__item:not(:first-child) {
    grid-column: 1/4;
  }
}

.banner-v248__title,
.banner-v248__btn {
  color: color-mix(in srgb, rgba(var(--color-foreground)) calc(1 * 100%), transparent);
}

.banner-v248__content {
  position: absolute;
  top: 0;
  z-index: 3;
  padding: 2.5rem;
}
[dir=ltr] .banner-v248__content {
  left: 0;
}
[dir=rtl] .banner-v248__content {
  right: 0;
}
@media (min-width: 1200px) {
  .banner-v248__content {
    padding: 3.5rem;
  }
}

.banner-v248__title {
  font-weight: 400;
  font-size: calc(var(--font-heading-scale) * var(--font-body-scale) * 3rem);
  line-height: 1.4;
  margin-bottom: 0.5rem;
  letter-spacing: -0.25px;
}
.banner-v248__title:hover {
  color: color-mix(in srgb, rgba(var(--color-accent)) calc(1 * 100%), transparent);
}

.banner-v248__img {
  display: grid;
  height: 100%;
}