.page-heading .about-heading-links {
    display: flex;
    align-items: center;
    gap: clamp(8px, 2vw, 16px);
    margin-bottom: 10px;
}
.page-heading .about-heading-links .text-link {
    flex: 0 0 auto;
    border-left: 1px solid var(--line);
    padding: 5px 0 5px clamp(8px, 2vw, 16px);
    letter-spacing: normal;
    white-space: nowrap;
}
.team-about-link { margin-bottom: 10px; }
.team-group + .team-group { margin-top: 32px; }
.team-group h2 { font-size: clamp(19px, 2vw, 24px); margin-bottom: 15px; }
.team-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); gap: 18px; }
.team-card { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: white; color: inherit; max-width: 254px; }
.team-card:hover, .team-card:focus-visible { border-color: var(--blue); box-shadow: 0 8px 24px #10294013; }
.team-card-photo, .team-card-placeholder { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 30%; background: #e8eef4; }
.team-card-placeholder { display: grid; place-items: center; color: #4d627a; }
.team-card-placeholder svg { width: 42px; height: 42px; }
.team-card-info { display: flex; flex: 1; flex-direction: column; padding: 15px; }
.team-card-info strong { font-size: 17px; }
.team-card-info p { margin: 4px 0 12px; font-size: 13px; line-height: 1.45; }
.team-card-summary { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.team-card-info .text-link { margin-top: auto; padding-top: 8px; }
.detail-grid > img.team-profile-photo { max-width: 400px; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
@media (max-width: 600px) {
    .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .team-card-info { padding: 11px; }
}
