.contact-company-grid{align-items:start}
.coverage-card{background:#fff;border-radius:22px;overflow:hidden;min-width:0}
.coverage-card .contact-map-heading{padding:28px 28px 20px}
.coverage-card .tag{font-size:10px;letter-spacing:1.7px;margin-bottom:12px}
.coverage-card .contact-map-heading h3{font-size:30px;line-height:1.15;letter-spacing:-1px;margin:0 0 12px;color:#20282b}
.coverage-card .contact-map-heading p{max-width:390px;font-size:13px;line-height:1.8}
.coverage-canvas{position:relative;isolation:isolate;overflow:hidden;background:#eef1ef;border-block:1px solid #e4e8e4}
.coverage-svg{display:block;width:100%;height:auto;aspect-ratio:800/640;max-height:440px;font-family:Poppins,sans-serif}
.map-place{cursor:pointer;outline:none}
.map-halo{fill:#bd352d;fill-opacity:.12;stroke:#bd352d;stroke-opacity:.2;stroke-width:1}
.map-dot{fill:#ba352c;stroke:#fff;stroke-width:3}
.map-city{font-size:19px;font-weight:600;fill:#293331;paint-order:stroke;stroke:#fafbf8;stroke-width:5px;stroke-linejoin:round}
.map-place[data-map-place=bernolakovo] .map-dot{fill:#263a38}
.map-place[data-map-place=bernolakovo] .map-city{font-size:15px}
.map-place:hover .map-halo,.map-place:focus-visible .map-halo,.map-place[aria-pressed=true] .map-halo{fill-opacity:.23;stroke-opacity:.9;stroke-width:2.5}
.map-place:focus-visible .map-dot{stroke:#20282b}
.map-context{font-size:13px;letter-spacing:3px;fill:#9aa69b;transform:rotate(-35deg);transform-origin:160px 230px}
.map-country{font-size:13px;letter-spacing:3px;fill:#8e9b94}
.map-north{font-size:12px;fill:#76827c}
.coverage-zoom{position:absolute;top:15px;left:15px;display:flex;flex-direction:column;background:#fff;border:1px solid #dce2de;border-radius:12px;box-shadow:0 4px 15px #20332b0c;overflow:hidden}
.coverage-zoom button{width:40px;min-height:40px;display:grid;place-items:center;background:#fff;color:#263a38;border:0;border-bottom:1px solid #e6eae6;font:500 22px Poppins,sans-serif;cursor:pointer;padding:0}
.coverage-zoom button:last-child{border:0;font-size:20px}
.coverage-zoom button:disabled{color:#b7bfba;cursor:default}
.coverage-zoom button:hover:not(:disabled){background:#f7eeec;color:#ba352c}
.coverage-zoom button:focus-visible{outline:2px solid #ba352c;outline-offset:-3px}
.coverage-map-label{position:absolute;bottom:14px;left:20px;font-size:9px;letter-spacing:1.8px;color:#6d7b72;pointer-events:none}
.coverage-body{padding:20px 24px 18px}
.coverage-places{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}
.coverage-places button{border:1px solid #e1e5e2;background:#f7f8f6;border-radius:30px;padding:9px 13px;min-height:40px;font:500 11px Poppins,sans-serif;color:#58635e;cursor:pointer}
.coverage-places button[aria-pressed=true],.coverage-places button:hover{color:#a22e27;border-color:#e9bcb6;background:#fff1ee}
.coverage-places button:focus-visible{outline:2px solid #ba352c;outline-offset:3px}
.coverage-detail{min-height:104px}
.coverage-detail strong{font-size:15px;font-weight:600;color:#263a38}
.coverage-detail p{font-size:12px;line-height:1.8;color:#6d7871;margin:8px 0 16px;max-width:none}
.coverage-card .coverage-call{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-block:1px solid #e5e8e4;text-decoration:none;font-size:12px;font-weight:600;color:#ae3229}
.coverage-call span{font-size:20px;font-weight:400}
.coverage-card .coverage-note{font-size:10px;line-height:1.7;color:#7d867f;margin:14px 0 10px}
.coverage-card .coverage-attribution{font-size:9px;line-height:1.8;color:#879189;margin:0}
.coverage-attribution a{color:inherit;text-underline-offset:2px}
@media(max-width:600px){.coverage-card .contact-map-heading{padding:24px 20px 18px}.coverage-card .contact-map-heading h3{font-size:28px}.coverage-body{padding:18px 18px 20px}.coverage-places{gap:6px}.coverage-places button{min-height:44px;padding:9px 11px}.coverage-zoom{top:10px;left:10px}.coverage-zoom button{width:36px;min-height:36px}.map-city{font-size:30px}.map-place[data-map-place=bernolakovo] .map-city{font-size:24px}.map-context{font-size:15px}.coverage-detail{min-height:115px}}

/* Named towns and villages replace the approximate radius shading. */
.map-place-small .map-city{display:none;font-size:16px}
.map-place-small .map-halo{fill:#6f7c76;fill-opacity:.13;stroke:#6f7c76;stroke-opacity:.2}
.map-place-small .map-dot{fill:#75877d;stroke-width:2}
.map-place-small:hover .map-city,.map-place-small:focus-visible .map-city,.map-place-small[aria-pressed=true] .map-city{display:block}
.map-place-small[aria-pressed=true] .map-dot{fill:#ba352c}
.coverage-nearby{border-block:1px solid #e5e8e4;margin:2px 0 20px}
.coverage-card .coverage-nearby summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;min-height:44px;cursor:pointer;list-style:none;font-size:12px;font-weight:500;color:#58635e}
.coverage-nearby summary::-webkit-details-marker{display:none}
.coverage-nearby summary span{font-size:20px;font-weight:400;transition:transform .15s}
.coverage-nearby[open] summary span{transform:rotate(45deg)}
.coverage-villages{margin-bottom:16px;gap:6px}
.coverage-villages button{font-size:10px;padding:8px 11px;background:#fff;min-height:38px}
.coverage-places button[data-map-select=bratislava],.coverage-places button[data-map-select=senec],.coverage-places button[data-map-select=trnava]{color:#a22e27;background:#fff1ee;border-color:#edd0cb;font-weight:600}
@media(max-width:600px){.map-city{font-size:25px}.map-place[data-map-place=miloslavov] .map-city{font-size:22px}.map-place-small .map-city{font-size:22px}.coverage-villages button{min-height:44px}.coverage-detail{min-height:132px}}

.map-country{font-size:16px;letter-spacing:2.5px;fill:#829389;paint-order:stroke;stroke:#eef1ef;stroke-width:3px;stroke-linejoin:round}.map-rivers{opacity:.95}
@media(max-width:600px){.map-country{font-size:20px;letter-spacing:2px}}
/* A full-width geographic map with a separate locality panel. */
.contact-company-grid{display:flex;flex-direction:column;gap:32px;align-items:stretch}
.coverage-real{order:-1;width:100%;border-radius:24px}
.coverage-real .contact-map-heading{padding:30px 34px 26px;display:grid;grid-template-columns:1.05fr 1fr;column-gap:60px;align-items:end}
.coverage-real .contact-map-heading .tag{grid-column:1/-1;margin-bottom:12px}
.coverage-real .contact-map-heading h3{font-size:36px;margin:0;letter-spacing:-1px}
.coverage-real .contact-map-heading p{max-width:430px;margin:0 0 3px;font-size:13px}
.coverage-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;border-top:1px solid #e4e8e4}
.coverage-real .coverage-canvas{min-height:550px;position:relative;border:0;background:#edf0e9}
.coverage-real .coverage-svg{width:100%;height:100%;max-height:none;min-height:550px;position:absolute;inset:0}
.coverage-live-map{position:absolute;inset:0;opacity:0;pointer-events:none}
.map-live-ready .coverage-live-map{opacity:1;pointer-events:auto}
.map-live-ready .coverage-svg,.map-live-ready .coverage-zoom{display:none}
.coverage-load-note{position:absolute;z-index:1;bottom:10px;left:12px;right:12px;background:#ffffffeb;border-radius:8px;padding:8px 12px;font-size:11px;color:#596761;pointer-events:none}
.coverage-load-note[hidden]{display:none}
.coverage-fit{position:absolute;right:14px;top:14px;z-index:2;border:1px solid #dce3dd;background:#fffffff5;border-radius:10px;min-height:38px;padding:8px 12px;display:flex;gap:16px;align-items:center;font:500 11px Poppins,sans-serif;color:#34443c;cursor:pointer;box-shadow:0 2px 8px #20332b0a}
.coverage-fit:hover{background:#fff1ee;color:#ac3028}
.coverage-real .coverage-body{padding:26px 24px 20px;border-left:1px solid #e4e8e4;background:#fdfdfb}
.coverage-list-heading{font-size:17px;font-weight:600;letter-spacing:-.3px;margin:0 0 5px;color:#273830}
.coverage-card .coverage-list-intro{font-size:11px;color:#778079;margin:0 0 17px}
.coverage-real .coverage-places{gap:7px;margin-bottom:20px}
.coverage-real .coverage-places button{font-size:11px;min-height:38px;padding:8px 12px;background:#fff;border-color:#e1e5df}
.coverage-real .coverage-places button[aria-pressed=true]{background:#b9362c;border-color:#b9362c;color:#fff}
.coverage-real .coverage-detail{min-height:140px;padding-top:2px}
.coverage-real .coverage-detail strong{font-size:14px}
.coverage-real .coverage-detail p{font-size:11px;line-height:1.9}
.coverage-real .coverage-note{font-size:10px}
.coverage-real .coverage-attribution{font-size:9px}
.coverage-real .coverage-call{font-size:11px;line-height:1.8}
.coverage-marker{width:17px;height:17px;border:3px solid #fff;border-radius:50%;background:#b9362c;box-shadow:0 0 0 5px #b9362c1c,0 2px 5px #25392a35;padding:0;cursor:pointer;transition:box-shadow .15s}
.coverage-marker:hover,.coverage-marker.is-selected{box-shadow:0 0 0 8px #b9362c30,0 2px 6px #25392a35;z-index:2}
.coverage-marker:focus-visible{outline:3px solid #253d31;outline-offset:4px}
.coverage-marker-small{width:12px;height:12px;border-width:2px;background:#7b8a7f;box-shadow:0 0 0 3px #7b8a7f19}
.coverage-marker-office{border-radius:4px;background:#283c32}
.coverage-popup .maplibregl-popup-content{padding:9px 13px;font:500 12px Poppins,sans-serif;color:#293b31;border-radius:9px;box-shadow:0 5px 18px #2136271a}
.coverage-real .maplibregl-ctrl-group{border-radius:10px;overflow:hidden;box-shadow:0 2px 8px #20332b20}
.coverage-real .maplibregl-ctrl-group button{width:36px;height:36px}
.coverage-real .maplibregl-ctrl-attrib{font-size:10px;line-height:17px}
.coverage-real .maplibregl-canvas:focus-visible{outline:2px solid #b9362c;outline-offset:-3px}
.billing-compact{display:grid;grid-template-columns:1fr 1.15fr 1.4fr;gap:32px;padding:26px 32px;border-radius:18px;align-items:start}
.billing-compact .company-identifiers{margin:0;padding:0;border:0;gap:5px 18px}
.billing-compact .contact-social-links{margin-top:15px;gap:6px}
.billing-compact h3{font-size:18px;margin:0 0 10px}
.billing-compact .company-name{font-size:14px;margin:0}
@media(max-width:1000px){.coverage-layout{grid-template-columns:minmax(0,1fr) 290px}.coverage-real .contact-map-heading{column-gap:32px}.coverage-real .contact-map-heading h3{font-size:31px}.coverage-real .coverage-body{padding:24px 20px}.billing-compact{gap:22px;padding:24px}}
@media(max-width:750px){.coverage-real .contact-map-heading{display:block;padding:26px 24px 23px}.coverage-real .contact-map-heading .tag{margin-bottom:12px}.coverage-real .contact-map-heading h3{font-size:30px;line-height:1.2;margin-bottom:14px}.coverage-real .contact-map-heading p{font-size:12px}.coverage-layout{grid-template-columns:1fr}.coverage-real .coverage-canvas{min-height:370px;height:370px}.coverage-real .coverage-svg{min-height:370px}.coverage-real .coverage-body{border-left:0;border-top:1px solid #e4e8e4;padding:24px}.coverage-real .coverage-places button{min-height:44px;font-size:12px;padding:9px 13px}.coverage-real .coverage-detail{min-height:0}.coverage-real .coverage-detail p{font-size:12px}.coverage-real .coverage-call{font-size:12px}.coverage-real .coverage-note{font-size:11px}.billing-compact{grid-template-columns:1fr;gap:20px;padding:24px}.coverage-real .coverage-nearby summary{font-size:13px}.coverage-real .coverage-villages button{font-size:11px}.coverage-fit{top:12px;right:12px}.coverage-marker{width:16px;height:16px}.coverage-marker-small{width:11px;height:11px}}

.coverage-marker::after{content:'';position:absolute;left:50%;top:100%;height:9px;width:2px;background:#b9362c;transform:translateX(-50%);z-index:-1}
.coverage-marker-small::after{height:5px;background:#7b8a7f}.coverage-marker-office::after{background:#283c32}
.coverage-real .maplibregl-ctrl-attrib summary::before,.coverage-real .maplibregl-ctrl-attrib summary::after{display:none!important}
.coverage-real .maplibregl-ctrl-attrib:not(.maplibregl-compact) .maplibregl-ctrl-attrib-button{display:none}
