.case-hero__media { display: block; width: 100%; height: auto; min-height: 0; aspect-ratio: 16 / 9; object-fit: contain; background: #e7e9e8; }
.case-gallery { align-items: start; }
.case-gallery figure { min-height: 0; overflow: hidden; border-radius: 8px; background: #e7e9e8; }
.case-gallery img { display: block; width: 100%; height: auto; }
.case-gallery__large { align-self: center; }
.case-gallery--mosaic { align-items: start; }
.case-text-block--two-column p + p { margin-top: 24px; }
.case-text-block--two-column > div > p { max-width: 720px; color: rgba(0,0,0,.58); font-size: 24px; line-height: 1.45; }
.case-page .logo__text { display: block; }
.case-page .mega-menu { overflow-y: auto; max-height: calc(100svh - 76px); }
@media (max-width: 900px) {
  .case-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
  .case-text-block--two-column, .case-outcome { grid-template-columns: 1fr; }
  .case-text-block--two-column > div > p { font-size: 20px; }
}
@media (max-width: 560px) {
  .case-overview { grid-template-columns: 1fr; }
  .case-text-block--two-column > div > p { font-size: 18px; }
  .case-gallery__large { grid-row: auto; }
  .case-gallery--mosaic figure:nth-child(2) { grid-column: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .reveal { transition: none; }
}
