.banner-v12__header {
  text-align: center;
  margin-bottom: 4rem;
}

.banner-v12__heading {
  font-family: var(--font-custom-family);
  font-size: clamp(3rem, calc(1.25vw + 2.5rem), 4rem);
}

.banner-v12__icon {
  width: clamp(5rem, calc(3.75vw + 3.5rem), 8rem);
  height: clamp(5rem, calc(3.75vw + 3.5rem), 8rem);
  display: flex;
  align-items: center;
  justify-content: center;
}

.banner-v12__box {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

@media (min-width: 992px) {
  .banner-v12__wrap > xo-grid {
    column-gap: var(--gap);
  }
}

.banner-v12__item-title {
  font-weight: 600;
  padding-top: 1rem;
  font-family: var(--font-custom-family);
  font-size: clamp(2rem, calc(0.5vw + 1.8rem), 2.4rem);
  color: rgba(var(--color-foreground));
}

.banner-v12__item-description {
  color: rgba(var(--color-foreground), 0.7);
}

.banner-v12__grid {
  height: 100%;
}

@media (max-width: 991px) {
  .banner-v12__image {
    max-width: 63dvw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
}