/* Călătorie prin Moldova (varianta „Traseu") — harta din fundalul paginii principale, vezi journey.js */
#journey{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;opacity:0;transition:opacity .8s ease}
#journey.on{opacity:1}
body>section,body>footer,body>.orn{position:relative;z-index:1}
.alt,.igs,.menu-sec{background:rgba(62,4,4,.5)!important}
.book-form,.rev{background-color:rgba(38,0,0,.84)}

/* cartela stației */
.j-card{opacity:0;transition:opacity .7s ease;position:absolute;right:clamp(20px,4vw,64px);bottom:clamp(110px,14vh,140px);text-align:right;color:var(--cream);max-width:360px}
.j-card .j-no{font:700 11px/1 'Mona Sans','Manrope',sans-serif;letter-spacing:.3em;color:#E0262E;text-transform:uppercase}
.j-card .j-name{margin-top:10px;font:800 clamp(22px,2.6vw,36px)/1 'Mona Sans','Manrope',sans-serif;font-variation-settings:'wdth' 118;letter-spacing:.02em;text-transform:uppercase}
.j-card .j-sub{margin-top:8px;font:400 14px/1.4 'Mona Sans','Manrope',sans-serif;color:rgba(243,238,231,.62)}
.j-card.show{opacity:1}
.j-card>*{transition:opacity .45s ease,transform .6s cubic-bezier(.2,.7,.3,1)}
.j-card.swap>*{opacity:0;transform:translateY(10px)}
.j-card .j-bar{margin:14px 0 0 auto;height:2px;width:120px;background:rgba(243,238,231,.14);position:relative;overflow:hidden}
.j-card .j-bar i{position:absolute;inset:0 auto 0 0;width:0;background:#E0262E}

#journey svg:not([style]){position:absolute;top:84px;right:0;height:calc(100% - 104px);width:min(56vw,820px)}
#journey .md{fill:rgba(243,238,231,.02);stroke:rgba(243,238,231,.17);stroke-width:1.6;vector-effect:non-scaling-stroke}
#journey .route-bg{fill:none;stroke:rgba(243,238,231,.1);stroke-width:1.5;stroke-dasharray:2 7;vector-effect:non-scaling-stroke}
/* fără vector-effect aici: dash-ul trebuie să fie în unitățile hărții, ca linia să se oprească exact în punct */
#journey .route{fill:none;stroke:#E0262E;stroke-width:3.8;stroke-linecap:round}
#journey .stop rect{fill:#260000;stroke:rgba(243,238,231,.45);stroke-width:1.4;vector-effect:non-scaling-stroke;transition:fill .5s,stroke .5s}
#journey .stop text{font:700 17px 'Mona Sans','Manrope',sans-serif;letter-spacing:.14em;text-transform:uppercase;fill:rgba(243,238,231,.28);transition:fill .5s,opacity .5s}
#journey .stop.past rect{fill:#B90000;stroke:#E0262E}
#journey .stop.now text{fill:var(--cream)}
#journey .pin{transition:none}
#journey .pin .halo{fill:none;stroke:#E0262E;stroke-width:1.5;vector-effect:non-scaling-stroke;animation:jHalo 2.4s ease-out infinite;transform-box:fill-box;transform-origin:center}
#journey .pin .core{fill:#E0262E;stroke:var(--cream);stroke-width:1.6;vector-effect:non-scaling-stroke}
@keyframes jHalo{from{transform:scale(.6);opacity:.9}to{transform:scale(2.6);opacity:0}}

@media(max-width:820px){
  #journey svg:not([style]){width:100%}
  .j-card{left:20px;right:100px;bottom:20px;text-align:left;max-width:none}
  .j-card.show{opacity:.8}
  /* pe telefon harta stă sub text: mai discretă, fără numele orașelor (doar cel curent) */
  #journey svg:not([style]){opacity:.4}
  #journey .stop text{opacity:0}
  #journey .stop.now text{opacity:1}
  .j-card .j-name{font-size:20px}.j-card .j-sub{font-size:12.5px}
  .j-card .j-bar{margin-left:0}
}

@media(prefers-reduced-motion:reduce){#journey .pin .halo{animation:none}}
