/* Scoped to the two studio maps. Existing page typography/layout is untouched. */
.un-studio-map {
  display:inline-block;
  position:relative;
  width:100%;
  max-width:100%;
  height:320px;
  overflow:hidden;
  vertical-align:baseline;
  border:0;
  background:#f3f1ee;
  isolation:isolate;
  font-family:inherit;
  cursor:default;
  /* One finger scrolls the page; browser pinch zoom remains accessible. */
  touch-action:pan-x pan-y pinch-zoom;
}
.un-studio-map .un-map-dot {
  border:2px solid #fff;
  border-radius:50%;
  background:#ed5099;
  box-shadow:0 0 0 2px #b82c6c,0 2px 5px #0003;
}
.un-studio-map .un-map-label {
  padding:9px 16px;
  border:1px solid #df83ad;
  border-radius:7px;
  background:#fff;
  color:#b82c6c;
  box-shadow:0 3px 12px #0003;
  font-family:inherit;
  font-size:16px;
  font-weight:700;
  line-height:22px;
  white-space:nowrap;
}
.un-studio-map .un-map-label.leaflet-tooltip-top::before {
  border-top-color:#b82c6c;
}
.un-studio-map .un-map-zoom {
  overflow:hidden;
  border:1px solid #aaa;
  border-radius:4px;
  box-shadow:0 1px 5px #0004;
}
.un-studio-map .un-map-zoom button {
  display:block;
  width:32px;
  height:32px;
  padding:0;
  margin:0;
  border:0;
  border-radius:0;
  background:#fff;
  color:#333;
  font:700 23px/32px Arial,sans-serif;
  text-align:center;
  cursor:pointer;
  touch-action:manipulation;
}
.un-studio-map .un-map-zoom button+button { border-top:1px solid #ccc; }
.un-studio-map .un-map-zoom button:hover { background:#fff4f9; }
.un-studio-map .un-map-zoom button:focus-visible { outline:2px solid #b82c6c; outline-offset:-3px; }
.un-studio-map .un-map-zoom button:disabled { background:#f5f5f5; color:#aaa; cursor:default; }
.un-studio-map .leaflet-control-attribution { max-width:100%; margin:0; font:12px/1.4 Arial,sans-serif; color:#333; }
.un-studio-map .leaflet-control-attribution a { color:#333; }
.un-studio-map .un-map-fallback {
  position:absolute;
  z-index:800;
  left:50%;
  top:50%;
  width:max-content;
  max-width:calc(100% - 28px);
  margin:0;
  padding:8px 12px;
  transform:translate(-50%,-50%);
  border:1px solid #e3b2ca;
  border-radius:4px;
  background:#fff;
  font-size:13px;
  line-height:20px;
  text-align:center;
}
.un-studio-map .un-map-fallback[hidden] { display:none; }
.un-studio-map[data-map-ready] .un-map-fallback { top:auto; bottom:48px; transform:translateX(-50%); }
@media (pointer:coarse), (max-width:767px) {
  .un-studio-map .un-map-zoom button { width:44px; height:44px; line-height:44px; }
}
