/* Wrapper now has real height using aspect-ratio */
.caldas-mapa-aj .cm-wrap{ position:relative; max-width:860px; margin:0 auto; aspect-ratio: 664 / 852; }
.caldas-mapa-aj .cm-layer{ position:absolute; inset:0; }
.caldas-mapa-aj .cm-map svg, .caldas-mapa-aj .cm-route svg{ width:100%; height:100%; display:block; }

/* Map base + hover colors */
.caldas-mapa-aj .cm-map .region path{
  fill:#bfbfbf;
  stroke:rgba(0,0,0,.12);
  transition:fill .18s ease, stroke .18s ease;
  cursor:pointer;
  pointer-events:auto;
}
.caldas-mapa-aj.hover-aguadas   .cm-map #aguadas   path{ fill:#525a49; }
.caldas-mapa-aj.hover-pacora    .cm-map #pacora    path{ fill:#97b7cf; }
.caldas-mapa-aj.hover-salamina  .cm-map #salamina  path{ fill:#c97654; }
.caldas-mapa-aj.hover-aranzazu  .cm-map #aranzazu  path{ fill:#98a37d; }
.caldas-mapa-aj.hover-neira     .cm-map #neira     path{ fill:#6a7e85; }
.caldas-mapa-aj.hover-marulanda .cm-map #marulanda path{ fill:#c2a5d1; }
.caldas-mapa-aj .cm-map .region:focus path{ outline:none; stroke:rgba(0,0,0,.28); }

/* Route on top but non-interactive */
.caldas-mapa-aj .cm-route{ transform-origin:top left; pointer-events:none; }
.caldas-mapa-aj .cm-route path{ fill:none; stroke:#f0ede4; stroke-width:5px; stroke-linecap:round; stroke-linejoin:round; }

/* Hover labels (pills) */
.caldas-mapa-aj .cm-labels{ position:absolute; inset:0; pointer-events:none; }
.caldas-mapa-aj .cm-label{
  position:absolute;
  transform:translate(-50%,-50%);
  background:#f4e9de;
  color:#374151;
  font:600 14px/1.2 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  padding:.55rem .9rem;
  border-radius:999px;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
  opacity:1; transition:opacity .15s ease, transform .15s ease;
  white-space:nowrap;
}
.caldas-mapa-aj.hover-aguadas   .cm-labels .lab-aguadas,
.caldas-mapa-aj.hover-pacora    .cm-labels .lab-pacora,
.caldas-mapa-aj.hover-salamina  .cm-labels .lab-salamina,
.caldas-mapa-aj.hover-aranzazu  .cm-labels .lab-aranzazu,
.caldas-mapa-aj.hover-neira     .cm-labels .lab-neira,
.caldas-mapa-aj.hover-marulanda .cm-labels .lab-marulanda{ opacity:1; transform:translate(-50%,-56%); }

/* Red markers */
.caldas-mapa-aj .cm-markers{ position:absolute; inset:0; pointer-events:none; }
.caldas-mapa-aj .cm-marker{
  position:absolute; transform:translate(-50%,-50%);
  width:14px; height:14px;
  background:#c7322b; border:3px solid #f0ede4; border-radius:999px;
  box-shadow:0 0 0 1px rgba(0,0,0,.08);
}
.caldas-mapa-aj.hover-aguadas   .cm-marker[data-id="aguadas"],
.caldas-mapa-aj.hover-pacora    .cm-marker[data-id="pacora"],
.caldas-mapa-aj.hover-salamina  .cm-marker[data-id="salamina"],
.caldas-mapa-aj.hover-aranzazu  .cm-marker[data-id="aranzazu"],
.caldas-mapa-aj.hover-neira     .cm-marker[data-id="neira"],
.caldas-mapa-aj.hover-marulanda .cm-marker[data-id="marulanda"]{
  box-shadow: 0 0 0 3px rgba(199,50,43,.25);
}

/* Compass */
.caldas-mapa-aj .cm-brujula{ position:absolute; left:2.5%; top:6%; width:90px; opacity:.95; pointer-events:none; user-select:none; }



.caldas-mapa-aj.hover-aguadas   .cm-labels .lab-aguadas,
.caldas-mapa-aj.hover-pacora    .cm-labels .lab-pacora,
.caldas-mapa-aj.hover-salamina  .cm-labels .lab-salamina,
.caldas-mapa-aj.hover-aranzazu  .cm-labels .lab-aranzazu,
.caldas-mapa-aj.hover-neira     .cm-labels .lab-neira,
.caldas-mapa-aj.hover-marulanda .cm-labels .lab-marulanda{
  background:#ffd25f;
  color:#1f2937;
  transform:translate(-50%,-54%);
  box-shadow:0 6px 14px rgba(0,0,0,.12);
}



.caldas-mapa-aj .cm-route{ pointer-events:none; }
