/* Voices of Healthcare article (page-scoped). Sample, Oct 29 2026.
   One content width for the whole page; 6-photo portrait banner under the title (3 on phones). v3. */
.voices-page .wrap--narrow { max-width: 46rem; }
.voices-hero h1 { margin-bottom: 0.6rem; }
.voices-dek { margin: 0 0 0.35rem; font-size: 1.12rem; line-height: 1.45; color: var(--ink-2); max-width: 40rem; }
.voices-dated { margin: 0; font-size: 0.85rem; color: var(--mute); }
.voices-faces {
  display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px;
  margin: 1.6rem 0 0.25rem; padding: 0; list-style: none;
}
.voices-faces li { margin: 0; min-width: 0; }
.voices-faces a { display: block; color: inherit; text-decoration: none; animation: vf-in .5s ease both; animation-delay: calc(var(--i) * 70ms); }
.voices-faces img {
  display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 20%;
  border-radius: 6px; background: #EEF2FB; box-shadow: 0 0 0 1px rgba(10,10,10,0.10);
  transition: transform .2s ease, box-shadow .2s ease;
}
.voices-faces a:hover img, .voices-faces a:focus-visible img { transform: translateY(-3px); box-shadow: 0 0 0 1px var(--ink), 3px 3px 0 rgba(10,10,10,0.12); }
.voices-faces__name { display: block; margin-top: 0.5rem; font-size: 0.82rem; font-weight: 600; line-height: 1.25; color: var(--ink); }
.voices-faces__org { display: block; margin-top: 0.1rem; font-size: 0.74rem; line-height: 1.3; color: var(--mute); }
@keyframes vf-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.voices-page .voices-entry { scroll-margin-top: 5rem; transition: box-shadow .2s ease, background .2s ease; }
.voices-page .voices-entry:hover { box-shadow: 3px 3px 0 rgba(10,10,10,0.12); }
.voices-page .voices-entry:target { background: #FBFFE0; box-shadow: 3px 3px 0 rgba(10,10,10,0.12); }
.voices-page .voices-entry:nth-child(-n+3) .voices-entry__rank span {
  background: var(--signal); color: var(--ink); padding: 0.1rem 0.3rem; border: 1px solid var(--line);
}
@media (max-width: 640px) {
  .voices-faces { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
  .voices-faces li:nth-child(n+4) { display: none; }
  .voices-page .voices-entry { grid-template-columns: 2.25rem 64px 1fr; gap: 0.75rem; }
  .voices-page .voices-entry .people-photo { width: 64px; height: 64px; }
  .voices-page .voices-entry__body { grid-column: 1 / -1; }
}
@media (prefers-reduced-motion: reduce) {
  .voices-faces a, .voices-faces img { animation: none; transition: none; }
  .voices-page .voices-entry { transition: none; }
}
