/* ================= tour: the product, as if built ================= */
#tour{--w-bg:#0d1220;--w-pan:#121829;--w-rai:#172036;--w-ln:rgba(255,255,255,.075);--w-ln2:rgba(255,255,255,.13);
  --w-tx:#e7e9f0;--w-mu:#8a93ab;--w-fa:#5a6480;--w-or:var(--orange);--w-orh:var(--orange-hi);--w-te:var(--teal);
  position:relative;background:var(--void)}
#tour .tr-bleed{position:absolute;left:0;right:0;top:0;height:46vh;background:linear-gradient(var(--ink),var(--void));pointer-events:none}
#tour .tr-tail{height:30vh;background:linear-gradient(var(--void),#1d2232 45%,var(--paper))}

/* ---------- intro ---------- */
#tour .tr-intro{position:relative;padding-top:clamp(96px,16vh,180px);padding-bottom:clamp(20px,5vh,56px)}
#tour .tr-intro .h2{margin:22px 0 22px;max-width:14ch}
#tour .tr-intro .lede{max-width:52ch}

/* ---------- pinned stage ---------- */
#tour .tr-pin{position:relative;height:360vh}
#tour .tr-stage{display:flex}
#tour .tr-glow{position:absolute;inset:0;pointer-events:none;opacity:var(--glow,0);
  background:radial-gradient(52% 46% at 62% 56%,rgba(227,91,50,.10),rgba(227,91,50,0) 70%),radial-gradient(70% 60% at 62% 50%,#141b30 0%,rgba(11,15,28,0) 70%)}
#tour .tr-layout{position:relative;height:100%;display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(32px,3vw,48px);max-width:none;
  padding-top:clamp(72px,10vh,96px);padding-bottom:clamp(20px,4vh,40px);align-items:center}

/* captions */
#tour .tr-caps{display:flex;flex-direction:column;gap:22px;min-width:0}
#tour .tr-count{font-size:12px;letter-spacing:.24em;color:var(--mute-d)}
#tour .tr-count b{color:var(--orange);font-weight:700}
#tour .tr-capstack{position:relative;height:270px}
#tour .tr-cap{position:absolute;inset:0;opacity:0;will-change:opacity,transform}
#tour .tr-cap .tr-k{font-family:var(--mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:16px}
#tour .tr-cap h3{font-family:var(--display);font-weight:800;letter-spacing:-.03em;line-height:1;font-size:clamp(28px,2.5vw,38px);margin-bottom:16px}
#tour .tr-cap p:last-child{font-size:15px;line-height:1.55;color:#c3c8d6;max-width:34ch}
#tour .tr-steps{list-style:none;display:flex;flex-direction:column;gap:2px;border-left:1px solid var(--line-d)}
#tour .tr-steps button{display:flex;align-items:center;gap:12px;padding:6px 0 6px 16px;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute-d);opacity:.6;transition:opacity .4s,color .4s;position:relative}
#tour .tr-steps button i{width:5px;height:5px;background:currentColor;transform:rotate(45deg);transition:background .4s,transform .4s}
#tour .tr-steps button:before{content:"";position:absolute;left:-1px;top:4px;bottom:4px;width:1px;background:var(--orange);transform:scaleY(var(--f,0));transform-origin:top}
#tour .tr-steps button.on{opacity:1;color:#fff}
#tour .tr-steps button.on i{background:var(--orange);transform:rotate(45deg) scale(1.3)}
#tour .tr-steps button:hover{opacity:1;color:var(--orange-hi)}
#tour .tr-fine{max-width:34ch}

/* fit box: window is laid out at a fixed design size and scaled in */
#tour .tr-fit{position:relative;height:100%;min-height:0;min-width:0}
#tour .tr-box{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);perspective:2200px}
#tour .tr-tilt{width:100%;height:100%;transform-style:preserve-3d;transform-origin:50% 60%;will-change:transform}
#tour .tr-win{position:absolute;left:0;top:0;width:1000px;height:640px;transform-origin:0 0;background:var(--w-bg);color:var(--w-tx);
  font-family:var(--sans);font-size:12px;line-height:1.35;border:1px solid var(--w-ln2);overflow:hidden;
  box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 60px 120px -30px rgba(0,0,0,.75),0 24px 48px -24px rgba(0,0,0,.6),0 0 0 1px rgba(0,0,0,.4);
  display:grid;grid-template-columns:168px minmax(0,1fr);grid-template-rows:40px minmax(0,1fr) 24px}
#tour .tr-win *{box-sizing:border-box}
#tour .tr-win .mono{font-family:var(--mono)}
#tour .tr-win .lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--w-mu);font-weight:400}
#tour .tr-win .lbl span{color:var(--w-fa);letter-spacing:.1em}
#tour .tr-win .chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;padding:3px 8px;border:1px solid rgba(227,91,50,.45);color:var(--w-orh);background:rgba(227,91,50,.08);white-space:nowrap}
#tour .tr-win .chip i{width:5px;height:5px;border-radius:50%;background:var(--w-or)}
#tour .tr-win .pill{font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;padding:2px 7px;border:1px solid rgba(63,184,166,.5);color:var(--w-te)}
#tour .tr-win .pan{background:var(--w-pan);border:1px solid var(--w-ln)}
#tour .tr-win .pan-h{display:flex;justify-content:space-between;align-items:center;gap:10px}
#tour .tr-win .tbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--w-or);color:#fff;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;padding:9px 14px;font-weight:700;transition:background .25s,box-shadow .25s,transform .25s}
#tour .tr-win .tbtn.hov{background:var(--w-orh);box-shadow:0 0 22px rgba(227,91,50,.45);transform:translateY(-1px)}
#tour .tr-win .tbtn.press{transform:translateY(1px) scale(.97);background:#c94b25}
#tour .tr-win .caret{display:inline-block;width:1.5px;height:1.05em;background:var(--w-orh);vertical-align:-2px;margin-left:1px;animation:trBlink 1s steps(2) infinite}
@keyframes trBlink{50%{opacity:0}}

/* top bar */
#tour .tr-top{grid-column:1/-1;display:flex;align-items:center;gap:18px;padding:0 14px 0 16px;border-bottom:1px solid var(--w-ln);background:#0a0e1a}
#tour .tr-brand{font-family:var(--display);font-weight:800;font-size:16px;letter-spacing:-.03em;width:136px;flex:none}
#tour .tr-brand i{color:var(--w-or);font-style:normal}
#tour .tr-crumbs{flex:1;min-width:0;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--w-mu);white-space:nowrap;overflow:hidden}
#tour .tr-crumb{display:inline-block;transition:opacity .35s,transform .35s}
#tour .tr-crumb.sw{opacity:0;transform:translateY(4px)}
#tour .tr-crumb b{color:var(--w-tx);font-weight:400}
#tour .tr-search{width:230px;flex:none;display:flex;justify-content:space-between;align-items:center;padding:5px 8px 5px 10px;border:1px solid var(--w-ln);color:var(--w-fa);font-size:11px}
#tour .tr-search kbd{font-family:var(--mono);font-size:9px;padding:1px 5px;border:1px solid var(--w-ln2);color:var(--w-mu)}
#tour .tr-live{display:flex;align-items:center;gap:6px;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--w-mu)}
#tour .tr-live i{width:6px;height:6px;border-radius:50%;background:var(--w-or);box-shadow:0 0 8px var(--w-or);animation:trPulse 1.6s ease-in-out infinite}
@keyframes trPulse{50%{opacity:.35}}
#tour .tr-avatar{width:24px;height:24px;display:grid;place-items:center;font-size:9px;background:var(--w-rai);border:1px solid var(--w-ln2);color:var(--w-tx)}

/* sidebar */
#tour .tr-side{border-right:1px solid var(--w-ln);background:#0b1020;padding:14px 0;display:flex;flex-direction:column;min-height:0}
#tour .tr-ws{font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:0 16px 14px;color:var(--w-tx);display:flex;flex-direction:column;gap:3px;border-bottom:1px solid var(--w-ln);margin-bottom:10px}
#tour .tr-ws span{color:var(--w-fa);font-size:9px}
#tour .tr-side ul{list-style:none;display:flex;flex-direction:column;gap:1px}
#tour .tr-side li{position:relative;display:flex;align-items:center;gap:10px;padding:8px 16px;font-size:12.5px;color:var(--w-mu);transition:color .35s,background .35s}
#tour .tr-side li b{font-weight:400;font-size:9px;color:var(--w-fa);transition:color .35s}
#tour .tr-side li em{margin-left:auto;font-style:normal;font-family:var(--mono);font-size:9px;color:var(--w-fa)}
#tour .tr-side li:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;background:var(--w-or);transform:scaleY(0);transition:transform .35s var(--ease)}
#tour .tr-side li.on{color:var(--w-tx);background:linear-gradient(90deg,rgba(227,91,50,.12),rgba(227,91,50,0))}
#tour .tr-side li.on b{color:var(--w-or)}
#tour .tr-side li.on:before{transform:scaleY(1)}
#tour .tr-side-foot{margin-top:auto;padding:12px 16px 0;border-top:1px solid var(--w-ln);display:flex;flex-direction:column;gap:4px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--w-fa)}
#tour .tr-side-foot span:first-child{color:var(--w-mu);display:flex;align-items:center;gap:6px}
#tour .tr-side-foot i{width:6px;height:6px;background:var(--w-or);transform:rotate(45deg)}

/* status bar */
#tour .tr-status{grid-column:1/-1;display:flex;align-items:center;gap:22px;padding:0 14px;border-top:1px solid var(--w-ln);background:#0a0e1a;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--w-fa)}
#tour .tr-status span:first-child{display:flex;align-items:center;gap:6px}
#tour .tr-status span:first-child i{width:5px;height:5px;border-radius:50%;background:var(--w-te)}
#tour .tr-status span:last-child{margin-left:auto;color:var(--w-mu)}

/* main + screens */
#tour .tr-main{position:relative;min-width:0;min-height:0;overflow:hidden}
#tour .tr-scr{position:absolute;inset:18px;opacity:0;will-change:opacity,transform}
#tour .tr-toast{position:absolute;left:50%;bottom:4px;transform:translate(-50%,12px);opacity:0;display:flex;align-items:center;gap:10px;padding:10px 16px;background:#1b2440;border:1px solid var(--w-ln2);font-size:10px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;box-shadow:0 18px 40px -12px rgba(0,0,0,.7);transition:opacity .4s var(--ease),transform .4s var(--ease);z-index:5}
#tour .tr-toast i{width:14px;height:14px;border-radius:50%;background:var(--w-or);position:relative;flex:none}
#tour .tr-toast i:after{content:"";position:absolute;left:4.5px;top:2.5px;width:3.5px;height:6.5px;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
#tour .tr-toast.show{opacity:1;transform:translate(-50%,0)}

/* cursor */
#tour .tr-cursor{position:absolute;left:0;top:0;width:18px;height:22px;z-index:20;pointer-events:none;opacity:0;will-change:transform}
#tour .tr-cursor svg{width:18px;height:22px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6));overflow:visible}
#tour .tr-cursor path{fill:#fff;stroke:#0b0f1c;stroke-width:1.3;stroke-linejoin:round}
#tour .tr-click{position:absolute;left:-14px;top:-14px;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--w-orh);opacity:0;transform:scale(.3)}

/* ---------- 01 capture ---------- */
#tour .s0{display:flex;align-items:center;justify-content:center;gap:34px}
#tour .s0-phone{position:relative;width:256px;height:540px;flex:none;border-radius:34px;background:#05070d;border:1px solid #2a3350;padding:7px;
  box-shadow:0 0 0 1px #000,0 30px 60px -20px rgba(0,0,0,.8),inset 0 0 0 1px rgba(255,255,255,.05)}
#tour .s0-vf{position:absolute;inset:7px;width:calc(100% - 14px);height:calc(100% - 14px);border-radius:27px;background:#070a14}
#tour .s0-island{position:absolute;left:50%;top:15px;width:76px;height:20px;margin-left:-38px;background:#000;border-radius:12px}
#tour .s0-hud{position:absolute;inset:7px;border-radius:27px;overflow:hidden;display:flex;flex-direction:column;padding:42px 14px 16px}
#tour .s0-row{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.14em;color:#cfd4e2}
#tour .s0-rec{display:flex;align-items:center;gap:6px}
#tour .s0-rec i{width:7px;height:7px;border-radius:50%;background:#ff4d3a;animation:trPulse 1.2s infinite}
#tour .s0-rec b{font-weight:400;font-variant-numeric:tabular-nums}
#tour .s0-ring{position:absolute;right:14px;top:66px;width:58px;height:58px;display:grid;place-items:center;background:rgba(5,7,13,.78);border-radius:50%}
#tour .s0-ring svg{position:absolute;inset:0;transform:rotate(-90deg)}
#tour .s0-ring circle{fill:none;stroke-width:3.5}
#tour .s0-ring .bg{stroke:rgba(255,255,255,.12)}
#tour .s0-ring .fg{stroke:var(--w-or);stroke-dasharray:157.08;stroke-dashoffset:157.08;stroke-linecap:butt}
#tour .s0-ring b{font-family:var(--display);font-size:18px;font-weight:800;letter-spacing:-.03em;line-height:1;margin-top:-6px}
#tour .s0-ring span{position:absolute;bottom:12px;font-family:var(--mono);font-size:7px;letter-spacing:.2em;color:var(--w-mu)}
#tour .s0-say{margin-top:auto;font-size:11px;line-height:1.4;color:#e9ecf4;background:rgba(5,7,13,.82);padding:8px 10px;border-left:2px solid var(--w-or);margin-bottom:10px}
#tour .s0-checks{list-style:none;display:flex;flex-direction:column;gap:5px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px}
#tour .s0-checks li{display:flex;align-items:center;gap:7px;color:#dfe3ee;opacity:.25;transition:opacity .4s}
#tour .s0-checks li.on{opacity:1}
#tour .s0-checks i{width:12px;height:12px;border-radius:50%;border:1px solid var(--w-or);position:relative;flex:none}
#tour .s0-checks li.on i{background:var(--w-or)}
#tour .s0-checks li.on i:after{content:"";position:absolute;left:3.5px;top:1.5px;width:3px;height:6px;border:solid #fff;border-width:0 1.3px 1.3px 0;transform:rotate(45deg)}
#tour .s0-btns{display:grid;grid-template-columns:1fr 1.3fr;gap:8px;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
#tour .s0-btns span{display:flex;justify-content:center;padding:11px 0;border-radius:12px}
#tour .s0-re{border:1px solid rgba(255,255,255,.25);color:#dfe3ee;background:rgba(5,7,13,.5)}
#tour .s0-btns .tbtn{border-radius:12px}
#tour .s0-brief{width:440px;flex:none;padding:20px 22px;display:flex;flex-direction:column;gap:14px}
#tour .s0-title{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.03em;line-height:1}
#tour .s0-src{font-size:11px;line-height:1.6;letter-spacing:.02em;color:var(--w-orh);padding:10px 12px;background:rgba(227,91,50,.06);border:1px dashed rgba(227,91,50,.35)}
#tour .s0-meta{display:flex;flex-direction:column;border-top:1px solid var(--w-ln)}
#tour .s0-meta div{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--w-ln);align-items:center}
#tour .s0-meta dt{font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--w-fa)}
#tour .s0-meta dd{font-size:11.5px;color:#c9cedb}
#tour .s0-eph{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
#tour .s0-epn{font-size:10px;letter-spacing:.08em;color:var(--w-mu)}
#tour .s0-epn b{color:var(--w-tx);font-weight:700}
#tour .s0-sq{display:grid;grid-template-columns:repeat(12,1fr);gap:4px}
#tour .s0-sq i{height:16px;border:1px solid var(--w-ln2);transition:background .35s,border-color .35s,transform .35s}
#tour .s0-sq i.on{background:var(--w-or);border-color:var(--w-or)}
#tour .s0-sq i.nx{border-style:dashed;border-color:rgba(227,91,50,.7)}
#tour .s0-sq i.pop{animation:trPop .5s var(--ease)}
@keyframes trPop{0%{transform:scale(.4)}60%{transform:scale(1.25)}to{transform:scale(1)}}
#tour .s0-consent{display:flex;align-items:center;gap:8px;font-size:9.5px;letter-spacing:.06em;color:var(--w-mu)}
#tour .s0-consent i{width:6px;height:6px;background:var(--w-or);transform:rotate(45deg)}
#tour .s0-toast{bottom:22px;left:auto;right:28px;transform:translate(0,12px)}
#tour .s0-toast.show{transform:none}

/* ---------- 02 draft → verify ---------- */
#tour .s1{display:flex;flex-direction:column;gap:14px}
#tour .s1-top{display:flex;gap:14px;height:214px;flex:none}
#tour .s1-prev{position:relative;width:381px;flex:none;background:#070a14;border:1px solid var(--w-ln)}
#tour .s1-pv{position:absolute;inset:0;width:100%;height:100%}
#tour .s1-hud{position:absolute;left:10px;right:10px;top:8px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#cfd4e2}
#tour .s1-tc{font-variant-numeric:tabular-nums;color:var(--w-orh)}
#tour .s1-now{position:absolute;left:10px;bottom:9px;display:flex;align-items:center;gap:7px;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;background:rgba(5,7,13,.72);padding:5px 9px;border:1px solid rgba(255,255,255,.12)}
#tour .s1-now i{width:6px;height:6px;background:var(--w-or);transform:rotate(45deg)}
#tour .s1-insp{flex:1;min-width:0;padding:14px 16px;display:flex;flex-direction:column;gap:12px}
#tour .s1-sel{display:flex;flex-direction:column;gap:5px}
#tour .s1-segname{font-size:15px;font-weight:600;letter-spacing:-.01em}
#tour .s1-segmeta{display:flex;justify-content:space-between;font-size:9.5px;letter-spacing:.06em;color:var(--w-mu)}
#tour .s1-st{transition:color .3s}
#tour .s1-st.ok{color:var(--w-orh)}
#tour .s1-why{flex:1;display:flex;flex-direction:column;gap:6px;min-height:0}
#tour .s1-typed{flex:1;font-size:14px;line-height:1.45;padding:9px 11px;border:1px solid rgba(227,91,50,.45);background:rgba(227,91,50,.06);color:#f3f4f8;min-height:46px}
#tour .s1-foot{display:flex;justify-content:space-between;align-items:center;font-size:9.5px;letter-spacing:.06em;color:var(--w-mu)}
#tour .s1-foot kbd{font-family:var(--mono);font-size:9px;padding:1px 5px;border:1px solid var(--w-ln2);color:var(--w-tx);margin:0 4px 0 8px}
#tour .s1-foot kbd:first-child{margin-left:0}
#tour .s1-count b{color:var(--w-orh);font-variant-numeric:tabular-nums}
#tour .s1-tl{position:relative;flex:1;display:flex;flex-direction:column;gap:6px;min-height:0}
#tour .tl-l{width:64px;flex:none;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--w-fa)}
#tour .s1-strip,#tour .s1-ruler,#tour .trk{display:flex;align-items:center}
#tour .s1-thumbs{flex:1;height:52px;position:relative;border:1px solid var(--w-ln)}
#tour .s1-th{position:absolute;inset:0;width:100%;height:100%}
#tour .s1-ruler>div{flex:1;display:flex;justify-content:space-between;font-size:8.5px;letter-spacing:.08em;color:var(--w-fa);border-bottom:1px solid var(--w-ln);padding-bottom:3px;background:repeating-linear-gradient(90deg,var(--w-ln) 0 1px,transparent 1px 18.3px) bottom/100% 4px no-repeat}
#tour .s1-tracks{position:relative;display:flex;flex-direction:column;gap:5px}
#tour .trk{height:30px}
#tour .lane{position:relative;flex:1;height:100%;background:rgba(255,255,255,.018);border:1px solid rgba(255,255,255,.04)}
#tour .seg{position:absolute;top:2px;bottom:2px;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:0 7px;font-size:10.5px;white-space:nowrap;overflow:hidden;
  border:1px dashed rgba(63,184,166,.75);background:rgba(63,184,166,.07);color:#9fe0d6;opacity:0;transform:translateY(3px);transition:opacity .35s,transform .35s,background .25s,border-color .25s,color .25s}
#tour .seg.in{opacity:1;transform:none}
#tour .seg em{font-style:normal;font-family:var(--mono);font-size:8.5px;padding:1px 4px;background:rgba(63,184,166,.18);color:#bff0e8;flex:none}
#tour .seg.ok{border:1px solid #ff8a5c;border-left:2px solid #fff;background:linear-gradient(180deg,#e9643a,#d7522b);color:#fff}
#tour .seg.ok em{background:rgba(255,255,255,.16);color:#fff;font-size:0}
#tour .seg.ok em:after{content:"✓";font-size:9px}
#tour .seg.ok.ed em:after{content:"edited";font-size:8px;letter-spacing:.06em}
#tour .seg.snap{animation:trSnap .45s var(--ease)}
@keyframes trSnap{0%{transform:scaleY(.7);filter:brightness(1.8)}55%{transform:scaleY(1.12)}to{transform:none;filter:none}}
#tour .seg.sel{box-shadow:0 0 0 1px #fff,0 0 18px rgba(227,91,50,.5);z-index:2}
#tour .s1-fix:before{content:"";position:absolute;left:-1px;top:-2px;bottom:-2px;width:3px;background:#fff;opacity:var(--h,0)}
#tour .s1-whyseg{justify-content:flex-start;opacity:0}
#tour .s1-whyseg.in{opacity:1}
#tour .s1-whytxt{overflow:hidden;text-overflow:ellipsis}
#tour .s1-ph{position:absolute;top:-82px;bottom:-4px;left:64px;width:0;pointer-events:none;z-index:3}
#tour .s1-ph:before{content:"";position:absolute;left:0;top:0;bottom:0;width:1.5px;background:#fff;box-shadow:0 0 8px rgba(255,255,255,.6)}
#tour .s1-ph i{position:absolute;left:-5px;top:-2px;width:11.5px;height:9px;background:#fff;clip-path:polygon(0 0,100% 0,100% 55%,50% 100%,0 55%)}
#tour .s1-legend{display:flex;align-items:center;gap:22px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--w-mu);padding-left:64px;margin-top:2px}
#tour .s1-legend span{display:flex;align-items:center;gap:8px}
#tour .s1-legend i{width:18px;height:9px}
#tour .lg-d i{border:1px dashed var(--w-te);background:rgba(63,184,166,.1)}
#tour .lg-v i{background:var(--w-or)}
#tour .s1-accall{margin-left:auto;padding:7px 12px;font-size:9.5px}

/* ---------- 03 coverage ---------- */
#tour .s2{display:flex;flex-direction:column;gap:16px}
#tour .s2-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
#tour .s2-title{font-family:var(--display);font-weight:800;font-size:24px;letter-spacing:-.03em;margin-top:4px}
#tour .s2-filters{display:flex;gap:6px}
#tour .s2-filters .chip{border-color:var(--w-ln2);color:var(--w-mu);background:transparent}
#tour .s2-body{flex:1;display:flex;gap:22px;min-height:0}
#tour .s2-grid{flex:1;display:flex;flex-direction:column;gap:3px}
#tour .s2-cols,#tour .s2-row{display:grid;grid-template-columns:112px repeat(10,minmax(0,1fr));gap:3px;align-items:stretch}
#tour .s2-cols span{font-size:8.5px;letter-spacing:.02em;text-transform:uppercase;color:var(--w-fa);text-align:center;align-self:end;padding-bottom:4px;white-space:nowrap;overflow:hidden}
#tour .s2-cols b{font-weight:400}
#tour .s2-cols s{display:none;text-decoration:none}
#tour .s2-cols span.hl{color:var(--w-orh)}
#tour .s2-row{flex:1}
#tour .rl{font-size:11px;color:var(--w-mu);display:flex;align-items:center;white-space:nowrap;transition:color .3s}
#tour .s2-row.hl .rl{color:var(--w-tx)}
#tour .s2-row i{position:relative;background:rgba(255,255,255,.03);border:1px solid transparent;transition:border-color .3s}
#tour .s2-row i b{position:absolute;inset:0;background:var(--w-or);opacity:0}
#tour .s2-row i.gap{border:1px dashed rgba(63,184,166,.8);background:rgba(63,184,166,.06)}
#tour .s2-row i.gap:after{content:"";position:absolute;inset:-1px;border:1px solid var(--w-te);opacity:0;animation:trGap 1.8s ease-in-out infinite;animation-delay:var(--dl,0s)}
@keyframes trGap{0%,100%{opacity:0;transform:scale(1)}50%{opacity:.9;transform:scale(1.1)}}
#tour .s2-row i.hit{border-color:#fff;z-index:2}
#tour .s2-row i.land{animation:trPop .6s var(--ease)}
#tour .s2-side{width:186px;flex:none;display:flex;flex-direction:column;gap:12px}
#tour .s2-side .kpi{display:flex;flex-direction:column;gap:4px;padding-bottom:12px;border-bottom:1px solid var(--w-ln)}
#tour .s2-side .kpi b{font-family:var(--display);font-weight:800;font-size:30px;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
#tour .s2-side .kpi small{font-size:14px;color:var(--w-mu);letter-spacing:0}
#tour .s2-gaps{color:var(--w-te)}
#tour .s2-legend{display:flex;flex-direction:column;gap:6px;font-size:8.5px;letter-spacing:.08em;color:var(--w-fa)}
#tour .s2-legend .lbl{font-size:8.5px}
#tour .s2-legend .ramp{height:8px;background:linear-gradient(90deg,rgba(227,91,50,.08),rgba(227,91,50,1))}
#tour .s2-legend .ends{display:flex;justify-content:space-between}
#tour .s2-legend .gapkey{display:flex;align-items:center;gap:8px;text-transform:uppercase;margin-top:4px}
#tour .s2-legend .gapkey i{width:14px;height:10px;border:1px dashed var(--w-te)}
#tour .s2-btn{margin-top:auto;padding:12px 10px}
#tour .s2-btn b{transition:transform .3s}
#tour .s2-btn.hov b{transform:translateX(4px)}
#tour .s2-fly{position:absolute;left:0;top:0;padding:4px 8px;background:var(--w-or);color:#fff;font-size:9.5px;letter-spacing:.08em;white-space:nowrap;opacity:0;z-index:6;box-shadow:0 8px 24px -6px rgba(227,91,50,.6);pointer-events:none}
#tour .s2-tip{position:absolute;left:0;top:0;display:flex;flex-direction:column;gap:3px;padding:9px 11px;background:#1b2440;border:1px solid var(--w-ln2);font-size:9.5px;letter-spacing:.05em;color:var(--w-mu);opacity:0;z-index:7;white-space:nowrap;box-shadow:0 14px 30px -10px rgba(0,0,0,.8);pointer-events:none;transition:opacity .25s}
#tour .s2-tip b{color:var(--w-tx);font-weight:400;font-size:10.5px}
#tour .s2-tip span:nth-of-type(1){color:#8fe0d4}
#tour .s2-toast{bottom:-6px}

/* ---------- 04 QA report ---------- */
#tour .s3-card{position:absolute;inset:0;background:var(--w-pan);border:1px solid var(--w-ln);display:flex;flex-direction:column;padding:20px 24px 14px}
#tour .s3-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--w-ln)}
#tour .s3-title{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.03em;line-height:1;margin:6px 0 6px}
#tour .s3-sub{font-size:10px;letter-spacing:.08em;color:var(--w-mu)}
#tour .s3-seal{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--w-mu)}
#tour .s3-seal b{color:#fff;background:var(--w-or);padding:5px 10px;letter-spacing:.18em;font-weight:700}
#tour .s3-body{flex:1;display:grid;grid-template-columns:1.05fr 1fr;gap:28px;padding-top:18px;min-height:0}
#tour .s3-agree{display:flex;flex-direction:column;gap:12px}
#tour .s3-bars{list-style:none;display:flex;flex-direction:column;justify-content:space-between;gap:10px;position:relative;flex:1;max-height:250px;padding:6px 0}
#tour .s3-bars li{display:grid;grid-template-columns:104px 1fr 34px 34px;gap:10px;align-items:center;font-size:11.5px}
#tour .s3-bars .nm{color:#c9cedb}
#tour .s3-bars .bar{position:relative;height:14px;background:rgba(255,255,255,.05)}
#tour .s3-bars .bar i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--w-or)}
#tour .s3-bars .bar:after{content:"";position:absolute;left:var(--fl,85%);top:-4px;bottom:-4px;width:1px;background:rgba(255,255,255,.55)}
#tour .s3-bars b{font-family:var(--mono);font-size:11px;font-weight:400;text-align:right;font-variant-numeric:tabular-nums}
#tour .s3-bars em{font-style:normal;font-size:8.5px;letter-spacing:.08em;color:var(--w-fa);text-transform:uppercase}
#tour .s3-mini{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--w-ln);border-bottom:1px solid var(--w-ln)}
#tour .s3-mini div{display:flex;flex-direction:column;gap:3px;padding:10px 0}
#tour .s3-mini b{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.02em}
#tour .s3-note{font-size:9px;letter-spacing:.06em;color:var(--w-fa);line-height:1.5}
#tour .s3-kpis{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-width:0;grid-template-rows:1fr 1fr;gap:10px}
#tour .s3-k{min-width:0;border:1px solid var(--w-ln);background:var(--w-bg);padding:12px 13px 10px;display:flex;flex-direction:column;gap:6px;min-height:0}
#tour .s3-k .v{font-family:var(--display);font-weight:800;font-size:28px;letter-spacing:-.035em;line-height:1;font-variant-numeric:tabular-nums}
#tour .s3-k .spark{width:100%;height:34px;margin-top:auto;overflow:visible}
#tour .s3-k .spark path{fill:none;stroke:var(--w-or);stroke-width:1.6;vector-effect:non-scaling-stroke}
#tour .s3-k .spark circle{fill:var(--w-orh);opacity:0}
#tour .s3-k .ax{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.1em;color:var(--w-fa);text-transform:uppercase}
#tour .s3-foot{display:flex;justify-content:space-between;padding-top:10px;margin-top:14px;border-top:1px solid var(--w-ln);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--w-fa)}
#tour .s3-tip{position:absolute;left:0;top:0;padding:6px 9px;background:#1b2440;border:1px solid var(--w-ln2);font-size:9.5px;letter-spacing:.06em;white-space:nowrap;opacity:0;z-index:6;pointer-events:none;transition:opacity .25s}

/* ---------- 05 deliver ---------- */
#tour .s4-bg{position:absolute;inset:0;padding:6px 4px;opacity:.32}
#tour .s4-bg ul{list-style:none;margin-top:12px}
#tour .s4-bg li{display:grid;grid-template-columns:80px 1.4fr 60px 1.2fr 80px;gap:12px;padding:12px 0;border-bottom:1px solid var(--w-ln);font-size:10px;letter-spacing:.04em;color:var(--w-mu)}
#tour .s4-dlg{position:absolute;left:50%;top:50%;width:520px;transform:translate(-50%,-50%);background:#141b2f;border:1px solid var(--w-ln2);padding:18px 22px 18px;display:flex;flex-direction:column;gap:12px;box-shadow:0 40px 80px -20px rgba(0,0,0,.85),0 0 0 9999px rgba(7,10,18,.45)}
#tour .s4-x{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--w-fa);border:1px solid var(--w-ln2);padding:2px 6px}
#tour .s4-title{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-.03em;line-height:1}
#tour .s4-f{display:flex;flex-direction:column;gap:6px}
#tour .s4-seg{display:grid;grid-template-columns:1.6fr 1fr 1fr;border:1px solid var(--w-ln2)}
#tour .s4-seg span{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 0;font-size:10.5px;letter-spacing:.08em;color:var(--w-mu);border-left:1px solid var(--w-ln2);transition:background .3s,color .3s}
#tour .s4-seg span:first-child{border-left:0}
#tour .s4-seg span.on{background:rgba(227,91,50,.16);color:#fff;box-shadow:inset 0 0 0 1px var(--w-or)}
#tour .s4-seg em{font-style:normal;font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:var(--w-orh)}
#tour .s4-in{font-size:11px;padding:8px 10px;border:1px solid var(--w-ln2);background:var(--w-bg);color:#e8ebf3;min-height:32px;white-space:nowrap;overflow:hidden}
#tour .s4-in.foc{border-color:var(--w-or)}
#tour .s4-in .caret{opacity:0}
#tour .s4-in.foc .caret{opacity:1}
#tour .s4-inc{flex-direction:row;gap:18px;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:#c9cedb}
#tour .s4-inc span{display:flex;align-items:center;gap:7px}
#tour .s4-inc i{width:12px;height:12px;background:var(--w-or);position:relative}
#tour .s4-inc i:after{content:"";position:absolute;left:3.5px;top:1px;width:3px;height:6.5px;border:solid #fff;border-width:0 1.4px 1.4px 0;transform:rotate(45deg)}
#tour .s4-man{font-size:10px;line-height:1.6;padding:10px 12px;background:#0a0e19;border:1px solid var(--w-ln);color:#d5d9e5;white-space:pre;overflow:hidden;margin:0}
#tour .s4-man .k{color:var(--w-fa)}
#tour .s4-man .c{color:var(--w-fa)}
#tour .s4-man .o{color:var(--w-orh)}
#tour .s4-act{display:flex;align-items:center;gap:14px;margin-top:2px;transition:opacity .3s}
#tour .s4-dlg.done .s4-act{opacity:0}
#tour .s4-prog{flex:1;display:flex;flex-direction:column;gap:6px;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--w-mu)}
#tour .s4-bar{height:3px;background:rgba(255,255,255,.08);position:relative}
#tour .s4-bar i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--w-or);box-shadow:0 0 10px var(--w-or)}
#tour .s4-done{position:absolute;left:-1px;right:-1px;bottom:-1px;display:flex;align-items:center;gap:12px;padding:16px 22px;background:var(--w-or);color:#fff;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;opacity:0;transform:translateY(8px);transition:opacity .4s var(--ease),transform .4s var(--ease)}
#tour .s4-done.show{opacity:1;transform:none}
#tour .s4-done i{width:18px;height:18px;border-radius:50%;background:#fff;position:relative;flex:none}
#tour .s4-done i:after{content:"";position:absolute;left:6px;top:3px;width:4.5px;height:8.5px;border:solid var(--w-or);border-width:0 2px 2px 0;transform:rotate(45deg)}

@media (min-width:1281px){#tour .tr-layout{padding-right:max(var(--gut),150px)}}

/* ---------- stacked layout (tablet / small laptop) ---------- */
@media (max-width:1179px){
  #tour .tr-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:18px;align-items:stretch}
  #tour .tr-fit{grid-row:1}
  #tour .tr-caps{grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 28px;align-items:end}
  #tour .tr-count{display:none}
  #tour .tr-capstack{grid-column:1/-1;height:104px}
  #tour .tr-cap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px 36px;align-content:start}
  #tour .tr-cap .tr-k{grid-column:1;margin-bottom:0}
  #tour .tr-cap h3{grid-column:1;font-size:clamp(26px,3.4vw,34px);margin:0}
  #tour .tr-cap p:last-child{grid-column:2;grid-row:1/span 2;max-width:none;font-size:15px}
  #tour .tr-steps{flex-direction:row;border-left:0;border-top:1px solid var(--line-d);gap:18px;grid-column:1;grid-row:2}
  #tour .tr-steps button{padding:10px 0 0}
  #tour .tr-steps button:before{left:0;right:0;top:-1px;bottom:auto;height:1px;width:auto;transform:scaleX(var(--f,0));transform-origin:left}
  /* steps row can be as wide as the column: fine print gets its own row so it never collides with DELIVER */
  #tour .tr-fine{grid-column:1/-1;grid-row:3;max-width:none;text-align:left;font-size:11px}
}

/* ---------- mobile: window full-width, caption below, simplified screens ---------- */
@media (max-width:699px){
  #tour .tr-intro{padding-top:96px}
  #tour .tr-intro .h2{margin:18px 0 16px}
  #tour .tr-intro .lede{font-size:16px}
  #tour .tr-layout{padding-top:80px;padding-bottom:12px;gap:12px}
  #tour .tr-caps{display:flex;flex-direction:column;align-items:stretch;gap:10px}
  #tour .tr-capstack{height:128px}
  #tour .tr-cap{display:block}
  #tour .tr-cap .tr-k{font-size:10px;margin-bottom:8px}
  #tour .tr-cap h3{font-size:24px;margin-bottom:8px}
  #tour .tr-cap p:last-child{font-size:13.5px;line-height:1.5}
  #tour .tr-steps{gap:0;justify-content:space-between}
  #tour .tr-steps button{font-size:9px;letter-spacing:.14em;gap:7px}
  #tour .tr-fine{text-align:left;font-size:10.5px;max-width:none}

  #tour .dk{display:none !important}
  #tour .tr-win{width:360px;height:520px;grid-template-columns:minmax(0,1fr);grid-template-rows:38px minmax(0,1fr) 22px}
  #tour .tr-side{display:none}
  #tour .tr-top{gap:12px;padding:0 12px}
  #tour .tr-brand{width:auto;font-size:15px}
  #tour .tr-crumbs{font-size:9px;letter-spacing:.1em}
  #tour .tr-crumb .cp{display:none}
  #tour .tr-live{display:none}
  #tour .tr-status{gap:12px;padding:0 12px;font-size:8px}
  #tour .tr-scr{inset:12px}
  #tour .tr-cursor{display:none}
  #tour .tr-toast{font-size:9px;padding:9px 12px;letter-spacing:.06em}

  /* 01 */
  #tour .s0{flex-direction:column;gap:10px;justify-content:flex-start}
  #tour .s0-brief{order:-1;width:100%;padding:10px 12px;gap:8px;background:transparent;border:0;padding:0}
  #tour .s0-brief .pan-h,#tour .s0-title{display:none}
  #tour .s0-src{font-size:10px;padding:8px 10px;line-height:1.5}
  #tour .s0-eph{margin-bottom:5px}
  #tour .s0-sq i{height:10px}
  #tour .s0-phone{width:204px;height:340px;border-radius:30px;padding:6px}
  #tour .s0-vf,#tour .s0-hud{inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);border-radius:24px}
  #tour .s0-hud{padding:36px 11px 12px}
  #tour .s0-ring{width:48px;height:48px;top:56px;right:11px}
  #tour .s0-ring b{font-size:15px}
  #tour .s0-ring span{bottom:8px}
  #tour .s0-say{font-size:10px;padding:6px 8px;margin-bottom:8px}
  #tour .s0-checks{font-size:8px;gap:4px;margin-bottom:9px}
  #tour .s0-btns span{padding:8px 0}
  #tour .s0-toast{bottom:-4px;right:auto;left:50%;transform:translate(-50%,12px)}
  #tour .s0-toast.show{transform:translate(-50%,0)}

  /* 02 */
  #tour .s1{gap:10px}
  #tour .s1-top{height:auto}
  #tour .s1-prev{display:none}
  #tour .s1-insp{padding:11px 12px;gap:8px}
  #tour .s1-typed{font-size:13px;min-height:58px}
  #tour .s1-tl{gap:5px}
  #tour .tl-l{width:50px;font-size:8px;letter-spacing:.1em}
  #tour .s1-thumbs{height:44px}
  #tour .trk{height:28px}
  #tour .seg{font-size:9px;padding:0 4px}
  #tour .seg em{display:none}
  #tour .s1-ph{left:50px;top:-70px}
  #tour .s1-legend{padding-left:0;gap:12px;font-size:8px}
  #tour .s1-ruler>div span:nth-child(2),#tour .s1-ruler>div span:nth-child(4){display:none}

  /* 03 */
  #tour .s2{gap:10px}
  #tour .s2-title{font-size:20px}
  #tour .s2-body{flex-direction:column;gap:10px}
  #tour .s2-cols,#tour .s2-row{grid-template-columns:78px repeat(10,minmax(0,1fr));gap:2px}
  #tour .s2-grid{gap:2px;flex:none;height:258px}
  #tour .s2-cols b{display:none}
  #tour .s2-cols s{display:inline;font-size:7px}
  #tour .s2-cols span{font-size:7px;letter-spacing:0}
  #tour .rl{font-size:9.5px}
  #tour .s2-side{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px 12px}
  #tour .s2-side .kpi{padding-bottom:8px}
  #tour .s2-side .kpi b{font-size:22px}
  #tour .s2-side .kpi small{font-size:11px}
  #tour .s2-btn{grid-column:1/-1;margin-top:0}
  #tour .s2-toast{bottom:-4px}

  /* 04 */
  #tour .s3-card{padding:14px 14px 10px}
  #tour .s3-head{padding-bottom:10px}
  #tour .s3-title{font-size:20px}
  #tour .s3-seal span{display:none}
  #tour .s3-body{grid-template-columns:minmax(0,1fr);gap:14px;padding-top:12px}
  #tour .s3-bars{gap:6px;padding:0;flex:none}
  #tour .s3-bars .bar{height:11px}
  #tour .s3-bars li{grid-template-columns:92px 1fr 30px;font-size:10.5px;gap:8px}
  #tour .s3-bars em{display:none}
  #tour .s3-k{padding:8px 10px;gap:3px}
  #tour .s3-k .v{font-size:22px}
  #tour .s3-k .spark{height:18px}
  #tour .s3-sub{display:none}
  #tour .s3-kpis{grid-template-rows:auto auto}
  #tour .s3-k .lbl{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #tour .s3-agree{gap:8px}
  #tour .s3-k .ax{display:none}
  #tour .s3-mini{display:none}
  #tour .s3-kpis{gap:8px}
  #tour .s3-tip{display:none}

  /* 05 */
  #tour .s4-dlg{width:100%;left:0;top:0;transform:none;bottom:0;padding:14px 14px 14px;gap:10px;box-shadow:none}
  #tour .s4-title{font-size:19px}
  #tour .s4-seg span{font-size:9.5px;flex-direction:column;gap:1px;padding:6px 0}
  #tour .s4-in{font-size:9.5px;padding:7px 8px}
  #tour .s4-man{font-size:9px;line-height:1.55;padding:8px 10px}
  #tour .s4-done{padding:14px 14px;font-size:9.5px;letter-spacing:.06em}
}

@media (prefers-reduced-motion:reduce){
  #tour .tr-cursor{display:none}
  #tour .caret,#tour .s2-row i.gap:after,#tour .tr-live i,#tour .s0-rec i{animation:none}
}
