/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/



.mobile_inner_sep{
	margin-top:50px;
}
#where_you_sleep_wrap{
	display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.single_where_you_sleep_meta{
	display:flex;
	flex-direction:column;
}
.single_where_you_sleep_meta span:first-child{
	font-size:15px;
}
.single_where_you_sleep_meta span:last-child{
	color:#E2B893;
	font-size:13px;
	line-height:1;
}
.single_where_you_sleep img{
	margin-right:10px;
	width: 30px;
}
.single_where_you_sleep{
	 margin-bottom: 20px;
	color:#9A3720;
	display: flex;
    border: 1px solid #E2B893;
    border-radius: 10px;
    padding: 20px;
	margin-right: 20px;
}
#show_all_photos{
	font-size:12px;
	font-family: 'termina';
	position: absolute;
    z-index: 99;
    right: 20px;
    bottom: 20px;
    background-color: rgba(255, 255, 255, 0.2);
    border: none;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    cursor: pointer;
    color: #fff;
    padding: 10px 20px;
	border-radius:8px;
}
.stop-booking-box {
 align-self: flex-end !important;
}
.fixed-booking-box .fusion-content-layout-column{
  position: fixed !important; 
  top: 40px !important; 
  max-width:480px;
	width:100%;
	margin-left: 25px !important;
  z-index: 1000 !important; 
}
#contact_form input[type=text]{
	padding-left:0 !important;
	font-family: 'termina';
}
#contact_form textarea{
	padding-left:0 !important;
	font-family: 'termina';
}
#contact_form input::-ms-input-placeholder { /* Edge 12-18 */
  color: #333;
}

#contact_form input::placeholder {
  color: #333;
}
#contact_form textarea::-ms-input-placeholder { /* Edge 12-18 */
  color: #333;
}

#contact_form textarea::placeholder {
  color: #333;
}
#home_hustle{
	background-size: 100% 680px;
}
.search-field.location{
	width:120px;
	cursor:pointer;
}
.srch_form_sort{
	margin-top: 40px;
    margin-left: 20px;
	margin-right: 40px;
}
.srch_form_sort button{
	border: 1px solid #9A3720;
	color:#333;
    background: none;
    border-radius: 100px;
    height: 69px;
	font-family:"termina";
	font-size:11px;
	cursor:pointer;
    width: 164px;
}
#contact_form label{
	font-family:"termina";
	text-transform:uppercase;

}
.prop_ft_list_summary p{
	margin-bottom:0 !important;
}
.custom_contact_flip {
    background-color: rgba(255, 255, 255, 0.2); ]
    backdrop-filter: blur(5px); /* Adds a background blur effect */
    color: #fff; /* Text color white */
    font-family: 'Termina', sans-serif; /* Font family set to Termina */
    font-size: 11px; /* Font size 11px */
    text-transform: uppercase; /* Uppercase text */
    padding: 10px 15px; /* Optional: padding for better click area */
    border-radius: 100px; /* Optional: rounded corners */
    text-decoration: none; /* Remove underline */
    display: inline-block; /* Ensures the link respects padding */
	float:left;
	margin-left:20px;
	margin-top:20px;
}

.summary_data_wrapper .prop_title{
	font-size:30px !important;
}


.summary_data_wrapper .prop_title a:hover{
	color: #191815 !important;
}

.custom_contact_flip:hover {
    background-color: rgba(255, 255, 255, 0.4); /* Slightly darker background on hover */
	 color: #fff; /* Text color white */
}

#home_flip_main .flip-box-inner-wrapper p{
	text-align: left;
    margin-left: 20px;
}

#home_flip_main .flip-box-inner-wrapper h3{
	text-align: left;
    margin-left: 20px;
}

.flip-box-back-inner{
	max-width:223px;
}

#home_flip_main .flip-box-inner-wrapper{
	height: 444px;
    border-radius: 20px !important;
    overflow: hidden !important;
}
.action_btn_prop{
	text-transform:uppercase;
}
#home_below_hero{
	background-size: 100% 670px !important;
}
.search_guest_select{
	cursor:pointer;
}
.search-field.check-in-date{
	margin-left:120px;
}
.search-field.check-out-date{
	margin-left:80px;
}
.search-field.guests{
	margin-left:80px;
}
.form-labels{
	margin-left:0px
		;
	font-family:"termina";
	color:#E2B893;
	font-size:11px;
	text-transform:uppercase;
	margin-top:15px; 
	display:block;
}
.primary_srch_btn{
	height:60px; 
	width: 60px;
	background:#9A3720;
	border-radius:100px; 
	border:none; 
	font-family: "termina";
	font-size: 12px !important;
}
.search-field.search-button{
	margin-left:auto;
	padding-top:4px; 
	padding-right:4px;
}
#search_prop_primary{
	margin-top:40px;
	display: flex;
	padding-left:30px;
    flex-wrap: wrap;
  margin-left: 40px;
    margin-bottom: 40px;
    box-shadow: 0 0 10px 0 #0003;
    border-radius: 100px;
    height: 70px;
    width: 1002px;
	z-index:999 !important;
}
.slider_btn{
	font-family: 'termina' !important ;
}
#search_prop_primary .open_guest_select{
	min-width:300px
	;
	cursor:pointer;
}
#search_prop_primary{
	
}
.border-left{
	padding-left: 20px;
    border-left: 1px solid #9A3720;
}

.dropdown_custom{
	position: absolute;
    background: #fff;
    margin-top: -20px;
	border-radius:10px;
	display:none;
	margin-left:30px
}
.date_input{
	width: 140px !important;
    background: transparent !important;
    border: 0px !important;
	padding-left:0 !important;
}
.open_guest_select{
	min-width:300px
	;
	cursor:pointer;
}
.dropdown_custom ul{
	margin: 0 ;
    padding: 0;
    list-style: none;
    min-width: 190px;
}

.dropdown_custom ul li {
	
    margin-bottom: 5px;
	border-bottom :0.5px solid #E2B893;
}

.dropdown_custom ul li a:hover{
	color:#000 !important;
}
.awb-menu__m-toggle.awb-menu__m-toggle_no-text{
	font-size:21px !important;
}
.dropdown_custom ul li a{
	display:block;
	line-height: 2;
    font-size: 15px;
    font-family: "elza-text";
    padding: 10px 20px;
}

.prop_summary_action{
	display: flex;
    flex-direction: row;
    justify-content: space-between;
	padding: 20px 20px 20px 0;
}

.action_btn_prop:hover{
	border: 1px solid #9A3720;
	color:#fff !important;
	background:#9A3720;
}
.action_btn_prop{
	border: 1px solid #9A3720;
    border-radius: 100px;
    padding: 10px 20px;
    font-family: 'termina';
    font-size: 10px;
    color: #9A3720;
}
#about_title h3 span{
	color:#928A67 ;
}

.villa_amenities_single{
	display:flex;
	flex-direction:row;
	
}
.single_villa_btn_enquire:hover{
	background: #9A3720;
    display: block;
    padding: 10px;
    color: #fff !important;
    border-radius: 100px;
    font-size: 13px;
    font-family: 'termina';
    text-align: center;
    margin-bottom: 15px;
}
.single_villa_btn_enquire{
	background: #9A3720;
    display: block;
    padding: 10px;
    color: #fff;
    border-radius: 100px;
    font-size: 13px;
    font-family: 'termina';
    text-align: center;
    margin-bottom: 15px;
}
.booking_dates_single{
	display:flex;
	flex-direction:row;
	
}
.booking_dates_single .checkin{
	border-right:1px solid #E2B893;
}
.booking_dates_single> div{
	width:49%;
	min-height:50px
}
.btn_guest_selector{
	margin:20px;
}
.guest_selector_wrap{
	display:flex; 
	flex-direction:row;
	justify-content:space-between;
}
.guest_selector_wrap  span{
	font-family:'elza-text';
	margin-left:30px;
	font-size:16px; 
	display:block;
	margin-bottom:20px;
}
.guest_selector_wrap label{ 
	margin-left:30px
		;
	font-family:"termina";
	color:#E2B893;
	font-size:11px;
	text-transform:uppercase;
	margin-top:20px; 
	display:block;
}
.checkin span, .checkout span{
	font-family:'elza-text';
	margin-left:30px;
	font-size:16px; 
	display:block;
	margin-bottom:20px;
}
.checkin label, .checkout label{
	margin-top:30px;
	margin-left:30px; 
	display:block;
	font-family:"termina";
	color:#E2B893;
	font-size:11px;
	text-transform:uppercase;
}
.single_villa_booking_block{
	border:0.5px #E2B893 solid;
	border-radius:20px;
	min-height:40px; 
	width:100%;
	display:block;
	margin:20px 0;
}
.single_villa_btn_whatsapp img{
	margin-right:10px;
}
.single_villa_btn_whatsapp{
	border:1px solid #9A3720;
    display: block;
    padding: 10px;
	text-transform:uppercase;
   color: #141617;
    border-radius: 100px;
    font-size: 13px;
    font-family: 'termina';
    text-align: center;
    margin-bottom: 15px;
}.single_villa_btn_whatsapp:hover {
	border:1px solid #9A3720;
    display: block;
    padding: 10px;
    color: #9A3720;
    border-radius: 100px;
    font-size: 13px;
    font-family: 'termina';
    text-align: center;
    margin-bottom: 15px;
}
.villa_amenities_single{
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    max-width: 360px;
}
.villa_amenities_single div{
	width:50%;
	margin-bottom:22px;
}
.our_prop_single_prop_summary_wrapper .flexslider .slides img{
	border-radius: 20px;
}

.our_prop_single_prop_summary_wrapper .fusion-slider-sc:not(.fusion-has-margin) .flexslider{
	margin:0px !important; 
}

.flex-control-paging li a{
	background:rgb(255 247 233 / 40%) !important;
}

.flex-control-paging li a.flex-active {
    background: hsl(38.18deg 100% 95.69%) !important;
    cursor: default;
}
.singleVillapgPrimary{
	border-radius:20px;
}
.singleVillaSecImages{
	border-radius:20px;
}
.singleVillaSecImages_1{
	margin-bottom:34px;
}
#after_prop_explore{
	background-size: 100% 430px !important;
	margin-top: -150px;
}
.action_icons_features{
	display:flex;
	flex-direction:row;
}
.action_icons_features span{
	margin-right:18px; 
	color:#9A3720;
	font-size:15px; 
	font-family:'elza-text';
}
.flex-next{
	margin-right:20px !important;
}
.flex-prev{
	margin-left:20px !important;
}
.flex-next,
.flex-prev{
	background: #FFF7E9 !important;
    height: 42px !important;
    width: 42px !important;
    border-radius: 100px !important;
    color: #000 !important;
    font-size: 37px !important;
}

.action_icons_features span img{
	margin-right:5px;
}
.box_inner_sep{
	border:0.5px solid #E2B893;
	width:100%;
	margin:4px auto 3px;
}
.custom_sep{
	border:0.5px solid #E2B893;
	width:100%;
	margin:40px auto 34px;
}
.prop_title{
	font-family:"Gelica" !important;
	font-weight:300 !important;
	font-size:24px !important;
	margin-top: 20px !important;
    margin-bottom: 8px !important;
}
.title_level_nigh{
	font-weight:400;
	font-family:'elza-text';
	font-size:12px;
	margin-left:8px;
}
.top_rt_segment{
	padding-top:20px;
	display:none; 
}
.title_level_price{
	font-family:"gelica";
	font-size:30px;
	font-weight: 300;
	
	line-height:1;
}
.title_sec{
	display: flex;
    width: 100%;
    flex-direction: row;
	
    justify-content: space-between;
}
.prop_ft_list_summary{
		font-family: 'elza-text';
	font-size:15px;
	line-height:1.65;
	max-width:440px
	
	
}
.title_sec .loc:before{
	background: url(https://seraivillas.in/wp-content/uploads/2024/08/Group.svg) no-repeat left center;
	content: " ";
    position: absolute;
    width: 20px;
    background-size: 15px 18px;
    height: 20px;
    margin-left: -20px;
    margin-top: 2px;
}
.title_sec .loc{
	font-size: 12px;
	color:#9A3720;
	font-family: 'elza-text';
	border-bottom:1px solid #9A3720;
	margin-left: 20px;
	padding-bottom:5px;
}

.summary_data_wrapper{
	display: flex;
    flex-direction: column;
    justify-content: space-between;
	padding-right:20px;
}

.btn_search_mobile_text{
	display:none;
}
#txt_dt_mainsrch_checkin, #txt_dt_mainsrch_checkout{
		height: 15px ;
    font-size: 15px;
	
    margin: 0;
    
	}

.date-input{
		height: 15px ;
    font-size: 15px;
    margin: 0;
    
	}

.main_search_wrap{
		display: none ;
    flex-direction: row;
	}
#about_sec_hero2{background-size: 100% 221px;
    background-position-y: bottom;
}
@media only screen and (max-width: 768px) {
	
	.mobile_inner_sep{
		margin-bottom:20px; margin-top:20px;
	}
	
	.custom_sep {
    border: 0.5px solid #E2B893;
    width: 100%;
    margin: 20px auto 20px;
}
	
	#booking_single_page_box{
		display:none;
	}
	#villa_details_left_container{
		margin-bottom:0;
	}
	
	#after_prop_explore {
    background-size: 100% 189px !important;
    margin-top: -50px;
   background-position: 50% 29%;
}
	#about_sec_hero2 {
    background-size: 150% 221px;
    background-position-y: bottom;
}
	
	#home_below_hero{
		background-image: url(https://seraivillas.in/wp-content/uploads/2024/10/1.png);
    background-size: 104% 161px !important;
		margin-top:-140px;
 
	}
	
	#home_hustle{
		
			background-image: url(https://seraivillas.in/wp-content/uploads/2024/10/3.png);
    background-size: 100% 171px !important;
	
	}
	#footer_main_1{
		background-size: 100% 85px;
	}
	
	    #contact_form_sesction textarea {
        font-size: 13px;
    }
	

	.listing_slider_content .flexslider{
		height:180px !important;
	}
	.summary_data_wrapper{
		padding-right:0;
	}
	.prop_summary_action{
	display: flex;
    flex-direction: column ;
    justify-content: space-between;
	padding: 20px 0px 20px 0px;
}
	
	
	#our_prop-bg_asec1{
		background-size: 100% 150px;

	}
	
	.search-field.location
	{
		margin-bottom:10px;
		
	}
	#txt_dt_mainsrch_checkin, #txt_dt_mainsrch_checkout{
	text-align:left;	
		font-size:14px !important;
	}
	.primary_srch_btn img{
		width:14px;
	}
	.primary_srch_btn{
		display: flex;
        width: 200px;
        justify-content: center;
        font-size: 16px;
        line-height: 23px;
        align-items: center;
	}
	.btn_search_mobile_text{
	display:block;
		margin-left:10px; 
		color:#fff;
}
	#home_hustle {
   
}
	.search-field.guests label{
		  margin-top: 0px !important;
    margin-left: 0px !important;
	}
	#search_prop_primary .checkout span {
    font-family: 'elza-text';
    margin-left: 00px;
    font-size: 16px;
    display: block;
    margin-bottom: 0px;
}
	#search_prop_primary .checkin label, #search_prop_primary .checkout label {
    margin-top: 0px !important;
    margin-left: 0px !important;
	}
	
	.checkout.border-left,.checkin.border-left,.search_guest_select.border-left{
		border-left:none;
		padding-left:0;
	
	}
	.search-field.search-button {
    margin-left: auto;
		margin-right: auto;
    padding-top: 4px;
    padding-right: 4px;
		margin-bottom:20px;
}
	
.search-field.check-in-date {
    margin-left: 0px;
	margin-bottom:10px;
}
	.search-field.check-out-date {
margin-left: 0px;
	margin-bottom:10px;
}
	.search-field.guests {
    margin-left: 0px;
	margin-bottom:10px;
}
	
	#about_title h3 span {
    color: #928A67;
    font-size: 32px;
    line-height: 27px;
    height: 32px;
}
	
	#search_prop_primary {
    margin-top: -40px;
    display: flex;
    padding-left: 30px;
   padding-right: 30px;
    
    margin-left: 0px;
    margin-bottom: 20px;
    box-shadow: 0 0 10px 0 #0003;
    border-radius: 20px;
height: auto;
     width: auto;
     
    
    z-index: 999 !important;
    flex-direction: column;
}
	
	
	.srch_form_sort {
		margin-bottom: 20px;
		margin-top: 0px;
		margin-left: 0px;
		margin-right: 0px;
		text-align: center;
 }
	
	
	.main_search_wrap{
		display: none ;
    flex-direction: column;
		width:100%;
	}
	.view_det_list{
		display: flex;
    flex-direction: column;
    justify-content: flex-end;
		margin-bottom: -30px;
		text-align:center;
	}
	
	.title_sec {
    display: flex;
    width: 100%;
    flex-direction: column;
    justify-content: space-between;
}
	
	.action_icons_features{
		flex-direction:row ;
	}
	
	.action_icons_features span{
		margin-bottom:10px;
	}
	.singleVillaSecImages_1 {
    margin-bottom: 24px;
}
	
	.villa_amenities_single{
		margin-top:20px;
	}
	
	#about_title h3 span{
		font-size:28px !important; 
		line-height:1.4 !important;
	}
	#about_title h3 {
		font-size:28px !important; 
		line-height:1.4 !important;
	}
	
	.date-input{
		height: 55px;
    font-size: 15px;
    margin: 0;
    
    border-radius: 0 !important;
	}
	.action_icons_features span {
    margin-right: 14px;
    color: #9A3720;
    font-size: 13px;
    font-family: 'elza-text';
}
	
	#contact_form_sesction input{
		font-size:13px; 
	}
	
	#contact_form_sesction select{
			font-family: 'termina';
    font-weight: 400;
    text-transform: uppercase;
    font-size: 13px;
    padding-left: 0;
	}
}
#contact_form_sesction select{
			font-family: 'termina';
    font-weight: 400;
    text-transform: uppercase;
    font-size: 13px;
    padding-left: 0;
	}


/* Normilizes box-sizing  */
#pbOverlay *,
#pbOverlay *:before,
#pbOverlay *:after {
     -moz-box-sizing: content-box;
          box-sizing: content-box;
}


#pbOverlay.show{ opacity:1; pointer-events:auto; }
#pbOverlay{
	opacity:0; overflow:hidden; width:100%; height:100%; position:fixed; z-index:99999; left:0; top:0; text-align:center; pointer-events:none;
	-moz-user-select:none;
	background:rgba(0,0,0,.90);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e2000000', endColorstr='#e2000000');
	/* background:radial-gradient(rgba(0,0,0,.6) 0%, rgba(0,0,0,.9) 100%); */
	-webkit-transform:translate3d(0);
	transition:opacity 300ms ease;
}

#pbOverlay.msie{ background-color:rgba(0,0,0,.6); }
.msie.pbLoading .pbWrapper{ background:url('../images/loading.gif') no-repeat center center; }

@keyframes pbLoaderFrames{ 50%{ height:5px; } }
@-webkit-keyframes pbLoaderFrames{ 50%{ height:5px; } }

.pbLoader{ display:none; width:100px; height:100px; position:absolute; z-index:999; top:0; left:0; right:0; bottom:0; margin:auto; text-align:center; border-radius:100%; box-shadow:15px 32px 60px -20px #FFF inset, 1px 1px 3px 1px #FFF inset, 0 0 20px; transition:.3s; }
.thumbs .pbLoader{ -webkit-transform:translateY(-50px); transform:translateY(-50px); }
.pbLoading:not(.msie):not(.error) .pbLoader{ display:block; }
	.pbLoader b{ display:inline-block; vertical-align:middle; margin:0 2px; width:8px; height:60px; border-radius:5px; background:rgba(255,255,255,.8); box-shadow:0 0 10px rgba(0,0,0,.5); -webkit-animation:.9s pbLoaderFrames infinite linear; animation:.9s pbLoaderFrames infinite linear; }
	.pbLoader b:nth-child(2){ -webkit-animation-delay:.3s; animation-delay:.3s; }
	.pbLoader b:nth-child(3){ -webkit-animation-delay:.6s; animation-delay:.6s; }

.mobile.pbLoading .pbLoader{ transform:none; transition:0s; }

.pbWrapper:after,
#pbCaption .pbThumbs ul:after,
#pbOverlay .prevNext:after,
#pbOverlay .pbLoader:before{ content:""; display:inline-block; height:100%; margin-right:-.25em; vertical-align:middle; }

/* Animation when image was not loaded */
@keyframes deadImage{ 50%{ text-shadow:0 0 25px rgba(255,255,255,.5); transform:scale(.85); } }
@-webkit-keyframes deadImage{ 50%{ text-shadow:0 0 25px rgba(255,255,255,.5); -webkit-transform:scale(.85); } }

#pbOverlay button{ outline:0 !important; box-shadow:0; }


.pbWrapper{ -moz-box-sizing:border-box; box-sizing:border-box; transform:rotate(0deg); vertical-align:middle; height:100%; perspective:1200px; position:relative;  }
.video > .pbWrapper{ z-index:11; display:inline-block; }
	/*#pbOverlay.error .pbWrapper{ display:inline-block; width:100%; }*/
	.pbLoading .pbWrapper{ display:inline-block\9; width:100%; } /* ie8+9 hack */
	.pbWrapper:before{ content:'\2716'; color:transparent; text-shadow:0 2px 35px rgba(255,255,255,0); font-size:0; vertical-align:middle; cursor:default; transition:text-shadow .7s ease-out; }
	.error .pbWrapper:before{ font-size:22em; text-shadow:0 0 0 #FFF; -webkit-animation:2s 1s deadImage infinite linear; animation:2s 1s deadImage infinite linear; }
	.thumbs .pbWrapper{ padding:0; margin:0; }
	.error .pbWrapperr img{ width:0; }

	.pbWrapper > div{ display:none; width:624px; height:351px; vertical-align:middle; border-radius:5px; background:rgba(0,0,0,.5); }
	.video > .pbWrapper > div{ display:inline-block; }

	#pbOverlay iframe,
	#pbOverlay embed,
	#pbOverlay object{ display:block; width:100%; height:100%; opacity:1; transition:.5s; }

	.pbWrapper .pbHide iframe{ opacity:0; }

	.pbWrapper > div,
	.pbWrapper > img{
		transition:.5s .5s cubic-bezier(.1, .87, .48, 1);

		-webkit-transform:none;
		-ms-transform:none;
		transform:none;

		-webkit-backface-visibility:hidden;
		box-shadow:0 0 20px #000;
		opacity: 1;
	}

	/* FOR MOBILE */
	.mobile.show .pbWrapper > div,
	.mobile.show .pbWrapper > img{
		transition:30ms;
	}

	/* Content effects */
	.pbWrapper > *,
	.pbHide .pbWrapper > .prepare{ opacity:0; vertical-align:middle; -webkit-transform:scale(.2) rotateX(80deg); -ms-transform:scale(.2) rotateX(80deg); transform:scale(.2) rotateX(80deg); border-radius:6px; border:none; max-height:95%; max-width:100%; }
	.on .pbWrapper > *{ transition-delay:0s; }
	.pbWrapper .zoomable{ -webkit-transition:0s; transition:0s; position:relative; z-index:9; }
	.pbWrapper .rotating{ -webkit-transition:.25s cubic-bezier(.4,.04,0,1); transition:.25s cubic-bezier(.4,.04,0,1); }
	.pbHide .pbWrapper > *{ -webkit-transform:scale(1.2); transform:scale(1.2); transform:none\9; opacity:0; transition:.4s ease-out; }



/*-- close button --*/
#pbCloseBtn,
#pbAutoplayBtn{ position:absolute; top:-50px; right:-50px; z-index:999; display:block; padding:0 0 20px 20px; text-align:center; cursor:pointer; color:#FFF; transition:.3s .3s ease-out; }
.pbHide #pbCloseBtn{ top:-50px; right:-50px; }
.on #pbCloseBtn{ top:-2px; right:-2px; }

#pbCloseBtn:before{ content:'\00D7'; font:bold 1em/1 arial; }
#pbCloseBtn:before, #pbAutoplayBtn:before{ display:inline-block; height:35px; width:35px; padding:8px 8px 12px 12px; font-size:2em; opacity:.8; vertical-align:middle; background:rgba(255,255,255,.2); border-radius:0 0 0 70px; transition:.1s ease-out; }
#pbCloseBtn:hover:before{ padding:15px 10px 24px 24px; background:rgba(255,100,100,.4); }

/*-- autoplay controller --*/
#pbAutoplayBtn{ display:none; right:auto; left:-50px; padding:0; width:50px; height:50px; font-size:13px; }
.hasAutoplay #pbAutoplayBtn{ display:block; }
#pbAutoplayBtn:hover{ width:60px; height:60px; }
.on #pbAutoplayBtn{ top:0px; left:0px; transition:.1s ease-out; }
	#pbAutoplayBtn:before{ content:'\2016'; width:100%; height:100%; border-radius:0 0 70px 0; font-weight:bold; padding:0; text-indent:-6px; line-height:1.6; }
	#pbAutoplayBtn:active:before{ text-shadow:0 0 3px #FFF, 0 0 6px #FFF; }
	#pbAutoplayBtn.play:before{ content:'\25BA'; }

	#pbAutoplayBtn .pbProgress{ display:none\9; width:100%; height:100%; overflow:hidden; position:absolute; padding:6px; top:0; left:0; opacity:.2; transform:rotateZ(0deg); -webkit-transform:rotateZ(0deg); -ms-transform:rotateZ(0deg); -webkit-transform-origin:0 0; -ms-transform-origin:0 0; transform-origin:0 0; -webkit-transition:.3s; transition:.3s; }
	.mobile #pbAutoplayBtn .pbProgress{ -webkit-transition:0s; transition:0s; }
	#pbAutoplayBtn.playing .pbProgress{ -webkit-transform:rotateZ(90deg); -ms-transform:rotateZ(90deg); transform:rotateZ(90deg); }
	#pbAutoplayBtn .pbProgress:before{ content:''; position:absolute; right:0; bottom:0; width:200%; height:200%; border-radius:50%; box-shadow:0 0 0 8px #FFF inset; }

#pbCaption,
.pbHide #pbCaption{ position:absolute; z-index:999; margin-bottom:5px; bottom:-120px; width:100%; overflow:hidden; transform:translateZ(0px); transition:.4s; }
.show.on #pbCaption{ bottom:0; transition-delay:.5s; }
	#pbOverlay.thumbs #pbCaption label{ display:block; }
	#pbCaption label{ display:none; float:right; margin:0 1em; color:#FFF; opacity:.3; transition:.2s; cursor:pointer; }
	#pbCaption label:after{ content:'\276F'; font-size:30px; line-height:30px; display:inline-block; transform:rotate(-90deg); transition:.2s ease-out; }
	#pbCaption label:hover{ opacity:1; }
	#pbCaption .title,
	#pbCaption .counter{ display:inline-block; color:#FFF; margin:0 6px; }
	#pbCaption .counter{ display:none; opacity:.55; }
	.hasCounter #pbCaption .counter{ display:inline-block; }
	.pbCaptionText{ display:inline-block; transition:.3s; opacity:.9; font-weight:bold; vertical-align:middle; text-shadow:1px 1px 1px rgba(0,0,0,.5); padding-left:60px; } /* padding-left from <label> */
	.pbCaptionText.change{ -webkit-transform:translateY(25px); transform:translateY(25px); opacity:0; }
	#pbCaption .rotateBtn{ display:none; background:none; border:0; font:800 1.7em/0 Arial; vertical-align:middle; color:rgba(255,255,255,.5); width:1.1em; height:1.1em; padding:0; border-radius:50%; background:rgba(0,0,0,.2); cursor:pointer; transition:.15s ease-out; }
	#pbCaption .rotateBtn.show{ display:block; float:right; }
	#pbCaption .rotateBtn:hover{ color:rgba(255,255,255,.7); }
	#pbCaption .rotateBtn:active{ color:white; background:rgba(0,0,0,.4); }

.mobile #pbCaption label{ display:none; z-index:-1; color:red; }
.mobile .pbCaptionText{ padding:0; }

/* hide thumbnails */
#pbThumbsToggler:checked ~ #pbCaption .pbThumbs{ margin:0; }
#pbThumbsToggler:checked ~ #pbCaption label:after{ transform:rotate(90deg) }
#pbThumbsToggler:checked ~ .pbWrapper{ margin-top:-50px; padding:50px 0; }

.pbThumbs{ display:none; transition:.35s; -webkit-overflow-scrolling:touch; }
.thumbs .pbThumbs{ display:block; width:100%; padding:5px 0 2px; margin-bottom:-100px; overflow:hidden; }
.mobile .pbThumbs{ overflow:auto; }
.pbThumbs:hover{ clear:both; }
	.pbThumbs ul{ display:inline-block; position:relative; list-style:none; height:80px; padding:0 5px; margin:0; white-space:pre; transition:.2s; }
	.pbThumbs ul:after{ vertical-align:bottom; }
		.pbThumbs li{ display:inline-block; vertical-align:bottom; height:70%; opacity:.6; text-align:center; position:relative; transition:.15s; }
		.pbThumbs li.active{ height:100%; opacity:1; }
		.pbThumbs li:hover{ height:100%; opacity:1; }
		.pbThumbs li.video::before{ content:'\25BA'; color:#FFF; font-size:20px; height:20px; width:20px; line-height:.9; position:absolute; bottom:4px; left:7px; background:rgba(0,0,0,.4); box-shadow:0 0 0 3px rgba(0,0,0,.4); border-radius:0 3px 0 0; pointer-events:none; }
			.pbThumbs a{ height:100%; padding:0 2px; display:block; -moz-user-select:none; }
			.pbThumbs li:hover a{  }
				.pbThumbs img{ height:96%; min-height:95.9%; border:2px solid #FFF; max-width:none; border-radius:0; transition:.15s; }
				.pbThumbs li:hover img{ min-height:96%; } /* fix a bug in Chrome and Opera */
				.pbThumbs li.fast a img{ transition:none; }
				.pbThumbs li.active a img{ border-color:#D8FF16; min-height:96%; }

#pbOverlay .prevNext{ display:none; background:rgba(0,0,0,0); position:absolute; z-index:10; height:100%; width:35%; padding:80px 0; opacity:0; box-sizing:border-box; -moz-box-sizing:border-box; top:0; transition:.2s ease-out; text-shadow:0 0 12px #000, 0 0 10px #FFF; user-select:none; filter:alpha(opacity=0); cursor:pointer; }
#pbOverlay.hasArrows .prevNext{ display:block; }
#pbOverlay .prevNext.pbHide{ display:none; }
#pbOverlay.on .prevNext:hover{ opacity:.5; filter:alpha(opacity=50); }
#pbOverlay.on .prevNext:hover:active{ transition:80ms; opacity:1; filter:alpha(opacity=100); text-shadow:0 0 16px #FFF, 0 0 10px #000; }
	.prevNext b{ display:inline-block; vertical-align:middle; transition:.2s ease-in; }
	.prevNext:hover b{ transition:.2s cubic-bezier(.095, .870, .485, .985); }
	#pbPrevBtn b{ transform:scale(.4) translateX(350px); -webkit-transform:scale(.4) translateX(350px); }
	#pbNextBtn b{ transform:scale(.4) translateX(-350px); -webkit-transform:scale(.4) translateX(-350px); }
	/* */
	#pbPrevBtn b:before,
	#pbNextBtn b:after{ display:inline; line-height:.3; font-size:18em; font-weight:normal; color:#FFF; font-family:Arial; }

	#pbPrevBtn b:before{ content:'\2039'; }
	#pbNextBtn b:after{ content:'\203A'; }
	/* */
	.on #pbPrevBtn:hover b{ transform:scale(1) translateX(20px); -webkit-transform:scale(1) translateX(20px); }
	.on #pbNextBtn:hover b{ transform:scale(1) translateX(-20px); -webkit-transform:scale(1) translateX(-20px); }

.show #pbPrevBtn, #pbOverlay.show #pbNextBtn{  }
.show #pbPrevBtn{ left:0; text-align:left; }
.show #pbNextBtn{ right:0; text-align:right; }

/*------- media queries (for small screens) -----------*/
@media all and (max-width:700px){
	.pbWrapper img,
	.pbHide .pbWrapper img.prepare{ max-height:100%; }

	.thumbs .pbWrapper{ padding:0; margin:0; }
	.pbThumbs{ margin-bottom:-60px; }
	.pbThumbs.show{ margin:0; }

	.pbThumbs ul{ height:50px; }
		.pbThumbs li{ height:100%; opacity:1; }
		.pbThumbs li img{ min-height:96.5%; }
}
/* fix for Chrome */
@media all and (max-width:710px){
	.pbThumbs li.active a img{ min-height:96%; }
}


.swiper-container {
    width: 100%;
    height: auto;
}

.swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
}

.insta-photo {
    width: 100%;
    height: auto; /* Maintain flexible height */
    aspect-ratio: 1 / 1; /* Ensure square shape */
    border-radius: 20px; /* Rounded corners */
    object-fit: cover; /* Ensures the image covers the square box */
   
}

/* Apply top or bottom margins to images */
.insta-photo:nth-child(odd) {
    margin-bottom: 40px;
}

.insta-photo:nth-child(even) {
    margin-top: 40px;
}

.insta-photo:hover {
    
}

@media (max-width: 768px) {
	
	#proplist_belowhero{
		background-size:100%;
	}
	.single_where_you_sleep {
    margin-bottom: 20px;
    color: #9A3720;
    display: flex;
    border: 1px solid #E2B893;
    border-radius: 10px;
    padding: 10px;
    margin-right: 10px;
		        min-width: 150px;
}
	
	.VillaPrimaryImage.singleVillapgPrimary, div.show_all_photos, .VillaFtImage.singleVillaSecImages.singleVillaSecImages_1{
		display:none; 
	}
    body.home   .swiper-slide {
        flex: 0 0 50%; /* 2 images on mobile */
    }
}

@media (min-width: 769px) {
  body.home  .swiper-slide {
        flex: 0 0 25%; /* 4 images on PC */
    }
}



.ab_villas_mob-gallery {
    position: relative;
}

.ab_villas_mob-main-image {
    cursor: pointer;
    max-width: 100%;
    height: auto;
	border-radius:20px;
}

/* Hide the modal by default */
.ab_villas_mob-image-modal {
    display: none; /* Hidden by default */
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
}

.ab_villas_mob-modal-content {
    position: relative;
    margin: auto;
    padding: 20px;
    background: white;
    max-width: 600px;
    width: 80%;
    border-radius: 5px;
    overflow: auto;
}

.ab_villas_mob-close {
    position: absolute;
    right: 15px;
    top: 10px;
    cursor: pointer;
    font-size: 20px;
    font-weight: bold;
}

.ab_villas_mob-image-list {
    display: flex;
    flex-direction: column;
    max-height: 400px;
    overflow-y: auto;
}

.ab_villas_mob-thumbnail {
    cursor: pointer;
    max-width: 100%;
    margin: 5px 0;
}

.ab_villas_mob-lightbox {
    position: fixed;
    z-index: 2000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    display: flex;
    justify-content: center;
    align-items: center;
}

.ab_villas_mob-lightbox-image {
    max-width: 90%;
    max-height: 90%;
}

/* Only show the gallery on mobile devices */
@media only screen and (min-width: 768px) {
	 .single_villa_mob-swiper {
		 display:none;
	}
    .ab_villas_mob-gallery {
        display: none; /* Hide the gallery on desktop */
    }
}
.single_villa_mob-carousel-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media only screen and (max-width: 480px) {
	#selected_guest_qty, #txt_dt_start_date, #txt_dt_checkout_date{
		font-size:14px; 
	}
	
	.checkin label, .checkout label {
    margin-top: 30px;
    margin-left: 20px;
    display: block;
    font-family: "termina";
    color: #E2B893;
    font-size: 11px;
    text-transform: uppercase;
}
	
	.checkin span, .checkout span {
    font-family: 'elza-text';
    margin-left: 20px;
    font-size: 14px;
    display: block;
    margin-bottom: 20px;
}
	
}
