.cta-image {
  --cta-image__media-grid-column: 1/-1;
  --media__image-object-fit: cover;
  --cta-image__min-height: 25rem;
  --cta-image__container-width: 100%;
  --cta-image__eyebrow-width: auto;
  --heading__alignment: left;
  --media__image-height: 100%;
  --cta-image__container-padding: 2rem;
  --cta-image__container-margin-block: 1.25rem;
  place-items: flex-start;
}
@media (min-width: 36rem) {
  .cta-image {
    --cta-image__media-grid-column: 2/-2;
    --cta-image__min-height: 22.875rem;
    --cta-image__container-margin-block: 3rem;
    place-items: center;
    --cta-image__container-width: 27rem;
  }
}
@media (min-width: 48rem) {
  .cta-image {
    --cta-image__container-padding: 2.5rem;
  }
}
.cta-image__container {
  margin: auto;
}
@media (min-width: 36rem) {
  .cta-image__container {
    margin-inline: auto 3rem;
  }
}
.cta-image .media {
  position: absolute;
  inset: 0;
}
.cta-image .media__image {
  inline-size: 100%;
  block-size: 100%;
}
.cta-image .media img {
  border-radius: 0;
}
@media (min-width: 36rem) {
  .cta-image .media img {
    border-radius: var(--border-radius-small);
  }
}
.cta-image .heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.cta-image .heading:has(.heading__eyebrow) {
  padding-block-start: 0;
}
.cta-image .heading__title {
  font-size: var(--font-size--md);
  margin-block-end: 0.25rem;
  text-align: start;
}
.cta-image .heading__title + .heading__eyebrow {
  margin-block-end: var(--margin-medium);
}
.cta-image .heading__eyebrow {
  position: relative;
  inset-block-start: auto;
  inset-inline-start: auto;
  background-color: var(--color-red);
  color: var(--color-white);
  padding: 0.375rem 0.625rem;
  font-size: var(--font-size--xs);
  font-weight: var(--font-weight--bold);
  line-height: 1.15;
  letter-spacing: 0;
  text-transform: capitalize;
  order: -1;
}
.cta-image .heading__content {
  margin-block-end: var(--margin-medium);
}
.cta-image .heading__content p {
  font-weight: var(--font-weight--medium);
  font-size: 1.125rem;
}
.cta-image .heading__content :last-child {
  margin-block-end: 0;
}
