/* Google Maps remains inactive until the visitor selects the load button. */
.location-map-v643 {
  background: #172229 !important;
}

.location-map-v643 iframe[hidden],
.location-map-v643 [data-map-consent][hidden],
.location-map-v643 [data-map-unload][hidden] {
  display: none !important;
}

.location-map-v643 .map-privacy__prompt {
  position: absolute;
  inset: 0;
  z-index: 4;
  width: min(100% - 48px, 330px);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  text-align: center;
  color: #fff;
}

.location-map-v643 .map-privacy__prompt h3 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.15rem, 1.6vw, 1.45rem);
  line-height: 1.25;
}

.location-map-v643 .map-privacy__prompt p {
  margin: 0;
  color: rgba(255, 255, 255, .73);
  font-size: .9rem;
  line-height: 1.6;
  text-wrap: pretty;
}

.location-map-v643 .map-privacy__prompt a {
  color: rgba(255, 255, 255, .84);
  font-size: .8rem;
  line-height: 1.5;
  text-decoration: underline;
  text-underline-offset: .22em;
}

.location-map-v643 [data-map-load],
.location-map-v643 .map-privacy__withdraw {
  min-height: 44px;
  padding: 11px 18px;
  border: 1px solid rgba(255, 255, 255, .38);
  border-radius: 4px;
  background: #172229;
  color: #fff;
  font: inherit;
  font-size: .83rem;
  line-height: 1.3;
  cursor: pointer;
  transition: border-color .2s ease, background-color .2s ease;
}

.location-map-v643 [data-map-load]:hover,
.location-map-v643 .map-privacy__withdraw:hover {
  border-color: #f28c28;
  background: #23323b;
}

.location-map-v643 [data-map-load]:focus-visible,
.location-map-v643 .map-privacy__withdraw:focus-visible,
.location-map-v643 .map-privacy__prompt a:focus-visible {
  outline: 2px solid #f28c28;
  outline-offset: 4px;
}

.location-map-v643 .map-privacy__withdraw {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: 20px;
  transform: translateX(-50%);
  width: max-content;
  max-width: calc(100% - 40px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, .15);
}


/* Keep the generic CTA styling from moving or stripping the consent button. */
#standort .map-privacy__prompt [data-map-load] {
  align-self: center !important;
  justify-content: center;
  margin: 0 !important;
  border: 1px solid rgba(255, 255, 255, .38) !important;
  border-radius: 4px !important;
  background: #172229 !important;
  box-shadow: none !important;
}

#standort .map-privacy__prompt [data-map-load]::before,
#standort .map-privacy__prompt [data-map-load]::after {
  display: none !important;
}

#standort .map-privacy__prompt [data-map-load]:hover {
  border-color: #f28c28 !important;
  background: #23323b !important;
}

@media (max-width: 720px) {
  #standort .location-map-v643 {
    min-height: 520px !important;
    height: 520px !important;
    aspect-ratio: auto;
  }

  .location-map-v643 .map-privacy__prompt {
    inset-block: 144px 80px;
    width: min(100% - 40px, 330px);
    gap: 12px;
  }

  .location-map-v643 .map-privacy__withdraw {
    bottom: 86px;
  }

  .location-map-v643 .location-map-v643__nearest {
    position: absolute;
    left: 0;
    bottom: -56px;
    margin-top: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .location-map-v643 [data-map-load],
  .location-map-v643 .map-privacy__withdraw {
    transition: none;
  }
}
