/* Preserve the original map's dimensions, location and clickable service pins. */
.ecm-v2-map-card.map-motion-ready {
  transform: perspective(1200px) rotateY(calc(-4deg + var(--map-turn, 0deg))) rotateX(calc(2deg + var(--map-tilt, 0deg)));
  transform-origin: 50% 50%;
}
.map-motion-ready .ecm-v2-map-stage { perspective: 900px; }
.map-motion-ready .ecm-v2-map-stage > img {
  transform: translate(-50%, -50%) translate3d(var(--map-image-x, 0px), var(--map-image-y, 0px), var(--map-depth, 0px)) rotateY(var(--map-image-turn, 0deg));
}
.map-motion-ready .ecm-v2-map-stage::after {
  transform: translate3d(var(--map-grid-x, 0px), var(--map-grid-y, 0px), 0);
}
.ecm-v2-map-card.map-motion-active { will-change: transform; }
@media (max-width: 900px) {
  .ecm-v2-map-card.map-motion-ready { transform: perspective(1200px) rotateY(var(--map-turn, 0deg)) rotateX(var(--map-tilt, 0deg)); }
}
@media (prefers-reduced-motion: reduce) {
  .ecm-v2-map-card.map-motion-ready { transform: perspective(1200px) rotateY(-4deg) rotateX(2deg); will-change: auto; }
  .map-motion-ready .ecm-v2-map-stage > img { transform: translate(-50%, -50%); }
  .map-motion-ready .ecm-v2-map-stage::after { transform: none; }
}
@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  .ecm-v2-map-card.map-motion-ready { transform: none; }
}
