/* Vizzora — Worldwide coverage map (v26.38). The map sits on its own dark panel, so it reads the same in light and dark mode. */
.cv-wrap{--cv-sea:#0B1A33;--cv-land:#2A3E63;--cv-edge:#0B1A33;--cv-dest:#3CC6A8;--cv-pk:#E8B04A;--cv-route:#E8B04A;--cv-ink:#16223A;
  background:var(--cv-sea);border-radius:20px;padding:14px;box-shadow:0 18px 40px rgba(11,26,51,.25);color:#EEF3FF;max-width:1180px;margin:0 auto}
.cv-stage{position:relative}
.cv-svg{display:block;width:100%;height:auto}
.cv-sph{fill:#0F2244}
.cv-grat{fill:none;stroke:rgba(255,255,255,.06);stroke-width:.5}
.cv-c{fill:var(--cv-land);stroke:var(--cv-edge);stroke-width:.4}
.cv-dest{fill:#2E7D6E;cursor:pointer;transition:fill .2s}
.cv-dest.on,.cv-dest:hover{fill:var(--cv-dest)}
.cv-pk{fill:#7A5A22}
.cv-arc{fill:none;stroke:var(--cv-route);stroke-width:1.1;stroke-linecap:round;stroke-dasharray:4 7;opacity:.42;animation:cvFlow 2.4s linear infinite}
.has-on .cv-arc{opacity:.18}
.has-on .cv-arc.on{opacity:1;stroke-width:2.2}
@keyframes cvFlow{to{stroke-dashoffset:-22}}
.cv-pin{cursor:pointer;outline:none}
.cv-dot{fill:#fff;stroke:var(--cv-sea);stroke-width:1.5}
.cv-pin-dest .cv-dot{fill:var(--cv-dest)}
.cv-pin-office .cv-dot{fill:var(--cv-pk)}
.cv-pin-remote .cv-dot{fill:#8FB8FF}
.cv-ring{fill:none;stroke:#8FB8FF;stroke-width:1.6}
.cv-rem{background:#EAF1FF;border-radius:8px;padding:6px 8px;font-size:13px;color:#173A73}
.cv-tag{display:inline-block;margin-top:2px;font-size:12px;font-weight:700;color:#7A4A00;background:#FFF3E0;border-radius:6px;padding:1px 6px}
.cv-k.remote{background:#8FB8FF}
.cv-pin-hq .cv-dot{fill:#FFFFFF;stroke:#E8B04A;stroke-width:3}
.cv-k.hq{background:#fff;box-shadow:inset 0 0 0 3px #E8B04A}
.cv-pulse{fill:none;stroke:var(--cv-pk);stroke-width:2;animation:cvPulse 2s ease-out infinite;transform-origin:center;transform-box:fill-box}
@keyframes cvPulse{from{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(2.4)}}
.cv-hit{fill:transparent}
.cv-pin.on .cv-dot,.cv-pin:focus-visible .cv-dot{stroke:#fff;stroke-width:3}
.cv-card{position:absolute;z-index:3;width:260px;box-sizing:border-box;background:#fff;color:var(--cv-ink);border-radius:14px;padding:12px 14px;box-shadow:0 12px 30px rgba(0,0,0,.35);font-size:14.5px;line-height:1.4}
.cv-card[hidden]{display:none}
.cv-card p{margin:6px 0}
.cv-card a{color:#0B5CAD}
.cv-name{display:block;font-size:16px;color:#13284D;padding-right:26px}
.cv-mut{color:#4E5B74;font-size:13.5px}
.cv-note{background:#FFF3E0;border-radius:8px;padding:6px 8px;font-size:13px;color:#7A4A00}
.cv-off{list-style:none;margin:4px 0;padding:0}.cv-off li{margin:3px 0}
.cv-acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.cv-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border-radius:10px;background:#13284D;color:#fff !important;text-decoration:none;font-weight:600;font-size:14px}
.cv-btn.wa{background:#1FA855}
.cv-x{position:absolute;top:6px;right:6px;width:32px;height:32px;min-height:32px;border:0;background:none;font-size:16px;color:#4E5B74;cursor:pointer}
.cv-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:10px 4px 2px;font-size:13.5px;color:#C9D4EA}
.cv-k{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px;vertical-align:-1px}
.cv-k.office{background:#E8B04A}.cv-k.dest{background:#3CC6A8}
.cv-k.route{width:18px;height:0;border-radius:0;border-top:2px dashed #E8B04A;vertical-align:3px}
.cv-fail{color:#EEF3FF;padding:16px}.cv-fail a{color:#9FE6D4}
/* phones (and folded phones): the card sits under the map, full width */
@media (max-width:640px){
  .cv-wrap{border-radius:14px;padding:8px}
  .cv-card{position:relative;left:auto !important;top:auto !important;width:100%;margin-top:8px}
  .cv-dot,.cv-hit,.cv-pulse,.cv-ring{transform:scale(1.7);transform-origin:center;transform-box:fill-box}
  .cv-legend{font-size:12.5px}
}
@media (prefers-reduced-motion:reduce){.cv-arc,.cv-pulse{animation:none}}
/* the coverage page and the home section */
.cv-sec{padding:40px 0}
.cv-head{max-width:1180px;margin:0 auto 14px;padding:0 4px}
.cv-head h2,.cv-head h1{margin:0 0 6px}
.cv-head p{margin:0;color:#4E5B74;max-width:760px}
.cv-list{max-width:1180px;margin:18px auto 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;padding:0}
.cv-list li{list-style:none;background:#fff;border:1px solid #E3E8F1;border-radius:12px;padding:10px 12px;font-size:14.5px}
.cv-list b{display:block;color:#13284D}
