/* BOOKING */
/*******************************/

#booking-home {
    padding-top: 320px;
    min-height: 60vh;
    height: auto;
}
#booking-home #booking_collapse {
    background-color: transparent;
    border-bottom: 0px solid #fff;
}
#booking-home #booking_box {
    background-color: rgba(226, 226, 226, 0.9);
    border-radius: 15px;
}

/* BOOKING HOME MDR */
#booking_box {
    margin-top: -40px;
    z-index: 10;
    position: relative;
    background-color: #fff;
    /*border: 8px solid #fff;*/
    border-radius: 15px;
    padding: 28px;
    }
#booking_collapse {
 	background-color: #fff;
 	border-bottom: 1px solid #e0e0df
}
#booking_box .mdr {  
    padding-bottom: 10px;
}
#booking_box label {
	color: #212121
}
#booking_box .room h4 {
	font-weight: bold;
	color: #212121;
}
#booking_box .room label {
	font-size: 90%;
	color: #212121
}
#booking_submit {
	height: 35px;
    /*width: 160px;*/
    padding: 6px 10px;
    margin-top: 25px;
    border-radius: 4px;
}
#booking_box .form-group {
    margin-bottom: 10px;
}
#booking_box .form-control {
	color: #4e4e4e;
	border-color: #bbb;
    border-radius: 4px;
}
#booking_box .room {
	border-top: 1px solid #fff;
    padding-top: 15px;
    margin-top: 15px;
}
#booking_box .room .form-control {
    height: 30px;
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
}
#booking_box .main-title h3 {
	margin-top: 20px;
	margin-bottom: 0;
    font-size: 1.5em;
}




/* BOOKING PAGE */
a.booking-open, a.booking-open:hover, a.booking-open:active, a.booking-open:focus {
    background-color: #878f9e;
    border-bottom: 1px solid #efefef !important;
    border-left: 1px solid  #efefef !important;
    border-right: 1px solid #efefef;
    padding: 10px 20px;
    width: 220px;
    text-align: center;
    display: block;
    float: right;
    color: #fff;
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
}
a.booking-open i {
    margin-right: 8px;
    top: 2px;
    position: relative;
}
#booking_box {
    margin-top: 0;
    /*border: 1px solid #e2e2e2;*/
    border-radius: 0;
}
.filters .list-group-item, .filters .list-group-item.active {
    border: 5px solid #363730;
    padding: 10px;
    color: #46a1cb;
    font-weight: bold;
    background-color: #FFF;
    margin-bottom: 25px;
}
.filters .btn-group, .filters .btn-group-vertical {    
	padding: 14px 0;
	display: block;
}
.filters .ui-group {
	background-color: #efefef;
    border-radius: 10px;
    margin-bottom: 25px;
}
.filters .ui-group h4 {
    border-bottom: 1px solid #fff;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    padding: 10px 15px;
    margin: 0;
    font-weight: bold;
    color: #fff;
    text-transform: uppercase;
    font-size: 1.1em;
    background-color: #878f9e;
}
.filters .ui-group .btn, .filters .ui-group .btn:hover {
	color: #383838 !important;
	font-size: 1em !important;
	text-align: left !important;
	/*font-weight: normal;*/
	background-color: #efefef;
	padding: 4px 12px;
	margin-bottom: 3px;
}
.filters .ui-group span {
	color: #383838 !important;
}
.filters .ui-group .is-checked, .filters .ui-group .btn:hover, .button-group .ui-group .btn:active, .button-group .ui-group .btn:focus, .filters .ui-group .is-checked span, .filters .ui-group .btn:hover span {
	color: #22221f !important;
	background-color: #efefef;
}

.button-group {
	border: 5px solid #efefef;
    padding: 10px;
    color: #212121;
    font-weight: bold;
}
.button-group.sort-by-button-group {
	border: 5px solid #e2e2e2;
	
}
.button-group .btn {
    color: #212133 !important;
    background-color: #ffffff;
    padding: 0 15px;
    font-weight: normal;
    box-shadow: none;
}
.button-group .btn i {
    color: #363730 !important;
}
.button-group .btn:hover, .button-group .btn.is-checked {
    color: #22221f !important;
    font-weight: bold;
}
.btn.disabled, .btn[disabled], fieldset[disabled] .btn {
    opacity: 0.25 !important;
}

.sort-by-button-group .button-group .btn.is-checked:active, .sort-by-button-group .button-group .btn.is-checked:focus, .sort-by-button-group .btn-default:active:focus {
    background-color: #ffffff;
}

.element-item {
	border: 5px solid #e2e2e2;
	margin-top: 25px;
	padding: 15px 0;
}
.element-item .data {
	border-right: 5px solid #eee;
}
.element-item a.title, .element-item a.title:hover {
	display: block;
	color: #212121;
	font-size: 1.5em;
	text-decoration:none;
	line-height: 1.1;
    margin-bottom: 6px;
}
.icon-star, .icon-star-outside, .icon-star-half-o, .element-item .icon-star, .booking-detail .icon-star  {
    font-size: 1.2em;
    color: #deb536;
    padding-right: 2px;
}
.element-item .address {
	margin-top: 15px;
    font-size: 1.1em;
    color: #a5a5a5;
}
.element-item .btn-primary {
	font-size: 1em;
    color: #363730;
    background-color: #e2e2e2;
    border-radius: 4px;
    color:#212121;
    font-weight: normal;
    text-transform: uppercase;
    position: absolute;
    top: 168px;
}
.element-item .btn-primary span {
    font-size: 0.7em;
    margin-left: 8px;
}
.element-item .cta {
    text-align: center;
    padding-top: 28px;
    font-size: 1.1em;
    line-height: 1.2;
    font-weight: bold;
    color: #22221f;
}
.element-item .cta .price {
    font-size: 2.6em;
    display: block;
}
.element-item .cta .btn {
    margin-top: 30px;
    border-radius: 4px;
    background-color: #22221f;
    text-transform: uppercase;
    font-size: 1.1em;
}


/* BOOKING DETAIL */
.hotel-gallery.swiper-container.swiper-container-horizontal {
	height: 220px;
}
a.btn-booking-back {
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 6px;
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    color: #212121 !important;
    }
a.btn-booking-back span {
	top: 3px;
    position: relative;
    }
.booking-detail p {    font-size: 1.1em;}
.booking-detail .title {
    color: #212121;
    font-weight: 900;
    margin-top: 0;
    margin-bottom: 5px;
    position: relative;
    font-size: 2.5em;
    text-transform: uppercase;
}
.booking-detail .preview { 
    margin-top: 20px;
    margin-bottom: 20px;
}
.booking-detail .cta {
    text-align: center;
    padding-top: 0;
    font-size: 1.1em;
    line-height: 1.2;
    font-weight: bold;
    color: #22221f;
}
.booking-detail .cta .price {
    font-size: 40px;
    display: block;
}
.booking-detail .map, .booking-detail .map:hover {
    display: block;
    margin-top: 30px;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 1.1em;
    text-decoration: none;
    color: #363730;
    border: 1px solid #363730;
    padding: 5px;
    border-radius: 6px;
    width: 120px;
}

.booking-detail .col-img { 
	margin-bottom: 30px; 
	}
.booking-detail .summary {
    border: 5px solid #eee;
    padding: 15px;
    color: #212121;
    font-size: 1.2em;
}
.booking-detail .summary a {
    color: #22221f;
    text-decoration: underline
}
.booking-detail .row-room {
    background-color: #efefef;
    margin-bottom: 20px;
    }
.booking-detail .type {
	color: #22221f;
    font-size: 1.2em;
    margin-top: 20px;
    font-weight: bold;
}
.booking-detail a.roomc {
	margin: 10px 0;
	color: #22221f;
    display: block;
    cursor:pointer;
    text-decoration: underline;
}
.booking-detail div.roomc {
	margin: 15px 0;
}
.booking-detail .type span {
    top: 3px;
    position: relative;
    margin-right: 10px;
    color: #22221f;
}
.booking-detail .row-room .price {
    font-size: 1.8em;
    padding-top: 70px;
    font-weight: bold;
    color: #22221f;
    text-align: center;
}
.booking-detail .row-room .btn {
    margin-top: 70px;
    border-radius:4px;
    text-transform: uppercase;
    font-size: 1.1em;
}

#booking_select h3 {
    color: #616161;
    font-size: 1.2em;
    margin: 10px 0 20px 0;
}
#booking_select h3 b {
    text-transform: uppercase;
    color: #212121;
    margin-right: 8px;
}


.booking-detail .row-room.selected {
    background-color: #f7f7f7;
    font-size: 90%;
}
.booking-detail .row-room.selected .img-background {
    height: 85px !important;
    opacity: .7;
}
.booking-detail .row-room.selected .price {
    padding-top: 30px;
    font-size: 1.2em;
}
.booking-detail .row-room.selected .btn {
    margin-top: 30px;
    color: #fff;
    font-weight: bold;
    
    background-color: #cfcfcf;
    border-color: #cfcfcf;
}
.booking-detail .row-room.selected .btn:hover {
    background-color: #22221f;
    border-color: #22221f;
}
.booking-detail .row-room.selected .btn.btn-link {
    background-color: #7ec83c;
    border-color: #7ec83c;
}

.booking-section {
	border-bottom: 1px solid #ddd;
	color: #7d7d7d;
}
.booking-service {
	font-size: 1.1em;
	}
.booking-service h3 {
	margin-top: 0;
	color: #22221f;
    text-transform: uppercase;
    font-size: 1.4em;
    font-weight: bold;
}
.booking-service ul li {
    margin-bottom: 3px;
}
.booking-service span {
	position: relative;
	top:3px;
	margin-right: 8px;
	color: #575759;
}



.btn-trp, .btn-trp:hover {
    margin-top: 30px;
    text-transform: uppercase;
    font-weight: normal;
    font-size: 1em;
    text-decoration: none;
    color: #212121;
    border: 1px solid #ccc;
    padding: 5px 10px;
    border-radius: 6px;
}
.btn-trp span { 
	top:3px;
	position: relative; 
	margin-right: 5px;
	}
.btn-trp:hover, .btn-trp:focus, .btn-trp:active {
    color: #46a1cb;
    border-color: #46a1cb;

}




/* BOOKING RESERVATION */
.reservation .summary {
    background-color: #f1f1f1;
    padding: 25px 15px;
    margin-top: 30px;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    color: #212121;
    font-size: 1.1em;
}
.reservation .summary h3 {
	font-size: 1.1em;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
    padding-bottom: 15px;
    margin-bottom: 30px;
    margin-top: 0;
    text-transform: uppercase;
}
.reservation .summary span {
    font-size: 0.9em;
}
.reservation .summary a {
	text-decoration: underline;
    margin-top: 10px;
    display: block;
    color: #363730;
}
.reservation .tot {
    background-color: #e2e2e2;
    padding: 15px;
    font-size: 1.5em;
    color: #212121;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
}	
.reservation .tot .price {
    font-weight: bold;
}
.reservation .info {
 margin-top: 30px;
}
.reservation .data {
    border: 5px solid #e2e2e2;
    padding: 20px;
}
.reservation .data.mt {
    margin-top: 30px
}
.reservation h3 {
    color: #212121;
    font-size: 1.6em;
    margin-top: 0;
    text-transform: uppercase;
    font-weight: bold;
}

.reservation h4 {  
    font-size: 1.1em;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
    padding-bottom: 15px;
    margin-bottom: 30px;
    margin-top:40px;
    text-transform: uppercase;
    color: #363730;
}
.reservation .first {  
    margin-top: 0 !important;
}
.reservation .control-label {
	color: #212121;
	font-size:1em;
} 
.reservation .preview {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin: 40px 0;
    padding: 30px 0;
}
.reservation .address {
    margin-top: 15px;
}
.reservation .update {
    text-align: right;
}


.reservation .room .type {
	color: #212121;
    font-size: 1.1em;
    margin-top: 20px;
    font-weight: bold;
}
.reservation .room span {
    top: 3px;
    position: relative;
    margin-right: 10px;
    color: #575759;
}
.reservation a.condition, .reservation a.roomc {
	color: #363730;
	text-decoration: underline;
	cursor: pointer;
}
.reservation a.roomc {
	margin-top: 10px;
	display: block;
	color: #363730;
	text-decoration: underline;
	cursor: pointer;
}
.reservation div.roomc {
	margin-top: 10px;
}
.reservation ul {
    padding-left: 15px;
}
.reservation .submit-container {
	margin-top: 30px;
	text-align:right;
}












/* RESPONSIVE */



/* MAX 560 --------------------------------------------------------------------------------------------------------------------------- */
@media only screen and (max-width: 560px) {


#booking-home #booking_box {
    padding: 15px;
    border-radius: 0;
    background-color: #e2e2e2;
}
#booking_box .main-title h3:after {
	display: none;
}
#booking_box .room {
    padding-top: 5px;
    margin-top: 5px;
}
#booking-home {
    padding-top: 0;
    min-height: 0;
}
	
}
/* -------------------------------------------------------------------------------------------------------------------------------------------- */





/* MIN 561 - MAX 767 --------------------------------------------------------------------------------------------------------------------------- */
@media only screen and (max-width: 767px) {

	.container-booking-box {
	    background-color: #e2e2e2;
	}
	#booking_box {
		padding: 28px 0;
	}
	#booking_submit {
	    width: 100%;
	}	
	.button-group .btn {
	    padding: 5px 0px;
	    display: block;
	}
	
	.booking-open { 
		float: none !important;     
		width: auto !important;
	}	
	
	.element-item .data {
	    border: none;
	}
	.element-item .cta .price {
	    font-size: 2.4em;
	}
	.element-item .cta .btn {
		display: block;
	}
	.element-item .txt {
	    text-align: center;
	}
	.element-item a.title {
	    margin-top: 15px;
	}
	
	.booking-detail .summary a {
		float: none !important;
    	margin-left: 5px;
	}
	
	.booking-detail .type {
		text-align: center;
		margin:15px;
	}
	.booking-detail a.roomc, .booking-detail div.roomc {
		text-align: center;
		margin: 0 15px;
	}
	.booking-detail .row-room .price {
	    padding-top: 15px;
	}
	.booking-detail .row-room .btn {
    	margin: 25px;
	}
	.booking-detail .cta {
	    text-align: left;
	    padding-top: 40px
	}
	.booking-service ul {
	    margin-bottom: 25px;
	}
	
}
/* -------------------------------------------------------------------------------------------------------------------------------------------- */





/* MIN 768 - MAX 991   ---------------------------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 768px) and (max-width: 991px) {
	
	.element-item .cta .price {
	    font-size: 2.4em;
	}
	
	.booking-detail .summary a {
		float: none !important;
    	margin-left: 5px;
	}
}
/* -------------------------------------------------------------------------------------------------------------------------------------------- */





/* MIN 992  --------------------------------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 992px) {
	
	.filters .list-group-item { display: none; }
	
	.filters .list-group {
		height: auto;
	    display: block;
	}

}
/* -------------------------------------------------------------------------------------------------------------------------------------------- */





/* MAX 1169 --------------------------------------------------------------------------------------------------------------------------- */
@media only screen and (max-width: 1199px) {
	
	.element-item .cta .price {
	    font-size: 2.4em;
	}

}
/* -------------------------------------------------------------------------------------------------------------------------------------------- */

