/* 07.09 (Claude): мини-карта переведена в светлую систему, как большая карта на «Как это работает» —
   один визуальный мир на сайте: фон #FCFDFE + мягкий градиент, суша из world-land.svg, линия и узлы акцентом #C8412B. */
.route-mini{padding:var(--s12) 0;background:var(--hover);border-block:1px solid var(--line)}
.route-mini h2{max-width:26ch}
.route-mini__below{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:var(--s12);margin-top:var(--s8)}
.route-mini__below h3{margin-bottom:var(--s4)}
.route-mini__checks{display:grid;gap:var(--s3)}
.route-mini__checks li{position:relative;padding-left:24px;color:var(--ink-2)}
.route-mini__checks li::before{content:'✓';position:absolute;left:0;color:var(--accent)}
.route-mini__stages{margin:0;padding:0;list-style:none;display:grid;gap:var(--s3)}
.route-mini__stages li{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:var(--s4);padding-bottom:var(--s3);border-bottom:1px solid var(--line)}
.route-mini__stages b{font-weight:500}
.route-mini__stages span{color:var(--ink-3);font-size:var(--t-sm)}
.route-mini__more{display:inline-block;margin-top:var(--s6);color:var(--accent);border-bottom:1px solid currentColor}
.where-in-route{padding:var(--s8) 0;background:var(--ink);color:#fff;border-block:1px solid var(--ink)}
.where-in-route .label{color:rgba(255,255,255,.52);text-transform:uppercase;letter-spacing:.1em}
.where-in-route h2{margin-top:var(--s2);font-family:var(--sans);font-size:clamp(20px,2vw,28px);font-weight:500}
.where-in-route a{display:inline-block;margin-top:var(--s4);color:#fff;border-bottom:1px solid rgba(255,255,255,.45);font-size:var(--t-sm)}

.mini-map{margin-top:32px;color:#0D2039;font-family:var(--sans)}
.mini-map__viewport{overflow:clip;background:#FCFDFE;border:1px solid #E1E6EC}
.mini-map__canvas{position:relative;width:100%;aspect-ratio:1200/560;overflow:hidden;background:radial-gradient(ellipse at 62% 42%,#eef3f6 0,transparent 65%)}
.mini-map__canvas svg{width:100%;height:100%}
.mini-map__grid path{fill:none;stroke:#dbe3e9;stroke-width:.55}
.mini-map__land{opacity:.38}
.mini-map__ocean{fill:#758797;font:10px var(--sans);letter-spacing:.22em}
.mini-map__route{fill:none;stroke:#C8412B;stroke-width:3;stroke-linecap:round}
.mini-map__place{fill:#0D2039;paint-order:stroke;stroke:#FCFDFE;stroke-width:5px;font:500 16px var(--sans)}
.mini-map__nodes{position:absolute;inset:0}
.mini-map__node{position:absolute;transform:translate(-50%,-50%);z-index:2}
.mini-map__node button{width:42px;height:42px;border-radius:50%;border:1px solid #C8412B;background:#FCFDFE;color:#C8412B;font:12px var(--mono);cursor:pointer}
.mini-map__node button[aria-pressed="true"]{background:#C8412B;border-color:#C8412B;color:#FCFDFE}
.mini-map__node span{position:absolute;left:50%;top:calc(100% + 7px);transform:translateX(-50%);white-space:nowrap;color:#0D2039;font:11px var(--mono);letter-spacing:.04em;background:#FCFDFE;padding:2px 7px;}
.mini-map__caption{position:absolute;left:16px;bottom:12px;color:#5B6B7C;font:10px var(--mono);letter-spacing:.04em}
.mini-map__card{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:24px;align-items:center;padding:24px;border:1px solid #E1E6EC;border-top:0;background:#FCFDFE}
.mini-map__card img{width:100%;aspect-ratio:16/9;object-fit:cover}
.mini-map__card span{color:#C8412B;font:11px var(--mono);letter-spacing:.08em}
.mini-map__card h3{margin:8px 0 4px;font:500 clamp(18px,2vw,24px)/1.2 var(--sans)}
.mini-map__card p{color:#46586E;font-size:14px}
.mini-map__card a{display:inline-block;margin-top:16px;color:#C8412B;border-bottom:1px solid currentColor;font-size:14px}

@media (max-width:899px){
  .route-mini__below{grid-template-columns:minmax(0,1fr);gap:var(--s8)}
  .route-mini__stages li{grid-template-columns:minmax(0,1fr);gap:var(--s1)}
  .mini-map__viewport{height:300px}
  .mini-map__canvas{width:740px;height:345px;aspect-ratio:auto;left:50%;transform:translateX(-56%)}
  .mini-map__node span{display:none}
  .mini-map__node button{width:36px;height:36px;font-size:10px}
  .mini-map__place{font-size:20px;stroke-width:6px}
  .mini-map__caption{display:none}
  .mini-map__card{grid-template-columns:1fr;padding:16px;gap:16px;border-top:1px solid #E1E6EC}
}
