.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,360px));grid-auto-rows:1fr;justify-content:center;gap:2rem;padding:0 0 3rem}@media(max-width:900px){.people-grid{grid-template-columns:repeat(2,minmax(0,360px))}}@media(max-width:620px){.people-grid{grid-template-columns:minmax(0,360px)}}.team-card{background:var(--bv-card);border-radius:var(--bv-radius);padding:2rem 1.75rem;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s cubic-bezier(.22,1,.36,1);opacity:0;animation:tbvCardIn .55s ease forwards;animation-delay:calc(var(--gi,0) * .06s)}@keyframes tbvCardIn{from{opacity:0}to{opacity:1}}.team-card:hover{transform:translateY(-2px);box-shadow:0 21px 36px -14px rgba(0,0,0,.92),0 0 26px -4px rgba(255,70,85,.3)}.team-card-photo{position:relative;width:140px;height:140px;border-radius:14px;background:linear-gradient(rgba(0,0,0,.15),rgba(0,0,0,.4)),var(--team-colour,#1a1a1a);display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:1.5rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1),0 18px 42px -12px var(--team-colour,#000);transition:transform .5s cubic-bezier(.22,1,.36,1)}.team-card-photo img{width:100%;height:100%;object-fit:cover}.team-card-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.14) 50%,transparent 58%);transform:translateX(-130%);pointer-events:none}.team-card:hover .team-card-photo{transform:scale(1.04)}.team-card:hover .team-card-photo::after{transform:translateX(130%);transition:transform .75s ease}@media(prefers-reduced-motion:reduce){.team-card{opacity:1;animation:none}.team-card:hover{transform:none}.team-card:hover .team-card-photo{transform:none}.team-card-photo::after{display:none}}.team-card-initial{font-size:3.25rem;font-weight:700;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6)}.team-card-name{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:.35rem;word-break:break-word}.team-card-meta{font-size:.8125rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--bv-fg-70);margin-bottom:1.5rem}.team-roster{list-style:none;width:100%;border-top:1px solid var(--bv-line-soft)}.team-roster-member{display:flex;align-items:center;gap:.5rem;padding:.62rem .6rem;border-bottom:1px solid rgba(255,255,255,5%);font-size:1rem;font-weight:400;color:rgba(255,255,255,.82)}.team-roster-member.is-captain{color:#fff;font-weight:600;background:linear-gradient(90deg,rgba(196,30,42,.18),rgba(196,30,42,3%));border-radius:5px;border-bottom-color:transparent}.member-marker{width:18px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.captain-crown{color:var(--bv-red);transform:translateY(2px)}.member-name{min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit;text-decoration:none;transition:color 160ms ease,text-shadow 160ms ease}.member-name:hover,.member-name:focus-visible{color:#ffb3b8;text-shadow:0 0 12px rgba(196,30,42,.75)}.member-name:focus-visible{outline:2px solid var(--bv-red);outline-offset:4px;border-radius:2px}.captain-tag{margin-left:auto;font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--bv-red-text);border:1px solid var(--bv-red-50);border-radius:3px;padding:.15rem .4rem;flex-shrink:0}.people-empty{max-width:520px;margin:0 auto;padding:2.5rem 2rem;text-align:center;background:var(--bv-card);border-radius:var(--bv-radius)}.people-empty p{font-size:.9rem;font-weight:400;line-height:1.7;color:var(--bv-text-faint)}
