/**/

.blocco iframe{
border-radius:20px;
overflow:hidden;
}

.photo-swiper{
	overflow:hidden;
}
/*Controllare*/


.swiper-pagination-bullet{
display:none !important;}

.appartamenti-container .photo-swiper{
background-color:#ccc}

.contenitore-immagini{
z-index:9;
border-radius:20px;
overflow:hidden;
}

.swiper-zone{
	position:absolute;
	top:10px;
	left:10px;
	background:white;
	padding-left:10px;
	padding-right:10px;
	padding-top:5px;
	padding-bottom:5px;
	border-radius:50px;
	box-shadow: 0 3px 12px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.08);
	font-size:80%;
	font-weight:600;
	z-index:99;
}


.appartamenti-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 20px;
}


#search-results {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 20px;
}


.appartamenti-container .swiper-wrapper{
border-radius:20px !important;
}




.swiper-slide img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.appartamento a{
	color:black;
	font-size:18px;
	text-decoration:none !important;
	line-height:1em;
}

.appartamento h3{
margin-bottom:0 !important;
margin-top:0 !important;
}

.appartamento p {
	margin-bottom:0
}


.appartamento {
    position: relative;
}

.photo-swiper {
    position: relative;
}

.swiper-button-next, .swiper-button-prev {
    position: absolute !important;
transition: 0.3s opacity  !important;
    color: #fff  !important;
    text-align: center  !important;
    z-index: 10  !important;
    background-color: rgba(0, 0, 0, 0.5)  !important;
    border-radius: 50%  !important;
    width: 32px  !important;
    height: 32px  !important;
    justify-content: center  !important;
    align-items: center  !important;
    display: flex  !important;
background-image:none !important  !important;
}

.swiper-button-next:hover, .swiper-button-prev:hover{
	background:white  !important;
	color:black  !important;
	border:1px solid black  !important;
	transition: 0.3s  !important;
}



.swiper-button-next {
    right: 10px  !important;
	opacity:0;
}

.swiper-button-next:after, .swiper-button-prev:after{
	font-size:15px  !important;
}

.swiper-button-prev {
    left: 10px;
		opacity:0;
}

.photo-swiper:hover .swiper-button-prev{
	opacity:1;
}

.photo-swiper:hover  .swiper-button-next{
	opacity:1;
}


.photo-swiper:hover .swiper-button-next,
.photo-swiper:hover .swiper-button-prev {
    display: flex;
}





/*Impaginazione Generale*/

#boxsx{
width:70%;
float:left;
padding-right:40px;
margin-top:20px;
}

#content{
	margin-top:20px;
	margin-bottom:20px
}

#boxdx{
width:30%;
float:right;
position:relative;
top:20px;
}

#boxdx p{
	margin-bottom:0;
}

.blocco{
	padding-top:30px;
	padding-bottom:30px;
	border-top:0.25px solid grey;
}


/*Media Queries*/

@media screen and (max-width: 991px) {

	#boxdx{
		width:100% !important;
	}
	
		#boxsx{
		width:100% !important;
			padding-right:0
	}
    
    .apt_contenuto{
    display:block !important
    }
	
	.letti_box{
	width: calc(50% - 15px) !important;
		margin:5px
}
	
	#orario_entrata, #orario_uscita{
		display:flex;
		flex-direction:column;
		padding:15px !important;
	}
}

/*Prenotazione*/


.comprobar_button, .bottone-dettagli{
	display: block;
	width:100% !important;
	text-align:center;
	background:#BEB28C;
	padding:10px;
	color:white !important;
	border-radius:10px;
	margin-top:20px;
	text-decoration:none !important;
}

.comprobar_button:hover{
	background:#847B61;
	transition:0.2s;
}

.precio{
	font-size:80%;
	padding-bottom:10px;
}

.info{
	font-size:80%;
	line-height:1.5em;
	font-weight:300;
	margin-top:20px
}


#boxdx .price_tag{
	font-size:200%;
}

.apt_contenuto{
	display:flex;
}

.boxcard{
	position:sticky !important;
	top:20px;
    margin-bottom:20px;
padding:25px;
background:white;
border-radius:10px;
}

/*Dimensioni*/

#dimensione p{
	margin-bottom:0;
}


#dimensione{
display: grid;
align-items: center !important;
background: white;
margin-bottom: 20px;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
border-radius: 10px;
padding:15px;
gap:20px;
}

@media screen and (max-width: 767px) {
    #dimensione p {
        flex-basis: 48%; /* O una percentuale appropriata */
        margin-bottom: 10px; 
    }
}

/*Descrizione*/
#descrizione p{
	margin-top:15px;
}

/*Caratteristiche piu apprezzate*/


#caratteristiche_piu_apprezzate .fas{
	font-size:130%;
	margin-right:10px
}

.caratteristica{
	margin-bottom:10px;
}

#caratteristiche_piu_apprezzate{
	font-size:100%;
	margin-bottom:20px;
}

.caratteristiche {
    column-count: 2;
    column-gap: 20px;
}

.caratteristica {
    margin-bottom: 10px;
}

@media (max-width: 767px) {
    .caratteristiche {
        column-count: 1;
    }
}


/*Comodidades*/

.blocco_comodidades{
	margin-top:20px;
	margin-bottom:20px;
	background:white;
	padding:20px;
	border-radius:20px;
}

.blocco_comodidades h5{
	margin-bottom:20px;
}

.comodidad{
	padding:8px;
	padding-left:15px;
	padding-right:15px;
	border:1px solid black;
	border-radius:80px;
    display:inline-block;
    margin-bottom: 10px;
}

/*Distribuzione Letti*/


.letti_box{
	width: calc(25% - 10px);
	background:white;
	margin-right:10px;
	padding:20px;
	border-radius:10px;
}

#distribuzione_letti{
	display:flex;
	width:100%;
	flex-wrap: wrap;
	margin-top:15px
}


/*Orari Checkin e Checkout*/

.img_checkinout{width:80px;}

.testo_orari{
margin-bottom:0 !important;
	margin-left:20px;
	height:fill;
	display:block;
	
}

#orario_entrata, #orario_uscita{
width:calc(50% - 5px);
background:white;
display:flex;
padding:20px;
align-items:center;
border-radius:10px;}

#orario_entrata{
	margin-right:10px;
}

#orari{
	display:flex;
	margin-top:15px;
	width:100%;
}

/*Indirizzo*/

.blocco iframe{
	margin-top:10px;
}

/*Gallery e Swiper*/

.photo-swiper {
    position: relative;
}

.swiper-pagination-count {
    position: absolute;
    bottom: 10px;
    color: #fff; /* Cambia colore a seconda del tuo design */
    font-size: 12px;
	z-index:9;
	background:rgba(0,0,0,0.5);
	width:40px;
	text-align:center;
}



.photo-swiper{
margin-bottom:20px;
}

    .main-image, .small-images {
        width: 100%;
    }

    .small-images {
        display: none;
    }



.small-image, .main-image {
    position: relative;
}


#show_images{
position:absolute;
margin:20px;
z-index:9;
background:white;
}

#show_images:hover{
	background:#ececec;
	color:black;
}


.gallery-container {
display: flex !important;
width: 100% !important;
	border-radius:20px;
	overflow:hidden;
	height:500px;
	margin-bottom: 20px
}

.main-image, .small-images {
    width: 50%;
}

.main-image img {
width: 100%;
height: 100%;
padding-right:10px;
object-fit:cover;
}

.small-images {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 10px;
}


.small-image{
	height:245px;
}

.small-image img {
    width: 100%;
    height: 100%;
	object-fit:cover;
	
}

/* Stili per la Lightbox */
.fancybox-close-small{
	position:absolute;
	top:20px !important;
	right:20px !important;
}

.fancybox-close-small:hover{
	background: transparent!important;
	color:red;
}
#masonry-lightbox{
	width:100dvw;
	height:100dvh;
}


.masonry-grid {
    display: flex;
    flex-wrap: wrap;
	max-width:1000px;
	margin:auto;
	height:90dvh;
	overflow:scroll;
}

.masonry-grid .grid-item {
    flex-basis: calc(50% - 10px); /* Aggiusta il margine come necessario */
    margin: 5px;
    box-sizing: border-box;
}

.masonry-grid .grid-item.full {
    flex-basis: calc(100% - 10px);
}

.masonry-grid .grid-item.half {
    flex-basis: calc(50% - 10px);
}

.masonry-grid .grid-item.quarter {
    flex-basis: calc(25% - 10px);
}

/* Media Queries Gallery */

.mobile-gallery {
    display: none;
}


@media screen and (max-width: 768px){

    .gallery-container {
        display: none !important;
    }
    .mobile-gallery {
        display: block;
    }
}

/*Hostal*/


.camere-hostal{
width:100%;	
}

.camere-hostal p{
	margin-bottom:10px;
}

@media screen and (min-width:992px){
.b-camere{
display:grid;
gap:15px;
grid-template-columns: repeat(2, 1fr);
}
}



.immagine {
width: 250px;
background-size: cover;
background-position:center;
margin-right: 20px;
border-radius: 20px;
background-color:grey;

}

.camere-hostal {
padding: 20px;
display: flex;
border-radius: 20px;
background: white;
}

@media screen and (max-width: 991px) {
    
    .immagine {
        width: 200px !important;
    }
}




@media screen and (max-width:768px)
{

	.immagine{
		max-width:100%;
		max-height:200px;
		width:1000px !important;
		height:1000px;
		margin-bottom:20px;
	}
	
	.camere-hostal{
		display:block;
	}
	
}










/*Ricerca*/


@media screen and (max-width:768px){

	.zone, .adulti, .bambini {
	width:100% !important;
		align-items;
		padding-bottom:10px;
		padding-top:10px;

}
	
	.zone, .adulti {
border-bottom:1px solid #dddddd;	
	}
	
	.search-container{
	display:block !important;
	padding:20px !important;
	border-radius:20px !important;
}
	
	.adulti, .bambini {
	border-left:none !important;
	padding-left:0px !important;
}

#search-btn{width:100% !important;}
	
	.search-container input{
	width:100% !important;
	background:none;
	
}
	
}


.zone, .adulti, .bambini {
	display:flex;
	flex-direction:column;
	width:25%;
}

.adulti, .bambini {
	border-left:1px solid #DDDDDD;
	padding-left:30px !important;
		padding:5px;
}

.search-container{
	display:flex;
	gap:10px;
	align-items:center;
	border:1px solid #DDDDDD;
	box-shadow: 0 3px 12px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.08);
	padding:2px 12px 2px 50px;
	border-radius:40px;
	background:white;
}

.search-container input{
	padding:5px !important;
	border:none !important;
	background:none;
	width:30%;
}

.search-container button {
	border-radius:40px;
	color:white;
	background:#BEB28C;
}


.search-container select{
	border:none;
	background:none;
-webkit-appearance: none;
	padding:0
}

.search-container label{
	padding-bottom:5px;
	font-weight:bold;
}

#search-btn{width:25%;}

.search-container select, input{
height:auto !important;}