.coverage-map{margin-top:2.5rem;scroll-margin-top:5.5rem;overflow:hidden;border:1px solid #ffffff1a;border-radius:1rem;background:#090909;color:#fff}
.coverage-map__viewport{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#d6b500 #161616}
.coverage-map__scene{position:relative;width:100%;min-width:760px;isolation:isolate}
.coverage-map__scene>img{display:block;width:100%;height:auto}
.coverage-map__lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.coverage-map__lines path{fill:none;stroke:#fff0a0;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:18 240;opacity:0;animation:coverage-flow 11s linear infinite;animation-play-state:paused}
.coverage-map__lines path:nth-child(3n+2){animation-delay:-4s}
.coverage-map__lines path:nth-child(3n){animation-delay:-8s}
.coverage-map__point{position:absolute;left:var(--x);top:var(--y);width:44px;height:44px;transform:translate(-50%,-70%);border-radius:50%;color:#ffe000;z-index:2;outline-offset:3px;-webkit-tap-highlight-color:#ffdf0030}
.coverage-map__point::before{content:"";position:absolute;inset:8px;border:1px solid currentColor;border-radius:50%;opacity:.55;transform:scale(.6);animation:coverage-pulse 4.8s ease-out infinite;animation-delay:var(--delay,0s);animation-play-state:paused;pointer-events:none}
.coverage-map__point:hover,.coverage-map__point:focus-visible{background:#ffe00026;outline:2px solid #fff}
.coverage-map__point:hover::before,.coverage-map__point:focus-visible::before{animation:none;transform:scale(1);opacity:1}
.coverage-map__label{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:max-content;max-width:240px;padding:8px 12px;border:1px solid #b7a545;border-radius:6px;background:#15140e;color:#fff8d5;font:600 13px/1.4 Poppins,sans-serif;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease}
.coverage-map__point:hover .coverage-map__label,.coverage-map__point:focus-visible .coverage-map__label{opacity:1;visibility:visible}
.coverage-map__point--base{width:52px;height:52px;transform:translate(-50%,-50%)}
.coverage-map__point--base::before{inset:0}
.coverage-map__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;padding:14px 20px;border-top:1px solid #ffffff1a;background:#11110d}
.coverage-map__hint{margin:0;font-size:13px;line-height:1.65;color:#e3dfcc}
.coverage-map__mobile{display:none}
.coverage-map__toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid #9f913e;border-radius:6px;background:transparent;color:#ffe000;font:600 13px/1.4 Poppins,sans-serif;cursor:pointer}
.coverage-map__toggle:hover{background:#ffe00014;border-color:#ffe000}
.coverage-map__toggle:focus-visible{outline:2px solid #fff;outline-offset:3px}
.coverage-map__toggle:disabled{color:#c7c1a5;border-color:#5b5745;cursor:default}
.coverage-map__toggle[hidden]{display:none}
.coverage-map__toggle svg{width:16px;height:16px;fill:currentColor}
.coverage-map.is-animating .coverage-map__lines path{opacity:.8;animation-play-state:running}
.coverage-map.is-animating .coverage-map__point::before{animation-play-state:running}
@keyframes coverage-flow{from{stroke-dashoffset:258}to{stroke-dashoffset:0}}
@keyframes coverage-pulse{0%{transform:scale(.55);opacity:.6}75%,100%{transform:scale(1.6);opacity:0}}
@media(max-width:767px){.coverage-map__mobile{display:inline}.coverage-map__toolbar{padding:12px 16px;gap:10px}.coverage-map__hint{flex-basis:100%}.coverage-map__toggle{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.coverage-map__lines path,.coverage-map__point::before{animation:none!important}.coverage-map__lines path{opacity:0!important}.coverage-map__point::before{opacity:.5;transform:scale(.75)}.coverage-map__label{transition:none}}
