.contacts-section .container { pointer-events: none; }
.contacts-section .contacts-wrapper { pointer-events: auto; }
.contacts-section #map { background: #eaeaea; }
.contacts-map-surface { position: absolute; inset: 0; }
.contacts-map-fallback {
  position: absolute;
  top: 50%;
  left: 65%;
  width: 220px;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #616161;
}
.contacts-map-loaded .contacts-map-fallback { display: none; }
.contacts-map-marker { display: block; width: 83px; height: 108px; transform: translate(-50%, -100%); }
.contacts-map-marker img { display: block; width: 100%; height: 100%; max-width: none; }
.contacts-map-zoom { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); }
.contacts-map-zoom button {
  display: block;
  width: 40px;
  height: 40px;
  margin: 2px 0;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: #fff;
  color: #333;
  font: 26px/1 sans-serif;
  cursor: pointer;
}
.contacts-map-zoom button:focus-visible, .contacts-map-marker:focus-visible { outline: 2px solid #8c6445; outline-offset: 3px; }
@media (max-width: 767px) {
  .contacts-section { padding-bottom: 0; }
  .contacts-section .contacts-wrapper { max-width: none; }
  .contacts-section #map { position: relative; height: 360px; margin-top: 30px; }
  .contacts-map-fallback { left: 50%; }
}
