.section.image-text-grid-container {
  max-width: var(--Layout-Page-Width, 90rem);
  margin-inline: auto;
}

.image-text-grid {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--Section-Widget-Gap, 7.5rem);
}

.image-text-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.image-text-item .image-wrapper img {
  display: flex;
  width: 40.5rem;
  height: 30.375rem;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  aspect-ratio: 4/3;
  object-fit: cover;
  object-position: top center;
  border-radius: var(--Images-Radius, 1.5rem);
}

.text-wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--Section-Text-Gap, 1rem);
}

/* Content */
.image-text-item .content-wrapper {
  display: flex;
  width: 33.5625rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--Section-Gap, 2rem);
}

.image-text-item .content-wrapper .title {
  color: var(--Section-Text, #001C35);
  font: var(--Title-Page);
  letter-spacing: -0.03rem;
}

.image-text-item .content-wrapper .description {
  color: var(--Section-Text, #001C35);
  font: var(--Body-Base);
}

/* Alignment */
.image-text-item.image-left {
  flex-direction: row;
}

.image-text-item.image-right {
  flex-direction: row-reverse;
}

/* Small Variant */
.image-text-item.text-grid-small img {
  width: 648px;
  height: 364.504px;
  aspect-ratio: 16/9;
}

.image-text-item.text-grid-extra-small img {
  width: 475px;
  height: 267.191px;
  aspect-ratio: 16/9;
}

.image-text-grid.text-grid-small .image-text-item img {
  width: 648px;
  height: 364.504px;
  aspect-ratio: 16/9;
}

.image-text-grid.text-grid-extra-small .image-text-item img {
  width: 475px;
  height: 267.191px;
  aspect-ratio: 16/9;
}

/* ExtraSmall Button */
.image-text-item.text-grid-extra-small .btn {
  padding: 0;
  min-width: var(--Button-Min-Width, var(--P48));
  min-height: var(--Button-Min-Height, var(--P24));
  color: var(--Link-Button-Link-Default-Text);
  font: var(--Single-Line-Body-Link);
  box-sizing: border-box;
  gap: var(--Button-Gap, var(--P08));
  text-decoration-line: none;
  border-radius: var(--Button-Radius-Ghost, 0);
  border:
    var(--P00, 0) solid
    var(--Link-Button-Link-Default-Border, rgb(17 17 17 / 0%));
  background:
    var(
      --Link-Button-Link-Default-Background,
      rgb(17 17 17 / 0%)
    );
}

.image-text-grid.text-grid-extra-small .image-text-item .btn {
  padding: 0;
  min-width: var(--Button-Min-Width, var(--P48));
  min-height: var(--Button-Min-Height, var(--P24));
  color: var(--Link-Button-Link-Default-Text);
  font: var(--Single-Line-Body-Link);
  box-sizing: border-box;
  gap: var(--Button-Gap, var(--P08));
  text-decoration-line: none;
  border-radius: var(--Button-Radius-Ghost, 0);
  border:
    var(--P00, 0) solid
    var(--Link-Button-Link-Default-Border, rgb(17 17 17 / 0%));
  background:
    var(
      --Link-Button-Link-Default-Background,
      rgb(17 17 17 / 0%)
    );
}

/* ExtraSmall Button Label */
.image-text-item.text-grid-extra-small .btn span:not(.icon) {
  text-decoration: underline;
}

.image-text-grid.text-grid-extra-small
  .image-text-item
  .btn
  span:not(.icon) {
  text-decoration: underline;
}

/* ExtraSmall Button Hover */
.image-text-item.text-grid-extra-small .btn:hover {
  color: var(--Link-Button-Link-Hover-Text);
}

.image-text-grid.text-grid-extra-small .image-text-item .btn:hover {
  color: var(--Link-Button-Link-Hover-Text);
}

/* Small / ExtraSmall Title */
.image-text-item.text-grid-small .content-wrapper .title,
.image-text-item.text-grid-extra-small .content-wrapper .title {
  font: var(--Title-Page-Small);
}


.image-text-grid.text-grid-small .content-wrapper .title,
.image-text-grid.text-grid-extra-small .content-wrapper .title {
  font: var(--Title-Page-Small);
}

.fragment-container:has(.image-text-grid-container) {
  max-width: var(--Layout-Page-Width, 90rem);
  margin-inline: auto;
}

/* Desktop small */
@media (1200px <= width < 1440px) {
  .image-text-grid {
    gap: var(--Section-Widget-Gap-Ds, 6rem);
  }

  .image-text-item .content-wrapper {
    width: 29.44rem;
  }

  .image-text-item .image-wrapper img {
    width: 37.5rem;
    height: 28.125rem;
  }

  /* Small Variant */
  .image-text-item.text-grid-small img {
    width: 600px;
    height: 337.504px;
  }

  .image-text-grid.text-grid-small .image-text-item img {
    width: 600px;
    height: 337.504px;
  }
}

/* Tablet */
@media (768px <= width < 1200px) {
  .image-text-grid {
    gap: var(--Section-Widget-Gap, 6rem);
  }

  .image-text-item .image-wrapper img {
    width: 22.75rem;
    height: 17.0625rem;
  }

  .image-text-item .content-wrapper {
    max-width: 18.9375rem;

    & .title {
      font: var(--Subtitle-Apex-New);
      letter-spacing: -0.02rem;
    }
  }

  /* Small / ExtraSmall Variant */
  .image-text-item.text-grid-small img,
  .image-text-item.text-grid-extra-small img {
    width: 364px;
    height: 204.752px;
  }

  .image-text-grid.text-grid-small .image-text-item img,
  .image-text-grid.text-grid-extra-small .image-text-item img {
    width: 364px;
    height: 204.752px;
  }
}

/* Mobile */
@media (width < 768px) {
  .image-text-grid {
    max-width: 46rem;
    gap: var(--Section-Widget-Gap, 5rem);
  }

  .image-text-item {
    flex-direction: column-reverse !important;
    align-items: normal;
    gap: var(--Section-Image-Gap-M, 3rem);
  }

  .image-text-item .image-wrapper picture,
  .image-text-item .image-wrapper img {
    display: flex;
    width: 100%;
    height: auto;
    aspect-ratio: 4/3;
  }

  .image-text-item .content-wrapper {
    width: 100%;
    align-self: stretch;
    max-width: unset;
  }

  .image-text-item .content-wrapper .title {
    font: var(--Subtitle-Apex-New);
    letter-spacing: -0.02rem;
  }

  .image-text-item .content-wrapper .description {
    font: var(--Body-Base);
  }

  /* Small / ExtraSmall Variant */
  .image-text-item.text-grid-small picture,
  .image-text-item.text-grid-small picture img,
  .image-text-item.text-grid-extra-small picture,
  .image-text-item.text-grid-extra-small picture img {
    display: unset;
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
  }

  .image-text-grid.text-grid-small .image-text-item picture,
  .image-text-grid.text-grid-small .image-text-item picture img,
  .image-text-grid.text-grid-extra-small .image-text-item picture,
  .image-text-grid.text-grid-extra-small
    .image-text-item
    picture
    img {
    display: unset;
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
  }
}