/* Connected, alternating portraits inspired by the supplied circular chain. */
.team-chain{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 0;list-style:none;margin:48px 0 0;padding:0}
.team-link-person{--team-color:#52b3a2;--team-phase:0deg;position:relative;min-width:0;display:grid;grid-template-rows:minmax(132px,auto) 168px minmax(132px,auto);align-items:center}
.team-link-person:nth-child(4n+2){--team-color:#dca34a;--team-phase:180deg}
.team-link-person:nth-child(4n+3){--team-color:#5b9cc9}
.team-link-person:nth-child(4n){--team-color:#a878c1;--team-phase:180deg}
.team-link-person:nth-child(5){--team-color:#ce769c}
.team-link-person:nth-child(6){--team-color:#67a795}
.team-link-person:nth-child(7){--team-color:#748fcb}
.team-link-person:nth-child(8){--team-color:#d39460}
.team-link-person:not(:nth-child(4n))::after{content:'';position:absolute;left:calc(50% + 78px);width:calc(100% - 156px);top:calc(50% - 4px);height:8px;background:linear-gradient(90deg,var(--team-color),var(--border));border-radius:10px}
.team-link-portrait{grid-row:2;position:relative;width:168px;height:168px;justify-self:center;isolation:isolate}
.team-link-track{position:absolute;inset:6px;border:8px solid var(--border);border-radius:50%}
.team-link-spinner{position:absolute;inset:0;color:var(--team-color);animation:team-link-turn 16s linear infinite;transform:rotate(var(--team-phase));z-index:2;pointer-events:none}
.team-link-spinner svg{width:100%;height:100%;display:block;overflow:visible}
.team-link-photo{position:absolute;inset:24px;overflow:hidden;border-radius:50%;background:var(--bg-tertiary);border:4px solid var(--bg-primary);box-shadow:0 4px 18px #102c4815}
.team-link-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:none!important;transform:none!important}
.team-link-caption{grid-row:3;text-align:center;align-self:start;padding:19px 18px 0;position:relative;z-index:3}
.team-link-person:nth-child(even) .team-link-caption{grid-row:1;align-self:end;padding:0 18px 19px}
.team-link-caption h3{font-size:1rem;line-height:1.35;letter-spacing:-.02em;color:var(--text-primary);margin:0 0 7px}
.team-link-role{display:block;font-size:.72rem;line-height:1.5;color:var(--team-color);max-width:220px;margin-inline:auto}
.team-link-bio{font-size:.75rem;margin-top:10px;position:relative}
.team-link-bio summary{cursor:pointer;display:inline-block;color:var(--text-secondary);border-bottom:1px solid var(--border);font-size:.68rem;padding-bottom:2px}
.team-link-bio summary:hover{color:var(--team-color)}
.team-link-bio summary:focus-visible{outline:2px solid var(--team-color);outline-offset:5px}
.team-link-bio p{line-height:1.7;padding:15px;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);position:absolute;top:100%;left:0;width:100%;min-width:180px;text-align:left;box-shadow:0 12px 25px #102c4820;z-index:5}
.team-link-person:nth-child(even) .team-link-bio p{top:auto;bottom:calc(100% + 8px)}
.team-link-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@keyframes team-link-turn{from{transform:rotate(var(--team-phase))}to{transform:rotate(calc(var(--team-phase) + 360deg))}}
@media(max-width:1000px){.team-link-caption{padding-inline:10px}.team-link-person:nth-child(even) .team-link-caption{padding-inline:10px}.team-link-portrait{width:150px;height:150px}.team-link-person{grid-template-rows:140px 150px 140px}.team-link-person:not(:nth-child(4n))::after{left:calc(50% + 70px);width:calc(100% - 140px)}}
@media(max-width:700px){
 .team-chain{grid-template-columns:1fr;gap:26px;margin-top:32px}
 .team-link-person{display:grid;grid-template-columns:132px minmax(0,1fr);grid-template-rows:auto;column-gap:20px;align-items:center}
 .team-link-portrait{grid-column:1;grid-row:1;width:132px;height:132px}
 .team-link-caption,.team-link-person:nth-child(even) .team-link-caption{grid-column:2;grid-row:1;text-align:left;padding:0;align-self:center}
 .team-link-role{margin:0}
 .team-link-person:not(:nth-child(4n))::after,.team-link-person::after{display:none}
 .team-link-person:not(:last-child)::before{content:'';position:absolute;left:62px;top:calc(100% - 4px);width:7px;height:34px;border-radius:7px;background:linear-gradient(var(--team-color),var(--border))}
 .team-link-photo{inset:21px;border-width:3px}
 .team-link-bio p,.team-link-person:nth-child(even) .team-link-bio p{position:static;min-width:0;margin-top:10px;width:auto}
 .team-link-caption h3{font-size:.95rem}
}
@media(max-width:370px){.team-link-person{grid-template-columns:112px minmax(0,1fr);gap:14px}.team-link-portrait{width:112px;height:112px}.team-link-person:not(:last-child)::before{left:53px}.team-link-photo{inset:19px}}
@media(prefers-reduced-motion:reduce){.team-link-spinner{animation:none}}
