.service-map-link {
  color:inherit;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.2em
}

.service-map-link:hover {
  color:var(--rust,#b84e2b)
}

body.service-map-open {
  overflow:hidden
}

.service-map-dialog {
  box-sizing:border-box;
  width:min(900px,calc(100% - 32px));
  max-width:calc(100% - 32px);
  max-height:calc(100dvh - 32px);
  margin:auto;
  padding:0;
  border:0;
  border-radius:8px;
  overflow:auto;
  background:var(--paper,#f7f5f0);
  color:var(--ink,#242824);
  font-family:var(--body,system-ui,sans-serif);
  line-height:1.5;
  box-shadow:0 20px 80px #0004
}

.service-map-dialog::backdrop {
  background:#141814d9;
  backdrop-filter:blur(4px)
}

.service-map-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px 20px;
  border-bottom:1px solid var(--line,#dcded4)
}

.service-map-dialog h2 {
  margin:0;
  font-family:inherit;
  font-size:20px;
  font-weight:600;
  line-height:1.3;
  letter-spacing:-.02em
}

.service-map-close {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  width:40px;
  height:40px;
  padding:0;
  border:1px solid var(--line,#dcded4);
  border-radius:50%;
  background:transparent;
  color:inherit;
  font:26px/1 system-ui,sans-serif;
  cursor:pointer
}

.service-map-close:hover {
  background:var(--soft,#eaece3)
}

.service-map-dialog figure {
  margin:0
}

.service-map-image {
  display:block;
  width:100%;
  height:auto;
  max-height:calc(100dvh - 200px);
  object-fit:contain;
  background:#eaece3
}

.service-map-dialog figcaption {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px 20px;
  padding:14px 20px 18px;
  color:var(--muted,#65685f);
  font-size:12px
}

.service-map-dialog figcaption p {
  margin:0;
  flex:1 1 280px;
  font-size:inherit;
  line-height:inherit
}

.service-map-fullsize {
  color:var(--ink,#242824);
  text-decoration:underline;
  text-underline-offset:.2em;
  white-space:nowrap
}

.service-map-link:focus-visible,
.service-map-dialog :focus-visible {
  outline:3px solid var(--rust,#b84e2b);
  outline-offset:4px
}
