.team{position:relative;padding:0 var(--pad-x) 200px;scroll-margin-top:60px}.team-head{width:820px;max-width:100%;margin-bottom:60px}.team-head h2{font-size:clamp(28px,2.708vw,52px);line-height:1.18;font-weight:800;letter-spacing:-1px;margin:0;color:#fff}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,405px));justify-content:center;gap:40px}.team-card{position:relative}.team-photo-wrap{position:relative;width:100%;aspect-ratio:1/1.1;overflow:hidden;cursor:pointer}.team-photo-wrap img{width:100%;height:100%;object-fit:cover;filter:grayscale(15%) contrast(1.05);transition:transform .5s ease}.team-photo-wrap:hover img,.team-photo-wrap:focus-within img{transform:scale(1.06)}.team-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:14px;background:linear-gradient(180deg,rgba(106,69,255,.15),rgba(17,21,28,.92));opacity:0;transform:translateY(12px);transition:opacity .3s ease,transform .3s ease;pointer-events:none}.team-photo-wrap:hover .team-overlay,.team-photo-wrap:focus-within .team-overlay,.team-photo-wrap.is-open .team-overlay{opacity:1;transform:translateY(0);pointer-events:auto}.team-overlay a{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;transition:background .25s ease,transform .25s ease}.team-overlay a:hover,.team-overlay a:focus-visible{background:var(--purple);transform:translateY(-3px)}.team-overlay img{width:18px;height:18px;filter:brightness(0) invert(1)}.team-caption{padding:22px 4px 0}.team-caption h3{font-size:20px;font-weight:700;color:#fff;margin:0 0 6px}.team-caption p{font-size:14px;color:var(--meta);margin:0}@media (max-width:1023.98px){.team{padding-bottom:90px}.team-grid{grid-template-columns:repeat(2,1fr)}.team-photo-wrap{overflow:visible;aspect-ratio:auto;height:auto;cursor:default}.team-photo-wrap img{aspect-ratio:1/1.1;height:auto}.team-overlay{position:static;opacity:1;transform:none;pointer-events:auto;background:0 0;justify-content:flex-start;gap:12px;padding:16px 0 0}.team-overlay a{width:36px;height:36px;background:var(--card)}}@media (max-width:639.98px){.team-grid{grid-template-columns:1fr}}