.project-explorer{--project-accent:#8eb0ff}
.project-explorer [hidden]{display:none!important}
.project-explorer .journey-view{isolation:isolate}
.explorer-toolbar{position:sticky;top:88px;z-index:30;background:var(--black);padding:25px var(--margin) 0}
.project-switcher-heading{display:flex;justify-content:space-between;gap:25px;margin-bottom:14px;color:#aab2c2}
.project-switcher-heading .caption{font-size:9px}
.project-switcher{display:flex;gap:10px;border-bottom:1px solid #ffffff2b;padding-bottom:17px}
.project-switcher [role=tab]{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;flex:1;border:1px solid #ffffff38;padding:10px 18px;font:16px/1.2 var(--display);color:#c4c9d3;text-align:left;transition:background .25s,color .25s,border-color .25s}
.project-switcher [role=tab]:hover{border-color:#91b5ff;color:white}
.project-switcher [aria-selected=true]{background:#dce6ff;color:#12203e;border-color:#dce6ff}
.project-tab-number{font:9px Consolas,monospace;opacity:.65}
.project-tab-arrow{margin-left:auto;font-size:19px}
.project-explorer .journey-nav{position:relative;inset:auto;padding:27px 0 18px;gap:25px;z-index:auto}
.project-explorer .journey-line{top:20px;left:0;right:0}
.project-explorer .journey-nav a{padding-top:12px;font-size:12px;display:flex;align-items:baseline;gap:12px;line-height:1.4}
.project-explorer .journey-nav b{font:9px Consolas,monospace;margin-bottom:0;color:#8895ad}
.project-explorer .journey-node{top:-10px}
.project-explorer .journey-nav [aria-current=step]{color:#c9d9ff}
.project-explorer .journey-nav a>span:last-child{display:block}
.project-explorer .journey-event{grid-template-columns:.9fr 1.4fr;gap:6%;padding-top:65px;padding-bottom:100px;min-height:85svh;scroll-margin-top:270px}
.project-explorer .event-copy>.caption{font-size:9px;line-height:1.5;margin-bottom:20px}
.project-explorer .event-copy h2{font-size:clamp(36px,3.6vw,64px);line-height:1.05;margin-bottom:16px;letter-spacing:-.05em}
.project-explorer .event-state{font-size:9px;margin-bottom:22px}
.project-explorer .event-copy h3{font-size:clamp(27px,3vw,48px);line-height:1.12;margin-bottom:18px}
.project-explorer .event-copy>p:not(.caption){font-size:14px;line-height:1.75;max-width:410px}
.project-explorer .event-copy .action-link{font-size:12px;margin-top:24px}
.project-explorer .project-screen img{max-height:70vh;object-fit:contain;background:#101114}
.project-explorer .project-screen>.caption{font-size:9px;line-height:1.5;margin-top:15px}
.timeline-voice{background:#e7ebdd;color:#1d3224;padding:20px 25px 12px}
.timeline-voice .voice-stage{min-height:260px}
.timeline-voice .parrot{width:260px}
.timeline-voice .voice-stamp{display:none}
.timeline-voice .voice-notice{font-size:10px}
.timeline-voice .voice-console .control{font-size:10px;padding:10px 12px}
.project-explorer .journey-direction{display:flex;align-items:center;justify-content:space-between;gap:30px;position:sticky;bottom:0;background:var(--black);padding:18px var(--margin);z-index:25}
.journey-scroll-hint{font-size:8px;color:#9ba7bd}
.journey-step-controls{display:flex;align-items:center;gap:20px}
.journey-step-controls button{width:42px;height:42px;border:1px solid #ffffff55;display:grid;place-items:center;font-size:21px;transition:background .2s}
.journey-step-controls button:hover:not(:disabled){background:#264483}
.journey-step-controls button:disabled{opacity:.25;cursor:default}
.journey-position{font-size:10px;min-width:55px;text-align:center}
.project-explorer.journey-pinned .explorer-toolbar{position:absolute;top:87px;left:0;right:0;padding-top:12px}
.project-explorer.journey-pinned .journey-nav{position:relative;top:auto;left:auto;right:auto;padding-top:27px}
.project-explorer.journey-pinned .project-timeline,.project-explorer.journey-pinned .journey-scenes{height:100%}
.project-explorer.journey-pinned .journey-event{height:100svh;min-height:0;padding-top:275px;padding-bottom:90px;border:0}
.project-explorer.journey-pinned .event-copy h2{font-size:clamp(36px,3.4vw,60px);margin-bottom:14px}
.project-explorer.journey-pinned .event-copy>.caption{margin-bottom:16px}
.project-explorer.journey-pinned .event-copy h3{font-size:clamp(25px,2.7vw,42px);margin-bottom:14px}
.project-explorer.journey-pinned .event-copy>p:not(.caption){font-size:13px}
.project-explorer.journey-pinned .event-state{margin-bottom:18px}
.project-explorer.journey-pinned .event-copy .action-link{margin-top:18px}
.project-explorer.journey-pinned .project-screen img{max-height:calc(100svh - 335px)}
.project-explorer.journey-pinned .journey-direction{position:absolute;bottom:0;left:0;right:0;padding-top:8px;padding-bottom:15px}
@media(max-width:899px){
 .explorer-toolbar{top:80px;padding-top:18px}
 .project-switcher-heading .caption{font-size:8px}
 .project-switcher-heading>span:last-child{display:none}
 .project-switcher{gap:6px;padding-bottom:15px}
 .project-switcher [role=tab]{font-size:12px;gap:7px;padding:12px 8px;justify-content:center;min-height:44px}
 .project-tab-number,.project-tab-arrow{display:none}
 .project-explorer .journey-nav{padding-top:25px;padding-bottom:16px;gap:14px}
 .project-explorer .journey-nav a{display:block;font-size:10px;line-height:1.4;min-width:0}
 .project-explorer .journey-nav b{font-size:8px;margin-bottom:5px}
 .project-explorer .journey-event{display:flex;flex-direction:column;gap:35px;align-items:stretch;min-height:0;padding-top:50px;padding-bottom:65px;scroll-margin-top:265px}
 .project-explorer .event-copy h2{font-size:37px;margin-bottom:16px}
 .project-explorer .event-copy h3{font-size:29px}
 .project-explorer .event-copy>p:not(.caption){font-size:13px;line-height:1.75}
 .project-explorer .event-copy .action-link{margin-top:20px}
 .project-explorer .project-screen img{max-height:75vh}
 .project-explorer .project-screen>.caption{font-size:8px}
 .timeline-voice{padding:15px}
 .timeline-voice .voice-stage{min-height:250px}
 .timeline-voice .parrot{width:250px}
 .timeline-voice .voice-console{gap:6px}
 .timeline-voice .voice-console .control{font-size:9px;padding:10px;gap:8px}
 .timeline-voice .voice-notice{font-size:9px}
 .project-explorer .journey-direction{gap:15px;padding-top:10px;padding-bottom:10px;border-top:1px solid #ffffff22}
 .journey-scroll-hint{font-size:7px;max-width:100px;line-height:1.6}
 .journey-step-controls{gap:12px}
 .journey-step-controls button{width:38px;height:38px}
 .journey-position{font-size:9px;min-width:42px}
}
@media(prefers-reduced-motion:reduce){.project-switcher [role=tab],.journey-step-controls button{transition:none}}
