/* Contenitore mappa */
.vhc-calabria-map{
  width:100%;
  border-radius:18px;
  overflow:hidden;
}

/* Pin Font Awesome */
.vhc-pin { background: transparent; border: none; }
.vhc-pin-inner{
  width:34px; height:34px;
  border-radius:999px;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 10px 20px rgba(0,0,0,.18);
  border:2px solid #fff;
}
.vhc-pin-inner i{
  color:#fff;
  font-size:16px;
  line-height:1;
}

/* Popup/card */
.leaflet-popup-content{
  margin:12px 14px;
}

.vhc-popup-card{
  width:340px;
  border-radius:18px;
  overflow:hidden;
  font-family: inherit;
  background:#fff;
}

.vhc-popup-media{
  height:140px;
  background-size:cover;
  background-position:center;
  position:relative;
}

.vhc-badge{
  position:absolute;
  top:12px; left:12px;
  color:#fff;
  font-weight:900;
  font-size:12px;
  padding:6px 10px;
  border-radius:999px;
  box-shadow:0 10px 20px rgba(0,0,0,.18);
}

.vhc-popup-body{
  padding:12px 12px 14px;
}

.vhc-popup-title{
  font-size:18px;
  font-weight:900;
  margin-bottom:6px;
  line-height:1.15;
}

.vhc-title-link{
  text-decoration:none !important;
  color:#0b2239;
}

.vhc-subline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}

.vhc-localita{
  font-size:13px;
  font-weight:700;
  color:#2a80b9;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.vhc-localita i{ color:#2a80b9; }

.vhc-stars{
  display:inline-flex;
  align-items:center;
  gap:3px;
}
.vhc-stars i{
  color:#e3338d;
  font-size:14px;
  line-height:1;
}

.vhc-row{
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-size:14px;
  margin:8px 0;
  color:#0b2239;
}

.vhc-row i{
  width:18px;
  margin-top:2px;
  color:#2a80b9;
}

.vhc-actions{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:12px;
}

.vhc-btn{
  flex:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:42px;
  border-radius:999px;
  color:#fff !important;
  font-weight:900;
  text-decoration:none !important;
}

.vhc-wa{
  width:42px; height:42px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#25D366;
  color:#fff !important;
  text-decoration:none !important;
  font-size:20px;
}

/* Cluster (base) */
.marker-cluster,
.marker-cluster div{
  border-radius:999px !important;
}
.marker-cluster div{
  font-weight:900;
}
