.team-intro{max-width:670px;color:var(--muted);margin-bottom:28px}
.team-gallery{display:flex;flex-wrap:nowrap;gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;padding:10px 2px 20px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--green) var(--mint)}
.person-card{flex:1 0 0;min-width:0;text-align:center;padding:18px 10px 20px;border-radius:9px;background:#fff;scroll-snap-align:start;transition:background .2s}
.person-card:hover{background:var(--mint)}
.person-card img{width:116px;height:116px;aspect-ratio:1;object-fit:cover;object-position:center 30%;border-radius:50%;margin:0 auto 18px;border:4px solid #fff;outline:1px solid var(--line);box-shadow:0 5px 16px #103b3014;background:var(--mint)}
.person-info{padding:0}
.person-label{color:var(--green);text-transform:uppercase;letter-spacing:.07em;font-size:.75rem;font-weight:700;display:block;margin-bottom:8px}
.person-info h3{font-size:1.05rem;line-height:1.35;letter-spacing:-.015em;margin:0 0 8px;overflow-wrap:break-word}
.person-info p{font-size:.9rem;line-height:1.5;color:var(--muted);margin:0}
@media(max-width:940px){.person-card{flex:0 0 175px}.person-card img{width:104px;height:104px}.team-gallery{gap:12px}}
@media(max-width:660px){.person-card{flex-basis:160px;padding-inline:9px}.person-card img{width:96px;height:96px}.person-info h3{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.person-card{transition:none}}
