/* Final map marker contract. Loaded last to neutralize legacy pin variants. */
body.taxi-home .teo-map .taxi-point-marker,
body.taxi-home .teo-map .hero-route-pin {
  width: 44px !important;
  height: 58px !important;
  display: block !important;
  place-items: initial !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
  pointer-events: none !important;
}

body.taxi-home .teo-map .taxi-point-marker .teo-map-pin,
body.taxi-home .teo-map .hero-route-pin .teo-map-pin,
body.taxi-home .teo-map .hero-center-pin .teo-map-pin {
  position: relative !important;
  inset: auto !important;
  width: 40px !important;
  height: 56px !important;
  margin: 0 auto !important;
  display: block !important;
  place-items: initial !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
}

body.taxi-home .teo-map .teo-map-pin::before {
  content: "" !important;
  position: absolute !important;
  z-index: 2 !important;
  top: 0 !important;
  left: 1px !important;
  width: 38px !important;
  height: 38px !important;
  box-sizing: border-box !important;
  border: 3px solid #0d1117 !important;
  border-radius: 50% !important;
  background: #ffc400 !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .34), 0 0 0 5px rgba(255, 196, 0, .11) !important;
  filter: none !important;
  transform: none !important;
}

body.taxi-home .teo-map .teo-map-pin::after {
  content: "" !important;
  position: absolute !important;
  z-index: 1 !important;
  top: 35px !important;
  left: 18px !important;
  width: 4px !important;
  height: 20px !important;
  border: 0 !important;
  border-radius: 0 0 3px 3px !important;
  background: #0d1117 !important;
  box-shadow: 0 5px 9px rgba(0, 0, 0, .25) !important;
  filter: none !important;
  transform: none !important;
}

body.taxi-home .teo-map .teo-map-pin.pickup::before {
  border-color: #0d1117 !important;
  background: #ffc400 !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .34), 0 0 0 5px rgba(255, 196, 0, .11) !important;
}

body.taxi-home .teo-map .teo-map-pin.pickup::after {
  background: #0d1117 !important;
}

body.taxi-home .teo-map .teo-map-pin i {
  position: absolute !important;
  z-index: 3 !important;
  top: 0 !important;
  left: 1px !important;
  width: 38px !important;
  height: 38px !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: #0d1117 !important;
  font: 900 13px/1 Inter, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-style: normal !important;
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
}

body.taxi-home .teo-map .teo-map-pin.pickup i {
  color: #0d1117 !important;
}

body.taxi-home .teo-map .teo-map-pin.dropoff::before {
  border-color: #0d1117 !important;
  background: #fff !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .34), 0 0 0 5px rgba(255, 255, 255, .10) !important;
}

body.taxi-home .teo-map .teo-map-pin.dropoff::after {
  background: #0d1117 !important;
}

body.taxi-home .teo-map .teo-map-pin.dropoff i {
  color: #0d1117 !important;
}

body.taxi-home .teo-map .teo-map-pin.via::before {
  border-color: #fff !important;
  background: #4f91ff !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .34), 0 0 0 5px rgba(79, 145, 255, .13) !important;
}

body.taxi-home .teo-map .teo-map-pin.via::after {
  background: #4f91ff !important;
}

body.taxi-home .teo-map .teo-map-pin.via i {
  color: #fff !important;
}

body.taxi-home .teo-map .hero-center-pin {
  width: 44px !important;
  height: 58px !important;
  border: 0 !important;
  background: transparent !important;
  filter: none !important;
}

/* `display: grid !important` from legacy marker CSS must never override hidden. */
body.taxi-home .teo-map .hero-center-pin[hidden],
body.taxi-home .hero-center-pin[hidden] {
  display: none !important;
}

body.taxi-home .teo-map .hero-center-pin::before,
body.taxi-home .teo-map .hero-center-pin::after {
  display: none !important;
}

@media (max-width: 620px) {
  body.taxi-home .teo-map .taxi-point-marker,
  body.taxi-home .teo-map .hero-route-pin,
  body.taxi-home .teo-map .hero-center-pin {
    transform-origin: 50% 100% !important;
  }
}
