

/* border-radius -------------------------------------------------------------------------------------------------------------------------------------------------------- */
/*
	-webkit-border-radius: 5px 5px 5px 5px;
	-moz-border-radius: 5px 5px 5px 5px;
	border-radius: 5px 5px 5px 5px;
/*
/* border-radius -------------------------------------------------------------------------------------------------------------------------------------------------------- */

/* transition ----------------------------------------------------------------------------------------------------------------------------------------------------------- */
/*
	-webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
*/
/* transition ----------------------------------------------------------------------------------------------------------------------------------------------------------- */





/* breadcrumbs ----------------------------------------------------------------------------------------------------------------------------------------------------------- */

#breadcrumbs{
	width: 100%;
	margin: 0px;
	padding: 0px 0px;
	border-bottom: 1px solid #dadcdc;
	position: sticky;
	top: 0px;
	background-color: #fff;
	z-index: 1001;
}

#breadcrumbs .container{
	display: flex;
	justify-content: space-between;
    align-items: center;
}

.breadcrumbs-left{
	text-align: left;
}

.breadcrumbs-left ul{
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}

.breadcrumbs-left ul li{
	display: inline-block;
	margin: 0px 20px 0px 0px;
}

.breadcrumbs-left ul li a{
	display: block;
	padding: 0px 0px;
	line-height: 50px;
	border-bottom: 3px solid transparent;
	text-decoration: none;
	color: #6d6e7e;
	font-size: 16px;
	cursor: pointer;
}

.breadcrumbs-left ul li a:hover{
	border-bottom: 3px solid #3EB0B7;
}

.breadcrumbs-left ul li a.selected{
	border-bottom: 3px solid #3EB0B7;
}

.breadcrumbs-left-links{
	text-align: left;
}

.breadcrumbs-left-links ul{
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	display: flex;
	align-items: center;
}

.breadcrumbs-left-links ul li{
	margin: 0px 0px 0px 0px;
	line-height: 50px;
	display: flex;
	color: #c0c0c0;
}

.breadcrumbs-left-links ul li i{
	padding: 0px 5px 0px 5px;
	font-size: 10px;
	color: #6d6e7e;
}

.breadcrumbs-left-links ul li a{
	display: block;
	padding: 0px 0px;
	text-decoration: none;
	color: #6d6e7e;
	font-size: 16px;
	cursor: pointer;
}

.breadcrumbs-right{
	text-align: right;
}

.breadcrumbs-right a{
	display: flex;
	padding: 0px 0px;
	line-height: 50px;
	text-decoration: none;
	color: #6d6e7e;
	font-size: 14px;
	align-items: center;
}

.breadcrumbs-right a img{
	width: 30px;
	padding: 0px 5px 0px 0px;
}


/* breadcrumbs ----------------------------------------------------------------------------------------------------------------------------------------------------------- */


/* cols ----------------------------------------------------------------------------------------------------------------------------------------------------------- */

#left-col h1, .section-col-left h1, .section-no-flex h1{
	font-size: 18px;
	font-weight: 500;
	margin: 0px;
	color: #353535;
	padding: 0px 0px 20px 0px;
}

#left-col h2, .section-col-left h2, .section-no-flex h2{
	font-size: 18px;
	font-weight: 500;
	margin: 0px;
	color: #353535;
	padding: 0px 0px 10px 0px;
}

#left-col h3, .section-col-left h3, .section-no-flex h3{
	font-size: 13px;
	font-weight: 500;
	margin: 0px;
	color: #353535;
	padding: 0px 0px 10px 0px;
}

#left-col p, .section-col-left p, .section-no-flex p{
	font-size: 13px;
	font-weight: 400;
	margin: 0px;
	padding: 0px 0px 10px 0px;
	color: #353535;
}

#right-col h1, .section-col-right h1, #full-col h1{
	font-size: 18px;
	font-weight: 500;
	margin: 0px;
	padding: 0px 0px 20px 0px;
	color: #353535;
}

#right-col h2, .section-col-right h2, #full-col h2{
	font-size: 18px;
	font-weight: 500;
	margin: 0px;
	color: #353535;
	padding: 0px 0px 10px 0px;
}

#right-col h3, .section-col-right h3, #full-col h3{
	font-size: 13px;
	font-weight: 500;
	margin: 0px;
	color: #353535;
	padding: 0px 0px 10px 0px;
}

#right-col p, .section-col-right p, #full-col p{
	font-size: 13px;
	font-weight: 400;
	margin: 0px;
	padding: 0px 0px 20px 0px;
	color: #353535;
	line-height: 22px;	
}

/* cols ----------------------------------------------------------------------------------------------------------------------------------------------------------- */


/* availability widget ----------------------------------------------------------------------------------------------------------------------------------------------------------- */

.availability-widget{
	width: 100%;
	margin: 0px 0px 20px 0px;
	padding: 0px;
	border: 1px solid rgb(221, 221, 221);
    border-radius: 12px;
    padding: 24px;
    box-shadow: rgb(0 0 0 / 12%) 0px 6px 16px;
    box-sizing: border-box;
    position: sticky;
    top: 84px;
    z-index: 1000;
}

.widget-container-rental{
    grid-template-columns: repeat(1, 1fr)!important;
}

.widget-button{
	height: 45px!important;
	line-height: 45px!important;
	font-size: 13px!important;
}

/* availability-widget ----------------------------------------------------------------------------------------------------------------------------------------------------------- */


/* availability styles -------------------------------------------------------------------------------------------------------------------------------------------------- */

.availability-box{
	width: 100%;
	margin: 0px 0px 25px 0px;
	padding: 0px 0px 0px 0px;
	box-sizing: border-box;
}

.availability-box-top{
	display: flex;
	width: 100%;
	margin: 0px;
	padding: 0px;
	box-sizing: border-box;
	justify-content: space-between;
    align-items: flex-start;
}

.availability-box-top-title{
	width: 100%;
	margin: 0px;
	padding: 0px;
}

.availability-box-top-title h2{
	padding: 0px 0px 5px 0px!important;
}

.availability-box-top-title a{
	overflow: hidden;
	display: block;
	display: -webkit-box;
	text-overflow: ellipsis;
	height: 20px;
	line-height: 20px;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	font-size: 16px;
	color: #353535;
	font-weight: 500;
	margin: 0px;
	padding: 0px;
	text-decoration: none;
}

.availability-box-top-title a:hover{
	text-decoration: underline;
}

.availability-box-top-middle .category-main-feature{
	margin: 0px 10px 5px 0px!important;
	font-size: 12px;
}

.availability-box-top-description{
	width: 100%;
	margin: 0px;
	padding: 0px;
	min-height: 60px;
	/*overflow-y: hidden;*/
}

.availability-box-top-description p{
	overflow: hidden;
	display: block;
	display: -webkit-box;
	text-overflow: ellipsis;
	height: 60px;
	line-height: 20px!important;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	font-size: 13px!important;
	color: #353535;
	font-weight: 400;
	margin: 0px!important;
	padding: 0px!important;
	text-decoration: none;
	line-height: 20px!important;
}

.availability-box-top-read-more{
	display: inline-block;
	margin: 0px 2px 5px 0px;
}

.availability-box-top-read-more .button3{
	padding: 4px 10px!important;
}

.availability-box-top-read-more p, .availability-box-top-read-more a{
	line-height: 20px!important;
	font-size: 13px!important;
	color: #3EB0B7;
	font-weight: 400;
	margin: 0px!important;
	padding: 0px!important;
	text-decoration: none;
	cursor: pointer;
}

.availability-box-description{
	width: 100%;
	margin: 0px;
	padding: 15px 20px 5px 20px;
	border-top: 1px solid #e8e8e8;
	box-sizing: border-box;
}

.availability-box-description .category-listing-box-divider{
	margin-top: 8px;
}

.availability-box-description p{
	font-size: 13px!important;
    color: #353535;
    font-weight: 400;
    margin: 0px!important;
    padding: 0px 0px 10px 0px!important;
    text-decoration: none;
    line-height: 20px!important;
}

.availability-box-features{
	margin: 10px 0px 5px 0px;
}

.availability-box-top-left{
	flex: 0 0 250px;
	background-color: #fff;
}

.availability-top-box-left-image{
	position: relative;
	border-radius: 10px;
	overflow: hidden;
	cursor: pointer;
}

.availability-box-top-middle{
	flex: 1 1;
	padding: 0px 20px;
	text-align: left;
}

.availability-image-count{
	position: absolute; 
	bottom: 7px; 
	right: 14px; 
	color: #fff; 
	font-size: 13px; 
	z-index: 10; 
	font-weight: normal;
}

.availability-box-top-right{
	flex: 0 0 150px;
	text-align: center;
	padding: 10px 0px;
	box-sizing: border-box;
}

.availability-box-top-right h2{
	margin: 0px!important;
	padding: 0px 0px 10px 0px!important;
	font-size: 28px!important;
	color: #3EB0B7;
	font-weight: 500!important;
}

.availability-box-top-right span{
	font-size: 13px;
	color: #353535;
	font-weight: 400;
	margin: 10px 0px 0px 0px;
	padding: 0px;
	text-decoration: none;
	line-height: 20px
}

.availability-image-hidden{
	display: none;
}

.availability-image-desktop{
	display: block;
	cursor: pointer;
}

.availability-image-mobile{
	display: none;
	cursor: pointer;
}

.availability-features{
	display: flex;
	flex-wrap: wrap;
}

.availability-feature{
	border: 1px solid rgb(211,211,211);
	padding: 4px 6px;
	text-align: center;
	border-radius: 4px;
	font-size: 13px;
	color: #c0c8d1;
	margin: 0px 5px 10px 0px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
}

.availability-feature i{
	padding: 0px 5px 0px 0px;
	font-size: 11px;
}

.availability-search-popup{
}

.availability-search-popup-fixed{
	position: fixed;
	top: 0px;
	bottom: 0px;
	left: 0px;
	right: 0px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-100%);
	background-color: #fff;
	z-index: 10000;
}

.availability-search-popup-fixed2{
	position: fixed;
	top: 0px;
	bottom: 89px;
	left: 0px;
	right: 0px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-100%);
	background-color: #fff;
	z-index: 10000;
}

.availability-search-popup-fixed.active, .availability-search-popup-fixed2.active{
	opacity: 1;
	visibility: visible;
	transform: translateY(0%);
	padding: 0px!important;
}

.availability-search-bar{
	position: fixed;
	bottom: 0px;
	left: 0px;
	right: 0px;
	height: 88px;
	border-top: 1px solid #dadcdc;
	background-color: #fff;
	z-index: 1000;
	opacity: 0;
	visibility: hidden;
	padding: 0px 24px;
	display: flex;
	justify-content: space-between;
    align-items: center;
}

.availability-search-bar.active{
	opacity: 1;
	visibility: visible;
}

.availability-search-bar-left{
	text-align: left;
}

.availability-search-bar-left h3{
	font-size: 16px;
	font-weight: 500;
	color: #353535;
	margin: 0px;
	padding: 0px;
}

.availability-search-bar-left h3 span.was{
	text-decoration: line-through;
	font-size: 14px;
	color: #ea4335;
}

.availability-search-bar-left h3 a.guests{
	font-size: 14px;
	color: #353535;
	text-decoration: underline;
	font-weight: 400;
	padding: 0px 0px 0px 5px;
	cursor: pointer;
}

.availability-search-bar-left h4{
	font-size: 14px;
	font-weight: 400;
	color: #353535;
	margin: 0px;
	padding: 0px;
}

.availability-search-bar-left h4 a{
	text-decoration: underline;
	color: #353535;
	cursor: pointer;
}

.availability-search-bar-right{
	text-align: right;
}

.availability-search-bar-full{
	flex: 0 0 100%;
}

.availability-widget.active{
    margin: 0px 0px 0px 0px;
    border: 0px;
    border-radius: 0px;
    padding: 74px 24px 24px 24px!important;
    box-shadow: 0px 0px 0px;
    box-sizing: border-box;
    position: relative;
    top: 0px;
}

.availability-widget.active h1{
	display: none;
}

.availability-widget-header{
	display: none;
	position: absolute;
    top: 0px;
    left: 0px;
    height: 50px;
    right: 0px;
    box-sizing: border-box;
    padding: 13px 20px;
    border-bottom: 1px solid rgba(0,0,0,.14);
    display: none;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #333333;
}

.availability-widget.active .availability-widget-header{
	display: block;
}

.availability-widget-header-close{
	position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    width: 76px;
    cursor: pointer;
}

.availability-widget-header-close img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 205px;
}

/* availability styles ---------------------------------------------------------------------------------------------------------------------------------------------- */


/* dividers styles ---------------------------------------------------------------------------------------------------------------------------------------------- */

.divider{
	width: 100%;
	/*border-top: 1px solid rgb(211,211,211);*/
	padding: 0px 0px 15px 0px;
}

.divider.margin-top{
	margin-top: 15px;
}

/* dividers styles ---------------------------------------------------------------------------------------------------------------------------------------------- */


/* category styles ---------------------------------------------------------------------------------------------------------------------------------------------- */

.category-back-button{
	display: flex;
	margin: 0px;
	padding: 0px;
	align-items: center;
}

.category-back-button{
	font-size: 14px;
	color: #353535;
	text-decoration: none!important;
}

.category-back-button i{
	font-size: 14px;
	border: 1px solid #dadcdc;
	border-radius: 5px;
	padding: 0px 12px;
	line-height: 30px;
	color: #353535;
	margin: 0px 10px 0px 0px;
}

#category-photos-mobile{
	display: none;
	width: 100%;
	position: relative;
}

.category-photos-mobile-outer{
	position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0px;
    width: 100%;
    overflow-x: hidden;
}

.category-photos-mobile-inner{
	position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0px;
    transition: left 0.3s ease-in-out;
    z-index: 1;
}

.category-photo-mobile-image{
	position: absolute;
    top: 0px;
}

.category-photo-mobile-previous-image{
	position: absolute;
	top: 50%;
	left: 6px;
	z-index: 3;
	transform: translateY(-50%);
	cursor: pointer;
	display: none;
	padding: 20px 30px 20px 10px;
}

.category-photo-mobile-next-image{
	position: absolute;
	top: 50%;
	right: 6px;
	z-index: 3;
	transform: translateY(-50%);
	cursor: pointer;
	padding: 20px 10px 20px 30px;
}

#category-photos-mobile img{
	width: 100%;
}

.category-photo-mobile-dots-container{
	position: absolute;
    left: 50%;
    padding: 0px 0px;
    bottom: 15px;
    transform: translateX(-50%);
    max-width: 55px;
    overflow: hidden;
    z-index: 3;
}

.category-photo-mobile-dots-inner{
	transform: translateX(0px);
    align-items: flex-end;
    display: flex;
    justify-content: start;
    transition: all 0.2s ease-in-out;
}

.category-photo-mobile-dot{
	background: rgb(255, 255, 255);
    border-radius: 50%;
    height: 6px;
    margin-left: 2.5px;
    margin-right: 2.5px;
    min-width: 6px;
    transition: opacity 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0s;
    width: 6px;
    opacity: 0.6;
}

.category-photo-mobile-dot.selected{
	opacity: 1;
}

.category-photo-mobile-count{
	position: absolute;
	bottom: 10px;
	right: 10px;
	z-index: 2;	
	color: #fff;
	font-size: 14px;
	display: flex;
	align-items: center;
}

.category-photo-mobile-count i{
	padding: 0px 5px 0px 0px;
}

#category-photos-desktop{

}

.category-photos{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 0px 0px;
	display: grid;
	height: 480px;
}

.category-photos > div{
	background-color: #f1f1f1;
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}

.category-photos > div img{
	width: 100%;
	height: 100%;
    object-fit: cover;
}

.category-photos-3-cols{
	grid-template-columns: repeat(11, 1fr);
	grid-template-rows: repeat(2, 1fr);
	grid-column-gap: 8px;
	grid-row-gap: 8px;
}

.category-photos-1-cols{
	grid-template-columns: repeat(1, 1fr);
	grid-template-rows: repeat(1, 1fr);
	grid-column-gap: 0px;
	grid-row-gap: 0px;
}

.category-photos-3-cols .category-photo-1{
	grid-area: 1 / 1 / 3 / 9; 
	width: 100%;
    height: 100%;
    border-radius: 10px 0px 0px 8px;
}

.category-photos-3-cols .category-photo-2{
	grid-area: 1 / 9 / 2 / 12;
    border-radius: 0px 10px 0px 0px;
}

.category-photos-3-cols .category-photo-3{
	grid-area: 2 / 9 / 3 / 12;
    border-radius: 0px 0px 10px 0px;
}

.category-photos-1-cols .category-photo-1{
	width: 100%;
	border-radius: 10px;
}

.category-photo-count{
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	z-index: 999;
	background-color: rgba(0,0,0,0.4);
	display: flex;
	align-items: center;
    justify-content: center;
    text-align: center;
}

.category-photo-count span{
	font-size: 20px;
	color: #fff;
}

.category-main-features{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 10px 0px;
	display: flex;
}

.category-main-feature{
    display: flex;
	padding: 5px 0px 5px 0px;
    text-align: center;
    margin: 0px 20px 10px 0px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 13px;
    color: #353535;
    align-items: center;
}

.category-main-feature i{
	padding: 0px 5px 0px 0px;
	font-size: 16px;
	color: #bbbbbb;
}

.category-main-feature img{
	padding: 0px 5px 0px 0px;
	width: 30px;
}

.category-title h3{
	font-size: 14px!important;
	color: #353535!important;
	margin: 0px!important;
	padding: 0px!important;
	font-weight: 500;
}

.category-title h1{
	font-size: 22px!important;
	color: #353535;
	margin: 0px;
	padding: 0px;
	font-weight: 500;
}

.category-description{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 10px 0px;
}

.category-description p{
	padding: 0px 0px 10px 0px!important;
}

.category-checkin-times{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 20px 0px;
}

.category-checkin-times-container{
	display: grid;
    grid-column-gap: 40px;
	grid-template-columns: repeat(1,1fr);
}

.category-checkin-times-2-cols{
	grid-template-columns: repeat(2,1fr);
}

.category-checkin-times-col{
	text-align: left;
}

.category-checkin-times-bar{
	width: 100%; 
	margin: 40px 0px 0px 0px; 
	position: relative; 
	height: 20px; 
	border: 1px solid #dadcdc; 
	border-radius: 12px; 
	background-color: #f1f1f1;
}

.category-checkin-times-bar-outer{
	position: absolute; 
	top: 0px; 
	bottom: 0px; 
	left: 0px;
	right: 0px;
	overflow: hidden;
	border-radius: 12px; 
}

.category-checkin-times-bar-inner{
	position: absolute; 
	top: 0px; 
	bottom: 0px;
	background-color: #3EB0B7;
}

.category-checkin-times-bar-from-time{
	position: absolute; 
	top: -42px; 
	transform: translateX(-100%);
	font-size: 13px;
	font-weight: 400;
	color: #353535;
	border: 1px solid #dadcdc;
	background: #ffffff;
	padding: 2px 8px;
	border-radius: 4px 4px 0px 4px;
}

.category-checkin-times-bar-from-time:after, .category-checkin-times-bar-from-time:before{
	top: 100%;
	right: 0px;
    border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.category-checkin-times-bar-from-time:before{
	border-width: 6px;
    border-right-color: #dadcdc;
    border-top-color: #dadcdc;
	right: -1px;
    z-index: 1;
}

.category-checkin-times-bar-from-time:after{
    border-width: 5px;
    border-right-color: #fff;
    border-top-color: #fff;
    z-index: 2;
    right: 0px;
}

.category-checkin-times-bar-to-time{
	position: absolute; 
	top: -42px; 
	transform: translateX(0%);
	font-size: 13px;
	font-weight: 400;
	color: #353535;
	border: 1px solid #dadcdc;
	background: #ffffff;
	padding: 2px 8px;
	border-radius: 4px 4px 4px 0px;
}

.category-checkin-times-bar-to-time:after, .category-checkin-times-bar-to-time:before{
	top: 100%;
	left: 0px;
    border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.category-checkin-times-bar-to-time:before{
	border-width: 6px;
    border-left-color: #dadcdc;
    border-top-color: #dadcdc;
	left: -1px;
    z-index: 1;
}

.category-checkin-times-bar-to-time:after{
    border-width: 5px;
    border-left-color: #fff;
    border-top-color: #fff;
    z-index: 2;
    left: 0px;
}

.category-features{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 0px 0px;
}

.category-features-container-2-col{
	display: grid;
	grid-template-columns: repeat(2,1fr);
    grid-column-gap: 40px;
    grid-row-gap: 8px;
	padding: 0px 0px 0px 0px;

}

.category-features-container-3-col{
	display: grid;
	grid-template-columns: repeat(3,1fr);
    grid-column-gap: 40px;
    grid-row-gap: 8px;
	padding: 0px 0px 20px 0px;
}

.category-features-container-sm{
	grid-column-gap: 15px;
	grid-row-gap: 15px;
	padding: 0px 0px 0px 0px;
}

.category-feature-box{
	display: flex;
}

.category-feature-box-align-middle{
	align-items: center;
}

.category-feature-box-left{
	padding: 2px 10px 0px 0px;
}

.category-feature-box-left img{
	width: 35px;
}

.category-feature-box-right{
	font-size: 13px!important;
	color: #353535!important;
	margin: 0px!important;
	padding: 0px!important;
	font-weight: 400;
}

.category-configuration{
	width: 100%;
	margin: 0px;
	/*padding: 20px 0px 0px 0px;*/
}

.category-bedroom-box{
	width: 100%;
	border: 1px solid #dadcdc;
	border-radius: 12px;
    padding: 24px;
    box-sizing: border-box;
}

.category-bedroom-box-icons{
	display: grid;
	grid-template-columns: repeat(5,1fr);
	grid-gap: 5px;
	padding: 0px 0px 5px 0px;
}

.category-bedroom-box-icon img{
	width: 35px;
}

.category-bedroom-box-text{
	width: 100%;
	padding: 10px 0px 0px 0px;
}

.category-bedroom-box-text span{
	font-size: 13px;
	font-weight: 400;
	color: #353535;
	display: block;
	line-height: 22px;
}

.category-bedroom-box-text span strong{
	font-weight: 500;
	font-size: 16px;
	display: block;
	padding: 0px 0px 4px 0px;
}

.category-availability{
	width: 100%;
	margin: 0px;
	padding: 10px 0px 0px 0px;
}

.category-reviews{
	width: 100%;
	margin: 0px;
	padding: 20px 0px 0px 0px;
}

.category-location{
	width: 100%;
	margin: 0px;
	padding: 20px 0px 0px 0px;
}

.category-other-accommodation{
	width: 100%;
	margin: 0px;
	padding: 00px 0px 0px 0px;
}

.category-divider{
	/*border-bottom: 1px solid #dadcdc;*/
}

.category-tile{
	width:100%;
}

.category-tile-image{
	width: 100%;
	height: 250px;
	cursor: pointer;
}

.category-tile-image img{
	width: 100%;
	height: 100%;
    object-fit: cover;
	border-radius: 10px;
}

.category-tile-body{
	width: 100%;
	padding: 10px 0px;
}

.category-tile-body h3{
	font-size: 16px!important;
	font-weight: 500!important;
	margin: 0px!important;
	padding: 0px 0px 0px 0px!important;
}

.category-tile-body h3 a{
	color: #353535;
	text-decoration: none;
}

.category-tile-body span{
	display: block;
	font-size: 12px;
	font-weight: 400;
	margin: 0px;
	color: #353535;
	padding: 0px 0px 8px 0px;
}

.category-tile-body h3 a:hover{
	text-decoration: underline;
}

.category-tile-features{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 10px 0px;
	display: flex;
}

.category-tile-feature{
    /*border: 1px solid #bbbbbb;*
    padding: 5px 0px 5px 0px;
    text-align: center;
    /*border-radius: 4px;*/
    margin: 0px 20px 10px 0px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 13px;
    color: #353535;
}

.category-tile-feature i{
	padding: 0px 5px 0px 0px;
	font-size: 16px;
	color: #bbbbbb;
}

.category-configuration{
	padding: 0px 0px 20px 0px;
}

.category-configuration-3-cols{
	display: grid;
	grid-template-columns: repeat(4,1fr);
	grid-gap: 20px
}

.category-configuration-col{
	width: 100%;
	border: 1px solid #dadcdc;
	border-radius: 10px;
	text-align: center;
	box-sizing: border-box;
	overflow: hidden;
}

.category-configuration-col-image{
	width: 100%;
	height: 100px;
	position: relative;
	background-color: #f1f1f1;
}

.category-configuration-col-image i{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 28px;
	color: #c0c0c0;
}

.category-configuration-col-image img{
	width: 100%;
    height: 100%;
    object-fit: cover;
    overflow: hidden;
}

.category-configuration-col-body{
	width: 100%;
	padding: 15px 24px;
	text-align: center;
	box-sizing: border-box;
}

.category-configuration-col-body h3{
	font-size: 18px!important;
	font-weight: 500!important;
	color: #353535!important;
	margin: 0px!important;
	padding: 0px!important;
}

.category-configuration-col-body h4{
	font-size: 14px!important;
	font-weight: 400!important;
	color: #353535!important;
	margin: 0px!important;
	padding: 0px!important;
}

#category-availability-calendar-container{
	width: 100%;
    position: relative;
}

#category-availability-calendar{
	width: calc(100% + 45px);
    height: 295px;
    padding: 0px 0px;
    box-sizing: border-box;
    position: relative;
    overflow-x: hidden;
    margin-left: -15px;
}

#category-availability-calendar-outer{
	position: absolute;
	top: 0px; 
	bottom: 0px; 
	left: 0px; 
	width: 100%; 
	overflow: hidden;
}

#category-availability-calendar-inner{
	position: absolute;
	top: 0px;
	bottom: 0px;
	left: 0px;
	width: 100%;
}

#category-availability-calendar-inner .calendar-slide-inner-month-name{
	line-height: 40px!important;
	height: 40px!important;
}

.category-availability-calendar-left{
	position: absolute;
	top: 0px;
	left: 0px;
	width: 40px;
	height: 40px;
	cursor: pointer;
	z-index: 2;
	display: none;
	border-radius: 50%;
	background-color: #fff;
}

.category-availability-calendar-left img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.category-availability-calendar-right{
	position: absolute;
	top: 0px;
	right: -15px;
	width: 40px;
	height: 40px;
	cursor: pointer;
	z-index: 2;
	display: none;
	border-radius: 50%;
	background-color: #fff;
}

.category-availability-calendar-right img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.category-availability-calendar-clear{
	width: 100%;
	text-align: right;
}

.category-availability-calendar-clear a{
	font-size: 13px;
	color: #353535;
	text-decoration: underline;
	cursor: pointer;
}

.category-calendar-slide{
	position: absolute; 
	top: 0px; 
	bottom: 0px; 
	width: 50%;
}

.category-other-accommodation{
	padding: 0px 0px 20px 0px!important;
}

/* category styles ---------------------------------------------------------------------------------------------------------------------------------------------- */


/* reviews styles ---------------------------------------------------------------------------------------------------------------------------------------------- */

.review-box{
	width: 100%;
	margin: 0px 0px 15px 0px;
	padding: 24px 24px 24px 14px;
	border: 1px solid rgb(211,211,211);
    border-radius: 8px;
    box-sizing: border-box;
}

.review-box2{
	padding: 24px 24px 14px 24px;
}

.review-box:last-child{
	margin: 0px;
}

/*
.review-box:hover{
	box-shadow: 0 0px 12px rgb(0 0 0 / 10%);
}
*/

.review-box-row{
	width: 100%;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.review-box-row-left{
	flex: 0 0 65px;
	text-align: left;
}

.review-box-row-left img{
	width: 50px;
}

.review-box-row-right{
	flex: 1 1;
	text-align: left;
}

.review-box-icon{
	margin: 0px 0px 0px 0px;
	width: 45px;
    height: 45px;
    text-align: center;
    font-size: 26px;
    color: #fff;
    font-weight: 600;
}

.review-box-row-header{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 0px 0px;	
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: nowrap;	
}

.review-box-row-header h3{
	font-size: 16px;
    font-weight: 500;
    color: #353535;
    margin: 0px;
    padding: 0px 0px 0px 0px;
}

.review-box-row-header h4{
	font-size: 13px;
    font-weight: 400;
    color: #949494;
    margin: 0px;
    padding: 4px 0px 4px 0px;
}

.review-box-row-header-left{
	text-align: left;
}

.review-box-row-header-right{
	text-align: right;
}

.review-box-row-header-right table{
	border-spacing: 0px!important;
}

.review-box-row-body{
	width: 100%;
	margin: 0px;
	padding: 0px;	 
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;  
	overflow: hidden;  
}

.review-box-row-body2{
	width: 100%;
	margin: 0px;
	padding: 0px;	 
}

.review-box-row-body p, .review-box-row-body2 p{
	font-size: 13px!important;
    font-weight: 400!important;
    color: #353535;
    margin: 0px;
    padding: 0px 0px 0px 0px!important;
}

.review-box-row-body.open{
	-webkit-line-clamp: unset;
}

.review-box-row-body.open p span{
	display: block;
	width: 100%;
	clear: both;
	margin: 0px 0px 10px 0px;
}

.review-box-row-body.open p span:last-child{
	margin: 0px!important;
}

.review-box-row-body-images{
	width: 100%;
	margin: 5px 0px 0px 0px;
	padding: 0px;	 
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
	grid-gap: 10px;	
}

.review-box-row-body-image{
	width: 100%;
	border: 1px solid #E1E1E1;
    border-radius: 4px;
    overflow: hidden;
    cursor: pointer;
}

.review-box-row-body-image img{
	width: 100%;
}

.review-read-more{
	display: none;
	font-size: 14px;
    font-weight: 400;
    color: #3EB0B7;
   	text-decoration: underline;
   	cursor: pointer;
}

.review-summary{
	width: 100%;
	margin: 0px 0px 20px 0px;
	padding: 0px;
	border: 1px solid rgb(221, 221, 221);
    border-radius: 12px;
    box-shadow: rgb(0 0 0 / 12%) 0px 6px 16px;
    box-sizing: border-box;
    position: sticky;
    top: 84px;
    z-index: 999;
    overflow: hidden;
}

.review-summary-inner{
	width: 100%;
	padding: 24px;
	box-sizing: border-box;
}

.review-summary-header{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 0px 0px;	
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: nowrap;	
}

.review-summary-header-left{
	text-align: left;
}

.review-summary-header-left h2{
	padding: 0px 0px 10px 0px;
}

.review-summary-header-right{
	text-align: right;
}

.review-summary-table{
	width: 100%;
	border-spacing: 0px!important;
}

.review-summary-table-lg{
	margin: 0px 0px 0px auto;
	border-spacing: 0px!important;
}

.review-summary-table-lg td{
	font-size: 16px;
    font-weight: 500;
    color: #353535;
}

.review-summary-table-lg td img{
	width: 25px;
	padding: 0px 5px 0px 0px;
}

.review-summary-star{
	width: 30px;
	text-align: left;
	padding-right: 10px;
	height: 18px;
	font-size: 13px;
	color: #353535;
	vertical-align: middle;
}

.review-summary-star img{
	width: 16px;
	padding: 0px 0px 0px 5px;
}

.review-summary-recommend{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 15px 0px;
	text-align: left;
}

.review-summary-recommend p{
	font-size: 13px;
	font-weight: 400;
	color: #353535;
	margin: 0px;
	padding: 0px;
	line-height: 22px;
}

.review-summary-rating{
	position: relative;
	background-color: #D1D1D1;
	border-radius: 4px 4px;
	height: 18px;
	cursor: pointer;
}

.review-summary-rating-bar{
	position: absolute;
	top: 0px;
	left: 0px;
	border-radius: 4px 4px;
	bottom: 0px;
	background-color: #F6B501;
}

.review-summary-rating:hover{
	border: 1px solid #E94F75;
}

.review-summary-rating-bar.selected{
	background-color: #E94F75;
}

.review-summary-percentage{
	width: 30px;
	text-align: left;
	padding-left: 10px;
	height: 18px;
	font-size: 13px;
	color: #353535;
}

.review-summary-spacer{
	line-height: 10px;
	height: 10px;
}

/* reviews styles ---------------------------------------------------------------------------------------------------------------------------------------------- */


/* page number styles ----------------------------------------------------------------------------------------------------------------------------------------- */

.reviews-page-numbers-container{
	width: 100%;
	text-align: center;
	margin: 0px;
	padding: 0px 0px 15px 0px;
}

.reviews-page-numbers{
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	display: inline-block;
}

.reviews-page-numbers li{
	display: inline-block;
	margin: 0px 5px;
}

.reviews-page-numbers li a{
	display: block;
	border: 1px solid #BFBFBF;
	border-radius: 4px;
	font-size: 16px;
	color: #353535;
	padding: 8px 15px;
	text-decoration: none;
	cursor: pointer;
}

.reviews-page-numbers li a.hover, .reviews-page-numbers li a.selected{
	border: 1px solid #3EB0B7;
	background-color: #3EB0B7;
	color: #fff;
}

/* page number styles ----------------------------------------------------------------------------------------------------------------------------------------- */


/* summary widget styles ---------------------------------------------------------------------------------------------------------------------------------------------- */

.summary-widget{
	width: 100%;
	margin: 0px 0px 20px 0px;
	padding: 0px;
	border: 1px solid rgb(221, 221, 221);
    border-radius: 12px;
    box-shadow: rgb(0 0 0 / 12%) 0px 6px 16px;
    box-sizing: border-box;
    position: sticky;
    top: 84px;
    z-index: 999;
    overflow: hidden;
}

.summary-widget-inner{
	width: 100%;
	padding: 24px;
	box-sizing: border-box;
}

.summary-widget-col{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 10px 0px;
	margin: 0px 0px 10px 0px;
	border-bottom: 1px solid #dadcdc;
}

.summary-widget-col:last-child{
	padding: 0px 0px 0px 0px!important;
	border-bottom: 0px!important;
	margin: 0px!important;
}

.summary-widget-col-inner{
	display: flex;
	justify-content: space-between;
}

.summary-widget-col h2{
	padding: 0px!important;
	margin: 0px!important;
}

.summary-widget-col h3{
	padding: 0px!important;
	margin: 0px!important;
}

.summary-widget-col p{
	color: #353535;
	font-weight: 400;
	margin: 0px!important;
	padding: 0px!important;	
	line-height: 24px;
}

.summary-widget-col-left{
	text-align: left;
}

.summary-widget-col-right{
	text-align: right;
}


/* summary widget styles ---------------------------------------------------------------------------------------------------------------------------------------------- */


/* extras styles ------------------------------------------------------------------------------------------------------------------------------------------------------ */

.extras-box{
	width: 100%;
	margin: 0px 0px 25px 0px;
	padding: 0px 0px 0px 0px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
    align-items: flex-start;

}

.extras-box-left{
	flex: 0 0 250px;
	background-color: #fff;	
}

.extras-box-left-image{
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
}

.extras-box-middle{
	flex: 1 1;
    padding: 0px 20px;
    text-align: left;
}

.extras-box-middle p{
	padding: 0px 0px 10px 0px!important;
}

.extras-box-right{
	flex: 0 0 150px;
    text-align: center;
    padding: 10px 0px;
    box-sizing: border-box;
}

.extras-image-count{
	position: absolute; 
	bottom: 7px; 
	right: 14px; 
	color: #fff; 
	font-size: 13px; 
	z-index: 10; 
	font-weight: normal;
}

.extras-box-right h2{
	margin: 0px!important;
	padding: 0px 0px 0px 0px!important;
	font-size: 24px!important;
	color: #353535;
	font-weight: 400;
}

.extras-button-left{
	background-color: #3EB0B7;
	background-repeat: no-repeat;
	width: 35px;
	height: 35px;	
	border: 0px;
	color: #fff;
	outline: none;
	border:none !important;
	box-shadow:none !important;
	cursor: pointer;
	font-size: 16px;
	-webkit-border-radius: 20px 0px 0px 20px;
	-moz-border-radius: 20px 0px 0px 20px;
	border-radius: 20px 0px 0px 20px;
	margin: 0px 0px 0px 0px;	
	-webkit-appearance: none;
}

.extras-button-right{
	background-color: #3EB0B7;
	background-repeat: no-repeat;
	width: 35px;
	height: 35px;	
	color: #fff;
	outline: none;
	border:none !important;
	box-shadow:none !important;
	cursor: pointer;
	font-size: 16px;
	-webkit-border-radius: 0px 20px 20px 0px;
	-moz-border-radius: 0px 20px 20px 0px;
	border-radius: 0px 20px 20px 0px;
	margin: 0px 0px 0px 0px;
	-webkit-appearance: none;	
}

.extras-button-left:hover, .extras-button-right:hover{
	background-color: #3EB0B7;
}

.extras-count{
	border: 1px solid #3EB0B7!important;
	outline: none!important; 
	background-color: #fff!important;
	padding: 0px!important;
	outline: none!important;
	color: #333!important;
	font-size: 13px!important;
	font-weight: normal!important;
	line-height: 24px!important;
	text-align: center!important;
	-webkit-appearance: none!important;
	height: 33px!important;
	width: 50px!important;
	margin: 0px!important;
	-webkit-border-radius:0!important; 
    border-radius:0!important;
}

.extras-count-disabled{
	background-color: #f1f1f1!important;
	border: 1px solid #3EB0B7!important;
	outline: none!important; 
	padding: 0px!important;
	outline: none!important;
	color: #333!important;
	font-size: 13px!important;
	font-weight: normal!important;
	line-height: 24px!important;
	text-align: center!important;
	-webkit-appearance: none!important;
	height: 33px!important;
	width: 50px!important;
	margin: 0px!important;
	-webkit-border-radius:0!important; 
    border-radius:0!important;
}


/* extras styles ------------------------------------------------------------------------------------------------------------------------------------------------------- */

/* extras styles ------------------------------------------------------------------------------------------------------------------------------------------------------- */

.deposit-options-container{
	width: 100%;
	margin: 0px;
	padding: 15px 20px 15px 15px;
	border-radius: 12px;
	box-sizing: border-box;
	border: 1px solid rgb(221, 221, 221);
	background-color: #fff;
	position: relative;
	z-index: 2;
	cursor: pointer;
	margin: 0px 0px 15px 0px;
}

.deposit-options-box{
	display: flex;
	align-items: flex-start;
	position: relative;
}

.deposit-options-container.selected:before{
	content: '';
	top: -1px;
	left: -1px;
	right: -1px;
	bottom: -1px;
	border: 2px solid #3EB0B7;
	position: absolute;
	border-radius: 12px;
}

.deposit-options-box-overlay{
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	z-index: 3;
}

.deposit-options-box-left{
	padding: 4px 10px 0px 0px;
}

.deposit-options-box-right span{
	font-size: 13px;
	font-weight: 400;
	color: #353535;
}

.deposit-options-box-right h4{
	font-size: 16px;
	margin: 0px;
	padding: 0px;
	font-weight: 500;
	color: #353535;
}

.deposit-options-payment-plan-container-outer{
	width: 100%;
	margin: 10px 0px 0px 0px;
	display: none;
}

.deposit-options-payment-plan-container{
	width: 100%;
	display: flex;
}

.deposit-options-payment-plan-container-left{
	flex: 0 0 30px;
}

.deposit-options-payment-plan-container-right{
	flex: 1 1;
	padding: 5px 15px 5px 15px;
	box-sizing: border-box;
	background-color: #f7f7f7;
}

.deposit-options-payment-plan-box{
	display: flex;
	padding: 5px 0px; 
}

.deposit-options-payment-plan-box-left{
	flex: 0 0 20px;
	position: relative;
}

.deposit-options-payment-plan-box-left:before{
	content: '';
	position: absolute;
	width: 2px;
	background-color: #c0c0c0;
	top: -5px;
	bottom: -5px;
	left: 50%;
	transform: translateX(-50%);
}

.deposit-options-payment-plan-box-left:after{
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	width: 10px;
	height: 10px;
	background-color: #c0c0c0;
}

.deposit-options-payment-plan-box:first-child .deposit-options-payment-plan-box-left:after{
	background-color: #46B9C0;
}

.deposit-options-payment-plan-box:first-child .deposit-options-payment-plan-box-left:before{
	top: 50%;
}

.deposit-options-payment-plan-box:last-child .deposit-options-payment-plan-box-left:before{
	bottom: 50%;
}

.deposit-options-payment-plan-box-middle{
	flex: 1 1;
	text-align: left;
	padding: 0px 10px 0px 10px;
	font-size: 13px;
	font-weight: 400;
	color: #353535;
	line-height: 18px;
}

.deposit-options-payment-plan-box-right{
	flex: 0 0 150px;
	text-align: right;
	font-size: 13px;
	font-weight: 700;
	color: #353535;
	line-height: 18px;
}

.deposit-options-payment-plan-box-total{
	display: flex;
	margin: 15px 0px 0px 0px;
	padding: 10px 0px 5px 0px; 
	border-top: 1px solid #e0e0e0;
	justify-content: space-between;
}

.deposit-options-payment-plan-box-total-left{
	text-align: left;
	font-size: 13px;
	font-weight: 700;
	color: #353535;
	line-height: 18px;
	
}

.deposit-options-payment-plan-box-total-right{
	text-align: right;
	font-size: 13px;
	font-weight: 700;
	color: #353535;
	line-height: 18px;
}


/* extras styles ------------------------------------------------------------------------------------------------------------------------------------------------------- */

/* basket summary styles ------------------------------------------------------------------------------------------------------------------------------------------------------- */

.basket-summary-box{
	width: 100%;
	margin: 0px 0px 25px 0px;
	padding: 0px 0px 25px 0px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
    align-items: flex-start;
    border-bottom: 1px solid #dadcdc;
}

.basket-summary-box:last-child{
	border-bottom: 0px;
	margin: 0px;
}


.basket-summary-box-left{
	flex: 0 0 280px;
	background-color: #fff;	
}

.basket-summary-box-image-mobile{
	display: none;
	position: relative;
    border-radius: 10px;
    overflow: hidden;
}

.basket-summary-box-image-desktop{
	display: block;
	position: relative;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
}

.basket-summary-box-buttons{
	margin: 15px 0px 0px 0px;
	width: 100%;
	display: flex;
}

.basket-summary-box-buttons-left{
	padding-right: 5px;
	flex: 1 1;
}

.basket-summary-box-buttons-right{
	padding-left: 5px;
	flex: 1 1;
}

.basket-summary-box-right{
	flex: 1 1;
    text-align: left;
    padding: 0px 0px 0px 20px;
    box-sizing: border-box;
}

.basket-summary-box-right-title{
	width: 100%;
	margin: 0px;
	padding: 0px 0px 5px 0px;
}

.basket-summary-box-right-title span{
	font-size: 18px;
	font-weight: 400;
	color: #353535;
	margin: 0px;
	padding: 0px;
}

.basket-summary-box-right-title span a{
	color: #353535;
	text-decoration: none;
}

.basket-summary-box-dates{
	width: 100%;
	padding: 0px 0px 8px 0px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
    align-items: flex-start;
    position: relative;
    border-bottom: 1px solid #dadcdc; 
}

.basket-summary-box-dates-left{
	text-align: left;
}

.basket-summary-box-dates-right{
	text-align: right;
}

.basket-summary-box-dates i{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 16px;
	color: #c0c0c0;
}

.basket-summary-box-dates h5{
	font-size: 13px;
	font-weight: 400;
	color: #6d6e7e;
	margin: 0px;
	padding: 0px 0px 5px 0px;
}

.basket-summary-box-dates h4{
	font-size: 13px;
	font-weight: 500;
	color: #6d6e7e;
	margin: 0px;
	padding: 0px;
}

.basket-summary-box-col{
	width: 100%;
	padding: 8px 0px 8px 0px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
    align-items: flex-start;
    position: relative;
    border-bottom: 1px solid #dadcdc; 
}

.basket-summary-box-col:last-child{
	border-bottom: 0px!important;
	padding: 10px 0px 0px 0px!important;
}

.basket-summary-box-col-left{
	text-align: left;
}

.basket-summary-box-col-right{
	text-align: right;
}

.basket-summary-box-col-left span, .basket-summary-box-col-right span{
	font-size: 13px;
	font-weight: 400;
	color: #6d6e7e;
}

/* basket summary styles ------------------------------------------------------------------------------------------------------------------------------------------------------- */



/* error box styles ----------------------------------------------------------------------------------------------------------------------------------------------------- */

.error-box{
	width: 100%;
	margin: 0px 0px 30px 0px;
	border-radius: 8px;
    border: 1px solid rgb(221, 221, 221);
    border-left: 4px solid #f9bd3a;
    box-sizing: border-box;
}

.error-box-icon{
	vertical-align: top;
	width: 40px;
}

.error-box-inner{
	padding: 10px 15px;
}

.error-box h3{
	font-size: 14px!important;
	font-weight: 500!important;
	color: #353535!important;	
	margin: 0px!important;
	padding: 0px!important;
}

.error-box p{
	font-size: 13px!important;
	font-weight: 400!important;
	color: #353535!important;	
	margin: 0px!important;
	padding: 0px!important;
}

/* end error box styles ------------------------------------------------------------------------------------------------------------------------------------------------- */


/* validation error box styles ------------------------------------------------------------------------------------------------------------------------------------------ */

#validation-error-box{
	width: 100%;
	margin: 0px 0px 30px 0px;
	border-radius: 8px;
    border: 1px solid rgb(221, 221, 221);
    border-left: 4px solid #e7483c;
	display: none;
	box-sizing: border-box;
}

.validation-error-box-header{
	padding: 10px 15px 0px 15px;
}

.validation-error-box-header p{
	font-size: 14px!important;
	font-weight: 500!important;
	color: #353535!important;
	margin: 0px!important;
	padding: 0px!important;
}

.validation-error-box-inner{
	padding: 5px 15px 10px 15px;
	font-size: 13px!important;
	font-weight: 400!important;
	color: #353535!important;	
}

.validation-error-box-inner span{
	font-size: 13px!important;
	font-weight: 400!important;
	color: #353535!important;	
	margin: 0px!important;
	padding: 0px 0px 5px 15px!important;
	position: relative;
}

.validation-error-box-inner span:before{
	position: absolute;
	top: -4px;
	left: 0px;
	content: '\2022';
	font-size: 18px;
}

.validation-error-message{
	display: none;
}

.validation-error-message-visible{
	display: block;
}

/* validation end error box styles -------------------------------------------------------------------------------------------------------------------------------------- */


/* spinner styles ----------------------------------------------------------------------------------------------------------------------------------------------------- */

.spinner {
	margin: 0px auto 0;
	width: 100%;
	text-align: center;
	display: block;
}

.spinner > div {
	width: 10px;
	height: 10px;
	background-color: #3EB0B7;
	border-radius: 100%;
	display: inline-block;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.spinner .bounce2 {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0) }
	40% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bouncedelay {
	0%, 80%, 100% { 
		-webkit-transform: scale(0);
		transform: scale(0);
	} 40% { 
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
	}
}

/* spinner styles ----------------------------------------------------------------------------------------------------------------------------------------------------- */


/* light box styles ------------------------------------------------------------------------------------------------------------------------------------------------- */

#lightbox{
	position: fixed;
	top: 0px;
	bottom: 0px;
	left: 0px;
	right: 0px;
	background-color: rgba(0,0,0,0.9);
	display: none;
	z-index: 9999;
}

#lightbox-inner{
	display: grid;
	height: 100%;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	position: relative;
}

#lightbox-previous{
	position: absolute;
	top: 50%;
	left: 0px;
	width: 250px;
	height: 250px;
	transform: translateY(-50%);
	cursor: pointer;
	z-index: 4;
	text-align: left;
}

#lightbox-previous img{
	width: 40px;
	position: absolute;
	left: 5px;
	top: 50%;
	transform: translateY(-50%);
}

#lightbox-next{
	position: absolute;
	top: 50%;
	right: 0px;
	width: 250px;
	height: 250px;
	transform: translateY(-50%);
	cursor: pointer;
	z-index: 4;
	text-align: right;
}

#lightbox-next img{
	width: 40px;
	position: absolute;
	right: 5px;
	top: 50%;
	transform: translateY(-50%);
}

#lightbox-close{
	position: absolute;
	top: 0px;
	right: 0px;
	width: 50px;
	height: 50px;
	cursor: pointer;
	z-index: 4;
}

#lightbox-close img{
	width: 20px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}

#lightbox-count{
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100px;
	height: 50px;
	padding: 8px 15px;
	font-size: 16px;
	color: #fff;
	z-index: 4;
}

.lightbox-img{
	max-width: 100%;
	max-height: 100vh;
	margin: auto;
	position: relative;
	z-index: 3;
    box-sizing: border-box;
}

#lightbox-inner-cover{
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	z-index: 1;
}

#lightbox-title{
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 16px;
	color: #fff;
	z-index: 4;
	width: 100%;
	text-align: center;
}

/* light box styles ----------------------------------------------------------------------------------------------------------------------------------------------------- */


/* form styles ------------------------------------------------------------------------------------------------------------------------------------------------------------- */

.form-grid{
	display: grid;
}

.form-grid-col-2{
	grid-template-columns: 1fr 1fr;
}

.form-grid-col-3{
	grid-template-columns: 1fr 1fr 1fr;
}

.form-grid-gap-10{
	grid-column-gap: 10px;
	grid-row-gap: 0px;
}

.form-grid-col-gap-10{
	grid-column-gap: 20px;
	grid-row-gap: 0px;
}

.form-grid-max-width{
	max-width: 350px;
}

.form-set{
	width: 100%;
	margin: 0px 0px 10px 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}

.form-set span{
	display: block;
	font-size: 13px;
	color: #353535;
	line-height: 18px;
	padding: 10px 0px 0px 0px;
}

.form-set-left{
	text-align: left;
	position: relative;
}

.form-set-right{
	text-align: left;
	padding-left: 10px;
	position: relative;
}

.form-set-flex{
	display: flex;
}

.form-set-flex .form-set-left{
	flex: 1 1;
}

.form-set-flex .form-set-right{
	flex: 1 1;
}

.form-set .label{
	font-family: 'Poppins', sans-serif;
	font-size: 12px;
	font-weight: 400;
	color: #353535;
	position: absolute;
    top: 0px;
    left: 0px;
    padding: 6px 10px;
    transition: all 0.2s ease-out;
    z-index: 1;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
    pointer-events: none;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    opacity: 0;
}

.form-set .label.active{
	opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}

.form-set .input, .form-set .input2{
	font-family: 'Poppins', sans-serif;
	border: 1px solid #C9C9C9;
	border-radius: 4px;
	position: relative;
	cursor: pointer;
	width: 100%;
	max-width: 440px;
	outline: none;
	-webkit-appearance: none;
    -moz-appearance: none;
    height: 46px;
    padding: 0px 10px 0px 10px;
    font-size: 13px;
    font-weight: 400;
    line-height: 18px;
    color: #353535;
    transition: all 0.2s ease-out;
   	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box; 
}

.form-set .input.large{
	max-width: 100%;
}

.form-set .input.small{
	max-width: 160px;
}

.form-set .input.active{
	padding: 16px 10px 0px 10px;
}

.form-set .input-select, .form-set .input-select2{
	font-family: 'Poppins', sans-serif;
	border: 1px solid #C9C9C9;
	border-radius: 4px;
	position: relative;
	cursor: pointer;
	width: 100%;
	max-width: 440px;
	outline: none;
	-webkit-appearance: none;
    -moz-appearance: none;
    height: 46px;
    padding: 0px 10px 0px 10px;
    font-size: 13px;
    font-weight: 400;
    line-height: 18px;
    color: #353535;
    transition: all 0.2s ease-out;
   	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box; 
	background-image: url('\\Images/Icon_Chevron.svg');
	background-position: 98% center;
	background-repeat: no-repeat;
	background-size: 30px;
	background-color: #fff;
}

.form-set .input-select.large{
	max-width: 100%;
}

.form-set .input-select.small{
	max-width: 160px;
}

.form-set .input-select.active{
	padding: 16px 10px 0px 10px;
}

.form-set .input-textarea{
	font-family: 'Poppins', sans-serif;
	border: 1px solid #C9C9C9;
	border-radius: 4px;
	position: relative;
	width: 100%;
    padding: 8px 10px 8px 10px;
    font-size: 13px;
    font-weight: 400;
    line-height: 18px;
    color: #353535;
    box-sizing: border-box;
}

.form-set .input.error, .form-set .input-select.error, .form-set .input-textarea.error, .form-set .input2.error, .form-set .input-select2.error{
	border-color: #EA4335;
}

/* form styles ----------------------------------------------------------------------------------------------------------------------------------------------------- */


/* button styles ----------------------------------------------------------------------------------------------------------------------------------------------------- */

.button{
	border: 0px;
	border: none;
	display: block;
	padding: 0px 15px;
	margin: 0px auto;
	text-align: center;
	-webkit-appearance: none;
	background-color: #3EB0B7;
	color: #fff;
	text-decoration: none;
	border-radius: 8px;
	-webkit-transition: background .3s;
    -o-transition: background .3s;
    transition: background .3s;
    font-size: 13px;
    line-height: normal;
    max-width: 250px;
    font-weight: 600;
   	height: 45px;
	line-height: 45px;
	cursor: pointer;
	box-sizing: border-box;
}

.button-outline{
	border: 0px;
	border: none;
	display: block;
	padding: 0px 15px;
	margin: 0px auto;
	text-align: center;
	-webkit-appearance: none;
	border: 1px solid #3EB0B7;
	color: #3EB0B7;
	text-decoration: none;
	border-radius: 8px;
	-webkit-transition: background .3s;
    -o-transition: background .3s;
    transition: background .3s;
    font-size: 13px;
    line-height: normal;
    max-width: 250px;
    font-weight: 600;
   	height: 45px;
	line-height: 45px;
	cursor: pointer;
	box-sizing: border-box;
}

.button-full{
	width: 100%;
	max-width: 100%;
}

.button2:hover{
	background-color: #3EB0B7;
	cursor: pointer;
}

.button3{
	border: 0px;
	border: none;
	display: block;
	padding: 0px 15px;
	margin: 0px auto;
	text-align: center;
	-webkit-appearance: none;
	background-color: #3EB0B7;
	color: #fff;
	text-decoration: none;
	border-radius: 8px;
	-webkit-transition: background .3s;
    -o-transition: background .3s;
    transition: background .3s;
    font-size: 13px;
    line-height: normal;
    font-weight: 600;
   	height: 45px;
	line-height: 45px;
	cursor: pointer;
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
}


/* button styles ----------------------------------------------------------------------------------------------------------------------------------------------------- */


/* table styles ---------------------------------------------------------------------------------------------------------------------------------------------------------- */

.table-with-scroll{
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	margin: 0px 0px 15px 0px;
}

.Table{
	padding: 0px;
	margin: 0px;
	text-decoration: none;
	cursor: default;
	line-height: 20px;
	font-size: 13px;
}

.Table a{
	color: #456399;
	text-decoration: none;
}

.Table th{
	text-decoration: none;
	text-align: left;
	white-space: nowrap;
	color: #456399;
	font-size: 13px;
}

.Table td{
	color: #353535;
}

.TableColour {
	border: 1px #3EB0B7 solid;
	border-collapse: collapse;
	cursor: default;
	font-size: 13px;
}

.TableColour th {
	background: #3EB0B7;
	border: 1px #3EB0B7 solid;
	text-decoration: none;
	text-align: left;
	color: #fff;
	font-size: 13px;
}

.TableColour td {
	border: 1px #3EB0B7 solid;
	font-size: 13px;
	text-decoration: none;
	color: #353535;
}

.TableColour .currency{
	width: 80px; 
	text-align: right;
}

.payment-details-table{
	display: table; 
	width: 100%;
}

.payment-details-col-70{
	display: table-cell; 
	width: 70%; 
	text-align: left; 
	vertical-align: top;
}

.payment-details-col-30{
	display: table-cell; 
	width: 30%; 
	text-align: right; 
	vertical-align: bottom; 
	padding-bottom: 10px;
}

/* end table styles ----------------------------------------------------------------------------------------------------------------------------------------------------- */


/* booking summary styles ----------------------------------------------------------------------------------------------------------------------------------------------- */

.booking-summary-flex-row{
	display: flex;
	padding: 0px 0px 15px 0px;
}

.booking-summary-flex-row-left{
	text-align: left;
	flex: 0 0 50%;
	padding-right: 10px;
	box-sizing: border-box;
}

.booking-summary-flex-row-right{
	text-align: left;
	flex: 0 0 50%;
	padding-left: 10px;
	box-sizing: border-box;
}

.booking-summary-flex-70{
	text-align: left;
	flex: 0 0 70%;
	padding-right: 10px;
	box-sizing: border-box;
}

.booking-summary-flex-30{
	text-align: right;
	flex: 0 0 30%;
	padding-left: 10px;
	box-sizing: border-box;
}

.booking-summary-card-icons{
	margin-left: auto;
	margin-right: 0px;
}

.booking-summary-card-icon{
	float: right;
	padding: 2px;
}

#booking-summary-overlay{
	position: fixed;
	left: 0px;
	right: 0px;
	top: 0px;
	bottom: 0px;
	background: rgba(0,0,0,0.2);
	z-index: 1001;
	display: none;
}

#booking-summary-loading{
	position: absolute; 
	top: 50%; 
	left: 50%; 
	width: 280px; 
	transform: translate(-50%,-50%);
	text-align: center; 
	background-color: #ffffff;
	z-index: 999;
}	

#booking-summary-loading-inner{
	padding: 30px 20px 30px 20px;
}

#booking-summary-loading h1{
	font-weight: 400;
	font-size: 18px;
	margin: 0px 0px 30px 0px;
	padding: 0px;
	color: #555;
}

#booking-summary-loading p{
	font-weight: 300;
	font-size: 13px;
	margin: 30px 0px 0px 0px;
	padding: 0px;
	color: #555;
}

/* end booking summary styles -------------------------------------------------------------------------------------------------------------------------------------------- */


.view-booking-title{
	width: 100%;
	display: flex;
	padding: 0px 0px 15px 0px;
}

.view-booking-title-left{
	flex: 1 1;
}

.view-booking-title-right{
	flex: 0 0 100px;
}

/* home styles ----------------------------------------------------------------------------------------------------------------------------------------------------------- */

.my-bookings-outer{
	width: 100%;
	float: left;
}

.my-bookings-inner{
	margin: 0px;
	padding: 0px;
	border: 1px solid #CCCCCC;
}

.my-bookings-box{
	width: 100%;
}

.my-bookings-box-padding{
	padding: 10px 15px;
}

.my-bookings-box-left{
	overflow: hidden;
	min-height: 100px;
	margin: 0px;
	padding: 0px;
}

.my-bookings-box-left h1{
	margin: 0px;
	padding: 0px 0px 15px 0px;
	font-size: 18px;
}

.my-bookings-box-left p{
	margin: 0px;
	padding: 0px 0px 15px 0px;
	font-size: 16px;
}

.my-bookings-box-right{
	float: right;
	width: 500px;
	min-height: 50px;
}

.my-bookings-box-dates{
	float: right;
	width: 250px;
	min-height: 100px;
	text-align: center;
	margin: 0px;
	padding: 0px;
}

.my-bookings-box-dates h1{
	margin: 0px;
	padding: 0px 0px 15px 0px;
	font-size: 18px;
}

.my-bookings-box-dates h2{
	margin: 0px;
	padding: 0px;
	font-size: 22px;
}

.my-bookings-box-dates h3{
	margin: 0px;
	padding: 0px;
	font-size: 16px;
}

.my-bookings-box-buttons{
	margin: 0px auto 0px 0px;
	padding: 0px;
}

/* end home styles ------------------------------------------------------------------------------------------------------------------------------------------------------- */


/* view booking styles --------------------------------------------------------------------------------------------------------------------------------------------------- */

.view-booking-invoice-full-size{
	display: block;
}

.view-booking-invoice-mobile-size{
	display: none;
}

/* end view booking styles ----------------------------------------------------------------------------------------------------------------------------------------------- */


/* side bar box styles ----------------------------------------------------------------------------------------------------------------------------------------------------- */

#side-bar-overlay{
	position: fixed;
	top: 0px;
	bottom: 0px;
	left: 0px;
	right: 0px;
	background-color: rgba(0,0,0,0.2);
	z-index: 1004;
	opacity: 0;
	visibility: hidden;
}

#side-bar-overlay.active{
	opacity: 1;
	visibility: visible;
}

.side-bar{
	position: fixed;
    top: 0px;
    right: -120%;
    width: 80%;
    max-width: 450px;
    bottom: 0px;
    box-sizing: border-box;
    background-color: #ffffff;
    z-index: 1005;
    overflow-y: auto;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.side-bar.active{
	right: 0%;
}

.side-bar-header{
	position: sticky;
	top: 0px;
	left: 0px;
	right: 0px;
	height: 70px;
	box-sizing: border-box;
	padding: 0px 20px;
	display: flex;
	background-color: #fff;
	z-index: 2;
	align-items: center;
}

.side-bar-header h3{
	font-size: 18px;
	font-weight: 500;
	color: #353535;
	margin: 0px;
	padding: 0px;
}

.side-bar-close{
	position: absolute;
	top: 0px;
	right: 0px;
	padding: 34px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	box-sizing: border-box;
}

.side-bar-close img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 20px;
}

.side-bar-body{
	position: relative;
	padding: 0px 20px 20px 20px;
}

.side-bar-body p{
	font-size: 13px;
	font-weight: 400;
	color: #353535;
	margin: 0px;
	padding: 0px 0px 20px 0px;
	line-height: 20px;
}

.side-bar-body span{
	padding: 0px 0px 10px 0px!important;
	display: block;
}

.side-bar-body span:last-child{
	padding: 0px!important;
}

.side-bar-footer{
	position: relative;
	width: 100%;
	box-sizing: border-box;
	padding: 12px 20px;
}

.side-bar-checkbox-row{
	width: 100%;
	margin: 0px 0px 10px 0px;
	padding: 0px;
	display: flex;	
}

.side-bar-checkbox-left{
	flex: 0 0 30px;
	text-align: left;
	padding: 0px 0px 0px 0px;
}

.side-bar-checkbox-right{
	flex: 1 1;
	text-align: left;
}

.side-bar-checkbox-right label{
	font-size: 13px;
	font-weight: 400;
	color: #353535;
	margin: 0px;
	padding: 0px;
	line-height: 20px;
}

/* side bar box styles ----------------------------------------------------------------------------------------------------------------------------------------------------- */


/* spinner styles --------------------------------------------------------------------------------------------------------------------------------------------- */

.spinner-container{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 9999;
}

.spinner {
	margin: 0px auto 0;
	width: 100%;
	text-align: center;
	display: block;
}

.spinner.blue > div{
	background-color: #3EB0B7;
}

.spinner.white > div{
	background-color: #fff;
}

.spinner > div{
	width: 10px;
	height: 10px;	
	border-radius: 100%;
	display: inline-block;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.spinner .bounce2 {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0) }
	40% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bouncedelay {
	0%, 80%, 100% { 
		-webkit-transform: scale(0);
		transform: scale(0);
	} 40% { 
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
	}
}

/* spinner styles --------------------------------------------------------------------------------------------------------------------------------------------- */


/* media queries styles ------------------------------------------------------------------------------------------------------------------------------------------------- */

@media screen and (max-width: 1400px)
{

}

@media screen and (max-width: 1100px)
{
	.section{
		flex-wrap: wrap;
	}
	#right-col{
		flex: 0 0 100%;
		padding: 0px 0px 0px 0px;
	}
	#main-body-container .section-col-reverse #left-col{
		flex: 0 0 100%;
		padding: 0px 0px 20px 0px;
	}
	#main-body-container .section-col-reverse #right-col{
		flex: 0 0 100%;
		padding: 0px 0px 0px 0px;
		width: 100%;
	}
	.widget-col:last-child{
		position: fixed!important;
		bottom: 0px!important;
		left: 0px!important;
		right: 0px!important;
		height: 88px;
		border-top: 1px solid #dadcdc!important;
		padding: 0px 24px!important;
		align-items: center!important;
	    justify-content: center!important;
	    box-sizing: border-box!important;
	}	
	#default-footer{
		padding: 20px 0px 100px 0px;
	}
	#availability1{
		display: none;
	}
	.widget-col2{
		display: none!important;
	}
	#category-availability-calendar{
		height: 370px;
	}	
	.calendar-container-bottom{
		
	}
	.calendar-container-bottom-mobile{
		bottom: -89px!important;
		height: 88px!important;
		background-color: #fff!important;
	}
	.calendar-container{
    	box-shadow: 0px 0px 0px!important;
    	border: 0px!important;
    }
    /*
    .guests-container{
    	box-shadow: 0px 0px 0px!important;
    	border: 0px!important;
	}
	.guests-button{
		bottom: -89px!important;
	    height: 89px!important;
	    padding: 21px 24px!important;
	    border-top: 1px solid #dadcdc!important;
	}
	*/
	.search-widget .guests-button{
		bottom: 0px!important;
	}
	
	#breadcrumbs .breadcrumbs-left-links ul li.mobile{
		display: none;
	}
	#category-photos-desktop{
		padding: 15px 0px 5px 0px!important;
	}
}

@media screen and (max-width: 992px)
{
	.category-photos{
		height: 350px;
	}	
	.category-other-accommodation .grid-col-4{
	    grid-template-columns: repeat(2,1fr);
	}	
	.booking-summary-flex-row{
		flex-wrap: wrap;
	}
	
	.booking-summary-flex-row-left{
		flex: 0 0 100%;
		padding-right: 0px;
		padding-bottom: 15px;
	}	
	.booking-summary-flex-row-right{
		flex: 0 0 100%;
		padding-left: 0px;
	}
	.booking-summary-flex-row{
		flex-wrap: wrap;
	}
	.booking-summary-flex-row-reverse{
		flex-direction: column-reverse;
	}
	.booking-summary-flex-70{
		flex: 0 0 100%;
		padding-right: 0px;
		padding-bottom: 15px;
	}
	.booking-summary-flex-30{
		flex: 0 0 100%;
		padding-left: 0px;
		text-align: left;
	}
	#other-accommodation .grid-col-4 {
	    grid-template-columns: repeat(3,1fr);	
	}
	#category-photos-mobile{
		display: block;
	}
	#category-photos-desktop{
		display: none!important;
	}

}

@media screen and (max-width: 768px)
{
	.availability-box-top{
		flex-wrap: wrap;
	}
	.availability-box-top-description{
		height: auto;
		min-height: 0px;
	}
	.availability-box-top-description p{
		height: auto;
	}
	.availability-box-top-left{
		flex: 0 0 100%!important;
	}
	.availability-box-top-middle{
		flex: 0 0 100%!important;
		padding: 20px 0px 10px 0px!important;
	}
	.availability-box-top-right{
		flex: 0 0 100%!important;
		padding: 0px 0px 10px 0px;
		text-align: left;
	}
	.availability-box-top-right span{
		display: inline-block!important;	
	}
	.availability-box-top-right h2{
		display: inline-block!important;
	}
	.availability-box-top-right-no-padding{
		padding-bottom: 0px!important;
	}
	.category-photos{
		height: 300px;
	}
	.category-other-accommodation .grid-col-4{
	    grid-template-columns: repeat(1,1fr);
	}
	.category-features-container-3-col{
		grid-template-columns: repeat(2,1fr);
	}		
	.button-outline{
		max-width: 100%!important;
	}	
	.breadcrumbs-left ul li{
		margin: 0px 10px 0px 0px;
	}
	.breadcrumbs-left ul li a{
		font-size: 13px;
	}
	.breadcrumbs-right a{
		font-size: 13px;
	}
	.breadcrumbs-right a i{
		font-size: 13px;
	}
	.form-grid-col-2{
		grid-template-columns: 1fr;
	}
	#other-accommodation .grid-col-4{
	    grid-template-columns: repeat(2,1fr);	
	}
	#category-availability-calendar{
		width: calc(100% + 35px);
	}
	.category-configuration-3-cols{
		grid-template-columns: repeat(2,1fr);
	}
	.category-bedroom-box-icons{
		grid-template-columns: repeat(4,1fr);
	}	
	#category-availability-calendar-outer{
		width: 200%;
	}
	.extras-box{
		flex-wrap: wrap;
	}
	.extras-box-left{
		flex: 0 0 100%;
	}
	.extras-box-middle{
		flex: 0 0 100%;
		padding: 20px 0px 0px 0px;
	}
	.extras-box-right{
		flex: 0 0 100%;
	}	
	.basket-summary-box{
		flex-wrap: wrap;
	}
	.basket-summary-box-left{
		flex: 0 0 100%;
	}
	.basket-summary-box-right{
		flex: 0 0 100%;
		padding: 15px 0px 0px 0px;
	}
	.form-grid-col-3{
		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (max-width: 576px)
{
	#other-accommodation .grid-col-4{
	    grid-template-columns: repeat(1,1fr);	
	}
	.category-features-container-2-col{
		grid-template-columns: repeat(1,1fr);
	}
	.category-checkin-times-2-cols{
		grid-template-columns: repeat(1,1fr);
		grid-row-gap: 20px;
	}
	.category-bedroom-box-icons{
 	   	grid-template-columns: repeat(3,1fr);
	}	
	.side-bar{
		width: 100%;
	    max-width: 100%;
	    -webkit-transition: none;
	    -moz-transition: none;
	    -o-transition: none;
	    transition: none;
	}
	.form-grid-max-width{
		max-width: 100%;
	}
}

@media screen and (max-width: 500px)
{
	.form-grid-col-3{
		grid-template-columns: 1fr;
	}
}

/* end media queries styles --------------------------------------------------------------------------------------------------------------------------------------------- */
