
.team-section{background:#f5f7f3;scroll-margin-top:100px}
.team-group{margin:0 0 40px}.team-group img{display:block;width:100%;height:auto;max-height:620px;object-fit:cover;object-position:50% 57%;border-radius:4px}
.team-group figcaption{font-size:.875rem;line-height:1.5;color:#4f6864;padding-top:12px}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.team-member{display:flex;flex-direction:column;padding:28px;background:#fff;border-top:3px solid #007179;scroll-margin-top:110px}
.team-member-heading{display:block}
.team-member h3{font-size:1.4rem;line-height:1.2;margin:0 0 8px;letter-spacing:-.025em}
.team-role{font-size:.9rem;line-height:1.5;color:#007179;margin:0;font-weight:600}
.team-member .team-bio{font-size:1rem;line-height:1.7;margin:20px 0 24px;color:#36534f}
.team-portrait{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;border-radius:4px;background:#eef1eb;margin:0 0 22px}
.team-link{align-self:flex-start;margin-top:auto;font-size:.9rem;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.team-link:focus-visible{outline:2px solid #007179;outline-offset:6px}
@media(max-width:1000px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.team-grid{grid-template-columns:1fr;gap:16px}.team-member{padding:24px}.team-group{margin-bottom:24px}.team-group img{max-height:none;object-fit:contain}.team-member-heading{min-height:0}}
