/* Mumford Connect service-area map. Loaded only when the map block is present. */
.mc-component-service-area-map{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(22px,3vw,34px)}
.mc-component-service-area-map__stage{position:relative;width:100%;min-width:0;aspect-ratio:1.6/1;overflow:hidden;border:1px solid #d7e1eb;border-radius:18px;background:#f5f9fc;box-shadow:0 16px 44px rgba(7,27,51,.055)}
.mc-component-service-area-map__base{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none}
.mc-component-service-area-map__marker{position:absolute;left:var(--mc-area-x);top:var(--mc-area-y);z-index:3;display:grid;place-items:center;width:44px;height:44px;transform:translate(-50%,-50%);border-radius:50%;text-decoration:none}
.mc-component-service-area-map__marker:hover,.mc-component-service-area-map__marker:focus-visible{z-index:30}
.mc-component-service-area-map__dot{position:relative;z-index:1;display:block;width:14px;height:14px;border:4px solid #fff;border-radius:50%;background:var(--mc-blue);box-shadow:0 0 0 2px rgba(20,111,232,.24),0 5px 14px rgba(7,27,51,.2);transition:transform .16s ease,box-shadow .16s ease}
.mc-component-service-area-map__marker:hover .mc-component-service-area-map__dot,.mc-component-service-area-map__marker:focus-visible .mc-component-service-area-map__dot{transform:scale(1.18);box-shadow:0 0 0 5px rgba(20,111,232,.14),0 7px 18px rgba(7,27,51,.22)}
.mc-component-service-area-map__marker:focus-visible{outline:3px solid rgba(20,111,232,.34);outline-offset:2px}
.mc-component-service-area-map__marker--static{cursor:default}
.mc-component-service-area-map__marker--static:hover .mc-component-service-area-map__dot{transform:none;box-shadow:0 0 0 2px rgba(20,111,232,.24),0 5px 14px rgba(7,27,51,.2)}
.mc-component-service-area-map__tooltip{position:absolute;left:50%;bottom:35px;z-index:2;min-width:max-content;max-width:220px;padding:7px 10px;border-radius:7px;background:var(--mc-navy);color:#fff;font-size:.72rem;font-weight:750;line-height:1.25;box-shadow:0 8px 24px rgba(7,27,51,.2);opacity:0;pointer-events:none;transform:translate(-50%,5px);transition:opacity .14s ease,transform .14s ease}
.mc-component-service-area-map__tooltip:after{content:"";position:absolute;left:50%;top:100%;margin-left:-5px;border:5px solid transparent;border-top-color:var(--mc-navy)}
.mc-component-service-area-map__marker:hover .mc-component-service-area-map__tooltip,.mc-component-service-area-map__marker:focus-visible .mc-component-service-area-map__tooltip{opacity:1;transform:translate(-50%,0)}
.mc-component-service-area-map__links{min-width:0;border-top:3px solid var(--mc-blue);border-radius:14px;background:#fff;box-shadow:0 9px 26px rgba(7,27,51,.04);overflow:hidden}
.mc-component-service-area-map__links ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none}
.mc-component-service-area-map__links li{min-width:0;margin:0;border-right:1px solid var(--mc-line);border-bottom:1px solid var(--mc-line)}
.mc-component-service-area-map__links li:nth-child(3n){border-right:0}
.mc-component-service-area-map__links li:nth-last-child(-n+3){border-bottom:0}
.mc-component-service-area-map__links a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;padding:14px 18px;color:var(--mc-ink);font-size:.84rem;font-weight:750;line-height:1.3;text-decoration:none}
.mc-component-service-area-map__link-static{display:flex;align-items:center;min-height:58px;padding:14px 18px;color:var(--mc-muted);font-size:.84rem;font-weight:750;line-height:1.3}
.mc-component-service-area-map__links a span:first-child{min-width:0}
.mc-component-service-area-map__links a span:last-child{flex:0 0 auto;color:var(--mc-blue);font-size:1rem;transition:transform .16s ease}
.mc-component-service-area-map__links a:hover{color:var(--mc-blue-dark);background:#f8fbfe}
.mc-component-service-area-map__links a:hover span:last-child,.mc-component-service-area-map__links a:focus-visible span:last-child{transform:translateX(3px)}
.mc-component-service-area-map__links a:focus-visible{position:relative;z-index:2;outline:3px solid rgba(20,111,232,.24);outline-offset:-3px}
.mc-component-service-area-map__footnote{margin:0;padding:17px 20px 19px;border-top:1px solid var(--mc-line);color:var(--mc-muted);font-size:.76rem;line-height:1.6;text-align:center}
@media(max-width:900px){
  .mc-component-service-area-map__links ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mc-component-service-area-map__links li:nth-child(3n){border-right:1px solid var(--mc-line)}
  .mc-component-service-area-map__links li:nth-child(2n){border-right:0}
  .mc-component-service-area-map__links li:nth-last-child(-n+3){border-bottom:1px solid var(--mc-line)}
  .mc-component-service-area-map__links li:nth-last-child(-n+2){border-bottom:0}
}
@media(max-width:620px){
  .mc-component-service-area-map{gap:18px}
  .mc-component-service-area-map__stage{border-radius:14px}
    .mc-component-service-area-map__tooltip{display:none}
  .mc-component-service-area-map__links ul{grid-template-columns:1fr}
  .mc-component-service-area-map__links li,.mc-component-service-area-map__links li:nth-child(2n),.mc-component-service-area-map__links li:nth-child(3n),.mc-component-service-area-map__links li:nth-last-child(-n+2),.mc-component-service-area-map__links li:nth-last-child(-n+3){border-right:0;border-bottom:1px solid var(--mc-line)}
  .mc-component-service-area-map__links li:last-child{border-bottom:0}
  .mc-component-service-area-map__links a{min-height:54px;padding:13px 16px}
  .mc-component-service-area-map__link-static{min-height:54px;padding:13px 16px}
  .mc-component-service-area-map__footnote{padding:15px 17px 18px;text-align:left}
}
@media(prefers-reduced-motion:reduce){
  .mc-component-service-area-map__dot,.mc-component-service-area-map__tooltip,.mc-component-service-area-map__links a span:last-child{transition:none}
}
@media(forced-colors:active){
  .mc-component-service-area-map__stage,.mc-component-service-area-map__links{border:1px solid CanvasText;box-shadow:none}
  .mc-component-service-area-map__base{opacity:.35}
  .mc-component-service-area-map__dot{border-color:Canvas;background:LinkText;box-shadow:none}
  .mc-component-service-area-map__links{border-top-color:LinkText}
}
