/* Curated industry sections with exactly two stories use the full row. */
.industryCaseGridTwo {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.archiveMeta span a {
  color: inherit;
  text-decoration: none;
}

.archiveMeta span a:hover,
.archiveMeta span a:focus-visible {
  text-decoration: underline;
}

.caseArchivePagination {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 28px;
}

.caseArchivePagination a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(84, 46, 145, .2);
  border-radius: 50%;
  color: var(--core-blue);
  font-weight: 700;
}

.caseArchivePagination a[aria-current="page"],
.caseArchivePagination a:hover,
.caseArchivePagination a:focus-visible {
  background: var(--core-blue);
  color: #fff;
}

@media (max-width: 767px) {
  .industryCaseGridTwo {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Four construction proofs read as two balanced pairs on wide screens. */
.industryCaseGridFour {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 767px) {
  .industryCaseGridFour {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Case-study hero rhythm: concise headlines and decks remain readable on mobile. */
.caseDetailHero .sectionHead {
  margin-bottom: 0;
}

.caseDetailHero .sectionHead .sp {
  margin-bottom: 18px;
}

.caseDetailHero .sectionHead h1 {
  overflow-wrap: normal;
  text-wrap: balance;
}

/* Show the full case-study illustration in narrower desktop hero columns. */
.storyIntroSection .caseDetailHeroMedia img {
  width: 100%;
  height: auto;
  min-height: 0;
  object-fit: contain;
}

@media (max-width: 767px) {
  .caseDetailHero .sectionHead h1 {
    font-size: clamp(28px, 7.7vw, 32px);
    line-height: 1.14;
  }

  .caseDetailHero .sectionHead p {
    font-size: 15px;
    line-height: 1.7;
  }
}

/* Preserve the artwork's aspect ratio when copy needs more vertical space. */
@media (max-width: 1599px) {
  .caseDetailSolutionSplit {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

  .caseDetailSolutionMedia,
  .caseDetailSolutionCopy {
    width: 100%;
    max-width: 800px;
    margin-inline: auto;
  }

  .caseDetailSolutionCopy p {
    max-width: none;
  }
}
