/* StockRepublic overview (slides-flow.js): one page, two columns, one camera. Everything is scoped under .jo-flow. */
.jo-flow{--fe:cubic-bezier(.22,1,.36,1);--fd:Inter,system-ui,sans-serif;flex:1;min-height:0;display:flex;flex-direction:column;gap:14px}
.jo-flow.jo-now,.jo-flow.jo-now *{transition:none!important}

.jo-fhd{transition:opacity .26s ease,transform .26s ease}
.jo-fhd.out{opacity:0;transform:translateY(-6px)}
.jo-fhd .eyebrow{display:block;min-height:13px}
.jo-fh2{font-family:var(--fd);font-weight:400;font-size:clamp(24px,2.3vw,34px);line-height:1.15;letter-spacing:-.02em;color:var(--ink);margin:10px 0 0;max-width:40ch;text-wrap:balance;min-height:1.15em}

.jo-cv{position:relative;flex:1;min-height:0;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%)}
.jo-world{position:absolute;left:0;top:0;transform-origin:0 0;transition:transform .9s var(--fe);will-change:transform}

.jo-links{position:absolute;left:0;top:0;overflow:visible;pointer-events:none;z-index:1}
.jo-links path{fill:none;stroke:rgba(28,6,47,.2);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;transition:stroke-dashoffset .55s var(--fe) .12s,opacity .3s ease}
.jo-links path.on{stroke-dashoffset:0;opacity:1}

.jo-fb{position:absolute;z-index:2;box-sizing:border-box;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;padding:18px 22px;border-radius:16px;background:#fff;border:1px solid rgba(28,6,47,.08);box-shadow:0 1px 0 rgba(28,6,47,.03),0 10px 28px rgba(50,16,85,.07);opacity:0;transform:translateY(16px);overflow:hidden;
 transition:left .9s var(--fe),top .9s var(--fe),width .9s var(--fe),height .9s var(--fe),padding .9s var(--fe),opacity .45s var(--fe),transform .45s var(--fe),background-color .5s ease,border-color .5s ease,box-shadow .5s ease}
.jo-fb.sp{grid-template-columns:minmax(0,1fr);padding:18px 20px}
.jo-fb.on{opacity:1;transform:none}
.jo-fb.on.old{opacity:.55}
.jo-fb.new{border-color:rgba(102,51,153,.32);box-shadow:0 1px 0 rgba(28,6,47,.03),0 14px 34px rgba(102,51,153,.10)}
.jo-fn{font-family:var(--fd);font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--blue);line-height:21px;font-variant-numeric:tabular-nums}
.jo-ft{display:flex;flex-direction:column;min-width:0}
.jo-fh{font-family:var(--fd);font-weight:500;font-size:17px;line-height:1.25;letter-spacing:-.01em;color:var(--ink);transition:font-size .9s var(--fe),color .5s ease}
.jo-fs{font-size:13.5px;line-height:1.45;color:var(--muted);margin-top:5px;max-height:3em;overflow:hidden;transition:opacity .3s ease,max-height .6s var(--fe),margin .6s var(--fe)}

/* compact: each step becomes one row inside its module */
.jo-fb.c{padding:5px 0;background:transparent;border-color:transparent;box-shadow:none;align-items:center;opacity:1;transform:none}
.jo-fb.c .jo-fs{opacity:0;max-height:0;margin-top:0}
.jo-fb.c .jo-fh{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jo-fb.c .jo-fn{line-height:19px}
.jo-fb.c.sp .jo-fh{font-size:14px;color:var(--muted)}
.jo-fb.mu,.jo-fm.mu{opacity:.55}

.jo-fm{position:absolute;z-index:0;box-sizing:border-box;border-radius:20px;background:#fff;border:1px solid rgba(28,6,47,.08);box-shadow:0 1px 0 rgba(28,6,47,.03),0 18px 44px rgba(50,16,85,.08);opacity:0;transform:scale(.985);transition:opacity .6s var(--fe) .2s,transform .9s var(--fe)}
.jo-fm.on{opacity:1;transform:none}
.jo-fm.on.mu{opacity:.55;transition-delay:0s}
.jo-fm-n{position:absolute;left:28px;top:20px;font-family:var(--fd);font-weight:500;font-size:22px;letter-spacing:-.02em;color:var(--ink)}
.jo-fm-o{position:absolute;left:28px;right:28px;bottom:22px;padding-top:16px;border-top:1px solid rgba(28,6,47,.08);font-family:var(--fd);font-weight:500;font-size:21px;line-height:1.2;letter-spacing:-.015em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

.jo-far{position:absolute;z-index:1;height:0;border-top:1.5px solid rgba(28,6,47,.24);opacity:0;transition:opacity .5s ease .2s,top .9s var(--fe)}
.jo-far::after{content:"";position:absolute;right:-2px;top:-6px;border-style:solid;border-width:5px 0 5px 8px;border-color:transparent transparent transparent rgba(28,6,47,.34)}
.jo-far.on{opacity:1}

/* narrow screens: the same story as a plain list */
.jo-flist{display:none}
@media (max-width:760px){
 .jo-cv{display:none}
 .jo-flist{display:grid;gap:16px;overflow:auto;padding-bottom:8px}
 .jo-fl{background:#fff;border:1px solid rgba(28,6,47,.08);border-radius:16px;padding:16px 18px}
 .jo-fl ol{margin:10px 0 0;padding-left:20px;display:grid;gap:8px}
 .jo-fl li b{display:block;font-family:var(--fd);font-weight:500;font-size:15px;color:var(--ink)}
 .jo-fl li span{font-size:13px;color:var(--muted)}
 .jo-fl li.sp{list-style:none;margin-left:-4px;padding-left:12px;border-left:1px solid rgba(28,6,47,.12)}
 .jo-fl-o{margin:12px 0 0;font-family:var(--fd);font-weight:500;font-size:17px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
}

/* while the software column builds, the faded Research module rides with the camera so it never scrolls away */
.jo-world{--rdy:0px}
.jo-fb.c[data-c="r"],.jo-fm[data-m="r"].on{transform:translateY(var(--rdy))}
.jo-far.ride{transform:translateY(var(--rdy))}
.jo-far{transition:opacity .5s ease .2s,top .9s var(--fe),transform .9s var(--fe)}
/* a heading that always holds two lines, so the canvas never changes height between stages */
.jo-fh2{min-height:2.3em}
/* step numbers stay at least 12px on a 1280 screen; split boxes never end on one word */
.jo-fn{font-size:13.5px}
.jo-fb.sp .jo-fh,.jo-fb.sp .jo-fs{text-wrap:balance}

/* longer copy: split-box subs may run to three lines; boxes centre their text; nothing is clipped */
.jo-fb.sp:not(.c) .jo-fs{max-height:4.5em}
.jo-fb{align-content:center}

/* the stage: canvas plus the example panel on its right half */
.jo-flow{position:relative}
.jo-stage{position:relative;flex:1;min-height:0;display:flex}
.jo-stage>.jo-cv{flex:1;min-width:0}
.jo-fb.hl{opacity:1!important;border-color:rgba(102,51,153,.55);box-shadow:0 0 0 4px rgba(179,128,241,.16),0 16px 38px rgba(102,51,153,.14)}

.jo-pop{position:absolute;z-index:5;right:0;top:50%;width:min(46%,540px);max-height:100%;box-sizing:border-box;display:grid;
 padding:22px 26px 24px;border-radius:20px;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
 border:1px solid rgba(28,6,47,.08);box-shadow:0 1px 0 rgba(28,6,47,.03),0 22px 54px rgba(50,16,85,.12);
 opacity:0;transform:translate(28px,-50%);pointer-events:none;transition:opacity .45s var(--fe),transform .7s var(--fe)}
.jo-pop.on{opacity:1;transform:translate(0,-50%);pointer-events:auto}
.jo-pv{grid-area:1/1;min-width:0;opacity:0;transition:opacity .25s ease}
.jo-pop.on[data-v="a"] .jo-pv[data-v="a"],.jo-pop.on[data-v="b"] .jo-pv[data-v="b"]{opacity:1;transition:opacity .4s ease .18s}
.jo-ph{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(28,6,47,.08)}
.jo-px{flex:none;font-family:var(--fd);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);padding:4px 9px;border-radius:999px;background:rgba(102,51,153,.08);border:1px solid rgba(102,51,153,.16)}
.jo-ptl{font-family:var(--fd);font-weight:500;font-size:17px;letter-spacing:-.01em;color:var(--ink);line-height:1.25}
.jo-pm{margin:12px 0 0;font-size:13.5px;line-height:1.45;color:var(--muted)}

/* view a: the call, line by line */
.jo-tx{margin-top:16px;display:grid;gap:12px}
.jo-ln{display:grid;grid-template-columns:62px minmax(0,1fr);gap:12px;align-items:baseline;opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .3s ease}
.jo-ln b{font-family:var(--fd);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.jo-ln span{font-family:var(--fd);font-size:15px;line-height:1.45;color:var(--ink)}
.jo-cg{position:relative;display:grid;gap:10px;margin:0 -12px;padding:10px 12px;border-radius:12px;background:rgba(179,128,241,0);box-shadow:inset 0 0 0 1px rgba(102,51,153,0);transition:background .5s ease,box-shadow .5s ease}
.jo-cg .jo-ln b{color:var(--blue)}
.jo-ctag{position:absolute;right:10px;top:-10px;font-family:var(--fd);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--grad);padding:4px 9px;border-radius:999px;opacity:0;transform:translateY(4px);transition:opacity .3s ease,transform .3s ease}
.jo-pop.on[data-v="a"] .jo-ln{opacity:1;transform:none;transition:opacity .5s var(--fe),transform .5s var(--fe);transition-delay:calc(.55s + var(--k)*.6s)}
.jo-pop.on[data-v="a"] .jo-cg{background:rgba(179,128,241,.11);box-shadow:inset 0 0 0 1px rgba(102,51,153,.16);transition-delay:2.5s}
.jo-pop.on[data-v="a"] .jo-ctag{opacity:1;transform:none;transition-delay:2.65s}

/* view b: the year before the deal, scanned left to right */
.jo-ax{position:relative;margin-top:18px;padding-top:74px}
.jo-axt{position:relative;height:6px;border-radius:999px;background:rgba(28,6,47,.07)}
.jo-axt::before{content:"";position:absolute;inset:-4px 0;background:repeating-linear-gradient(90deg,rgba(28,6,47,.16) 0 1px,transparent 1px calc(100%/12));opacity:.6;pointer-events:none}
.jo-axf{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:999px;background:var(--grad);opacity:.35;transition:width .2s linear}
.jo-scan{position:absolute;left:0;top:-16px;bottom:-16px;width:1.5px;margin-left:-.75px;background:var(--blue);border-radius:2px;opacity:0;box-shadow:0 0 12px rgba(102,51,153,.45);transition:left .2s linear,opacity .2s ease}
.jo-deal{position:absolute;right:-6px;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px rgba(102,51,153,.16)}
.jo-axd{position:absolute;left:calc(var(--at)*100%);top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:#fff;border:2px solid var(--blue);box-sizing:border-box;opacity:0;transform:scale(.4);transition:opacity .3s ease,transform .3s ease}
.jo-axl{display:flex;justify-content:space-between;margin-top:10px;font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.jo-axl em{font-style:normal;font-weight:600;color:var(--blue)}
.jo-ev{position:absolute;top:0;left:calc(var(--at)*100% - 28px);max-width:calc(100% - var(--at)*100% + 28px - 40px);box-sizing:border-box;padding:9px 13px;border-radius:12px;background:#fff;border:1px solid rgba(102,51,153,.22);box-shadow:0 10px 26px rgba(50,16,85,.10);opacity:0;transform:translateY(8px) scale(.97);transform-origin:28px 100%;transition:opacity .3s ease,transform .3s ease}
.jo-ev::after{content:"";position:absolute;left:27px;top:100%;width:1.5px;height:20px;background:rgba(102,51,153,.4)}
.jo-ev b{display:block;font-family:var(--fd);font-weight:500;font-size:14px;line-height:1.3;color:var(--ink)}
.jo-ev span{display:block;margin-top:2px;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--blue)}
.jo-src{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.jo-src li{display:inline-flex;align-items:center;gap:7px;padding:6px 11px 6px 8px;border-radius:999px;border:1px solid rgba(28,6,47,.1);background:#fff;font-size:13px;color:var(--muted);transition:color .3s ease,border-color .3s ease}
.jo-src i{position:relative;width:14px;height:14px;border-radius:50%;border:1.5px solid rgba(28,6,47,.2);box-sizing:border-box;transition:background .3s ease,border-color .3s ease}
.jo-src i::after{content:"";position:absolute;left:3.5px;top:1.5px;width:3px;height:6px;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);opacity:0;transition:opacity .2s ease}
.jo-pf{margin:16px 0 0;padding-top:12px;border-top:1px solid rgba(28,6,47,.08);font-size:13px;line-height:1.45;color:var(--muted);opacity:0;transition:opacity .3s ease}

.jo-pop.on[data-v="b"] .jo-axf{width:100%;transition:width 1.8s linear .5s}
.jo-pop.on[data-v="b"] .jo-scan{left:100%;opacity:1;transition:left 1.8s linear .5s,opacity .3s ease .4s}
.jo-pop.on[data-v="b"] .jo-axd{opacity:1;transform:none;transition-delay:calc(.5s + var(--at)*1.8s)}
.jo-pop.on[data-v="b"] .jo-ev{opacity:1;transform:none;transition:opacity .4s var(--fe),transform .5s var(--fe);transition-delay:calc(.55s + var(--at)*1.8s)}
.jo-pop.on[data-v="b"] .jo-src li{color:var(--ink);border-color:rgba(102,51,153,.22);transition-delay:calc(.75s + var(--k)*.42s)}
.jo-pop.on[data-v="b"] .jo-src i{background:var(--blue);border-color:var(--blue);transition-delay:calc(.75s + var(--k)*.42s)}
.jo-pop.on[data-v="b"] .jo-src i::after{opacity:1;transition-delay:calc(.8s + var(--k)*.42s)}
.jo-pop.on[data-v="b"] .jo-pf{opacity:1;transition-delay:2.45s}

@media (prefers-reduced-motion:reduce){.jo-pop,.jo-pop *,.jo-pop *::after{transition:none!important}}

/* phone: the panel becomes a full-width sheet over the list */
@media (max-width:760px){
 .jo-stage{display:contents}
 .jo-pop{left:0;right:0;top:auto;bottom:0;width:auto;max-height:100%;overflow:auto;padding:18px 18px 20px;transform:translateY(20px)}
 .jo-pop.on{transform:none}
 .jo-ln{grid-template-columns:54px minmax(0,1fr);gap:10px}
 .jo-ln span{font-size:14px}
}

/* view a, rebuilt: the ask, one calm step per click. Views centre in the panel, so a shorter view never leaves a gap. */
.jo-pv{align-self:center}
.jo-ph-s{padding-bottom:0;border-bottom:0}
.jo-sc{display:grid;margin-top:14px;min-height:214px;align-items:center}
.jo-sc>*{grid-area:1/1;min-width:0}
.jo-scn,.jo-gs{opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .3s ease}
.jo-pop.on .jo-scn.cur,.jo-pop.on.g .jo-gs{opacity:1;transform:none;transition:opacity .45s var(--fe) .12s,transform .5s var(--fe) .12s}
.jo-gs{display:grid;grid-template-columns:auto minmax(0,1fr);gap:32px;align-items:center}
.jo-dots{display:grid;grid-template-columns:repeat(10,11px);gap:7px}
.jo-dot{display:block;width:11px;height:11px;border-radius:50%;background:rgba(102,51,153,.24);opacity:0;transform:scale(.5);transition:opacity .25s ease,transform .3s ease,background .25s ease,box-shadow .25s ease}
.jo-pop.on.g .jo-dot{opacity:1;transform:none}
.jo-pop.on.g[data-s="1"] .jo-dot{transition-delay:calc(.3s + var(--k)*6ms)}
.jo-pop.on.rg .jo-dot{background:radial-gradient(circle,rgba(102,51,153,.8) 0 1.8px,transparent 2.3px);box-shadow:inset 0 0 0 1.5px rgba(102,51,153,.42);transition-delay:calc(.15s + var(--k)*5ms)}
.jo-pop.on.cl .jo-dot{opacity:.25;transition-delay:0s}
.jo-pop.on.cl .jo-dot.hl{opacity:1;background:var(--blue);box-shadow:0 0 0 4px rgba(179,128,241,.3);transform:scale(1.3);transition-delay:.3s}
.jo-pop.on.lt .jo-dot{opacity:.45;transition-delay:0s}
.jo-pop.on.lt .jo-dot.lit{opacity:1;background:var(--blue);box-shadow:none;transition-delay:calc(.35s + var(--o)*14ms)}
.jo-gts{display:grid;min-width:0}
.jo-gt{grid-area:1/1;align-self:center;opacity:0;transform:translateY(6px);transition:opacity .2s ease,transform .25s ease}
.jo-pop.on .jo-gt.cur{opacity:1;transform:none;transition:opacity .45s var(--fe) .2s,transform .5s var(--fe) .2s}
.jo-gbig{display:block;font-family:var(--fd);font-weight:500;font-size:68px;line-height:1;letter-spacing:-.035em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:4px}
.jo-gline{margin:6px 0 0;font-family:var(--fd);font-weight:500;font-size:23px;line-height:1.22;letter-spacing:-.015em;color:var(--ink);text-wrap:balance}
.jo-gsub{margin:10px 0 0;font-size:14.5px;line-height:1.4;color:var(--muted)}
.jo-gtag{display:inline-block;font-family:var(--fd);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--grad);padding:4px 10px;border-radius:999px}
.jo-acc{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.jo-sline{margin:0;font-family:var(--fd);font-weight:500;font-size:25px;line-height:1.2;letter-spacing:-.02em;color:var(--ink)}
.jo-inv{margin-top:20px;padding:18px 22px;border-radius:14px;background:#fff;border:1px solid rgba(102,51,153,.16);border-left:3px solid var(--blue);box-shadow:0 10px 26px rgba(50,16,85,.07)}
.jo-invl{display:block;font-family:var(--fd);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.jo-inv p{margin:6px 0 0;font-family:var(--fd);font-size:17px;line-height:1.35;color:var(--ink)}
.jo-pay{margin:16px 0 0;display:flex;align-items:baseline;gap:12px}
.jo-pay b{font-family:var(--fd);font-weight:500;font-size:68px;line-height:1;letter-spacing:-.035em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:4px}
.jo-pay span{font-size:18px;color:var(--muted)}
.jo-call{padding:22px 24px;border-radius:16px;background:#fff;border:1px solid rgba(102,51,153,.16);box-shadow:0 12px 30px rgba(50,16,85,.08)}
.jo-callh{display:flex;align-items:center;gap:14px}
.jo-callh b{font-family:var(--fd);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.jo-wave{display:inline-flex;align-items:center;gap:3px;height:22px}
.jo-wave i{display:block;width:3px;height:22px;border-radius:2px;background:var(--blue);opacity:.7;transform:scaleY(calc(var(--h)*.5))}
@keyframes jo-wv{0%,100%{transform:scaleY(calc(var(--h)*.3))}50%{transform:scaleY(var(--h))}}
.jo-pop.on .jo-scn.cur .jo-wave i{animation:jo-wv .9s ease-in-out infinite;animation-delay:calc(var(--k)*-.11s)}
.jo-q{margin:14px 0 0;font-family:var(--fd);font-size:20px;line-height:1.4;letter-spacing:-.01em;color:var(--ink)}
@media (prefers-reduced-motion:reduce){.jo-pop .jo-wave i{animation:none!important}}
@media (max-width:760px){
 .jo-sc{min-height:0}
 .jo-gs{grid-template-columns:1fr;gap:18px}
 .jo-gbig,.jo-pay b{font-size:52px}
 .jo-gline,.jo-sline{font-size:21px}
 .jo-q{font-size:18px}
}

/* view b, rebuilt: pick one deal, go back a year, two mini scans, then the stack */
.jo-pop.on.g1 .jo-dot{transition-delay:calc(.3s + var(--k)*6ms)}
.jo-gk{margin:0 0 8px;font-size:14.5px;line-height:1.4;color:var(--muted)}
.jo-ts{opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .3s ease}
.jo-pop.on.t .jo-ts{opacity:1;transform:none;transition:opacity .45s var(--fe) .12s,transform .5s var(--fe) .12s}
.jo-tl{position:relative;margin-top:12px}
.jo-tz{position:relative}
.jo-tz.up{height:54px;margin-bottom:12px}
.jo-tz.dn{display:grid;min-height:54px}
.jo-tz.dn>*{grid-area:1/1}
.jo-tax{position:relative;height:6px;border-radius:999px;background:rgba(28,6,47,.07)}
.jo-tax::before{content:"";position:absolute;inset:-4px 0;background:repeating-linear-gradient(90deg,rgba(28,6,47,.16) 0 1px,transparent 1px calc(100%/12));opacity:.6;pointer-events:none}
.jo-tfill{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:999px;background:var(--grad);opacity:.35}
.jo-tscan{position:absolute;left:0;top:-14px;bottom:-14px;width:1.5px;margin-left:-.75px;background:var(--blue);border-radius:2px;opacity:0;box-shadow:0 0 12px rgba(102,51,153,.45)}
@keyframes jo-sc1{0%{left:0;opacity:0}6%,94%{opacity:1}100%{left:100%;opacity:0}}
@keyframes jo-sc2{0%{left:0;opacity:0}6%,94%{opacity:1}100%{left:100%;opacity:0}}
@keyframes jo-fl1{from{width:0}to{width:100%}}
@keyframes jo-fl2{from{width:0}to{width:100%}}
.jo-pop.on.sc1 .jo-tscan{animation:jo-sc1 1.4s linear .35s both}
.jo-pop.on.sc2 .jo-tscan{animation:jo-sc2 1.4s linear .35s both}
.jo-pop.on.sc1 .jo-tfill{animation:jo-fl1 1.4s linear .35s both}
.jo-pop.on.sc2 .jo-tfill{animation:jo-fl2 1.4s linear .35s both}
.jo-hd{position:absolute;left:calc(var(--at)*100%);top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:#fff;border:2px solid var(--blue);box-sizing:border-box;opacity:0;transform:scale(.4);transition:opacity .3s ease,transform .3s ease}
.jo-hit{position:absolute;max-width:78%;box-sizing:border-box;padding:8px 12px;border-radius:12px;background:#fff;border:1px solid rgba(102,51,153,.24);box-shadow:0 10px 26px rgba(50,16,85,.10);opacity:0;transform:translateY(6px) scale(.97);transition:opacity .3s ease,transform .3s ease;white-space:nowrap}
.jo-hit.up{bottom:0}
.jo-hit.dn{top:10px;align-self:start}
.jo-hit.l{left:calc(var(--at)*100% - 24px)}
.jo-hit.r{right:calc((1 - var(--at))*100% - 24px)}
.jo-hit::after{content:"";position:absolute;width:1.5px;background:rgba(102,51,153,.4)}
.jo-hit.up::after{top:100%;height:15px}
.jo-hit.dn::after{bottom:100%;height:44px}
.jo-hit.l::after{left:23px}
.jo-hit.r::after{right:23px}
.jo-hitl{display:block;font-family:var(--fd);font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.jo-hit p{margin:2px 0 0;font-size:13.5px;line-height:1.35;color:var(--muted)}
.jo-hit p b{font-family:var(--fd);font-weight:500;color:var(--ink)}
.jo-hit p span{font-weight:600;color:var(--blue)}
.jo-pop.on .jo-hit.on,.jo-pop.on .jo-hd.on{opacity:1;transform:none;transition-delay:0s}
.jo-pop.on .jo-hit.on.fresh,.jo-pop.on .jo-hd.on.fresh{transition-delay:calc(.4s + var(--at)*1.4s)}
.jo-chips{display:flex;flex-wrap:wrap;gap:6px;padding-top:12px;align-content:flex-start}
.jo-chips span{padding:5px 10px;border-radius:999px;border:1px solid rgba(102,51,153,.2);background:#fff;font-size:12.5px;line-height:1.3;color:var(--ink);opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease}
.jo-chips span.mo{color:var(--blue);background:rgba(102,51,153,.06);font-weight:600}
.jo-pop.on .jo-chips.cur span{opacity:1;transform:none;transition:opacity .35s var(--fe),transform .35s var(--fe);transition-delay:calc(.35s + var(--k)*.09s)}
@media (prefers-reduced-motion:reduce){.jo-pop .jo-tscan,.jo-pop .jo-tfill{animation:none!important}.jo-pop.on.sc1 .jo-tfill,.jo-pop.on.sc2 .jo-tfill{width:100%}}
