.team-section { background: #fff; }
.team-section .section-heading { align-items: end; }
.team-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; align-items:stretch; }
.team-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 24px; background: #fff; }
.team-card .team-portrait { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 25%; background: var(--light-blue); }
.team-card-copy { padding: 28px; }
.team-card h4 { margin: 0; font-size: clamp(1.3rem, 2vw, 1.7rem); line-height: 1.2; }
@media(min-width:641px){.team-card h4{min-height:2.4em}}
body[data-area="child"] .value-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
body[data-area="child"] .value-grid .blue-card { transform: none; }
body[data-area="child"] .value-grid .value-copy { justify-content: flex-start; }
.value-card.educators-card { grid-column: 1 / -1; }
.educators-card .value-copy { justify-content: flex-start; min-height: 0; }
.educators-card .value-copy > p { max-width: 760px; margin: 0 0 28px; }
.educators-card .team-card p { max-width: none; }
@media (max-width: 960px) { body[data-area="child"] .value-grid { grid-template-columns: 1fr; } }
.team-role { margin: 10px 0 0; font-weight: 600; color: var(--navy); }
.team-bio { margin: 18px 0 0; line-height: 1.65; }
.team-details{margin-top:18px}
.team-details summary{display:flex;align-items:center;gap:18px;min-height:44px;cursor:pointer;list-style:none;line-height:1.6}
.team-details summary::-webkit-details-marker{display:none}
.team-preview{flex:1;min-width:0}
.team-chevron{width:10px;height:10px;flex:0 0 10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-right:4px;transition:transform .2s}
.team-collapse{display:none;flex:1}
.team-details[open] .team-preview{display:none}
.team-details[open] .team-collapse{display:block}
.team-details[open] .team-chevron{transform:rotate(225deg)}
.team-details summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px;border-radius:6px}
@media(prefers-reduced-motion:reduce){.team-chevron{transition:none}}
.team-contacts { display: grid; gap: 8px; margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--line); font-style: normal; }
.team-contacts a { display: block; min-height: 44px; padding: 7px 0; overflow-wrap: anywhere; text-underline-offset: 4px; }
.team-contacts span { display: block; margin-bottom: 4px; font-size: .8rem; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; }
@media (max-width: 960px) { .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .team-grid { grid-template-columns: 1fr; gap: 24px; } .team-card-copy { padding: 24px; } }
@media print { .team-card { break-inside: avoid; } }
