.image-with-text-section {
  word-break: break-word;
  background-color: rgb(var(--color-background));
}
.image-with-text__image {
  position: relative;
  display: flex;
}
.image-with-text__image > img {
  max-width: 100%;
  height: auto;
  aspect-ratio: var(--aspect-ratio);
  object-fit: cover;
}
.image-with-text__image .hover-scale__image {
  width: 100%;
}
.image-with-text__image .empty-image-class {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgb(var(--color-image-background));
}
.image-with-text__subheading {
  font-size: var(--body3-font-size);
  text-transform: uppercase;
  letter-spacing: 0.3em;
}
.image-with-text__button {
  max-width: 100%;
  padding-block-start: 0;
}
.image-with-text__button .button {
  word-break: break-all;
  white-space: normal;
}

.image-with-text-section--cross-sell {
  display: block !important;
  box-sizing: border-box;
  gap: normal !important;
  flex-direction: row !important;
  justify-content: normal !important;
  align-items: normal !important;
  font-family: "Montserrat", Arial, sans-serif;
  color: #222;
}

.image-with-text-section--cross-sell > .page-width {
  display: grid;
  width: 100%;
  max-width: 1280px;
  padding: 0;
  margin: 0 auto;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(30.72px, 4vw, 48px);
}

.image-with-text-section--cross-sell .image-with-text__image {
  display: block;
  width: 100%;
  height: clamp(261.11px, 30.556vw, 440px);
  overflow: hidden;
  border-radius: 6px;
  background: #fff;
}

.image-with-text-section--cross-sell .image-with-text__image > img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: contain;
  border-radius: 6px;
  background: #fff;
}

.image-with-text-section--cross-sell .image-with-text__group {
  display: block;
  width: 100%;
  padding: 0;
}

.image-with-text-section--cross-sell .image-with-text__subheading {
  margin: 0 0 14px;
  font-size: 11px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #214e34;
}

.image-with-text-section--cross-sell .image-with-text__heading {
  margin: 0 0 16px;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(24.576px, 2.639vw, 38px);
  font-weight: 700;
  line-height: 1.14;
  color: #173824;
}

.image-with-text-section--cross-sell .image-with-text__rich-text {
  width: 100%;
  max-width: 500px;
  margin: 0 0 24px;
  font-size: 15px;
  line-height: 1.75;
  color: #3d4c42;
}

.image-with-text-section--cross-sell .image-with-text__rich-text p {
  margin: 0;
}

.image-with-text-section--cross-sell .image-with-text__button {
  width: auto;
  padding: 0;
}

.image-with-text-section--cross-sell .image-with-text__button .button {
  display: inline-block;
  width: auto;
  min-width: 0;
  min-height: 0;
  padding: 17px 30px;
  border: 0;
  border-radius: 999px;
  word-break: normal;
  white-space: nowrap;
  color: #f7f4ec;
  background: #214e34;
  font-size: 13px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.image-with-text-section--cross-sell .image-with-text__button a.button {
  font-family: "Montserrat", Arial, sans-serif !important;
}

.image-with-text-section--cross-sell .image-with-text__button .button:hover {
  color: #f7f4ec;
  background: #173824;
}

.image-with-text-section--cross-sell .image-with-text__button .button:focus-visible {
  outline: 2px solid #214e34;
  outline-offset: 3px;
}

@media (min-width: 750px) and (max-width: 1079px) {
  .image-with-text-section--cross-sell {
    padding-top: 53.76px !important;
    padding-bottom: 53.76px !important;
  }
}

@media (max-width: 749px) {
  .image-with-text-section--cross-sell > .page-width {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 24px;
  }

  .image-with-text-section--cross-sell .image-with-text__image {
    height: 260px;
  }

  .image-with-text-section--cross-sell .image-with-text__heading {
    font-size: 24px;
  }
}

.image-with-text-section--editorial-story {
  display: block !important;
  box-sizing: border-box;
  gap: normal !important;
  flex-direction: row !important;
  justify-content: normal !important;
  align-items: normal !important;
  padding: 96px 20px !important;
  color: #222;
  background: rgba(var(--color-background));
}

.image-with-text-section--editorial-story > .page-width {
  display: grid;
  width: 100%;
  max-width: 1280px;
  padding: 0;
  margin: 0 auto;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 60px;
}

.image-with-text-section--editorial-story .image-with-text__image {
  display: block;
  width: 100%;
  height: 520px;
  overflow: hidden;
  border-radius: 4px;
}

.image-with-text-section--editorial-story .image-with-text__image > img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: 85% center;
}

.image-with-text-section--editorial-story .image-with-text__group {
  display: block;
  width: 100%;
  padding: 0;
}

.image-with-text-section--editorial-story .image-with-text__subheading {
  margin: 0 0 14px;
  color: #214e34;
  font-size: 11px;
  font-weight: 700;
  line-height: 14px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.image-with-text-section--editorial-story .image-with-text__heading {
  margin: 0 0 20px;
  color: #173824;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 38px;
  font-weight: 700;
  line-height: 1.14;
  text-align: left;
}

.image-with-text-section--editorial-story .image-with-text__rich-text {
  width: 100%;
  max-width: none;
  margin: 0;
  color: #3d4c42;
  font-size: 15px;
  line-height: 1.8;
  text-align: left;
}

.image-with-text-section--editorial-story .image-with-text__rich-text p {
  margin: 0 0 16px;
}

.image-with-text-section--editorial-story .image-with-text__rich-text p:last-child {
  margin-bottom: 0;
}

@media (min-width: 750px) and (max-width: 1079px) {
  .image-with-text-section--editorial-story {
    padding-block: 53.76px !important;
  }

  .image-with-text-section--editorial-story > .page-width {
    gap: 38.4px;
  }

  .image-with-text-section--editorial-story .image-with-text__image {
    height: 307.2px;
  }

  .image-with-text-section--editorial-story .image-with-text__heading {
    font-size: 24.576px;
  }
}

@media (max-width: 749px) {
  .image-with-text-section--editorial-story {
    padding-block: 48px !important;
  }

  .image-with-text-section--editorial-story > .page-width {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 28px;
  }

  .image-with-text-section--editorial-story .image-with-text__image {
    height: 300px;
  }

  .image-with-text-section--editorial-story .image-with-text__heading {
    font-size: 24px;
  }
}

/* Cross-sell — large scale (wider gap, taller ivory media, larger type) */
.image-with-text-section--cross-sell-large > .page-width {
  gap: clamp(28px, 5vw, 56px);
}

.image-with-text-section--cross-sell-large .image-with-text__image {
  height: clamp(260px, 34vw, 420px);
  background: #f7f4ec;
}

.image-with-text-section--cross-sell-large .image-with-text__image > img {
  background: #f7f4ec;
}

.image-with-text-section--cross-sell-large .image-with-text__subheading {
  margin-bottom: 16px;
}

.image-with-text-section--cross-sell-large .image-with-text__heading {
  margin: 0 0 18px;
  font-size: clamp(26px, 3.4vw, 42px);
}

.image-with-text-section--cross-sell-large .image-with-text__rich-text {
  max-width: 520px;
  margin: 0 0 26px;
  font-size: 16px;
}

@media (min-width: 750px) and (max-width: 1079px) {
  .image-with-text-section--cross-sell-large {
    padding-top: 61.44px !important;
    padding-bottom: 61.44px !important;
  }
}

@media (max-width: 749px) {
  .image-with-text-section--cross-sell-large > .page-width {
    gap: 28px;
  }

  .image-with-text-section--cross-sell-large .image-with-text__image {
    height: 260px;
  }

  .image-with-text-section--cross-sell-large .image-with-text__heading {
    font-size: 26px;
  }
}
