1body{
	overflow: auto!important;
}
#sha-reservation{
	position: relative;
}
#sha-reservation:before {
    content: "";
    height: 100%;
    width: 920px;
    background-color: #E3ECE7;
    top: 0px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute;
}
#sha-reservation .sha-reservations-container{
	padding-top: 60px;
	margin-bottom: 60px;
}
#sha-reservation table .toggle-content{
	padding-top: 10px;
	padding-bottom: 10px;
}
#sha-reservation table .toggle-content .link{
	margin-top: 10px;
	text-decoration: none;
}
#sha-reservation .sha-table tr td{
	border:none;
}
#sha-reservation .sha-body > h2{
	color: #5D5C5C;
	font-weight: 100;
	font-size: 24px;
	margin-top: 32px;
}
#sha-reservation #sha-widget-container .sha-body > h2{
	margin-top: 0;	
}
#sha-reservation .sha-body .sha-row.programme-row td{
	padding: 10px;
}
.sticky-booking-btn{
	position: fixed;
    top: 230px;
    right: 0;
    background-color: #a3d5b8;
    z-index: 990;
    width: 140px;
    height: 90px;
    color: #fff;
    cursor: pointer;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
    font-size: 20px;
    text-transform: uppercase;
    /* line-height: 1.3em; */
    text-align: center;
    -webkit-transition: all 0.1s ease-in-out;
    transition: all 0.1s ease-in-out;
    transform: rotate(-90deg);
    transform-origin: 100px 0;
    border-radius: 0px;
    padding-top: 4px;
    font-weight: 100;
    font-family: 'Source Sans Pro', Arial, Helvetica, sans-serif;
}
.sticky-booking-btn:hover {
    right: 10px;
    color: #fff;
}
#sha-reservation h4{
    font-weight: 700;
    margin-top: 20px;
}
#sha-reservation hr {
    margin-top: 10px;
    margin-bottom: 10px;
    border: 0;
    border-top: 1px solid #DBDBDB;
}
#sha-reservation .small{
	color: #A5A2A2;
	font-style: italic;
}
.leyenda-calendar {
	text-align: center;
	    margin-top: 30px;
}
.step .title.h2 .show-step-details{
    vertical-align: middle;
}
.step .title.h2 .show-step-details .icon{
	    vertical-align: super;
}
.leyenda-calendar .leyenda{
	    display: inline-block;
	    margin: 0px 15px;
}
.leyenda-calendar .leyenda .squares{
	height: 15px;
	width: 15px;
	    display: inline-block;
	border: 1px solid #CCCCCC;
}
.leyenda-calendar .leyenda .squares.no-available{
	background-color: #CCCCCC;
}
.leyenda-calendar .leyenda .squares.available-programm{
	border: 0px;
	background: #AEDAC1;
}
.leyenda-calendar .leyenda .squares.available-no-programm{
	border-color: #AEDAC1;
	background-color: rgba(197,227,210,0.3);
}
.leyenda-calendar .leyenda .small{
    vertical-align: text-top;
}

/* SHA Bullets Steps */
#sha-reservation .sha-bullets-container{
	position: fixed;
    bottom: 0px;
    left: 0;
    right: 0;
    z-index: 2;
    background: #fff;
    padding-top: 20px;
    padding-bottom: 20px;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps {
    padding-bottom: 0px;
    border-radius: 0px;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol{
	margin: 0;
	position: relative;
	width: 80%;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol:before{
	    content: "";
    display: block;
    border-bottom: #DBDBDB solid 1px;
    width: 80%;
    top: 5px;
    position: absolute;
    left: 9%;
    z-index: 1;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li{
	width: 20%;
	float: left;
	text-align: center;
	list-style: none;
	position: relative;
	cursor: pointer;
}


/* HOME WIDGET */

.sha-home-widget, .sha-programme-widget {
	position: relative;
    max-width: 480px;
    background-color: rgba(255,255,255,0.8);
    border-radius: 0px;
    box-shadow: rgba(0,0,0,0.3) 0 0 10px;
    padding: 20px 25px 0 25px;
}
.sha-home-widget h3, .sha-programme-widget h3{
	font-weight: 500 !important;
    font-size: 20px;
    color: #95989A;
    width: 70%;
    line-height: 26px;
}
.sha-programme-widget h3{
    width: 100%;
	
}
.sha-home-widget label, .sha-programme-widget label{
    color: #95989A;
	font-weight: 500 !important;
	
}
.sha-home-widget p, .sha-programme-widget p{
    color: #95989A;
	font-weight: 500 !important;
	
}
.sha-home-widget .sha-popup-objectives{
	display: none;
	position: absolute;
    z-index: 1;
    background-color: #f5f5f5;
    padding: 15px 50px 15px 15px;
    margin-top: -45px;
    border-radius: 0px;
    box-shadow: rgba(0,0,0,0.3) 0 0 10px;
    margin-left: 25px;
}
.sha-home-widget .sha-popup-objectives.open{
	display: block;
}

.widget-closing-cross{
	position: absolute;
	top: 15px;
	right: 15px;
    width: 20px;
    height: 20px;
	display: block;
	background-image: url(../img/closing-x.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right top;
}
/*
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.active.completed .bullet{
	background-color: #808080;
	box-shadow: 0 0 0 4px #808080;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.active.completed:not(.current) .bullet:after{
	content: " ";
    display: block;
    width: 35px;
    height: 35px;
    color: #fff;
    background-image: url(../img/checked.png);
    position: absolute;
    top: 2px;
    right: -6px;
    background-size: contain;
    background-repeat: no-repeat;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.active.completed:not(.current) .bullet{
	text-indent: -9999px;
}
*/
#mobile-panel{
	display: none;
	z-index: 3;
}
#mobile-panel .row{
	padding-bottom: 0;
	margin-bottom: 0;
}
#mobile-panel .lined-btn, #mobile-panel .gray-btn, #mobile-panel .main-btn{
	margin: 4px 0;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li span{
	display: inline-block;
	width: 50%;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li .bullet{
	    position: absolute;
    left: 50%;
    margin-top: 0;
    width: 10px;
    height: 10px;
    line-height: 29px;
    border-radius: 50%;
    display: block;
    background-color: #CCCCCC;
    color: transparent;
    z-index: 1;
    border: 0px;
    box-shadow: 0 0 0 4px #F2F2F2;
    font-size: 20px;
    font-weight: 100;
    padding: 0px;
    transform: translate(-50%);
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.completed:before{
	content: "";
	width: 100%;
	display: block;
	border-bottom: #333333 solid 1px;
	width: 100%;
	top: 5px;
	position: absolute;left: 0;
	z-index: 1;
	left: 46%;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.step-5.completed:before{
	width: 0px;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.completed.current:before{ content: none;}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.completed .bullet{background-color: #333333;box-shadow: 0 0 0 4px #333333;}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.completed .bullet:before{
	    content: "\f00c";
	    font: normal normal normal 12px/1 FontAwesome;
	        color: #fff;
	        position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.current .bullet{
    background-color: #333333;
    animation: pulse 1.2s infinite alternate ease-in-out;
       box-shadow: 0 0 0 4px #AEDAC1;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.current .bullet:before{
	content: "";
}
@keyframes pulse {
    from {
    box-shadow: 0 0 0 10px #dfe9e3;
    }
    to {
    box-shadow: 0 0 0 1px #dfe9e3;
	}
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li .name{
	margin-top: 25px;
    color: #95989A;
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 13px;
    margin-bottom: 0px;
    line-height: 14px;
	display: block;
    width: 100%;
}
#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.completed .name{
	color: #000;
}
.reservation-texts{
	text-align: left;
	color: #6f7071;
	font-weight: 100;
    padding-left: 0px;
    overflow: hidden;
    clear: both;
    transition:0.3s;
}
.reservation-texts .h2{
	text-align: center;
}
.reservation-texts .step .content-editor{
	display: none;
}
.reservation-texts.open{
}
.reservation-texts.open .step .content-editor{
    display: block;
    text-align: center;
    margin-bottom: 30px;
}

.reservation-texts strong{
	font-size: 18px;
	font-weight: 400;
	display: block;
	text-transform: uppercase;
}
.reservation-texts p{
	display: none;
}

.reservation-forms .reservation-texts .step{
	display: none;
}

.live-users-count {
    font-size: 14px;
    padding: 0px;
    color: #b8b09b;
    display: block;
    margin-top: 10px;
    margin-bottom: 20px;
}
.info-window{
	    background-color: #F2F2F2;
	border-radius: 6px;
	position: absolute;
    color: #555555;
	padding: 10px;
	font-size: 14px;
	max-width: 240px;
	margin-left: 20px;
	margin-top: -30px;
	z-index: 2;
}

div.hidden{
	display: none;
}


a.small:hover{
	text-decoration: underline;
}

.sha-shadow-col{
	background-color: #fff;
	box-shadow: 0px 5px 10px -5px rgba(0,0,0,0.1);
	min-height: 200px;
	border-radius: 0px;
	overflow: hidden;
	margin-bottom: 30px;
}
.step-2 .sha-shadow-col{
	padding-bottom: 30px;
}
.reservation-sidebar-holder .sha-shadow-col{
	background-color: transparent;
}
.sha-shadow-col .img-holder{
	background-image: url(../img/step-1a.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    z-index: 0;
    height: 140px;
    width:100%;
    box-sizing: content-box;
    opacity: 0.5;
}
.sha-shadow-col .img-holder.step-1b{	background-image: url(../img/step-6.png); }
.sha-shadow-col .img-holder.step-2{	background-image: url(../img/step-2.png); }
.sha-shadow-col .img-holder.step-3{	background-image: url(../img/step-3.png); }
.sha-shadow-col .img-holder.step-4{	background-image: url(../img/step-4.png); }
.sha-shadow-col .img-holder.step-5{	background-image: url(../img/step-5.png); }
.sha-shadow-col .img-holder.step-6{	background-image: url(../img/step-6.png); }

.step.step-3 .sha-shadow-col .sha-header{
	background-color: rgba(0, 0, 0, 0.5);
}
.step .sha-shadow-col .sha-header{
    position: relative;
    z-index: 1;
    background-color: #000;
    margin-bottom: 0px;
    height: 140px;
    color: #fff;
}
.step .sha-shadow-col .sha-header .sha-header-content{
	position: absolute;
    bottom: 30px;
    left: 30px;
}
.sha-shadow-col p{
}

.sha-shadow-col .sha-header{
}
.sha-shadow-col .sha-header.sha-header-widget {
    padding: 25px 25px 0px;
    background: #fff;
   
}
.sha-shadow-col .sha-header.sha-header-widget > .h5 .info-btn{
    margin: 14px 5px;
}
.sha-shadow-col .sha-footer {
    background-color: #F5F5F5;
    padding: 25px ;
}
.sha-shadow-col .sha-footer .label{
	white-space: normal;
}
.sha-shadow-col .sha-footer .link{
	padding-top: 10px;
}
.sha-shadow-col .sha-footer .button, #sha-reservation .sha-bullets-container .sha-bullet-steps .button, #mobile-panel .button{
	background-color: #333333;
	border-color: #333333;
	color: #fff;
}
.sha-shadow-col .sha-footer .button:hover, #sha-reservation .sha-bullets-container .sha-bullet-steps .button:hover, #mobile-panel .button:hover {
	background-color: transparent;
	color: #333333;
}
.sha-shadow-col .sha-footer .button, #mobile-panel .button{
	width: 100%;
}
.sha-shadow-col .sha-footer .label{
	text-align: left;
}
.sha-shadow-col .sha-body, .sha-empty{
	padding: 25px 25px;
}
.reservation-sidebar-holder .sha-body {
	background-color: #fff;
}
.reservation-sidebar-holder .sha-body a{
	margin-bottom: 0px;
	display: block;
}
.sha-shadow-col .sha-header h3{
	margin: 0;
	color: #fff;
	font-weight: 400 !important;
}
.sha-shadow-col .sha-header.sha-header-widget h3{
	    color: #333333;
	     margin-bottom: 20px;
}
.sha-shadow-col .sha-header p.h5{
	color: #999999;
	margin-bottom: 0px;	
}

#sha-reservation .remove-item-btn{
        width: 16px;
    height: 16px;
    color: #999999;
    display: inline-block;
    font-size: 20px;
    text-align: center;
    padding-left: 1px;
    transition: 0.5s;
        transform: rotate(-45deg);
}
#sha-reservation .remove-item-btn[data-code='FULLBOARD']{
	display: none;
}

/* FORMS */


.info-btn {
    width: 16px;
    height: 16px;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    cursor: pointer;
    float: right;
        font-size: 16px;
    color: #AEDAC1;
    margin-left: 10px;
}

#sha-reservation .sha-form-title {
    font-weight: 400;
    margin: 0px 0 10px 0;
}

#sha-reservation .elements-group {
    margin-bottom: 20px;
    margin-bottom: 60px;
    margin-bottom: 30px;
}
#sha-reservation .elements-group .checkbox{
	margin-bottom: 10px !important;
}

#sha-reservation input[type="text"], #sha-reservation input[type="password"], #sha-reservation input[type="email"], #sha-reservation textarea, #sha-reservation select{
	width: 100%;
}

/* Radio */
/*
#sha-reservation input[type="radio"],
#sha-reservation input[type="checkbox"] {
    -webkit-appearance: none;
	background:none;
	border: none;
    background-color: #fff;
    background-image: url(../img/check1.png);
    background-size: contain;
    background-repeat: no-repeat;
    
    cursor: pointer;
    display: inline-block;
    height: 14px;
    width: 14px;
    
    position: relative;
    margin-right: 10px;
    vertical-align: text-bottom;
    transform: scale(1);
    -webkit-transform: scale(1);
}*/
#validate-coupon-btn{
	width: 100%;
}
#sha-reservation .sha-guest-cell input[type="checkbox"]{
    margin-right: 0;
}
#sha-reservation input[type="checkbox"].disabled {
    background-image: url(../img/check3.png);
}
#sha-reservation input[type="checkbox"]:after {
    background-image: url(../img/check2.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
    display: block;
    height: 14px;
    left: 0px;
    position: relative;
    top: 0px;
    width: 14px;
    transform: scale(0);
    transition: 0.3s;
}
#sha-reservation input[type="checkbox"]:checked:after {
    transform: scale(1);
}
#sha-reservation input[type="checkbox"]:focus{
	outline: none;
    outline-color: lime;
}

/* Select */
select.sha-select, #sha-stay-objectives{
	width: 100%;
    background-color: #fff;
    color: #9c9a9a;
    appearance: none!important;
    -webkit-appearance: none!important;
    -moz-appearance: none!important;
    -o-appearance: none!important;
    -ms-appearance: none!important;
    position: relative;
    cursor: pointer;
	border-radius: 6px;
	border: 2px #DBDBDB solid;
	margin-bottom: 15px;
	padding: 10px;
    background-image: url(../img/down-arrow.png);
    background-repeat: no-repeat;
    background-position: 95% center;
    box-shadow: none;
    height: auto;
    margin: 0;
    margin-bottom: 15px;
}
#sha-num-nights{
	display: inline-block;
	width: 40px;
	padding: 0 3px;
    background-position: 90% center;
}
#sha-reservation table{
	border: none;
}
#sha-reservation table .h3{
	margin-bottom: 5px;
}
#sha-reservation table .content-editor{
	margin-bottom: 15px;
}
#sha-reservation table td.sha-thumb{
	width: 100px;
}
#sha-reservation table td.sha-thumb img{
	width: 90%;
}
#sha-reservation tr th,#sha-reservation tr td{
	padding: 0;
	padding: 5px 0px;
}
#sha-reservation tr .sha-info-cell {
    padding-right: 14px;
}
.sha-table tr td strong{
	font-weight: 500;
}
.sha-guest-icon{
	background-image: url(../img/person.png);
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block;
    height: 20px;
    width: 20px;
    position: relative;
    left: 0px;
    top: 0px;
    text-indent: -9999em;
}
.icon-user{
	font-size: 24px;
}
.sha-2-guest-icon{
	background-image: url(../img/person.png);
    background-size: contain;
    background-repeat: repeat-x;
    display: inline-block;
    height: 20px;
    width: 40px;
    position: relative;
    left: 0px;
    top: 0px;
    text-indent: -9999em;
}

.reservation-forms label{
	display: block;
	margin: 0;
	cursor: pointer;
	font-weight: 300;
    font-size: 14px;
}
.reservation-forms .sha-room-card img{
	width: 100%;
	height: auto;
	vertical-align: middle;
	position: relative;
}
.reservation-forms .sha-room-card label{
	color: #A5A2A2;
}
label.disabled{
	opacity: 0.5;
}

.sha-p-description{
	color: #808080;
	font-size: 95%;
}
.programme-excerpt {
    max-height: 1px;
    overflow: hidden;
	transition: 0.3s;
}
.sha-row.open .programme-excerpt{
    max-height: 500px;
    padding-bottom: 15px;
}
.show-programme-details, .show-package-details, .show-suite-details, .show-step-details{
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 18px;
	height: 16px;
	margin-left: 10px;
	    font-size: 16px;
	color: #6BAE88;    
}
.info-panel.warning {
    background-color: #fbf6b9;
    padding: 2px 10px;
    text-align: center;
    color: #333;
    font-weight: 500;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    position: relative;
    left: 10%;
    width: 80%;
    top:0;
}
/* TABLES */
#sha-widget-container .sha-body h3{
	margin-top: 26px;
    margin-bottom: 5px;
}

.sha-table {
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
}
#sha-reservation table .sha-row td{
	border-bottom: 1px solid #e4e4e4;
	padding-bottom: 5px;
	padding-top: 5px;
}
#sha-reservation table .sha-row td .checkbox{
	display: inline-block;
	padding-left: 0px;
	padding-right: 0px;
	width: 15px;
}
.upsell-wrapper .sha-table tr td .packages-include-title{
	display: block;
	margin-top: 10px;
}
.upsell-wrapper div.checkbox{
	padding-top: 10px;
	padding-bottom: 10px;
}
.upsell-wrapper #transfer-hiddeable-wrapper div.checkbox, .upsell-wrapper #voucher-labels div.checkbox{
	border: 1px solid #CCCCCC;
    border-radius: 4px;
    margin: 10px 0px !important;
        padding-left: 36px;
}
.upsell-wrapper #voucher-labels div.checkbox .label{
    white-space: normal;
 }
.sha-row .toggles-container, .sha-row .toggles-container .toggle{
	border: 0px;
}
.sha-row .toggles-container .toggle .toggle-title{
	padding: 0px;
	padding-right: 20px;
	line-height: normal;
}
.sha-row .toggles-container .toggle .toggle-title .fa{
	float: none;
	line-height: normal;
	width: auto;
	top: 0px;
	right: 0px;
	height: 29px;
	width: 19px;
}

.upsell-wrapper #transfer-hiddeable-wrapper div.checkbox input[type="radio"], .upsell-wrapper #transfer-hiddeable-wrapper div.checkbox input[type="radio"]:checked + .label:after, .upsell-wrapper #transfer-hiddeable-wrapper div.checkbox input[type="radio"], .upsell-wrapper #transfer-hiddeable-wrapper div.checkbox input[type="radio"] + .label:before, .upsell-wrapper #voucher-labels div.checkbox input[type="radio"], .upsell-wrapper #voucher-labels div.checkbox input[type="radio"]:checked + .label:after, .upsell-wrapper #voucher-labels div.checkbox input[type="radio"], .upsell-wrapper #voucher-labels div.checkbox input[type="radio"] + .label:before, .upsell-wrapper #voucher-labels div.checkbox input[type="checkbox"], .upsell-wrapper #voucher-labels div.checkbox input[type="checkbox"]:checked + .label:after, .upsell-wrapper #voucher-labels div.checkbox input[type="checkbox"], .upsell-wrapper #voucher-labels div.checkbox input[type="checkbox"] + .label:before{
	left: 12px;
}
div.packages-information-wrapper{
	overflow: hidden;
	max-height: 26px;
	transition:0.3s;
	cursor: pointer;
	text-overflow: ellipsis;
	width: 100%;
}
div.packages-information-wrapper.open{
	max-height: 600px;
	
}
#sha-reservation table .sha-row td.package-title{
	border-bottom:none;
}
#sha-reservation table .sha-row td.package-price{
	padding: 10px;
}
.sha-row td{
	padding: 5px 0;
}
.widget-programmes-part .sha-row.header-row td{
	    padding: 15px 0;
    border: 0px;
}
.sha-guest-cell{
	text-align: center;
	transition:0;
}
.sha-table thead .sha-guest-cell.hidden-col,
.sha-table tbody .sha-guest-cell.hidden-col{
	width: 0;
    overflow: hidden;
    float: right;
    height: 0;
    display: none;
}
.sha-info-cell{
	text-align: right;
}
.sha-separator-cell{
	height: 15px;
}
.sha-remove-cell{
	width: 30px;
	height: 26px;
}
.sha-price-cell{
	text-align: right;
	font-size: 15px;
}
.sha-def{
	color: #808080;
	width: 100px;
}
.sha-def-value{
	color: #454545;
    font-weight: 500;
}
.sha-guest-row{
	color: #808080;
	font-size: 14px;
}
.sha-programme-cell{
	/* color: #454545;
	text-transform: uppercase;*/
}
.sha-room-type{
	line-height: 14px;
}
.sha-room-price {
    margin-left: 15px;
    color: #A5A2A2;
}
.sha-table .programme-price-holder{
	margin-left: 15px;
	color: #A5A2A2;
}
.sha-table thead .sha-guest-cell{
    height: 38px;
    vertical-align: bottom;
    font-size: 10px;
    width: 50px;
    
}
.step-3 .sha-table thead .sha-guest-cell{
    background-position: center center;
    height: 50px;
}

.upsell-wrapper p{
	margin-bottom: 10px;
}
.sha-room-card{
    margin-bottom: 25px;
    overflow: hidden;
    height: auto;
    /* border: 1px solid #ccc; */
   border:  1px solid transparent;
    border-radius: 3px;
}
.sha-room-card .text-container{
    padding: 15px;
    background-color: #f5f5f5;
    min-height: 230px;
}
.sha-room-card .toggles-container{
	border-top: 0px;
}
.sha-room-card .toggles-container .toggle .toggle-title{
	padding: 5px 0px;
}
.sha-room-card .toggles-container .toggle .toggle-title .fa{
	height: 35px;
	width: 35px;
	line-height: 35px;
	top: 0px;
}
.sha-room-card .toggles-container .toggle .toggle-content .link{
	margin-top: 10px;
}
.sha-room-card .suite-options-title{
	font-weight: bold;
	margin-bottom: 10px;
	color: #000;
}

.sha-room-card label{
	font-weight: bold;
	text-align: right;
}
.sha-room-card label .room-name{
	float: left;
	font-weight: 400;
}
.sha-room-card label input{
	float: left;
	margin-right: 10px;
}
.suite-no-options{
    display: none;
    font-size: 14px;
    line-height: 20px;
    color: #ca5757;
    font-weight: 500;
}
.suite-no-options small{
	display: block;
	margin-top: 10px;
}
.suite-no-options .link{
	margin-top: 10px;
	font-size: 12px;
	font-size: 1.2rem;
}
.suite-options-title{
	font-weight: 500;
	margin-top: 10px;
}

.sha-table.no-margintop{
	margin-top: -20px;
}


.sha-room-card .suite-details{
	position: absolute;
	background-color: rgba(255,255,255,0.9);
	overflow: hidden;
	max-height: 0;
	transition:0.3s;
	font-size: 14px;
	margin-bottom: 0;
	padding-bottom: 0px;
	z-index: 2;
}
.sha-room-card .suite-details p{
	padding: 10px;
}
.sha-room-card.open .suite-details{
	max-height: 600px;
	margin-bottom: 15px;
	padding-bottom: 80px;
    max-width: 92%;
}
.sha-room-card.open{
	z-index: 2;
}
/* WIDGET */

.dialog-panel {
    position: fixed;
    width: 50%;
    min-width: 300px;
    max-width: 400px;
    background-color: #ffffff;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 30px;
    border-radius: 0px;
        box-shadow: 0px 5px 0px 2000px rgba(0,0,0,0.5);
    z-index: 2;
}

.widget-programmes-part,
.widget-dates-part,
.widget-rooms-part,
.widget-extras-part,
.widget-programmes-part .sha-empty {
	display: none;
}
.widget-programmes-part{
	margin-top: 30px;
}
.widget-programmes-part .sha-body .h4{
	border-bottom: 1px solid;
	margin-bottom: 20px;
	padding-bottom: 10px;
}
.widget-programmes-part .sha-body h5{
	margin: auto;
}
#sha-widget-buttons .row{
	margin-bottom: -10px;
}
.sha-body h3{
	margin: 0;
	font-weight: 600 !important;
	color: #666666;
}
.sha-arrowed{
	font-weight: 100;
    font-size: 14px;
}

.gift-reservation-hidden, #gift-address, #gift-email{
	display: none;
}
.sha-arrowed:after, .sha-arrowed-title:after{
	content: url(../img/a-arrow.png);
	display: inline-block;
    margin-left: 10px;
    vertical-align: text-top;
}
.sha-arrowed-title:after{
	vertical-align: baseline;
}
.sha-back-arrowed:before{
	content: url(../img/a-arrow-reversed.png);
	display: inline-block;
    margin-right: 10px;
    vertical-align: text-top;
}

.sha-resume-block h2{
	margin-top: 5px;
	color: #5D5C5C;
	font-size: 24px;
	font-weight: 100;
}
#sha-reservation .sha-resume-block.w__border{
	border: 1px solid #000;
	border-radius: 5px;
	padding: 15px;
	margin-bottom: 30px;
}
#sha-reservation .sha-resume-block.w__border .sha-table{
	margin-bottom: 0px;
}
#sha-reservation .sha-resume-block .row-guest td{
	line-height: 17px;
    vertical-align: top;
    padding: 10px 0px 5px;
}

#sha-reservation .sha-resume-block.w__border .sha-total-price td{
	padding-bottom: 10px;
}
#sha-reservation .sha-resume-block.w__border .sha-total-reservation-price td{
	border-top: 2px solid #f5f5f5;
	padding-top: 10px;
}
.sha-total-price .sha-def, .sha-reservation-price .sha-def, .sha-total-reservation-price .sha-def{
	width: 73%;
	
}
.sha-resume-block > table.border-line{
	border: 1px solid #979797;
	border-collapse: separate;
	margin-bottom: 0px;
}
.sha-resume-block > table tr td{
	padding: 20px 30px;
	vertical-align: top;
}
.sha-resume-block > table tr.sha-total-price td.sha-def.h5, .sha-resume-block > table tr.sha-total-reservation-price td.sha-def.h5{
	padding-right: 0px;
}
.sha-resume-block > table tr.sha-total-price td.#sha-total-price, .sha-resume-block > table tr.sha-total-reservation-price td#sha-total-reservation-price{
	padding-left: 0px;
}
.sha-resume-block > table tr.sha-total-reservation-price td.sha-def.h5{
	
}
.sha-total-price .sha-def, .sha-total-price .sha-def-value{
}
.sha-reservation-price .sha-def, .sha-reservation-price .sha-def-value{
	font-size: 20px;
	color: #808080;
	font-weight: 100;	
    line-height: 19px;
    padding-top: 3px;
}
.sha-total-reservation-price .sha-def, .sha-total-reservation-price .sha-def-value{
}

.exclude-on-step-1,
.exclude-on-step-2,
.exclude-on-step-3,
.exclude-on-step-4{
	overflow: hidden;
	transition: 0.5s;
	display: block;
	height: 24px;
}
#sha-widget-container[data-step='1'] .exclude-on-step-1,
#sha-widget-container[data-step='2'] .exclude-on-step-2,
#sha-widget-container[data-step='3'] .exclude-on-step-3, 
#sha-widget-container[data-step='4'] .exclude-on-step-4{
	height: 0;
}

#locator-holder{
    border: 1px solid #ccc;
    padding: 5px;
    border-radius: 5px;
    cursor: pointer;
    background-color: transparent;
    display: inline-block;
    width: calc(100% - 30px);
    text-align: center;
    margin-top: 10px;
}
.widget_sha_reservations_widget.disabled a, .widget_sha_reservations_widget.disabled .prescindible-disabled, .widget_sha_reservations_widget.disabled #sha-widget-buttons{
	display: none;
}
.widget_sha_reservations_widget.disabled a.reservtion-start-over{
	display: block;
}
.small-left-icon{
	display: inline-block;
	vertical-align: top;
	margin-right: 10px;
	margin-bottom: 8px;
}
.widget_sha_reservations_widget.disabled{
	background-color: #F5F5F5;
}
#sha-reservation .lined-btn,#sha-reservation .gray-btn,#sha-reservation .main-btn{
	display: block;
	padding: 10px 0;
	text-align: center;
	border-radius: 6px;
	border: 2px #808080 solid;
	margin-bottom: 15px;
	color: #808080;
    font-size: 14px;
}
#sha-reservation .gray-btn{
	background-color: #A5A2A2;
	color: #fff;
	border: 2px #A5A2A2 solid;
}
#sha-reservation .main-btn{
	background-color: #dfe9e3;
	color: #fff;
	border: 2px #dfe9e3 solid;
	text-transform: uppercase;
}
#sha-reservation .form-group{
	margin-bottom: 15px;
}
#sha-reservation input.sha-input-text[type="text"], #sha-reservation input.sha-input-text[type="password"], #sha-reservation input.sha-input-text[type="email"], #sha-reservation textarea.sha-input-text, input.sha-input-text[type="text"]{
	background: none;
	border: none;
	display: block;
	width: 100%;
	padding: 10px;
	text-align: left;
	border: 1px #DBDBDB solid;
	color: #DBDBDB;
	margin-bottom: 0px;
	transition: all 200ms;
}
#coupon-code-fld{
	margin-bottom: 10px !important;
}
#sha-reservation textarea.sha-input-text{
	height: 100px;
}
#sha-reservation .sha-input-text.email{
	background-image: url(../img/email-icon.png);
	background-repeat: no-repeat;
	background-position: 98% center;
}
#sha-reservation input.sha-input-text:focus,
textarea.sha-input-text:focus,
.sha-input-text:focus{
	outline:none;
	border: 1px #808080 solid;
	color: #808080;
	box-shadow:none;
}
#sha-reservation .sha-input-text.ok, #sha-reservation .sha-select.ok, .sha-input-text.ok{
	border: 1px #808080 solid !important;
	color: #808080 !important;
}
#sha-reservation .sha-input-text.nok, #sha-reservation .sha-select.nok, .sha-input-text.nok{
	border: 1px #BD0000 solid !important;
	color: #BD0000 !important;
}
.sha-table.table-dates tr td:nth-child(2){
	text-align: right;
}
#sha-reservation .widget_sha_reservations_widget .sha-body a{
	    color: #333333;
}
#sha-reservation .widget_sha_reservations_widget .sha-body.last-options a .icon{ 
	margin-left: 10px;
	font-size: 16px;
	color: #999999;	
}
#sha-reservation .widget_sha_reservations_widget .sha-body.last-options a .icon.icon-plus{
	    transform: rotate(-45deg);
}
#sha-reservation .widget_sha_reservations_widget .sha-body.last-options a .icon.icon-download{
	    transform: rotate(-180deg);
}
/* CALENDAR */
.sha-body h4.sha-month-name{
	text-align: center;
	text-transform: uppercase;
}
.next-month:hover, .prev-month:hover{
}
.next-month, .prev-month{
	float: left;   
    /* width: 130px; */
    /* text-indent: -9999px; */
    line-height: 50px;
}
.next-month{
	float: right;
	
}
tr.border-line{
	    border: 1px solid #CCCCCC;
    border-radius: 4px;
    padding-left: 10px;
     border-collapse: separate;
}
tr.border-line > td:nth-child(2){
	border: 1px solid transparent;
}
tr.border-line .package-price{
	padding-left: 22px;
}
tr.border-line .package-price h4{
	margin: 0px !important;
}
#sha-num-nights{
	border: 1px #CCCCCC solid;
    height: 40px;
    line-height: 55px;
    width: 25%;
    color: #333333;
    text-align: center;
    z-index: 1;
    margin: auto;
        font-size: 14px;
}
.sha-body .nights-title-holder {
       display: block;
    font-size: 10px;
    font-size: 1rem;
    font-weight: 500;
    padding: 0px;
    color: #333333;
    letter-spacing: 3px;
    text-transform: uppercase;
    text-align: center;
    line-height: 52px;
}
.sha-body .nights-title-holder .info-btn{
	float: none;
}
.sha-body .night-input-holder{
	text-align: center;
}
.sha-body .night-input-holder .minus{
    display: inline-block;
    width: 40px;
    text-align: center;
    margin-right: -40px;
    height: 40px;
    vertical-align: middle;
    line-height: 40px;
    font-weight: bold;
    position: relative;
    z-index: 2;
}
.sha-body .night-input-holder #sha-num-nights{
	width: 140px !important;
	text-align: center;
	padding-right: 40px;
	padding-left: 40px;
	color: #999 !important;
	text-align: center !important;
	display: inline-block !important;
}
.sha-body .night-input-holder .plus{
    display: inline-block;
    width: 40px;
    text-align: center;
    margin-left: -40px;
    height: 40px;
    vertical-align: middle;
    line-height: 40px;
    font-weight: bold;
    position: relative;
    z-index: 2;
}
.sha-calendar-table{
	width: 100%;
	font-size: 22px;
	text-align: center;
    border-spacing: 8px;
    border-collapse: separate;
}
.sha-calendar-table td{
	height: 40px;
	cursor: pointer;
	font-weight: 100;
	width: 14.28%;
	transition: 0.4s;
	vertical-align: middle;
}
.sha-calendar-table tbody td{
	    border: 1px solid #CCCCCC;
    color: #555555;
    font-size: 12px;
    font-weight: normal;
}
.pending-confirmation{
	margin: 20px 0;
}
.new-reservation-p{
	margin-top: 30px;
	padding-bottom: 20px;
}
/*
.sha-calendar-table td:nth-child(0){ transition-delay: 0s;}
.sha-calendar-table td:nth-child(1){ transition-delay: 0.05s;}
.sha-calendar-table td:nth-child(2){ transition-delay: 0.1s;}
.sha-calendar-table td:nth-child(3){ transition-delay: 0.15s;}
.sha-calendar-table td:nth-child(4){ transition-delay: 0.20s;}
.sha-calendar-table td:nth-child(5){ transition-delay: 0.25s;}
.sha-calendar-table td:nth-child(6){ transition-delay: 0.30s;}
.sha-calendar-table td:nth-child(7){ transition-delay: 0.35s;}
*/
.sha-calendar-table tbody td.disabled{
	color: #E0DDDD;
	cursor: default;
}
.sha-calendar-table tbody td.weekend{
}
.sha-calendar-table tbody td.current{
	color: #a3d5b8;
}

.sha-calendar-table tbody td.selected{
	    background-color: #AEDAC1;
	    color: #ffffff;
}
.sha-calendar-table tbody td.selected.temporary {
    background-color: rgba(239, 126, 126, 0.18);
}
.sha-calendar-table tbody td.selected.out-of-programme,  .sha-calendar-table tbody td.selected.out-of-programme + td.last-day{
	    border: #AEDAC1 1px solid;
    background-color: rgba(197,227,210,0.3);
    color: #555555;
}
.sha-calendar-table tbody td.selected{
}
.sha-calendar-table tbody td.selected.last-day{
}
.sha-calendar-table tbody td.unavailable{
	background-color: #CCCCCC;
	color: #fff;
	cursor: not-allowed;
}
.sha-calendar-table tbody td.disabled{
	/* color: #E0DDDD; */
	cursor: not-allowed;
	background: #fff;
	color: #3c3c3c;
	opacity: 0.2;
}
.s
.sha-calendar-table tbody td.unavailable:hover{
	background-color: #fff !important;
}
.sha-calendar-table tbody td.selected:not(.disabled):hover{
	/* background-color: rgba(126, 185, 239, 0.45); */
}
.sha-calendar-table tbody td:not(.disabled):hover{
	background-color: rgba(219,219,219,0.5);
}
.sha-calendar-table thead{
	text-transform: uppercase;
	color: #A5A2A2;
	font-size: 18px;
}
.sha-calendar-table thead td{
}
.sha-calendar-table thead td .shalabel{
	color: #333333;
}
@media only screen and (max-width: 1180px){

	.sha-home-widget{
		transform: scale(0.8);
	}
}

@media only screen and (max-width: 768px){
	
	#cookie-law-info-again{
		display: none!important;
	}
.container {
		width: auto!important;
		
	}
	.sha-reservations-container{
		    margin-top: 106px;
		        margin-bottom: 30px;
	}
	.sha-home-widget{
		display: none;
	}
	#sha-reservation input[type="radio"], #sha-reservation input[type="checkbox"]{
		height: 20px;
		width: 20px;
	}
	.next-month, .prev-month{
		width: 130px;
	}
	#sha-reservation input[type="radio"]:after, #sha-reservation input[type="checkbox"]:after{
		height: 20px;
		width: 20px;
	}
	
	#mobile-panel{
		display: block;
	    position: fixed;
	    bottom: 0;
	    left: 0;
	    width: 100%;
	    background-color: #fff;
	    padding: 10px 0px;
	    text-align: center;
	}
	.sha-bullets-container{
		top: 60px;
		bottom: auto !important;
	}
	.sha-bullet-steps{
			    width: 100%;
	    z-index: 3;
	    display: block !important;
	    transition: 0.5s;
	    left: 0;
	}
	.sha-bullet-steps.open{
		top: 0;
		padding-top: 30px;
	}
	#sha-reservation .sha-bullets-container .sha-bullet-steps ol{
		width: 100%;
	}
	.sha-body h3.sha-month-name{
	    height: 60px;
	    line-height: 56px;
	    margin-top: 0;
	}
	#sha-num-nights{
		right: 15px;
	}
	a.change-day{
		right: 32%;
	}
	.reservation-texts{
		       width: 100%;
    clear: none;
    overflow: visible;
    padding: 0 30px;
	}
	.reservation-texts > #back-btn{
		display: none;
	}
	.reservation-texts .show-step-details{
	}
	#sha-reservation .sha-bullets-container .sha-bullet-steps p.step.step-6{
		display: none !important;
		
	}
	#sha-reservation .sha-bullets-container .sha-bullet-steps ol li{
		
	}
	#sha-reservation .sha-bullets-container .sha-bullet-steps ol li .name{
		opacity: 0;
	}
	#sha-reservation .sha-bullets-container .sha-bullet-steps ol li.current .name{
		opacity: 1;
	}
	#sha-reservation .sha-bullets-container .sha-bullet-steps p.step{
		display: block!important;
	    height: 15vh;
		margin: 0;
		color: rgba(0,0,0,0);
	}
	#sha-reservation .sha-bullets-container .sha-bullet-steps p.step strong{
		color: #6f7071;
	}
	#sha-reservation .sha-bullets-container .sha-bullet-steps ol:before{
	}
	#mobile-panel .main-btn{
		border: none;
	}
	.sha-shadow-col .sha-body, .sha-empty {
	    padding: 15px 15px;
	}
}

/* =========================
	CHECK'S & RADIO'S by Crepes&Texas
========================== */

.sha-reservations-container .checkbox input[type="radio"], .sha-reservations-container .checkbox input[type="checkbox"]{
	    transform: translateY(-50%);
    top: 50%;
}
.sha-reservations-container .checkbox input[type="radio"] + .label:before, .sha-reservations-container .checkbox input[type="checkbox"] + .label:before{
	transform: translateY(-50%);
    top: 50%;
}
.sha-reservations-container .checkbox input[type="radio"]:checked + .label:after, .sha-reservations-container .checkbox input[type="checkbox"]:checked + .label:after{
	transform: translateY(-50%);
    top: 50%;
}
/* =========================
	ARABIC CONTENT
========================== */
html[lang="ar"] {
	
}
html[lang="ar"] select.sha-select,
html[lang="ar"] #sha-stay-objectives {
    padding-right: 50px;
    text-align: right;
}
html[lang="ar"] .sha-home-widget .sha-popup-objectives {
    padding: 15px 15px 15px 50px;
}
html[lang="ar"] .reservation-main-holder.reservation-forms {
	float: right;
}
html[lang="ar"] .sha-reservations-container .back-to-site {
	right: inherit;
    left: 15px;
}
html[lang="ar"] #sha-reservation .sha-bullets-container .sha-bullet-steps ol:before {
    width: 75%;
    margin-right: 12.5%;
    margin-left: none;
    top: 17px;
    position: absolute;
} 
html[lang="ar"] #sha-reservation .sha-bullets-container .sha-bullet-steps ol li .bullet,
html[lang="ar"] .sha-def-value,
html[lang="ar"] .sha-price-cell,
html[lang="ar"] .programme-price-holder,
html[lang="ar"] .sha-room-price {
    Font-family: 'Source Sans Pro', georgia, serif !important; 
}
html[lang="ar"] .sha-def-value {
	padding-right: 10px;
}
html[lang="ar"] .reservation-texts {
    text-align: right;
    padding-left: 0;
    padding-right: 30px; 
}
html[lang="ar"] .info-btn {
    margin-right: 10px;
    margin-left: 0;
}
html[lang="ar"] .small-left-icon {
    margin-right: 0;
    margin-left: 10px;
}
html[lang="ar"] .sha-shadow-col .img-holder {
	margin-right: 0;
	margin-left: 30px;
}
html[lang="ar"] #sha-reservation input[type="radio"], 
html[lang="ar"] #sha-reservation input[type="checkbox"] {
	margin-right: 0;
	margin-left: 10px;
}
html[lang="ar"] #sha-reservation .sha-guest-cell input[type="checkbox"] {
	margin-left: 4px;
	margin-right: 10px;
}
html[lang="ar"] .programme-price-holder {
	margin-right: 15px;
	margin-left: 0;
}
html[lang="ar"] .sha-arrowed:after, 
html[lang="ar"] .sha-arrowed-title:after {
    content: url(../img/a-arrow-reversed.png);
    margin-left: 0;
	margin-right: 10px;
}
html[lang="ar"] .sha-body .nights-title-holder {
    text-align: right;
    margin-right: 130px;
    margin-left: 0; 
}
html[lang="ar"] .sha-calendar-table tbody td.selected.first-day {
    background: linear-gradient(to left bottom, #fff 50%, rgba(126, 185, 239, 0.29) 50%);
}
html[lang="ar"] .sha-calendar-table tbody td.selected.last-day {
    background: linear-gradient(to right top, #fff 50%, rgba(126, 185, 239, 0.29) 50%);
}
html[lang="ar"] .sha-room-price {
	margin-left: 0;
	margin-right: 15px;
}
html[lang="ar"] .sha-table tr td strong {
    Font-family: 'Source Sans Pro', georgia, serif !important;
}
html[lang="ar"] .sha-table tr td strong span{
    font-family: -webkit-body !important;
}
html[lang="ar"] .sha-body.upsell-wrapper .row > div,
html[lang="ar"] .sha-body.payment-form .row > div {
	float: right;
}
html[lang="ar"] #coupon-code-fld {
	text-align: right;
}
html[lang="ar"] .sha-body.payment-form select.sha-select, 
html[lang="ar"] .sha-body.payment-form #sha-stay-objectives {
    text-align: right;
    padding-right: 38px;
}
html[lang="ar"] #pax-tit {
    padding-right: 30px !important;
}
html[lang="ar"] #sha-reservation input.sha-input-text[type="text"],
html[lang="ar"] #sha-reservation textarea.sha-input-text {
	
    text-align: right;
}
html[lang="ar"] .info-panel.warning {
	left: 0;
	right: 10%;
}














