.local-action-link { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 17px; border: 1px solid rgba(114, 83, 59, .45); font-size: .7rem !important; letter-spacing: .09em !important; text-transform: uppercase; }
.local-action-link:hover { background: var(--bg-off-white); }
.service-map-section { padding: 95px 0; background: var(--bg-off-white); }
.service-map-embed { position: relative; height: 530px; overflow: hidden; border: 1px solid var(--border-light); border-radius: 8px; background: #e8e5df; box-shadow: var(--shadow-sm); }
.service-map-embed iframe { display: block; width: 100%; height: 100%; border: 0; pointer-events: none; }
.service-map-boundary {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 480px;
  height: 480px;
  max-width: 88%;
  max-height: 88%;
  border: 4px solid #00a7cc;
  border-radius: 50%;
  box-sizing: border-box;
  pointer-events: none;
}
.service-map-open { position: absolute; z-index: 3; right: 16px; bottom: 16px; padding: 10px 14px; border: 1px solid rgba(114, 83, 59, .4); border-radius: 4px; background: rgba(255, 255, 255, .95); color: var(--text-dark); font-size: .72rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; box-shadow: 0 2px 8px rgba(0, 0, 0, .08); transition: background .2s ease; }
.service-map-open:hover { background: #ffffff; color: var(--copper); }

@media (max-width: 850px) {
  .service-map-section { padding: 65px 0; }
  .service-map-embed { height: 450px; }
  .service-map-boundary { width: 390px; height: 390px; }
}
@media (max-width: 560px) {
  .service-map-embed { height: 390px; }
  .service-map-boundary { width: 330px; height: 330px; max-width: 90%; max-height: 90%; border-width: 3.5px; }
  .local-action-link { width: 100%; }
}
