.ap-team{--team-gutter:2.5vw;position:relative;background:var(--white);color:var(--anthracite);overflow:hidden}
.ap-team-scene{padding:2rem 0 6rem}
.ap-team-scene>.container{width:auto;max-width:none;margin:0 var(--team-gutter)}
.ap-team-heading{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #383e4230;padding-top:1rem;margin-bottom:clamp(5rem,8vw,10rem)}
.ap-team-heading h2{display:flex;align-items:center;gap:.9rem;margin:0;font:500 .85rem/1.4 var(--body);text-transform:uppercase;letter-spacing:.16em}
.ap-team-heading h2:before{content:'';width:7px;height:7px;background:currentColor;transform:rotate(45deg)}
.ap-team-controls{display:flex;gap:.65rem}
.ap-team-controls button{display:grid;place-items:center;width:clamp(48px,3.2vw,66px);height:clamp(48px,3.2vw,66px);border:1px solid #383e4230;background:none;color:inherit;font:normal 1.5rem var(--body);cursor:pointer;transition:background .3s,color .3s}
.ap-team-controls button:hover:not(:disabled){background:var(--anthracite);color:var(--white)}
.ap-team-controls button:focus-visible,.ap-team-viewport:focus-visible{outline:2px solid var(--anthracite);outline-offset:4px}
.ap-team-controls button:disabled{opacity:.3;cursor:default}
.ap-team-viewport{margin-right:calc(-1 * var(--team-gutter));overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;touch-action:pan-x pan-y;overscroll-behavior-x:contain}
.ap-team-viewport::-webkit-scrollbar{display:none}
.ap-team-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.ap-team-track{display:flex;align-items:flex-start;gap:1.25vw;list-style:none;margin:0;padding:0 var(--team-gutter) 0 0}
.ap-team-card{flex:0 0 31vw;min-width:0;scroll-snap-align:start}
.ap-team-card:nth-child(even){flex-basis:39vw}
.ap-team-portrait{position:relative;aspect-ratio:3/4;margin:0;background:var(--anthracite);overflow:hidden}
.ap-team-card:nth-child(even) .ap-team-portrait{aspect-ratio:1.15}
.about-page .ap-team-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:grayscale(1);transition:transform 1.2s cubic-bezier(.22,1,.36,1);pointer-events:none}
.ap-team-card:hover img{transform:scale(1.035)}
.ap-team-info{padding:1.4rem 0 2rem}
.ap-team-info h3{font:normal clamp(1.5rem,2.2vw,2.7rem)/1.15 var(--display);letter-spacing:-.025em;margin:0 0 .7rem}
.ap-team-info>p{font-size:.7rem;line-height:1.6;margin:0 0 .4rem}
.ap-team-info>span{font-size:.65rem;color:#62696e;line-height:1.5}
.ap-team-initial{display:grid;place-items:center;width:100%;height:100%;font:normal 8rem var(--display);color:var(--white)}
.ap-team-bottom{display:flex;align-items:center;gap:2rem;margin-top:3rem;font-size:.55rem;letter-spacing:.12em;line-height:1.7}
.ap-team-bottom>span:last-child{white-space:nowrap}
.ap-team-progress{flex:1;height:1px;background:#383e4230}
.ap-team-progress>span{display:block;height:100%;background:var(--anthracite);transform:scaleX(var(--team-progress,0));transform-origin:left}
.ap-team-intro{max-width:30rem;margin:2.5rem 0 0 auto;font-size:.85rem;line-height:1.9}
.ap-team.is-revealing .ap-team-portrait{animation:team-reveal 1.2s cubic-bezier(.22,1,.36,1) both}
.ap-team.is-revealing .ap-team-card:nth-child(2) .ap-team-portrait{animation-delay:.12s}
.ap-team.is-revealing .ap-team-card:nth-child(3) .ap-team-portrait{animation-delay:.24s}
@keyframes team-reveal{from{clip-path:inset(18% 0 0);transform:translateY(40px);opacity:.3}to{clip-path:inset(0);transform:translateY(0);opacity:1}}
@media(max-width:63.99rem){.ap-team{--team-gutter:4vw}.ap-team-card{flex-basis:55vw}.ap-team-card:nth-child(even){flex-basis:65vw}.ap-team-track{gap:3vw}.ap-team-heading{margin-bottom:5rem}}
@media(max-width:39.99rem){.ap-team-scene{padding-bottom:4rem}.ap-team-card,.ap-team-card:nth-child(even){flex-basis:78vw}.ap-team-card:nth-child(even) .ap-team-portrait{aspect-ratio:3/4}.ap-team-heading h2{font-size:.7rem}.ap-team-heading{margin-bottom:4rem}.ap-team-controls button{width:44px;height:44px}.ap-team-bottom{gap:1rem;margin-top:1rem;font-size:.45rem}.ap-team-intro{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){.ap-team-controls button,.ap-team-portrait img{transition:none}.ap-team-card:hover img{transform:none}.ap-team.is-revealing .ap-team-portrait{animation:none}}
