.manufacturing-locations {
  background: #000;
  color: #fff;
  overflow: hidden;
  padding: clamp(32px, 5vw, 72px) 0 clamp(48px, 6vw, 80px);
  position: relative;
  isolation: isolate;
}
.manufacturing-inner { max-width: 1100px; margin-inline: auto; text-align: center; }
.manufacturing-locations .globe-heading { margin: 0; color: #c3c9c9; font: 500 12px/1.5 var(--font-sans); letter-spacing: .19em; text-transform: uppercase; }
.manufacturing-globe {
  width: min(100%, 660px);
  aspect-ratio: 1;
  position: relative;
  margin: 8px auto -6px;
  touch-action: pan-y;
}
.manufacturing-globe canvas, .manufacturing-fallback {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  pointer-events: none;
  transition: opacity .8s ease;
}
.manufacturing-globe canvas { opacity: 0; }
.manufacturing-fallback { opacity: 1; }
[data-globe-state="ready"] .manufacturing-globe canvas { opacity: 1; }
[data-globe-state="ready"] .manufacturing-fallback { opacity: 0; }
.manufacturing-pin {
  position: absolute;
  z-index: 2;
  width: 10px;
  height: 10px;
  transform: translate(-50%, -50%);
  pointer-events: none;
  color: var(--pin-color);
}
.manufacturing-pin-dot {
  display: block;
  width: 10px;
  height: 10px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--pin-color);
  box-shadow: 0 0 18px var(--pin-color);
}
.manufacturing-pin::before, .manufacturing-pin::after {
  content: "";
  position: absolute;
  inset: -7px;
  border: 1px solid currentColor;
  border-radius: 50%;
  opacity: .5;
  animation: manufacturing-pulse 3s ease-out infinite;
  animation-play-state: paused;
  animation-delay: var(--pin-delay, 0s);
}
.manufacturing-pin::after { animation-delay: calc(var(--pin-delay, 0s) + 1.5s); }
.manufacturing-locations.is-active .manufacturing-pin::before,
.manufacturing-locations.is-active .manufacturing-pin::after { animation-play-state: running; }
.manufacturing-pin-label {
  position: absolute;
  top: -8px;
  left: 22px;
  color: #fff;
  font-size: clamp(11px, 1.5vw, 13px);
  font-weight: 500;
  line-height: 26px;
  white-space: nowrap;
  text-shadow: 0 1px 8px #000, 0 0 20px #000;
}
[data-globe-pin="india"] .manufacturing-pin-label { left: auto; right: 22px; }
@keyframes manufacturing-pulse {
  0% { transform: scale(.45); opacity: .65; }
  85%, 100% { transform: scale(2.4); opacity: 0; }
}
@media (max-width: 767px) {
  .manufacturing-locations { padding-top: 28px; padding-bottom: 44px; }
  .manufacturing-inner.container { padding-inline: 16px; }
  .manufacturing-globe { margin-block: 16px 12px; max-width: 480px; }
  .manufacturing-pin-label { left: 17px; }
  [data-globe-pin="india"] .manufacturing-pin-label { right: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .manufacturing-pin::before, .manufacturing-pin::after { animation: none; }
  .manufacturing-pin::after { display: none; }
  .manufacturing-globe canvas, .manufacturing-fallback { transition: none; }
}

.manufacturing-pins { position: absolute; inset: 0; pointer-events: none; }
[data-globe-state="ready"] .manufacturing-globe { cursor: grab; user-select: none; -webkit-user-select: none; }
[data-globe-state="ready"] .manufacturing-globe.is-dragging { cursor: grabbing; }
.manufacturing-globe:focus-visible { outline: 2px solid #57dfcf; outline-offset: 4px; border-radius: 50%; }
