/* MapMyStaff v1636 — resilient real-route comparison fallback, scoped to section 04. */
#section-04 .mms-live-route-demo__map{
  overflow:hidden;
}

#section-04 .mms-route-map-fallback{
  position:absolute;
  inset:0;
  z-index:250;
  display:block;
  width:100%;
  height:100%;
  background:#e7efed;
  transition:opacity .24s ease,visibility .24s ease;
}

#section-04 .mms-live-route-demo.mms-route-live-ready .mms-route-map-fallback{
  visibility:hidden;
  opacity:0;
  pointer-events:none;
}

#section-04 .mms-route-map-fallback__svg{
  display:block;
  width:100%;
  height:100%;
}

#section-04 .mms-route-map-fallback__land{fill:#eef3f1;}
#section-04 .mms-route-map-fallback__water{fill:#d9edf2;}
#section-04 .mms-route-map-fallback__shore{fill:none;stroke:#b9d7de;stroke-width:2;}
#section-04 .mms-route-map-fallback__park{fill:#dcebdd;stroke:#c7dfca;stroke-width:1;}
#section-04 .mms-route-map-fallback__block{fill:#f8faf9;stroke:#d9e3e0;stroke-width:1;}
#section-04 .mms-route-map-fallback__road-outline{
  fill:none;
  stroke:#c6d1ce;
  stroke-linecap:round;
  stroke-linejoin:round;
}
#section-04 .mms-route-map-fallback__road{
  fill:none;
  stroke:#fff;
  stroke-linecap:round;
  stroke-linejoin:round;
}
#section-04 .mms-route-map-fallback__road--major-outline{stroke-width:15;}
#section-04 .mms-route-map-fallback__road--major{stroke-width:11;}
#section-04 .mms-route-map-fallback__road--minor-outline{stroke-width:8;}
#section-04 .mms-route-map-fallback__road--minor{stroke-width:5.2;}
#section-04 .mms-route-map-fallback__road-center{
  fill:none;
  stroke:#d6dddb;
  stroke-width:1;
  stroke-dasharray:6 8;
}
#section-04 .mms-route-map-fallback__label{
  fill:#6a7d82;
  font:700 11px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.02em;
  paint-order:stroke;
  stroke:#eef3f1;
  stroke-width:4px;
  stroke-linejoin:round;
}
#section-04 .mms-route-map-fallback__road-label{
  fill:#7f8e92;
  font:650 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.035em;
  paint-order:stroke;
  stroke:#fff;
  stroke-width:3px;
}

#section-04 .mms-route-map-fallback__route-shadow,
#section-04 .mms-route-map-fallback__route{
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
#section-04 .mms-route-map-fallback__route-shadow{
  stroke:rgb(16 47 59 / .2);
  stroke-width:10;
}
#section-04 .mms-route-map-fallback__route{
  stroke-width:5.2;
}
#section-04 .mms-route-map-fallback__scenario{
  opacity:0;
  transition:opacity .3s ease;
}
#section-04 .mms-route-map-fallback__scenario--before .mms-route-map-fallback__route{stroke:#e97a22;}
#section-04 .mms-route-map-fallback__scenario--after .mms-route-map-fallback__route{stroke:#159660;}
#section-04 .mms-live-route-demo[data-route-state="before"] .mms-route-map-fallback__scenario--before,
#section-04 .mms-live-route-demo[data-route-state="after"] .mms-route-map-fallback__scenario--after{
  opacity:1;
}

#section-04 .mms-route-map-fallback__pin circle{
  fill:#fff;
  stroke:#e97a22;
  stroke-width:3;
  filter:drop-shadow(0 5px 7px rgb(16 47 59 / .2));
  transition:stroke .25s ease,transform .25s ease;
  transform-box:fill-box;
  transform-origin:center;
}
#section-04 .mms-live-route-demo[data-route-state="after"] .mms-route-map-fallback__pin circle{
  stroke:#159660;
  transform:scale(1.05);
}
#section-04 .mms-route-map-fallback__pin text{
  fill:#173c44;
  font:900 13px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  text-anchor:middle;
  dominant-baseline:central;
}
#section-04 .mms-route-map-fallback__depot rect{
  fill:#176e68;
  stroke:#fff;
  stroke-width:3;
  filter:drop-shadow(0 5px 7px rgb(16 47 59 / .2));
}
#section-04 .mms-route-map-fallback__depot path{stroke:#fff;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;}
#section-04 .mms-route-map-fallback__depot-label{
  fill:#24464e;
  font:850 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  paint-order:stroke;
  stroke:#fff;
  stroke-width:4px;
}

#section-04 .mms-route-map-fallback__legend{
  filter:drop-shadow(0 7px 18px rgb(16 47 59 / .15));
}
#section-04 .mms-route-map-fallback__legend-bg{fill:rgb(255 255 255 / .94);stroke:#d4e1de;stroke-width:1;}
#section-04 .mms-route-map-fallback__legend-title{fill:#153b44;font:900 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif;}
#section-04 .mms-route-map-fallback__legend-text{fill:#60747a;font:700 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif;}
#section-04 .mms-route-map-fallback__compass circle{fill:rgb(255 255 255 / .92);stroke:#d2dfdc;}
#section-04 .mms-route-map-fallback__compass path{fill:#176e68;}
#section-04 .mms-route-map-fallback__compass text{fill:#294b52;font:900 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif;text-anchor:middle;}
#section-04 .mms-route-map-fallback__scale line{stroke:#60747a;stroke-width:2;}
#section-04 .mms-route-map-fallback__scale text{fill:#60747a;font:800 8px/1 system-ui,-apple-system,"Segoe UI",sans-serif;}

#section-04 .mms-live-route-demo.mms-route-fallback-active .mms-live-route-demo__status{
  color:#416068;
  background:#f7faf9;
}
#section-04 .mms-live-route-demo.mms-route-fallback-active .mms-live-route-demo__status.is-error{
  justify-content:flex-start;
  color:#416068;
  background:#f7faf9;
}
#section-04 .mms-live-route-demo.mms-route-fallback-active .mms-live-route-demo__retry{
  display:none;
}

@media (prefers-reduced-motion:no-preference){
  #section-04 .mms-live-route-demo.mms-route-fallback-active .mms-route-map-fallback__scenario[style*="opacity: 1"] .mms-route-map-fallback__route,
  #section-04 .mms-live-route-demo[data-route-state="before"] .mms-route-map-fallback__scenario--before .mms-route-map-fallback__route,
  #section-04 .mms-live-route-demo[data-route-state="after"] .mms-route-map-fallback__scenario--after .mms-route-map-fallback__route{
    stroke-dasharray:1400;
    stroke-dashoffset:1400;
    animation:mms-route-fallback-draw 1.15s cubic-bezier(.22,1,.36,1) forwards;
  }
}
@keyframes mms-route-fallback-draw{to{stroke-dashoffset:0;}}

@media (max-width:720px){
  #section-04 .mms-route-map-fallback__label{font-size:9px;}
  #section-04 .mms-route-map-fallback__legend{transform:translate(-8px,6px) scale(.9);transform-origin:bottom right;}
}

@media (prefers-reduced-motion:reduce){
  #section-04 .mms-route-map-fallback__scenario,
  #section-04 .mms-route-map-fallback__pin circle,
  #section-04 .mms-route-map-fallback{transition:none;}
}
