body{
margin:0;
font-family:Arial,Helvetica,sans-serif;
}


/* ================= ISOLAMENTO WORDPRESS ================= */

#map,
#map *,
.leaflet-container,
.leaflet-container *{

box-sizing:border-box;

font-family:Arial,Helvetica,sans-serif;

-webkit-text-size-adjust:none;
text-size-adjust:none;

}


/* ================= MAPPA ================= */

#map{

height:100vh;
width:100%;

}


.leaflet-container{

background:#ffffff;

font-size:14px;

}


/* ================= PANNELLO ================= */


#searchPanel{
position:fixed;
top:70px;
right:10px;
z-index:999;
display:flex;
flex-direction:column;
gap:8px;
align-items:flex-end;
}


.uiBtn{

background:#fff;

border:none;

width:46px;

height:46px;

border-radius:6px;

cursor:pointer;

display:flex;

align-items:center;

justify-content:center;

padding:6px;

box-shadow:0 1px 5px rgba(0,0,0,0.15);

}


.uiBtn img{

width:70%;

height:70%;

object-fit:contain;

}


/* FILTRI */

#filters{

display:none;

margin-top:6px;

background:white;

padding:12px;

width:260px;

border-radius:6px;

box-shadow:0 1px 5px rgba(0,0,0,0.15);

}


#filters input{

width:100%;

padding:8px;

margin-bottom:8px;

box-sizing:border-box;

}



/* ================= POPUP BASE ================= */


.leaflet-popup-content-wrapper{

overflow:hidden;

}


.leaflet-popup-content{


width:260px;

max-width:260px;

min-width:260px;


margin:14px 16px !important;


font-size:14px !important;

line-height:1.35 !important;


-webkit-text-size-adjust:none !important;

text-size-adjust:none !important;

}



.leaflet-popup-content *{


font-family:Arial,Helvetica,sans-serif;


font-size:14px;


-webkit-text-size-adjust:none !important;

text-size-adjust:none !important;

}



/* TITOLO */

.leaflet-popup-content div[lang="it"]:first-child{

font-size:16px;

font-weight:bold;

}


/* LINK */

.leaflet-popup-content a{

font-size:14px !important;

color:#842223 !important;

font-weight:bold !important;

text-decoration:none !important;

}



/* ================= POPUP SCROLL ================= */


.popup-scroll{


max-height:58vh;


overflow-y:auto;

overflow-x:hidden;


padding-right:6px;


}



.popup-scroll::-webkit-scrollbar{

width:6px;

}


.popup-scroll::-webkit-scrollbar-thumb{

background:rgba(132,34,35,.45);

border-radius:20px;

}


.popup-scroll::-webkit-scrollbar-track{

background:transparent;

}



/* ================= CAROUSEL ================= */


.popup-slider{

width:260px;

}



.popup-slide{

min-height:100px;

font-size:14px;

}


/* FRECCE */


.popup-arrows{


display:flex;

justify-content:space-between;


margin-top:10px;


font-size:36px;


line-height:1;


user-select:none;


}



.popup-arrows span{


cursor:pointer;


color:rgba(132,34,35,0.8);


font-weight:bold;


padding:2px 8px;


}


/* PALLINI */


.popup-dots{


display:flex;


justify-content:center;


gap:6px;


margin-top:6px;


}



.popup-dots .dot{


width:8px;

height:8px;


border-radius:50%;


background:rgba(132,34,35,0.45);


cursor:pointer;


transition:.2s;


}



.popup-dots .dot.active{


background:rgba(132,34,35,1);


transform:scale(1.2);


}




/* ================= CLUSTER ================= */


.custom-cluster{


background:rgba(132,34,35,0.85);

border-radius:50%;

box-shadow:0 0 10px rgba(0,0,0,.25);

display:flex;

align-items:center;

justify-content:center;

color:white;

font-weight:bold;

border:2px solid rgba(132,34,35,.4);

}



.leaflet-marker-icon.leaflet-marker-shadow,

.marker-cluster-small div,

.marker-cluster-medium div,

.marker-cluster-large div{

box-shadow:none!important;

}



/* elimina sagoma blu */

.leaflet-marker-cluster-layer path{

display:none!important;

}



.leaflet-marker-icon,
.leaflet-interactive{

outline:none!important;

}



.leaflet-tile-container img{

background:transparent!important;

}



#map img{

max-width:none!important;

}




/* ================= MOBILE ================= */


@media(max-width:768px){



#map{

height:100vh;

}



/* popup */

.leaflet-popup{


max-width:85vw!important;


}



.leaflet-popup-content-wrapper{


max-width:85vw!important;


}



.leaflet-popup-content{


width:auto!important;


min-width:0!important;


max-width:75vw!important;


margin:12px!important;


font-size:14px!important;


line-height:1.35!important;


}



.leaflet-popup-content *{


font-size:14px!important;


}



.leaflet-popup-content div[lang="it"]:first-child{


font-size:16px!important;


}



.popup-slider{


width:75vw;


max-width:75vw;


}



.popup-scroll{


max-height:45vh;


padding-right:4px;


}



/* marker */

.leaflet-marker-icon{

transform:scale(1.4);

}



.custom-cluster{

transform:scale(1.4);

}



/* zoom */

.leaflet-control-zoom a{


width:45px;

height:45px;

font-size:22px;

line-height:45px;


}


}


/* ================= CONTROLLI FINALI ================= */


.leaflet-control-container *{


font-family:Arial,Helvetica,sans-serif;

font-size:14px;

text-transform:none;

letter-spacing:0;


}

/* popup singolo */

.popup-single{

width:260px;

font-size:14px;

}



/* mobile */

@media(max-width:768px){

.popup-single{

width:75vw;

max-width:75vw;

}

}

/* ================= ATTRIBUZIONE LEAFLET ================= */

.leaflet-control-attribution{

font-family:Arial,Helvetica,sans-serif;

font-size:11px;

line-height:1.3;

background:rgba(255,255,255,0.75) !important;

}
@media(max-width:768px){

.leaflet-control-attribution{

font-size:9px;

max-width:85vw;

}

}