/* A pinned, non-interactive chess tableau, controlled by the team names. */
.home-about .team-scroll{--team-top:94px;--team-stage-height:min(850px,calc(100svh - 114px));position:relative;width:min(1440px,94vw);max-width:none;margin:0 calc((100% - min(1440px,94vw))/2) clamp(72px,8vw,120px);padding:0;scroll-margin-top:94px}
.team-scroll[data-enhanced]{height:calc(var(--team-stage-height) + 80svh)}
.team-sticky{position:sticky;top:var(--team-top);height:var(--team-stage-height);min-height:520px;display:flex;flex-direction:column;align-items:center;isolation:auto}
.team-bio{position:relative;display:flex;align-items:center;justify-content:center;width:min(390px,calc(100% - 360px));min-height:190px;flex:none;padding:8px 0 12px;z-index:24}
.team-bio-copy{min-width:0;width:100%}
.team-featured-slot{position:absolute;right:calc(100% + 32px);top:50%;translate:0 -50%;height:210px;width:164px;pointer-events:none}
.team-scroll[data-featured-side=right] .team-featured-slot{right:auto;left:calc(100% + 32px)}
.team-featured-fallback{display:block;width:100%;height:100%;object-fit:contain}
.team-scroll .team-role-title{font:300 clamp(26px,2.7vw,40px)/1.08 'FAIRE Octave Trial Variable',serif;font-variation-settings:'wght' 300,'opsz' 12;font-feature-settings:'dlig' 1,'ss01' 1,'ss06' 1,'ss11' 1,'ss14' 1;text-transform:uppercase;letter-spacing:0;text-wrap:balance;margin:0 0 18px;text-align:center}
.home-about .team-scroll .audience-messages{display:grid;margin:0}
.home-about .team-scroll .audience-panel{grid-area:1/1;align-self:center}
.home-about .team-scroll .audience-panel[aria-hidden=true]{display:none}
.octave-home .home-about .team-scroll .audience-panel p{font:300 16px/1.5 'ABC Oracle',Arial,sans-serif;text-align:center;max-width:42ch;margin:0 auto;text-wrap:pretty}
.home-about .team-scroll .audience-panel p+p{margin-top:10px}
.team-toolbar{--team-control-size:46px;display:grid;grid-template-columns:var(--team-control-size) minmax(0,1fr) var(--team-control-size);align-items:center;gap:12px;width:min(100%,980px);position:relative;z-index:24;flex:none;margin:4px 0 4px}
.home-about .team-scroll .audience-tabs{display:flex;align-items:center;position:relative;isolation:isolate;gap:4px;height:var(--team-control-size);width:100%;max-width:none;min-width:0;padding:4px;margin:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:999px;background:color-mix(in srgb,var(--ink) 5%,transparent)}
.team-scroll .audience-tabs::-webkit-scrollbar{display:none}
.home-about .team-scroll .audience-tab{display:flex;align-items:center;justify-content:center;flex:1 0 auto;min-height:0;height:36px;padding:0 14px;border:1px solid color-mix(in srgb,var(--ink) 9%,transparent);border-radius:999px;opacity:1;background:color-mix(in srgb,var(--paper) 55%,transparent);font:300 13px/1 'ABC Oracle',Arial,sans-serif;white-space:nowrap;color:var(--ink)}
.home-about .team-scroll .audience-tab[aria-selected=true]{background:color-mix(in srgb,var(--ink) 12%,var(--paper))}
.team-scroll .audience-selection-pill{display:none}
.team-arrow{display:grid;place-items:center;width:var(--team-control-size);height:var(--team-control-size);padding:0;border:0;border-radius:50%;color:var(--ink);background:color-mix(in srgb,var(--ink) 8%,transparent);cursor:pointer;touch-action:manipulation}
.team-arrow svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.team-arrow:hover{background:color-mix(in srgb,var(--ink) 14%,transparent)}
.team-arrow:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.team-board-space{position:relative;flex:1;width:100%;min-height:220px;pointer-events:none}
.team-scene{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.team-scene canvas{display:block;width:100%;height:100%;pointer-events:none;touch-action:pan-y}
.team-board-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center top;pointer-events:none}
.team-scene-ready :is(.team-board-fallback,.team-featured-fallback){visibility:hidden}
@media(min-width:1500px){.team-bio{min-height:200px;width:420px}.team-featured-slot{height:220px;width:180px}.team-toolbar{width:min(100%,1050px)}}
@media(max-width:700px){
 .home-about .team-scroll{--team-top:88px;--team-stage-height:calc(100svh - 108px);width:calc(100vw - 28px);margin-inline:calc((100% - (100vw - 28px))/2);scroll-margin-top:88px}
 .team-bio{width:min(350px,calc(100vw - 164px));min-height:180px;padding:8px 0 10px}
 .team-featured-slot{height:150px;width:76px;right:calc(100% + 4px)}
 .team-scroll[data-featured-side=right] .team-featured-slot{left:calc(100% + 4px)}
 .team-scroll .team-role-title{font-size:clamp(20px,6vw,27px);margin-bottom:14px}
 .octave-home .home-about .team-scroll .audience-panel p{font-size:14px;line-height:1.5}
 .team-toolbar{--team-control-size:44px;gap:6px;margin:4px 0 0}
 .home-about .team-scroll .audience-tabs{padding:3px}
 .home-about .team-scroll .audience-tab{height:36px;font-size:12px;padding-inline:12px}
}
/* Short screens and reduced motion retain the complete, usable composition. */
@media(max-height:650px),(prefers-reduced-motion:reduce){
 .team-scroll[data-enhanced]{height:auto}
 .team-sticky{position:relative;top:auto;height:660px}
}
@media(max-width:700px) and (max-height:650px){.team-sticky{height:620px}}
@media(prefers-reduced-motion:reduce){.team-scroll *{animation:none!important;transition:none!important}}

/* The process canvas stays attached to its original element throughout. */
.work-board-scene queen-scene.process-team-travelling{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:12;pointer-events:none!important;cursor:default!important;overflow:hidden}
.work-board-scene queen-scene.process-team-travelling *{pointer-events:none!important}
.board-has-travelled .work-board-hint{opacity:0}
/* Mobile follows the hero bio: piece left, title and copy aligned on the right. */
@media(max-width:700px){
 .team-bio{width:calc(100% - 90px);margin-left:90px}
 .team-featured-slot,.team-scroll[data-featured-side=right] .team-featured-slot{left:auto;right:calc(100% + 8px)}
 .team-scroll .team-role-title{text-align:left;text-wrap:pretty}
 .octave-home .home-about .team-scroll .audience-panel p{text-align:left;margin-inline:0}
}
/* Centre the complete tableau within the pinned viewport. */
.team-sticky{justify-content:center}
.team-board-space{flex:0 0 auto;height:min(38vw,430px);min-height:220px}
@media(max-width:700px){
 .team-board-space{height:clamp(190px,52vw,350px);min-height:190px}
 .team-bio{width:calc(100% - 120px);max-width:370px;margin-left:120px;min-height:180px}
 .team-featured-slot,.team-scroll[data-featured-side=right] .team-featured-slot{right:calc(100% + 22px);width:90px;height:165px}
}
.team-scroll .team-role-title{text-align:left;text-wrap:pretty}
.octave-home .home-about .team-scroll .audience-panel p{text-align:left;margin-inline:0}
