/* Service illustrations follow the existing corporate palette and type. */
.service-image-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 40px;
}
.service-image-figure { margin: 0; min-width: 0; }
.service-image-figure picture { display: block; aspect-ratio: 4 / 3; overflow: hidden; }
.service-image-figure img { display: block; width: 100%; height: 100%; object-fit: cover; }
.service-image-figure figcaption {
  padding: 16px 0 12px;
  border-bottom: 2px solid var(--brand, #6524c7);
  color: var(--ink, #172132);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.45;
}
.service-image-note, .service-image-caption {
  color: var(--muted, #566171);
  font-size: .875rem;
  line-height: 1.5;
  margin-top: 12px;
}
.about-story-figure picture { display: block; }
.about-story-figure picture img { width: 100%; height: auto; aspect-ratio: auto; }
.ed-hero-figure .service-image-caption { padding: 12px 0 0; }
@media (max-width: 959px) {
  .service-image-gallery { gap: 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-image-figure:last-child { grid-column: 1 / -1; }
  .service-image-figure:last-child picture { aspect-ratio: 16 / 7; }
}
@media (max-width: 599px) {
  .service-image-gallery { grid-template-columns: 1fr; gap: 28px; margin-top: 28px; }
  .service-image-figure:last-child { grid-column: auto; }
  .service-image-figure:last-child picture { aspect-ratio: 4 / 3; }
}
