.zone-intro{display:flex;gap:45px;justify-content:space-between;align-items:center;margin-bottom:35px}.zone-intro>div:first-child{max-width:780px}.zone-intro h2{max-width:760px}.zone-intro p{line-height:1.8;color:var(--text-muted,#a4b0bd)}.zone-radius{min-width:170px;text-align:center;border-left:1px solid #8fa0ad38;padding-left:35px}.zone-radius strong{font-size:85px;letter-spacing:-6px;line-height:1;color:#c4dab3}.zone-radius strong span{font-size:22px;letter-spacing:-1px;margin-left:8px}.zone-radius p{font-size:12px}.zone-map-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(290px,.8fr);gap:28px;align-items:start}.zone-map-wrap{border:1px solid #8fa0ad33;border-radius:23px;overflow:hidden;background:#101f2d}.zone-map{display:block;width:100%;height:auto}.zone-boundary{fill:#243545;stroke:#7d99ad42;stroke-width:1;vector-effect:non-scaling-stroke}.zone-distance-ring{fill:none;stroke:#a7c39e20}.zone-map-label{fill:#bccbd2;font-size:12px;paint-order:stroke;stroke:#101f2d;stroke-width:4;stroke-linejoin:round;pointer-events:none;font-family:Inter,Arial,sans-serif}.zone-dot{fill:#c0d6a8;stroke:#152f34;stroke-width:2}.zone-map a:hover .zone-dot,.zone-map a.is-selected .zone-dot,.zone-map a:focus .zone-dot{fill:#fff;stroke:#d9f2aa;stroke-width:4;r:7px}.zone-map a:focus{outline:none}.zone-scale,.zone-north{fill:#b4c7cf;font:13px Inter,Arial,sans-serif}.zone-scale path,.zone-north path{fill:none;stroke:#b4c7cf;stroke-width:2}.zone-map-legend{padding:13px 20px;font-size:11px;color:#b4c4d0;display:flex;align-items:center;gap:9px;border-top:1px solid #ffffff10}.zone-map-legend i{width:7px;height:7px;background:#c0d6a8;border-radius:50%}.zone-map-legend span{margin-left:auto}.zone-selection{padding:24px 4px 12px}.zone-selection h3{margin:5px 0;font-size:27px}.zone-selection p{color:var(--text-muted,#a4b0bd);font-size:13px}.zone-selection .button{font-size:12px;margin-top:8px}.zone-method{font-size:11px;line-height:1.8;color:var(--text-muted,#a4b0bd)}.zone-town-column{border:1px solid #8fa0ad33;border-radius:23px;overflow:hidden;background:#ffffff03}.zone-town-heading{padding:24px;border-bottom:1px solid #8fa0ad22}.zone-town-heading h3{margin:0 0 7px;font-size:21px}.zone-town-heading p{font-size:11px;color:var(--text-muted,#a4b0bd)}.zone-town-heading label{display:block;margin-top:22px;font-size:11px;margin-bottom:8px}.zone-town-heading input{width:100%;min-height:44px;border:1px solid #8fa0ad44;border-radius:12px;background:#ffffff08;color:inherit;padding:12px 14px;font:inherit;font-size:12px;box-sizing:border-box}.zone-town-list{list-style:none;margin:0;padding:8px 12px;max-height:515px;overflow:auto;scrollbar-width:thin}.zone-town-list li{margin:0}.zone-town-list button{font:inherit;text-align:left;display:block;width:100%;padding:13px 12px;min-height:58px;background:transparent;border:0;border-bottom:1px solid #8fa0ad16;color:inherit;border-radius:10px;cursor:pointer}.zone-town-list button span{font-size:12px;display:block}.zone-town-list small{font-size:10px;display:flex;justify-content:space-between;margin-top:7px;color:var(--text-muted,#a4b0bd)}.zone-town-list small b{font-weight:400}.zone-town-list button:hover,.zone-town-list button[aria-pressed=true]{background:#b1cd9e15}.zone-expanded a:focus-visible,.zone-expanded button:focus-visible,.zone-expanded input:focus-visible{outline:2px solid #b3d1a4;outline-offset:-3px}.zone-bottom{font-size:13px;line-height:1.9;margin-top:28px;color:var(--text-muted,#a4b0bd)}.zone-bottom a{color:inherit;text-decoration:underline;text-underline-offset:4px}#zone-empty{padding:10px 24px;font-size:12px}.zone-town-list [hidden]{display:none}.zone-expanded [hidden]{display:none!important}@media(max-width:760px){.zone-intro{gap:20px}.zone-radius{display:none}.zone-map-layout{grid-template-columns:1fr;gap:20px}.zone-map-label{font-size:14px}.zone-town-list{max-height:330px}.zone-town-heading{padding:20px}.zone-map-legend{padding:12px;font-size:10px;flex-wrap:wrap}.zone-map-legend span{margin-left:0}.zone-selection{padding-top:20px}.zone-intro{margin-bottom:24px}.zone-expanded .container{overflow:visible}}@media(prefers-reduced-motion:reduce){.zone-expanded *{scroll-behavior:auto!important}}