:root{
  --bg:#07090d;
  --bg-soft:#0b0f16;
  --text:#f2f0e9;
  --muted:#8f98a7;
  --muted2:#667184;
  --line:rgba(242,240,233,.14);
  --blue:#74aaff;
  --orange:#ff7048;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button,select{font:inherit}
body{min-height:100vh}

.site-header{position:fixed;left:48px;top:26px;z-index:100;display:flex;align-items:center;gap:52px;height:40px}
.brand{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700;letter-spacing:.11em;white-space:nowrap}
.brand-mark{width:9px;height:9px;border-radius:50%;background:var(--orange);box-shadow:0 0 22px rgba(255,112,72,.7)}
.nav{display:flex;gap:30px;align-items:center}.nav a{position:relative;font-size:13px;color:var(--muted);padding:7px 0;transition:.25s}.nav a:hover,.nav a.active{color:var(--text)}.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:2px;border-radius:999px;background:var(--orange)}
.eyebrow{font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.16em;color:var(--muted2);font-weight:700}.eyebrow.orange{color:var(--orange)}.eyebrow.blue{color:var(--blue)}
.primary-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;border-radius:999px;background:var(--text);color:var(--bg);font-size:13px;font-weight:700}.text-link{font-size:13px;color:var(--muted);transition:.2s}.text-link:hover{color:var(--text)}

/* MY ROAD — one screen, no scroll */
.road-page{height:100vh;overflow:hidden;background:radial-gradient(circle at 78% 20%,rgba(116,170,255,.08),transparent 28%),var(--bg)}
.road-main{height:100vh;padding:104px 48px 28px;display:grid;grid-template-columns:minmax(560px,1.15fr) minmax(420px,.85fr);gap:56px;max-width:1500px;margin:0 auto}
.road-left,.road-right{min-height:0}
.road-left{display:grid;grid-template-rows:auto 1fr}
.road-title{display:flex;align-items:end;justify-content:space-between;gap:28px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.road-title h1{margin:10px 0 0;font-size:clamp(48px,5.3vw,86px);line-height:.9;letter-spacing:-.06em}.road-title p{max-width:340px;margin:0;color:var(--muted);font-size:15px;line-height:1.45}
.road-questions{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:0 30px;min-height:0;padding-top:8px}
.road-q{display:grid;grid-template-columns:34px 1fr;gap:12px;align-content:center;border-bottom:1px solid rgba(242,240,233,.1);padding:12px 0;min-height:0}.road-q:nth-last-child(-n+2){border-bottom:0}
.q-num{width:28px;height:28px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--orange);font-size:10px;margin-top:2px}.q-body h3{font-size:18px;line-height:1.1;margin:0 0 4px;letter-spacing:-.025em}.q-body p{font-size:11px;line-height:1.35;margin:0 0 9px;color:var(--muted2)}
.simple-select{width:100%;max-width:210px;background:transparent;color:var(--text);border:1px solid var(--line);border-radius:12px;padding:9px 11px;outline:none}
.inline-choices{display:flex;gap:6px;flex-wrap:wrap}.choice-chip{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:7px 10px;cursor:pointer;font-size:11px;transition:.2s}.choice-chip:hover,.choice-chip.active{background:var(--text);border-color:var(--text);color:var(--bg)}
.road-right{padding-left:38px;border-left:1px solid var(--line);display:flex;flex-direction:column}.road-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.road-preview-head h2{font-size:clamp(44px,4.2vw,68px);line-height:.9;letter-spacing:-.055em;margin:9px 0 0}.day{font-size:11px;color:var(--orange);letter-spacing:.16em;text-transform:uppercase}
.preview-chips{display:flex;gap:6px;flex-wrap:wrap;margin:20px 0 26px}.preview-chips span{padding:6px 9px;border:1px solid rgba(242,240,233,.1);border-radius:999px;color:var(--muted);font-size:10px}
.route-line{position:relative;display:grid;gap:26px;padding:4px 0 0 34px;flex:1}.route-line:before{content:"";position:absolute;left:12px;top:16px;bottom:20px;width:2px;background:linear-gradient(var(--orange),rgba(242,240,233,.08))}.route-item{position:relative}.route-item:before{content:attr(data-step);position:absolute;left:-34px;top:-2px;width:28px;height:28px;border-radius:50%;background:var(--bg);border:1px solid var(--line);display:grid;place-items:center;font-size:10px}.route-item.current:before{border-color:var(--orange);color:var(--orange)}.route-item strong{display:block;font-size:24px;line-height:1.08;letter-spacing:-.03em}.route-item small{display:block;margin-top:4px;color:var(--muted);font-size:12px}
.road-foot{padding-top:18px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px}.road-foot p{margin:0;color:var(--muted);font-size:12px;line-height:1.45;max-width:300px}

/* MAP — one screen, metro-like and minimal */
.map-page{height:100vh;overflow:hidden;background:radial-gradient(circle at 45% 42%,rgba(116,170,255,.07),transparent 30%),var(--bg)}
.map-main{height:100vh;padding:104px 48px 28px;max-width:1500px;margin:0 auto;display:grid;grid-template-columns:minmax(700px,1.45fr) minmax(330px,.55fr);gap:44px}
.map-left{display:grid;grid-template-rows:auto 1fr;min-height:0}.map-head{display:flex;justify-content:space-between;align-items:end;gap:28px;padding-bottom:18px;border-bottom:1px solid var(--line)}.map-head h1{font-size:clamp(48px,5vw,80px);line-height:.9;letter-spacing:-.055em;margin:10px 0 0}.map-head p{max-width:370px;margin:0;color:var(--muted);font-size:14px;line-height:1.45}
.map-toolbar{display:flex;gap:7px;margin-top:12px;flex-wrap:wrap}.map-toolbar button{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:7px 10px;cursor:pointer;font-size:10px}.map-toolbar button.active{background:var(--text);border-color:var(--text);color:var(--bg)}
.metro-map{position:relative;min-height:0;overflow:hidden}.metro-map svg{position:absolute;inset:0;width:100%;height:100%}.metro-route{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:12}.metro-route.main{stroke:var(--blue)}.metro-route.branch{stroke:var(--orange);stroke-width:9;stroke-dasharray:9 10}.metro-route.shadow{stroke:rgba(242,240,233,.06);stroke-width:24}
.metro-stop{position:absolute;transform:translate(-50%,-50%);background:transparent;border:0;color:var(--text);padding:0;cursor:pointer;text-align:left}.stop-dot{display:block;width:22px;height:22px;border-radius:50%;background:var(--bg);border:4px solid #dbe4f7;margin-bottom:7px;transition:.2s}.metro-stop.active .stop-dot{border-color:var(--orange);box-shadow:0 0 18px rgba(255,112,72,.25)}.stop-label{display:block;white-space:nowrap;font-size:14px;font-weight:650;letter-spacing:-.02em}.stop-state{display:block;margin-top:2px;font-size:10px;color:var(--muted);white-space:nowrap}.metro-stop.hidden{opacity:.18;pointer-events:none}
.map-right{padding-left:34px;border-left:1px solid var(--line);display:flex;flex-direction:column}.map-info-top{display:flex;justify-content:space-between;align-items:baseline}.map-info-top small{color:var(--orange);letter-spacing:.16em;text-transform:uppercase;font-size:10px}.map-info-top b{font-size:42px;line-height:1}.map-right h2{font-size:clamp(38px,3.5vw,56px);line-height:.95;letter-spacing:-.045em;margin:14px 0 12px}.map-right>p{font-size:14px;line-height:1.5;color:var(--muted);margin:0 0 18px}.info-plain{display:grid;gap:0}.info-plain div{padding:14px 0;border-top:1px solid rgba(242,240,233,.1)}.info-plain small{display:block;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted2);margin-bottom:5px}.info-plain span{font-size:13px;line-height:1.45}.map-right .text-link{margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}

/* STEPS — previous direction, much simpler */
.steps-page{background:var(--bg)}.scroll-progress{position:fixed;left:0;top:0;width:100%;height:2px;z-index:110;background:rgba(255,255,255,.04)}.scroll-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--blue),var(--orange))}
.steps-main{padding:118px 48px 70px;max-width:1280px;margin:0 auto}.steps-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;padding-bottom:46px;border-bottom:1px solid var(--line)}.steps-hero h1{font-size:clamp(66px,7vw,112px);line-height:.87;letter-spacing:-.06em;margin:13px 0 0}.steps-hero p{margin:0;color:var(--muted);font-size:19px;line-height:1.5;max-width:500px}
.chain-simple{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:28px 0 40px;border-bottom:1px solid var(--line)}.chain-simple span{padding:9px 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px}.chain-simple span.active{border-color:var(--orange);color:var(--text)}.chain-simple i{display:block;width:30px;height:1px;background:linear-gradient(90deg,var(--blue),var(--orange))}
.step-section{display:grid;grid-template-columns:180px 1fr;gap:52px;padding:56px 0;border-bottom:1px solid var(--line)}.step-index{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--orange)}.step-body h2{font-size:clamp(46px,5vw,78px);line-height:.93;letter-spacing:-.055em;margin:0 0 14px}.step-body p{font-size:17px;line-height:1.55;color:var(--muted);max-width:760px;margin:0}.step-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}.step-meta div{padding-top:12px;border-top:1px solid rgba(242,240,233,.1)}.step-meta small{display:block;color:var(--muted2);font-size:9px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:5px}.step-meta span{font-size:14px;line-height:1.45}.step-quote{margin-top:24px;padding-left:18px;border-left:2px solid var(--orange);font-size:16px;line-height:1.5;color:#c9d0da}.steps-end{display:flex;justify-content:space-between;gap:32px;align-items:end;padding-top:48px}.steps-end h2{font-size:clamp(48px,5vw,76px);line-height:.93;letter-spacing:-.05em;margin:0}.steps-end-actions{display:flex;gap:10px;flex-wrap:wrap}
.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.in{opacity:1;transform:none}

@media(max-width:1000px){
  .road-page,.map-page{height:auto;overflow:auto}.road-main,.map-main{height:auto;grid-template-columns:1fr;padding:110px 24px 40px}.road-right,.map-right{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:28px}.road-questions{grid-template-columns:1fr}.steps-main{padding-left:24px;padding-right:24px}.steps-hero{grid-template-columns:1fr}.step-section{grid-template-columns:1fr;gap:14px}
}
@media(max-width:720px){.site-header{left:20px;gap:26px}.nav{gap:14px}.nav a{font-size:11px}.brand{font-size:11px}.road-title,.map-head{display:block}.road-title p,.map-head p{margin-top:16px}.road-main,.map-main{padding-left:18px;padding-right:18px}.steps-main{padding-left:18px;padding-right:18px}.step-meta{grid-template-columns:1fr}.steps-end{align-items:flex-start;flex-direction:column}}

/* V10 adjustments — keep the direction, but fit My road and Map into one screen */
.road-page .site-header,
.map-page .site-header{top:22px}

.road-main{
  height:100vh;
  padding:92px 42px 22px;
  gap:40px;
  grid-template-columns:minmax(600px,1.14fr) minmax(360px,.86fr);
  overflow:hidden;
}
.road-title{padding-bottom:16px;gap:22px}
.road-title h1{font-size:clamp(42px,4.8vw,72px)}
.road-title p{max-width:300px;font-size:13px;line-height:1.38}
.road-questions{gap:0 24px;padding-top:2px}
.road-q{padding:8px 0;gap:10px}
.q-num{width:24px;height:24px;font-size:9px}
.q-body h3{font-size:16px;margin:0 0 3px}
.q-body p{font-size:10px;line-height:1.28;margin:0 0 7px}
.simple-select{max-width:190px;padding:8px 10px}
.inline-choices{gap:5px}
.choice-chip{padding:6px 9px;font-size:10px}
.road-right{padding-left:30px}
.road-preview-head h2{font-size:clamp(38px,3.8vw,56px);margin-top:8px}
.preview-chips{margin:14px 0 18px;gap:5px}
.preview-chips span{padding:5px 8px;font-size:9px}
.route-line{gap:18px;padding-left:30px}
.route-line:before{left:10px;top:14px;bottom:14px}
.route-item:before{left:-30px;width:24px;height:24px;font-size:9px}
.route-item strong{font-size:21px}
.route-item small{font-size:11px;margin-top:2px}
.road-foot{padding-top:12px;gap:12px}
.road-foot p{font-size:11px;line-height:1.35;max-width:250px}
.road-foot .primary-action{padding:12px 16px;font-size:12px;gap:18px}

.map-main{
  height:100vh;
  padding:92px 42px 22px;
  max-width:1500px;
  grid-template-columns:minmax(700px,1.42fr) minmax(285px,.58fr);
  gap:34px;
  overflow:hidden;
}
.map-left{overflow:hidden}
.map-head{padding-bottom:14px;gap:18px}
.map-head h1{font-size:clamp(42px,4.6vw,70px)}
.map-head p{max-width:320px;font-size:13px;line-height:1.38}
.map-toolbar{margin-top:10px;gap:6px}
.map-toolbar button{padding:6px 9px;font-size:10px}
.metro-map{margin-top:6px;overflow:hidden}
.metro-route{stroke-width:11}
.metro-route.branch{stroke-width:8}
.metro-route.shadow{stroke-width:22}
.metro-stop .stop-dot{width:18px;height:18px;border-width:3px;margin-bottom:5px}
.stop-label{font-size:13px}
.stop-state{font-size:9px}
.map-right{padding-left:26px}
.map-info-top b{font-size:34px}
.map-right h2{font-size:clamp(30px,3vw,44px);margin:10px 0 8px}
.map-right>p{font-size:13px;line-height:1.42;margin:0 0 12px}
.info-plain div{padding:10px 0}
.info-plain small{font-size:8px;margin-bottom:4px}
.info-plain span{font-size:12px;line-height:1.38}
.map-right .text-link{margin-top:14px;padding-top:12px}

@media (max-width: 1280px){
  .road-main{grid-template-columns:minmax(540px,1.06fr) minmax(330px,.94fr);gap:28px;padding-left:28px;padding-right:28px}
  .map-main{grid-template-columns:minmax(620px,1.35fr) minmax(260px,.65fr);gap:24px;padding-left:28px;padding-right:28px}
}

/* =========================================================
   V11 — preserve V6 composition, fit My road + Map in one viewport
   ========================================================= */
.fixed-screen-page{height:100vh;overflow:hidden;background:radial-gradient(circle at 76% 18%,rgba(116,170,255,.06),transparent 28%),var(--bg)}

/* My road — V6 layout, compact one-screen wizard */
.route-v11-shell{height:100vh;max-width:1460px;margin:0 auto;padding:94px 42px 22px;display:grid;grid-template-rows:190px 1fr;overflow:hidden}
.route-v11-head{display:grid;grid-template-columns:1.16fr .84fr;gap:60px;align-items:end;padding-bottom:22px;border-bottom:1px solid var(--line)}
.route-v11-head h1{margin:10px 0 0;font-size:clamp(52px,5.7vw,90px);line-height:.89;letter-spacing:-.06em}
.route-v11-head p{margin:0 0 8px;color:var(--muted);font-size:16px;line-height:1.45;max-width:490px}
.route-v11-body{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(350px,.68fr);gap:54px;min-height:0;padding-top:26px}
.route-v11-form{min-height:0;display:grid;grid-template-rows:auto 1fr auto}
.route-v11-progress{display:grid;grid-template-columns:auto minmax(180px,300px);align-items:center;justify-content:space-between;gap:24px;color:var(--muted);font-size:11px;letter-spacing:.12em}
.route-v11-progressbar{height:2px;background:rgba(242,240,233,.12);position:relative;overflow:hidden}
.route-v11-progressbar i{display:block;width:20%;height:100%;background:var(--orange);transition:.3s ease}
.route-v11-question{display:none;align-content:center;min-height:0;padding-right:40px}
.route-v11-question.active{display:grid}
.route-v11-kicker{font-size:12px;color:var(--orange);margin-bottom:20px}
.route-v11-question h2{margin:0;font-size:clamp(46px,5.1vw,76px);line-height:.94;letter-spacing:-.055em;max-width:750px}
.route-v11-question p{margin:18px 0 26px;color:var(--muted);font-size:16px;line-height:1.45;max-width:680px}
.route-v11-select{display:grid;grid-template-columns:1fr 230px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:7px 8px 7px 16px;max-width:680px;background:#0b1017;color:var(--muted);font-size:12px}
.route-v11-select select{appearance:none;border:0;outline:none;border-radius:13px;background:#151d29;color:var(--text);padding:14px 16px;font-size:16px}
.route-v11-options{display:flex;gap:10px;flex-wrap:wrap;max-width:700px}
.route-v11-options .choice-chip{font-size:13px;padding:11px 15px}
.route-v11-controls{display:flex;gap:12px;align-items:center;padding-bottom:6px}
.route-v11-controls button{border-radius:999px;padding:13px 18px;border:1px solid var(--line);cursor:pointer}
.route-v11-back{background:transparent;color:var(--muted)}
.route-v11-back:disabled{opacity:.3;cursor:default}
.route-v11-next{background:var(--text);color:var(--bg);min-width:130px}
.route-v11-preview{min-height:0;align-self:stretch;background:#0b1017;border:1px solid var(--line);border-radius:28px;padding:26px 26px 22px;display:grid;grid-template-rows:auto auto 1fr auto;box-shadow:0 30px 90px rgba(0,0,0,.22)}
.route-v11-preview-head{display:flex;align-items:start;justify-content:space-between;gap:18px}
.route-v11-preview-head h3{margin:8px 0 0;font-size:clamp(38px,3.4vw,52px);line-height:.95;letter-spacing:-.045em}
.route-v11-preview-head>span{font-size:10px;letter-spacing:.14em;color:var(--orange)}
.route-v11-preview .preview-chips{margin:14px 0 16px}
.route-v11-list{position:relative;display:grid;align-content:start;gap:22px;padding:6px 0 8px 4px}
.route-v11-list:before{content:"";position:absolute;left:13px;top:18px;bottom:28px;width:1px;background:linear-gradient(var(--orange),rgba(242,240,233,.08))}
.route-v11-item{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:start;position:relative}
.route-v11-item i{font-style:normal;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:var(--bg);font-size:10px;z-index:1}
.route-v11-item.current i{border-color:var(--orange);color:var(--orange)}
.route-v11-item strong{display:block;font-size:18px;line-height:1.15;margin-top:2px}
.route-v11-item small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.route-v11-map-btn{display:flex;align-items:center;justify-content:space-between;padding:14px 17px;border-radius:999px;background:var(--text);color:var(--bg);font-size:12px}

/* Map — V6 map stage + readable inspector, no scroll */
.map-v11-shell{height:100vh;max-width:1460px;margin:0 auto;padding:94px 42px 22px;display:grid;grid-template-rows:182px 42px 1fr;overflow:hidden}
.map-v11-head{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:end;padding-bottom:20px;border-bottom:1px solid var(--line)}
.map-v11-head h1{margin:10px 0 0;font-size:clamp(50px,5.2vw,82px);line-height:.9;letter-spacing:-.06em}
.map-v11-head p{margin:0 0 8px;color:var(--muted);font-size:15px;line-height:1.44;max-width:470px}
.map-v11-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px}
.map-v11-filters,.map-v11-examples{display:flex;gap:7px;align-items:center}
.map-v11-toolbar button{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:7px 11px;font-size:10px;cursor:pointer}
.map-v11-toolbar button.active{background:var(--text);border-color:var(--text);color:var(--bg)}
.map-v11-stage{position:relative;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:28px;background:radial-gradient(circle at 43% 47%,rgba(116,170,255,.10),transparent 34%),#080c12}
.map-v11-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:45px 45px;opacity:.45}
.map-v11-label{position:absolute;left:24px;top:18px;z-index:4;font-size:9px;letter-spacing:.16em;color:#596474}
.map-v11-svg{position:absolute;inset:0;width:100%;height:100%}
.map-v11-shadow,.map-v11-main,.map-v11-branch{fill:none;stroke-linecap:round;stroke-linejoin:round}
.map-v11-shadow{stroke:rgba(242,240,233,.06);stroke-width:23}
.map-v11-main{stroke:var(--blue);stroke-width:10}
.map-v11-branch{stroke:var(--orange);stroke-width:8;stroke-dasharray:9 10}
.map-v11-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:132px;min-height:76px;padding:11px 12px;border-radius:18px;background:rgba(11,16,23,.88);border:1px solid var(--line);color:var(--text);text-align:left;cursor:pointer;z-index:3;transition:.2s ease}
.map-v11-node:hover,.map-v11-node.selected{border-color:rgba(255,112,72,.7);box-shadow:0 0 0 1px rgba(255,112,72,.14),0 16px 40px rgba(0,0,0,.25)}
.map-v11-node span{display:block;color:var(--muted2);font-size:9px;margin-bottom:6px}
.map-v11-node strong{display:block;font-size:14px;line-height:1.15}
.map-v11-node small{display:block;color:var(--muted);font-size:9px;margin-top:5px}
.map-v11-node.selected small{color:var(--orange)}
.map-v11-node.hidden{opacity:.12;pointer-events:none}
.map-v11-inspector{position:absolute;right:20px;bottom:20px;width:360px;max-height:calc(100% - 40px);overflow:auto;z-index:6;background:rgba(10,15,23,.95);border:1px solid var(--line);border-radius:24px;padding:20px 22px;box-shadow:0 30px 80px rgba(0,0,0,.42);backdrop-filter:blur(14px);scrollbar-width:thin}
.map-v11-inspector-top{display:flex;justify-content:space-between;align-items:baseline}
.map-v11-inspector-top small{color:var(--orange);font-size:9px;letter-spacing:.14em}
.map-v11-inspector-top b{font-size:18px;color:var(--muted)}
.map-v11-inspector h2{font-size:clamp(26px,2.5vw,38px);line-height:.95;letter-spacing:-.04em;margin:10px 0 8px}
.map-v11-inspector>p{margin:0 0 12px;color:var(--muted);font-size:12px;line-height:1.42}
.map-v11-info{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;border-top:1px solid var(--line)}
.map-v11-info div{padding:11px 0;border-bottom:1px solid rgba(242,240,233,.08)}
.map-v11-info div:last-child{grid-column:1/-1}
.map-v11-info small{display:block;color:var(--muted2);font-size:8px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px}
.map-v11-info span{font-size:11px;line-height:1.4}
.map-v11-inspector .text-link{display:inline-block;margin-top:12px}

@media(max-width:1180px){
  .route-v11-shell,.map-v11-shell{padding-left:28px;padding-right:28px}
  .route-v11-body{gap:34px;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr)}
  .route-v11-head,.map-v11-head{gap:36px}
  .map-v11-inspector{width:330px}
  .map-v11-node{width:118px}
}

/* V12 — restore the previous Steps direction exactly, keep current header */
.step-v5{overflow-x:hidden;background:var(--bg)}
.step-v5 .scroll-progress{position:fixed;left:0;top:0;height:2px;width:100%;z-index:140;background:rgba(255,255,255,.03)}
.step-v5 .scroll-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--orange))}
.step-shell-v5{padding-top:90px}
.step-hero-v5{min-height:95svh;padding:90px 48px 70px;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;align-items:end;border-bottom:1px solid var(--line)}
.step-kicker{align-self:start;padding-top:14vh}
.step-number{font-size:clamp(120px,18vw,300px);line-height:.7;letter-spacing:-.09em;color:#161d27;font-weight:700}
.step-hero-copy h1{font-size:clamp(68px,9vw,150px);line-height:.84;letter-spacing:-.07em;margin:14px 0 0}
.step-hero-copy p{font-size:clamp(18px,1.7vw,26px);color:var(--muted);line-height:1.4;max-width:620px;margin-top:24px}
.step-story{display:grid;grid-template-columns:37% 63%;min-height:280svh}
.step-sticky{position:sticky;top:0;height:100svh;border-right:1px solid var(--line);padding:130px 48px 60px;display:flex;flex-direction:column;justify-content:space-between}
.mini-chain{position:relative;display:grid;gap:0;margin-top:40px}
.mini-chain:before{content:"";position:absolute;left:14px;top:14px;bottom:14px;width:2px;background:var(--line)}
.mini-chain-progress{position:absolute;left:14px;top:14px;width:2px;height:0;background:linear-gradient(var(--blue),var(--orange));z-index:2}
.mini-chain-item{position:relative;z-index:3;display:grid;grid-template-columns:30px 1fr;gap:14px;padding:18px 0}
.mini-chain-item i{width:30px;height:30px;border-radius:50%;background:var(--bg);border:1px solid rgba(242,240,233,.2);display:grid;place-items:center;font-size:9px;font-style:normal}
.mini-chain-item.active i{border-color:var(--orange);color:var(--orange)}
.mini-chain-item strong{font-size:13px}
.mini-chain-item small{display:block;color:var(--muted);font-size:10px;margin-top:4px}
.step-sticky-note{font-size:11px;line-height:1.5;color:var(--muted);max-width:320px}
.step-scroll{padding:0 clamp(30px,6vw,100px)}
.step-panel{min-height:92svh;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid var(--line);will-change:transform,opacity}
.step-panel:last-child{border-bottom:0}
.step-panel .panel-index{font-size:10px;color:var(--orange);margin-bottom:18px}
.step-panel h2{font-size:clamp(44px,5.6vw,92px);line-height:.93;letter-spacing:-.055em;margin:0;max-width:900px}
.step-panel>p{font-size:clamp(16px,1.45vw,22px);color:var(--muted);line-height:1.5;max-width:720px;margin:22px 0 0}
.step-v5 .action-card{margin-top:34px;max-width:700px;border:1px solid var(--line);border-radius:22px;padding:22px;background:#0b1017}
.step-v5 .action-card small{font-size:9px;color:#647080;text-transform:uppercase;letter-spacing:.12em}
.step-v5 .action-card strong{display:block;font-size:18px;margin-top:8px}
.step-v5 .action-card p{font-size:12px;line-height:1.5;color:var(--muted);margin:8px 0 0}
.step-v5 .two-info{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:30px;max-width:780px}
.step-v5 .two-info div{border-top:1px solid var(--line);padding:17px 0}
.step-v5 .two-info small{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#667182;margin-bottom:8px}
.step-v5 .two-info span{font-size:13px;line-height:1.45}
.step-v5 .trace-quote{font-size:clamp(30px,4vw,64px);line-height:1.08;letter-spacing:-.045em;max-width:850px;margin-top:34px;color:#c8ced7}
.step-end{min-height:86svh;display:grid;place-items:center;text-align:center;padding:100px 48px;background:#0a0e14}
.step-end h2{font-size:clamp(56px,8vw,126px);line-height:.87;letter-spacing:-.065em;margin:14px 0 0}
.step-end .hero-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:34px}
.step-v5 .ghost-action{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-width:190px;padding:14px 18px;border-radius:999px;border:1px solid var(--line);color:var(--muted);font-size:13px;transition:.25s}
.step-v5 .ghost-action:hover{border-color:rgba(242,240,233,.28);color:var(--text)}
@media(max-width:980px){
  .step-story{grid-template-columns:34% 66%}
  .step-sticky{padding-left:24px;padding-right:24px}
  .step-scroll{padding:0 34px}
}
@media(max-width:720px){
  .step-hero-v5{display:block;padding:120px 22px 70px}
  .step-kicker{padding-top:0}
  .step-number{font-size:160px;margin-bottom:50px}
  .step-story{display:block}
  .step-sticky{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:70px 22px}
  .step-scroll{padding:0 22px}
  .step-panel{min-height:88svh}
  .step-v5 .two-info{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .step-panel{transform:none!important;opacity:1!important}
}

/* =========================================================
   RESPONSIVE PASS — preserve desktop design, adapt smaller screens
   ========================================================= */

/* Safer viewport sizing on mobile browsers */
.fixed-screen-page{min-height:100svh}

/* Large tablets / small laptops */
@media (max-width:1180px){
  .site-header{left:28px;gap:34px}
  .nav{gap:22px}

  .route-v11-shell{padding:88px 28px 20px;grid-template-rows:164px 1fr}
  .route-v11-head{gap:30px;padding-bottom:18px}
  .route-v11-head h1{font-size:clamp(46px,6vw,72px)}
  .route-v11-head p{font-size:14px;max-width:420px}
  .route-v11-body{gap:28px;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);padding-top:20px}
  .route-v11-question{padding-right:18px}
  .route-v11-question h2{font-size:clamp(38px,5.8vw,62px)}
  .route-v11-question p{font-size:14px;margin:14px 0 20px}
  .route-v11-options .choice-chip{font-size:12px;padding:10px 13px}
  .route-v11-preview{padding:22px 20px 18px;border-radius:24px}
  .route-v11-preview-head h3{font-size:clamp(34px,4vw,46px)}
  .route-v11-list{gap:18px}
  .route-v11-item strong{font-size:16px}

  .map-v11-shell{padding:88px 28px 20px;grid-template-rows:156px 40px 1fr}
  .map-v11-head{gap:30px;padding-bottom:16px}
  .map-v11-head h1{font-size:clamp(44px,5.8vw,68px)}
  .map-v11-head p{font-size:13px;max-width:400px}
  .map-v11-node{width:108px;min-height:68px;padding:9px 10px;border-radius:16px}
  .map-v11-node strong{font-size:12px}
  .map-v11-node small{font-size:8px}
  .map-v11-inspector{width:300px;padding:18px 18px 16px}
  .map-v11-inspector h2{font-size:30px}
  .map-v11-info span{font-size:10.5px}
}

/* Tablets and narrow landscape devices: let content breathe vertically instead of clipping */
@media (max-width:900px), (max-height:720px){
  body.fixed-screen-page{height:auto;min-height:100svh;overflow:auto}

  .site-header{left:20px;right:20px;top:18px;width:auto;gap:24px;height:auto;align-items:center}
  .brand{flex:0 0 auto;font-size:11px}
  .nav{gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;-ms-overflow-style:none;padding:2px 0 7px}
  .nav::-webkit-scrollbar{display:none}
  .nav a{flex:0 0 auto;font-size:11px;white-space:nowrap}

  .route-v11-shell{height:auto;min-height:100svh;overflow:visible;padding:96px 22px 34px;display:block}
  .route-v11-head{grid-template-columns:1fr;gap:18px;align-items:start;padding-bottom:22px}
  .route-v11-head h1{font-size:clamp(48px,9vw,78px)}
  .route-v11-head p{max-width:620px;margin:0;font-size:15px}
  .route-v11-body{display:grid;grid-template-columns:1fr;gap:24px;padding-top:24px}
  .route-v11-form{min-height:520px;display:grid;grid-template-rows:auto minmax(300px,1fr) auto;padding:2px 0}
  .route-v11-progress{grid-template-columns:auto minmax(130px,240px)}
  .route-v11-question{padding-right:0;padding-block:24px}
  .route-v11-question h2{font-size:clamp(42px,8vw,68px)}
  .route-v11-question p{max-width:650px}
  .route-v11-preview{min-height:440px;align-self:auto}

  .map-v11-shell{height:auto;min-height:100svh;overflow:visible;padding:96px 22px 34px;display:block}
  .map-v11-head{grid-template-columns:1fr;gap:16px;align-items:start;padding-bottom:20px}
  .map-v11-head h1{font-size:clamp(46px,9vw,74px)}
  .map-v11-head p{margin:0;max-width:640px;font-size:14px}
  .map-v11-toolbar{padding:16px 0 14px;gap:12px;flex-wrap:wrap}
  .map-v11-filters,.map-v11-examples{flex-wrap:wrap}
  .map-v11-stage{height:650px;min-height:650px;border-radius:24px}
  .map-v11-inspector{width:min(320px,42vw);right:14px;bottom:14px;max-height:calc(100% - 28px)}

  .step-hero-v5{min-height:auto;padding:120px 28px 72px;grid-template-columns:.8fr 1.2fr;gap:5vw}
  .step-kicker{padding-top:7vh}
  .step-number{font-size:clamp(120px,22vw,210px)}
  .step-hero-copy h1{font-size:clamp(62px,11vw,100px)}
  .step-story{grid-template-columns:34% 66%}
  .step-sticky{padding:110px 26px 48px}
  .step-scroll{padding:0 30px}
  .step-panel{min-height:86svh}
}

/* Phones */
@media (max-width:700px){
  .site-header{left:16px;right:16px;top:14px;gap:18px}
  .brand{font-size:10px;letter-spacing:.09em}
  .brand-mark{width:8px;height:8px}
  .nav{gap:13px;max-width:calc(100vw - 118px)}
  .nav a{font-size:10px;padding:6px 0}

  .route-v11-shell{padding:82px 16px 28px}
  .route-v11-head{padding-bottom:18px}
  .route-v11-head h1{font-size:clamp(46px,14vw,64px);line-height:.9}
  .route-v11-head p{font-size:13px;line-height:1.42}
  .route-v11-body{gap:20px;padding-top:20px}
  .route-v11-form{min-height:500px}
  .route-v11-progress{grid-template-columns:auto 120px;gap:14px;font-size:9px}
  .route-v11-question{padding-block:22px}
  .route-v11-kicker{font-size:11px;margin-bottom:14px}
  .route-v11-question h2{font-size:clamp(38px,11vw,54px);line-height:.95}
  .route-v11-question p{font-size:13px;line-height:1.42;margin:14px 0 20px}
  .route-v11-select{grid-template-columns:1fr;gap:8px;max-width:none;padding:10px;border-radius:16px}
  .route-v11-select span{padding:2px 4px}
  .route-v11-select select{width:100%;font-size:15px}
  .route-v11-options{gap:7px}
  .route-v11-options .choice-chip{font-size:11px;padding:9px 12px}
  .route-v11-controls{padding-bottom:0}
  .route-v11-controls button{padding:11px 15px;font-size:12px}
  .route-v11-preview{min-height:auto;padding:20px 18px 18px;border-radius:22px}
  .route-v11-preview-head h3{font-size:38px}
  .route-v11-preview .preview-chips{margin:12px 0 16px}
  .preview-chips span{font-size:9px;padding:5px 8px}
  .route-v11-list{gap:18px}
  .route-v11-item strong{font-size:16px}
  .route-v11-map-btn{padding:13px 15px}

  .map-v11-shell{padding:82px 16px 26px}
  .map-v11-head h1{font-size:clamp(44px,13vw,62px);line-height:.91}
  .map-v11-head p{font-size:13px}
  .map-v11-toolbar{align-items:flex-start}
  .map-v11-toolbar button{padding:7px 10px;font-size:9px}
  .map-v11-stage{height:720px;min-height:720px;border-radius:20px}
  .map-v11-label{left:16px;top:14px;font-size:8px}
  .map-v11-svg{height:430px;top:0}
  .map-v11-node{width:94px;min-height:58px;padding:8px;border-radius:14px}
  .map-v11-node span{font-size:8px;margin-bottom:4px}
  .map-v11-node strong{font-size:11px;line-height:1.12}
  .map-v11-node small{font-size:7.5px;margin-top:3px}
  .map-v11-node[data-node="arrival"]{left:10%!important;top:40%!important}
  .map-v11-node[data-node="migration"]{left:31%!important;top:26%!important}
  .map-v11-node[data-node="branch"]{left:52%!important;top:12%!important}
  .map-v11-node[data-node="receipt"]{left:54%!important;top:39%!important}
  .map-v11-node[data-node="pass"]{left:76%!important;top:24%!important}
  .map-v11-node[data-node="services"]{left:85%!important;top:39%!important}
  .map-v11-inspector{left:12px;right:12px;bottom:12px;width:auto;max-height:278px;padding:16px 17px;border-radius:20px}
  .map-v11-inspector-top b{font-size:16px}
  .map-v11-inspector h2{font-size:27px;margin:8px 0 6px}
  .map-v11-inspector>p{font-size:11px;line-height:1.36;margin-bottom:8px}
  .map-v11-info{grid-template-columns:1fr 1fr;gap:0 12px}
  .map-v11-info div{padding:8px 0}
  .map-v11-info small{font-size:7px}
  .map-v11-info span{font-size:9.5px;line-height:1.32}
  .map-v11-inspector .text-link{font-size:11px;margin-top:8px}

  .step-shell-v5{padding-top:68px}
  .step-hero-v5{display:block;min-height:auto;padding:78px 18px 54px}
  .step-kicker{padding-top:0}
  .step-number{font-size:clamp(120px,42vw,180px);margin:30px 0 46px}
  .step-hero-copy h1{font-size:clamp(58px,17vw,82px);line-height:.86}
  .step-hero-copy p{font-size:16px;line-height:1.45;margin-top:20px}
  .step-story{display:block;min-height:auto}
  .step-sticky{position:relative;top:auto;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:52px 18px 34px}
  .mini-chain{margin-top:26px}
  .step-sticky-note{margin-top:24px}
  .step-scroll{padding:0 18px}
  .step-panel{min-height:auto;padding:64px 0;opacity:1!important;transform:none!important}
  .step-panel h2{font-size:clamp(42px,12vw,62px)}
  .step-panel>p{font-size:15px;line-height:1.5;margin-top:18px}
  .step-v5 .action-card{margin-top:24px;padding:18px;border-radius:18px}
  .step-v5 .action-card strong{font-size:16px}
  .step-v5 .two-info{grid-template-columns:1fr;margin-top:22px}
  .step-v5 .trace-quote{font-size:clamp(28px,9vw,44px);margin-top:24px}
  .step-end{min-height:auto;padding:80px 18px}
  .step-end h2{font-size:clamp(52px,15vw,76px)}
}

/* Very small phones */
@media (max-width:420px){
  .site-header{gap:14px}
  .nav{gap:11px;max-width:calc(100vw - 104px)}
  .nav a{font-size:9px}
  .route-v11-shell,.map-v11-shell{padding-left:14px;padding-right:14px}
  .route-v11-head h1{font-size:44px}
  .route-v11-question h2{font-size:40px}
  .route-v11-form{min-height:470px}
  .route-v11-preview-head h3{font-size:34px}
  .map-v11-head h1{font-size:46px}
  .map-v11-stage{height:740px;min-height:740px}
  .map-v11-node{width:86px}
  .map-v11-node strong{font-size:10px}
  .map-v11-info{grid-template-columns:1fr}
  .map-v11-info div:last-child{grid-column:auto}
  .map-v11-inspector{max-height:310px}
}

/* Short laptop windows: preserve the same look but avoid bottom clipping */
@media (min-width:901px) and (max-height:760px){
  .route-v11-shell{padding-top:78px;grid-template-rows:145px 1fr}
  .route-v11-head h1{font-size:58px}
  .route-v11-head p{font-size:13px}
  .route-v11-body{padding-top:16px}
  .route-v11-question h2{font-size:50px}
  .route-v11-question p{font-size:13px;margin:12px 0 16px}
  .route-v11-preview{padding:18px}
  .route-v11-preview-head h3{font-size:36px}
  .route-v11-list{gap:14px}
  .map-v11-shell{padding-top:78px;grid-template-rows:140px 36px 1fr}
  .map-v11-head h1{font-size:56px}
  .map-v11-head p{font-size:12px}
  .map-v11-node{width:104px;min-height:62px}
  .map-v11-inspector{width:290px;padding:15px 17px}
}


/* Social links — Telegram + Dzen */
.header-socials{
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:2px;
  flex:0 0 auto;
}
.header-social{
  width:30px;
  height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.13);
  border-radius:50%;
  text-decoration:none;
  opacity:.84;
  transition:opacity .2s ease, transform .2s ease, border-color .2s ease, background .2s ease;
  box-sizing:border-box;
}
.header-social:hover{
  opacity:1;
  transform:translateY(-1px);
  border-color:rgba(255,255,255,.3);
  background:rgba(255,255,255,.05);
}
.header-social svg{width:16px;height:16px;display:block}
.header-social.telegram svg{width:17px;height:17px}

@media(max-width:720px){
  .header-socials{gap:5px;margin-left:0}
  .header-social{width:27px;height:27px}
  .header-social svg{width:14px;height:14px}
  .header-social.telegram svg{width:15px;height:15px}
}
@media(max-width:520px){
  .header-socials{gap:4px}
  .header-social{width:25px;height:25px}
}
