@layer blocks {
  .image-text {
    background-color: var(--theme-surface-primary);
  }
  .image-text__inner {
    box-sizing: content-box;
    margin-inline: auto;
    max-width: 100%;
    padding-inline: 1.5rem;
  }
  @media (min-width: 768px) {
    .image-text__inner {
      padding-inline: 3rem;
    }
  }
  @media (min-width: 1024px) {
    .image-text__inner {
      max-width: 120rem;
      padding-inline: 5rem;
    }
  }
  .image-text__inner {
    --sticky-grid-sticky-top: var(--header-visible-height, 1.5rem);
  }
  .image-text__editorial {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }
  @media (min-width: 1024px) {
    .image-text__editorial {
      gap: 2rem;
    }
  }
  .image-text__content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  .image-text__eyebrow {
    color: var(--theme-text-primary);
  }
  .image-text__text-group {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  .image-text__heading {
    margin: 0;
  }
  .image-text__description {
    margin: 0;
  }
  .image-text__cta {
    width: 100%;
  }
  @media (min-width: 1024px) {
    .image-text__cta {
      width: fit-content;
    }
  }
  .image-text__media {
    display: block;
  }
  .image-text__picture {
    display: block;
    aspect-ratio: 2/3;
    border-radius: 1rem;
    overflow: hidden;
    width: 100%;
  }
  @media (min-width: 1024px) {
    .image-text__picture {
      aspect-ratio: 3/2;
      border-radius: 1.5rem;
    }
  }
  .image-text__caption {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-block-start: 1.5rem;
  }
  .image-text__caption-icon {
    flex-shrink: 0;
    width: 3rem;
    height: 3rem;
    aspect-ratio: 1/1;
    border-radius: 0.5rem;
    overflow: hidden;
  }
  .image-text__caption-text {
    margin: 0;
    color: var(--theme-text-primary);
  }
}