.bsflow{display:flex;align-items:stretch;justify-content:center;gap:4px;flex-wrap:nowrap;margin:26px 0 10px}
.bsnode{text-align:center;flex:0 1 168px;min-width:120px;display:flex;flex-direction:column;justify-content:flex-end}
.bsnode img{width:100%;max-width:150px;margin:0 auto 10px;display:block;filter:drop-shadow(0 8px 18px rgba(0,0,0,.45))}
.bsnode b{display:block;font-family:var(--mono);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--white)}
.bsnode span{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--steel);margin-top:4px;line-height:1.45}
.bsedge{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 auto;min-width:64px;padding-bottom:34px}
.bsedge img{width:52px;height:52px;object-fit:contain;margin-bottom:4px}
.bsedge .ar{font-size:22px;line-height:1;color:var(--steel)}
.bsedge.hot .ar{color:var(--red)}
.bsedge em{font-style:normal;font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel);margin-top:3px;max-width:86px;text-align:center;line-height:1.4}
@media(max-width:760px){
 .bsflow{flex-direction:column;align-items:center;gap:2px}
 .bsnode{flex-basis:auto}
 .bsedge{padding-bottom:0;min-width:0}
 .bsedge .ar{transform:rotate(90deg)}
}

/* flow line animation */
.fl-svg{width:58px;height:20px;display:block;margin-bottom:4px}
.fl-dash{stroke:#7E858E;stroke-width:3;stroke-dasharray:7 6;animation:bsflowdash 1.1s linear infinite}
.fl-head{fill:#7E858E}
.bsedge.hot .fl-dash{stroke:#FF020A}.bsedge.hot .fl-head{fill:#FF020A}
@keyframes bsflowdash{to{stroke-dashoffset:-13}}
/* entrance */
.bsnode,.bsedge{opacity:0;transform:translateY(18px)}
.bsflow.inview .bsnode,.bsflow.inview .bsedge{animation:bsin .55s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--i,0)*.11s)}
@keyframes bsin{to{opacity:1;transform:none}}
/* fire chain (tap-to-run) */
.bsnode{cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .18s,filter .18s}
.bsnode.fire{transform:scale(1.07)}
.bsnode.fire img{filter:drop-shadow(0 8px 18px rgba(0,0,0,.45)) drop-shadow(0 0 22px rgba(255,2,10,.55))}
.bsedge.rush .fl-dash{animation-duration:.22s;stroke:#FF020A}
.bsedge.rush .fl-head{fill:#FF020A}
.bs-hint{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#7E858E;text-align:center;margin:2px 0 0}
.bs-hint b{color:#FF020A;font-weight:700}
.fl-v{display:none}
@media(max-width:760px){
 .fl-svg{display:none!important}
 .fl-v{display:block!important;width:18px!important;height:52px!important;margin:4px 0}
 .bsedge{flex-direction:row;gap:10px;padding:2px 0}
 .bsedge img{width:44px;height:44px;margin:0}
 .bsedge em{margin:0;text-align:left;max-width:120px}
}
@media(prefers-reduced-motion:reduce){
 .bsnode,.bsedge{opacity:1;transform:none;animation:none!important}
 .fl-dash{animation:none}
}

/* ============ THE JOURNEY ============ */
.journey{position:relative;max-width:560px;margin:0 auto;padding:10px 0 30px}
.jn-svg{position:absolute;inset:0;width:100%;pointer-events:none;z-index:0}
.jn-track{fill:none;stroke:rgba(199,203,209,.14);stroke-width:3}
.jn-draw{fill:none;stroke:#FF020A;stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(255,2,10,.5))}
.jn-hd{position:relative;z-index:1;text-align:center;padding:18px 16px 30px}
.jn-no{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:#FF020A}
.jn-t{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:clamp(30px,8vw,42px);letter-spacing:.02em;text-transform:uppercase;color:#F4F6F8;margin:8px 0 10px}
.jn-s{font-size:15px;line-height:1.65;color:#C7CBD1;max-width:40ch;margin:0 auto}
.stage{position:relative;z-index:1;padding:34px 14px}
.st-head{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.stage.L .st-head{flex-direction:row}
.stage.R .st-head{flex-direction:row-reverse}
.st-icon{flex:0 0 56%;}
.st-icon img{width:100%;max-width:290px;display:block;margin:0 auto;
 filter:drop-shadow(0 14px 30px rgba(0,0,0,.55));
 opacity:0;transform:translateY(34px) scale(.9);transition:opacity .6s,transform .7s cubic-bezier(.2,.8,.2,1)}
.stage.lit .st-icon img{opacity:1;transform:none}
.st-copy{flex:1;min-width:0;opacity:0;transform:translateY(20px);transition:opacity .5s .18s,transform .6s .18s cubic-bezier(.2,.8,.2,1)}
.stage.lit .st-copy{opacity:1;transform:none}
.stage.R .st-copy{text-align:right}
.st-k{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:#FF020A}
.st-t{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:clamp(24px,6.4vw,32px);letter-spacing:.02em;text-transform:uppercase;color:#F4F6F8;margin:4px 0 8px;line-height:1.05}
.st-s{font-size:14.5px;line-height:1.6;color:#C7CBD1;margin:0}
.st-meta{display:flex;align-items:center;gap:10px;margin-top:12px}
.stage.R .st-meta{justify-content:flex-end}
.st-dots{display:flex;gap:5px}
.st-dots i{width:7px;height:7px;background:rgba(199,203,209,.25);transform:rotate(45deg);transition:background .25s}
.st-dots i.on{background:#FF020A}
.st-tap{font-family:'Rajdhani',sans-serif;font-weight:600;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:#7E858E}
.st-depth{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.2,.8,.2,1)}
.st-depth.open{max-height:560px}
.lv{margin:14px 10px 0;border:1px solid rgba(199,203,209,.16);background:#141619;padding:16px 18px;
 opacity:0;transform:translateY(10px);transition:opacity .35s,transform .4s;display:none}
.lv.show{display:block;opacity:1;transform:none}
.lv-k{display:block;font-family:'Rajdhani',sans-serif;font-weight:700;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#FF020A;margin-bottom:8px}
.lv p{margin:0;font-size:14px;line-height:1.7;color:#C7CBD1}
.lv3 .lv-k{color:#C7CBD1}
.stage.surge .st-icon img{filter:drop-shadow(0 14px 30px rgba(0,0,0,.55)) drop-shadow(0 0 30px rgba(255,2,10,.65));transform:scale(1.05)}
.jn-end{position:relative;z-index:1;text-align:center;padding:26px 16px 8px}
.jn-run{background:#141619;border:1px solid #FF020A;color:#F4F6F8;font-family:'Rajdhani',sans-serif;font-weight:700;
 font-size:13px;letter-spacing:.2em;text-transform:uppercase;padding:14px 26px;cursor:pointer;transform:skewX(-10deg)}
.jn-run:hover{background:#FF020A}
.jn-cta{margin-top:16px;font-size:14px;color:#C7CBD1}
.jn-cta a{color:#F4F6F8;border-bottom:1px solid #FF020A;padding-bottom:2px;text-decoration:none}
@media(prefers-reduced-motion:reduce){
 .st-icon img,.st-copy{opacity:1!important;transform:none!important;transition:none!important}
}
@media(min-width:761px){.st-icon{flex-basis:44%}.st-icon img{max-width:250px}}
