/* === Newsroom staff =========================================================
   The photograph is the card: upright portraits in a tight grid, the name and
   the published role beneath. See docs/design-language.md.
   ========================================================================== */

.icrt-staff { padding: 0 0 3rem; }

.icrt-staffgrid {
  list-style: none;
  margin: 2.5rem 0 0;
  padding: 0;
  display: grid;
  gap: 1.75rem 1.25rem;
  grid-template-columns: repeat(auto-fill, minmax(10.5rem, 1fr));
}

@media (min-width: 64rem) {
  .icrt-staffgrid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 2.25rem 1.5rem; }
}

.icrt-person { min-width: 0; text-align: left; }

.icrt-person__shot {
  display: block;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: 12px;
  background: var(--icrt-mist);
}

.icrt-person__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 18%;
  transition: filter .25s ease;
}

.icrt-person:hover .icrt-person__img { filter: brightness(.94); }

.icrt-person__name {
  margin: .75rem 0 0;
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: -0.012em;
  line-height: 1.3;
  color: var(--icrt-ink);
}

.icrt-person__role {
  margin: .2rem 0 0;
  font-size: .875rem;
  line-height: 1.4;
  color: var(--icrt-ink-soft);
}

.icrt-staff__empty { margin: 2rem 0; color: var(--icrt-muted); }

@media (prefers-reduced-motion: reduce) {
  .icrt-person__img { transition: none; }
}
