.locationmap .map-module {
  width: 100%;
  max-width: 900px;
}

.locationmap .map-svg {
  width: 100%;
  height: auto;
  display: block;
}

/* --- Punkte --- */
.locationmap .map-point {
  fill: var(--color-yellow);
  opacity: 0;
  transform-origin: center;
  transform: scale(0);
  transition: transform 0.4s ease, opacity 0.4s ease;
}

.locationmap .map-point.visible {
  opacity: 1;
  transform: scale(1);
}

/* --- Linien --- */
.locationmap .map-line {
  stroke: var(--color-black);
  stroke-width: 1;
  fill: none;
  stroke-linecap: round;
}

/* --- Labels --- */
.locationmap .map-label {
  font-size: 16px;
  fill: #000;
  opacity: 0;
  text-anchor: start; /* Text linksbündig, alle x-Werte = linke Textkante */
  transition: opacity 0.5s ease;
  font-family: Verdana, Geneva, sans-serif;
  font-weight: bold;
}

.locationmap .map-label tspan {
  font-weight: 400;
}

.locationmap .map-label.visible {
  opacity: 1;
}