/* Team directory and biographies */
.team-intro { max-width: 1320px; padding-bottom: 30px; }
.team-intro > p { max-width: 940px; }
.team-directory { padding-block: 12px 64px; }
.team-directory > h2 { font-size: 32px; margin-bottom: 32px; }
.team-section-lead { max-width: 940px; margin-bottom: 32px; }
.team-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 46px 42px; }
.team-member { min-width: 0; }
.team-portrait-link { display: block; width: 168px; margin-bottom: 21px; }
.team-portrait-link img { width: 168px; height: 168px; border-radius: 50%; object-fit: cover; }
.team-member h3 { font-size: 24px; margin-bottom: 9px; }
.team-member h3 a { text-decoration: none; color: var(--ink); }
.team-member h3 a:hover { color: var(--accent); }
.team-specialty { color: var(--accent); font-weight: 700; font-size: 14px; margin-bottom: 12px; }
.team-member > p:not(.team-specialty) { font-size: 16px; max-width: 330px; margin-bottom: 14px; }
.team-bio-link { font-size: 15px; font-weight: 700; }
.team-bio-link span { margin-left: 7px; }
.profile-intro { display: grid; grid-template-columns: 220px minmax(0, 1fr); align-items: center; gap: 42px; padding-block: 10px 24px; }
.profile-portrait { width: 220px; height: 220px; object-fit: cover; border-radius: 50%; }
.profile-intro h1 { max-width: 900px; }
.profile-intro .article-lead { max-width: 740px; margin-bottom: 0; }
.profile-body section { max-width: 940px; }
.profile-back { margin-top: 36px; }
@media (max-width: 900px) {
    .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 38px 30px; }
}
@media (max-width: 560px) {
    .team-grid { grid-template-columns: 1fr; gap: 38px; }
    .team-portrait-link, .team-portrait-link img { width: 140px; height: 140px; }
    .team-member > p:not(.team-specialty) { max-width: 100%; }
    .profile-intro { grid-template-columns: 1fr; gap: 24px; }
    .profile-portrait { width: 170px; height: 170px; }
    .profile-intro h1 { font-size: 34px; }
}
