/*
    AKA redesing.css
    NEW LAYOUT MAIN STYLES

*/

html,
body {
    background: #F6F6F6;
}

body {
    font-size: 13px;
    line-height: 1.5;
}

#webpage_loading {
    visibility: hidden;
}

#webpage {
    visibility: visible;
}

.shown,
*[loaded-dynamically].shown {
    display: block;
}

*[loaded-dynamically] {
    display: none;
}

a,
a:visited,
a:focus,
a:active,
a:hover,
img {
    outline: 0;
}

html,
button,
input,
select,
textarea,
.form_element,
.base_font {
    font-family: sans-serif;
    color: #444444;
}

.wrapper {
    width: 100%;
    max-width: 1366px;
}

#main_content > div {
    overflow: visible;
}

#page-content-wrapper {
    padding: 20px 0 30px;
    position: relative;
}

#page-content-wrapper:after {
    content: "";
    display: table;
    clear: both;
}

#side_content,
#main_content {
    box-sizing: border-box;
    background: none;
    padding: 0 20px;
    float: left;
}

#side_content {
    width: 275px;
    overflow: visible;
}

#side_content_wrapper {
    border-style: solid;
    border-width: 1px;
    padding: 20px;
    background: #FFFFFF;
}

#main_content {
    width: 100%;
}

#side_content + #main_content {
    width: calc(100% - 275px);
    padding-left: 0;
}

#booking-parameters-wrap {
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
    max-width: 1366px;
    box-sizing: border-box;
}

#side_content,
#main_content,
.base_bg_color {
    background: none;
}

#main_content {
    border: none;
}

h1 {
    font-size: 1.9em;
}

/* Elements shadows */

#booking-parameters-outer-wrap,
.room_wrap,
.hotel-item-wrap,
#side_content_wrapper,
#no_hotels_found,
.alliance_room_main_wrapper,
.packages_banner,
.package_wrap,
.block_table[data-package_id] {
    -moz-box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
}

#hotels_list_link_wrap {
    margin-left: 10px;
    opacity: 0.75;
    font-size: 90%;
}

#hotels_list_link {
    margin-left: 5px;
    text-decoration: underline;
}

/* Modals */

.custom-modal-wrap {
    transition: height 0.5s;
}

.modal-large {
    width: 850px;
}


/*

    HOTEL BRANDING CUSTOMIZATION

*/

.primary_bg_color {
   /* background: #;*/
}

.primary_bg_border_color {
    /*border-color: #;*/
}

.primary_bg_text_color {
   /* color: #;*/
}

.secondary_bg_color {
    /*background: #;*/
}

.secondary_bg_text_color {
   /* color: #;*/
}

.secondary_bg_border_color {
    /*border-color: #;*/
}

a {
    /*color: #003b6f;*/
}

.title_font_color {
    /*color: #003b6f;*/
}

.form_element {
    text-align: left;
}

input.form_element,
select.form_element,
.own_spinner,
.custom-dropdown {
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}


/*

    IMAGES SLIDER PLUGIN

*/

.swiper-container {
    position: relative;
}

.swiper-slide img {
    width: 100%;
    height: auto;
    color: transparent;
    position: absolute;
    left: 0;
    top: 50%;
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    border-radius: 2px;
}

.swiper-controls-wrap {
    position: absolute;
    z-index: 2;
    color: #FFFFFF;
}

.swiper-prev,
.swiper-next {
    cursor: pointer;
}

.swiper-prev {
    float: left;
}

.swiper-next {
    float: right;
}


/*

    FEATURED CONTENT

*/

#featured_content,
#featured_content_group {
    position: relative;
    color: #FFFFFF;
    -moz-text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.75);
    -webkit-text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.75);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.75);
    padding: 25px 20px 20px 25px;
    box-sizing: border-box;
    min-height: 273px;
}

#featured_content.newHeaderBanners{
    min-height: 300px;
}

#featured_content > *,
#featured_content_group > * {
    position: relative;
    z-index: 1;
}

#featured_content a,
#featured_content_group a {
    color: #FFFFFF;
    -moz-text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.75);
    -webkit-text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.75);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.75);
}

.header_banner_widget_hotel_name{
    line-height: 100%;
    margin: 6px 0;
    color: #FFFFFF;
}

.header_banner_widget_sch_logo,
#sch-logo {
    display: inline-block;
    margin-bottom: 25px;
}

.header_banner_widget_sch_logo,
#sch-logo a {
    border: none;
}

#currency_selection,
#slider_header .swiper-controls-wrap,
#change_language_wrap  {
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

#slider_header .swiper-controls-wrap  {
    background: rgba(255, 255, 255, 0.25);
}

#currency_selection,
#change_language_wrap {
    background: rgba(0, 0, 0, 0.45);
}

#language_form {
    margin-bottom: 5px;
}

#slider_header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /*height: 273.2px;*/ /* 1/5 from images width. We override this style with js but it must be loaded here to avoid fixed stripe issues */
    height: 100%;
}

#featured_content.newHeaderBanners #slider_header{
    max-height: 300px;
}

#slider_header .swiper-controls-wrap {
    padding: 10px 10px 5px;
    bottom: 20px;
    right: 20px;
    font-size: 1.25em;
}

#slider_header .swiper-prev,
#slider_header .swiper-next {
    opacity: 0.5;
    filter: alpha(opacity=50);
    padding: 0 5px;
}

#slider_header .swiper-prev:hover,
#slider_header .swiper-next:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
}

#slider_header .swiper-prev:active,
#slider_header .swiper-next:active {
    opacity: 1;
    filter: alpha(opacity=100);
}

#featured_content .loading{
    opacity: 0.5;
    color: #000000;
    text-shadow: none;
}

.hotel_stars {
    color: #E6B144;
    font-size: 14px;
    vertical-align: middle;
}

.hotel_stars i {
    margin-left: 5px;
}

#single-image-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    height: 100%;
}

#slider_header .swiper-slide img,
#single-image-header > img{
    top: 0;
    -moz-transform: unset;
    -webkit-transform: unset;
    transform: unset;
    width: 100%;
    max-width: 100%;
    height: 100%;
}

#layout_simple #featured_content > h2 {
    width: 90%;
}

/* Header images in small screens */

@media all and (max-width: 1390px) {

    #slider_header .swiper-slide img,
    #single-image-header > img{
        height: 100%;
        width: inherit;
        max-width: inherit;
    }

}

@media all and (max-width: 1280px) {

    .swiper-slide img{
        height: 100%;
        width: 100%;
        max-width: inherit;
    }

    #slider_header .swiper-slide img,
    #single-image-header > img{
        height: 100%;
        width: inherit;
        max-width: inherit;
    }

}

@media all and (max-width: 1024px) {

    .swiper-slide img{
        width: auto;
        max-width: none;
    }

    #slider_header .swiper-slide img,
    #single-image-header > img{
        height: 100%;
        width: inherit;
        max-width: inherit;
    }

}


/*

    CURRENCY WIDGET

*/

#currency_selection,
#change_language_wrap {
    right: 20px;
    padding: 5px 5px 5px 15px;
}

#currency_selection label,
#change_language_wrap label {
    color: #FFFFFF;
    margin-right: 5px;
    display: inline-block;
    text-align: right;
    width: 135px;
}

.custom-dropdown {
    background: #FFFFFF;
}

.custom-dropdown dt a,
.custom-dropdown dt a:hover{
    text-shadow: none;
}

.custom-dropdown dd {
    width: 82px;
}

.custom-dropdown dd ul {
    background-color: #FFFFFF;
    border: 1px solid #EAEAEA;
    -moz-border-radius: 0 0 2px 2px;
    -webkit-border-radius: 0 0 2px 2px;
    border-radius: 0 0 2px 2px;
}

.custom-dropdown a,
.custom-dropdown a:visited {
    color: #444444;
}

.custom-dropdown dd ul li a {
    text-shadow: none;
}

.custom-dropdown dd ul li a:hover {
    background: #F2F2F2;
}

.custom-dropdown dt a:hover {
    border-color: #EAEAEA;
}


/*

    BANNER

*/


#featured_content .hotel_banner_wrap {
    margin: 0;
    position: absolute;
    bottom: 20px;
    left: 20px;
    z-index: 2;
}

#featured_content .hotel_banner_wrap .banner {
    background: none repeat scroll 0 0 rgba(0, 0, 0, 0.45);
    border-color: rgba(0, 0, 0, 0.1);
    margin: 0;
    color: #FFFFFF;
    padding: 10px 20px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    -moz-text-shadow: 1px 1px 1px #222222;
    -webkit-text-shadow: 1px 1px 1px #222222;
    text-shadow: 1px 1px 1px #222222;
    max-width: 350px;
}

#featured_content .banner_col1,
#featured_content .banner_col2 {
    float: none;
    width: 100%;
}

#featured_content .banner_col1 {
    font-size: 1.25em;
    text-align: center;
}

#featured_content .banner_col2 {
    margin-left: 0;
    font-size: 12px;
}

#featured_content .banner_col1 + .banner_col2 {
    margin-top: 10px;
}

#featured_content .hotel_banner_wrap .banner a {
    color: #FFFFFF;
    -moz-text-shadow: 1px 1px 1px #222222;
    -webkit-text-shadow: 1px 1px 1px #222222;
    text-shadow: 1px 1px 1px #222222;
}

#featured_content .hotel_banner_wrap .banner a:hover {
    text-decoration: underline;
}

#group-information-wrap {
    border-width: 0 1px 1px;
    border-style: solid;
    margin: 0;
    padding: 10px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

#group-information-name {
    text-transform: uppercase;
    font-size: 1.25em;
    font-weight: bold;
}

#group-contact-info-wrap {
    margin-top: 5px;
}

#group-contact-info-wrap a {
    color: #FFFFFF;
    text-decoration: none;
}

#group-contact-info-wrap a:hover {
    text-decoration: underline;
}

#group-contact-info {
    display: inline-block;
}

#group-contact-info > li {
    display: inline-block;
    margin-left: 5px;
}

#layout_group_simple #group-contact-info-wrap {
    position: absolute;
    bottom: 20px;
    left: 20px;
    padding: 10px 15px;
    background: rgba(0, 0, 0, 0.3);
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

#layout_group_simple #group-contact-info {
    display: block;
}

#featured_content p {
    font-size: 1em;
    width: 100%;
    line-height: 1.4;
}

.banner_specs_text {
    margin-top: 10px;
    font-size: 0.8em !important;
}

.banner_shadow_wrap {
    display: none !important;
}

.banner_specs_text {
    opacity: 0.5;
    filter: alpha(opacity=50);
}


/*

    BOOKING PARAMETERS

*/

#booking-parameters-outer-wrap {
    background: #2684b4;
    border-width: 0 1px 1px;
    border-style: solid;
    border-color: rgba(0, 0, 0, 0.05);
    box-sizing: border-box;
    margin: 0;
    padding: 10px 0;
    position: relative;
    z-index: 2;
    color: #FFFFFF;
    overflow: hidden;
}

#booking-parameters-wrap > div {
    box-sizing: border-box;
}

#booking-parameters {
    width: calc(100% - 250px);
    padding-right: 20px;
    float: left;
}

#booking-summary {
    padding-left: 20px;
    width: 250px;
    float: right;
    text-align: center;
}

#booking-parameters > span {
    font-weight: bold;
}

#rooms-resume {
    font-weight: normal;
    margin-top: 10px;
}

.scroll_to_room, .scroll_to_service {
    color: inherit;
}

.room-resume-item, .service-resume-item {
    overflow: hidden;
    text-overflow: ellipsis;
}

.room-resume-item b, .service-resume-item b {
    text-transform: uppercase;
}

.room-resume-item i.icon-ok, .service-resume-item i.icon-ok {
    opacity: 0.1;
    filter: alpha(opacity=10);
}

.room-resume-item.room-selected i.icon-ok {
    color: #66C111;
    opacity: 1;
    filter: alpha(opacity=100);
}

.discard-this-room, .discard-this-service {
    display: none;
}

.discard-this-room i, .discard-this-service i {
    color: #FFFFFF;
    font-size: 125%;
}

.room-resume-item:not(.room-selected) .room-selected-name {
    font-style: italic;
    opacity: 0.5;
    filter: alpha(opacity=50);
}

.room-resume-item + .room-resume-item {
    margin-top: 5px;
}

#modify-booking-parameters {
    margin-left: 20px;
    display: inline-block;
}

#booking-total-price {
    font-weight: bold;
    font-size: 20px;
    text-align: center;
    margin-bottom: 5px;
}

/* Booking parameters fixed */

#booking-parameters-outer-wrap.is_stuck {
    left: 0;
    width: 100% !important;
    margin: 0;
    z-index: 9997;
}

#fancybox-overlay {
    z-index: 9998;
}

#fancybox-wrap {
    z-index: 9999;
}


/*

    BOOKING WIDGET

*/

/* Main styles */
/*
#side_content {
    float: none !important;
    border: none !important;
}
*/
#booking-parameters-overlay {
    display: none;
}

.logo_wrap,
#sidebar_custom_content {
    display: none;
}

#booking_accordion {
    padding: 0;
    background: none;
    border: none;
}

#booking_accordion h1 {
    margin-bottom: 35px;
    margin-left: 20px;
    text-align: left;
}

#booking_widget {
    margin: 0;
    padding: 0;
    border: none;
}

.booking_widget {
    display: none;
    border-width: 1px;
    border-style: solid;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    background: #FFFFFF;
    padding: 20px;
}

#back_to_top {
    display: none;
}

/* Booking widget itself */

#booking-widget-main-params-wrap {
    clear: both;
    overflow: hidden;
}

#booking-widget-main-params-wrap > div {
    display: inline-block;
    padding: 0 40px;
    max-width: 150px;
    vertical-align: top;
    text-align: left;
    min-height: 100px;
}

#booking-widget-main-params-wrap > div:first-child {
    padding-left: 0;
}

#booking-widget-main-params-wrap > div:last-child {
    padding-right: 0;
}

#booking-widget-main-params-wrap > div + div {
    border-left: 1px solid #F6F6F6;
    border-left: 1px solid rgba(0, 0, 0, 0.03);
}

#checkin,
#checkout {
    height: 46px;
    line-height: 46px;
    font-size: 16px;
    padding: 0 10px;
    margin: 0;
    box-sizing: border-box;
    background: url("/assets_v2/common/img/calendar.png") no-repeat center right #FFFFFF;
}

#checkin:hover,
#edit_checkin:hover,
#checkout:hover,
#edit_checkout:hover {
    border-color: #EAEAEA;
}

#booking_widget label {
    line-height: 1;
    padding: 0 0 10px 5px ;
    text-align: left;
    display: block;
    font-size: 1.167em;
    font-weight: bold;
}

#booking_widget label i,
.arrival_help {
    display: none;
}

.nights_cant {
    border: medium none;
    display: block;
    font-size: 80%;
    margin: 0;
    opacity: 0.4;
    filter: alpha(opacity=40);
    padding: 5px 5px 0 0 !important;
    text-align: right;
}

/* Datepicker */

.ui-datepicker {
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    -moz-box-shadow: 0 3px 5px #DADADA;
    -webkit-box-shadow: 0 3px 5px #DADADA;
    box-shadow: 0 3px 5px #DADADA;
    color: #444444;
    font-size: 13px;
    padding: 10px;
}

.ui-datepicker.ui-datepicker-multi {
    width: 560px !important;
}

.ui-datepicker .ui-datepicker-header {
    background: none;
    border-width: 0 0 1px;
    border-style: solid;
    border-color: #EAEAEA;
    padding: 10px 0;
    margin-bottom: 10px;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    top: 10px;
    background: none;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    display: none;
}

.ui-datepicker .ui-datepicker-prev:before,
.ui-datepicker .ui-datepicker-next:before {
    position: absolute;
    top: 50%;
    left: 50%;
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-family: "FontAwesome";
    opacity: 0.4;
    filter: alpha(opacity=40);
    color: #444444;
}

.ui-datepicker .ui-datepicker-prev:before {
    content: "\f053";
}

.ui-datepicker .ui-datepicker-next:before {
    content: "\f054";
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
    border: none;
}

.ui-datepicker .ui-datepicker-prev-hover:before,
.ui-datepicker .ui-datepicker-next-hover:before {
    opacity: 1;
    filter: alpha(opacity=100);
}

.ui-datepicker .ui-datepicker-title {
    text-transform: uppercase;
}

.ui-datepicker th {
    padding: 10px 0;
}

.ui-datepicker td span,
.ui-datepicker td a {
    background: none repeat scroll 0 0 rgba(0, 0, 0, 0);
    border: 1px solid transparent;
    color: #444444;
    font-weight: normal;
    text-align: center;
    padding: 5px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

.ui-datepicker td.ui-state-disabled span {
    opacity: 0.2;
    filter: alpha(opacity=20);
}

.ui-datepicker td a.ui-state-hover {
    background: #2684B4;
    color: #FFFFFF;
}

.ui-datepicker td a:focus,
.ui-datepicker td a.ui-state-active,
td.start-range span:not(.tooltip_nights_counter),
td.end-range a,
td.end-range a:hover {
    border-color: #FC8E0D;
    background: #FC8E0D;
    color: #FFFFFF;
}

.ui-datepicker-group {
    position: relative;
}

.ui-datepicker-group:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 1px;
    background: #EAEAEA;
}

.ui-datepicker-group-first:before {
    right: 0;
}

.ui-datepicker-group-last:before {
    left: -1px;
}

.ui-datepicker td {
    height: 20px; /*The height is defined for better range arrow's implementation*/
    position: relative;
    padding: 0px
}

.ui-datepicker td.in-range {
    background: #EEEEEE
}
.ui-datepicker td.start-range a,
td.start-range span:not(.tooltip_nights_counter) {
    border-radius: 2px 0 0 2px;
    -moz-border-radius: 2px 0 0 2px;
    -webkit-border-radius: 2px 0 0 2px;
}

td.start-range span {
    opacity: 1 !important;
}

.ui-datepicker td.start-range a:after,
td.start-range span:not(.tooltip_nights_counter):after {
    border-color: transparent transparent transparent #fc8e0d;
    border-style: solid;
    border-width: 15px 0 15px 8px;
    content: "";
    height: 0;
    position: absolute;
    right: -8px;
    top: 0;
    width: 0;
    z-index: 2;
}
.ui-datepicker td.end-range a {
    border-radius: 0 2px 2px 0;
    -moz-border-radius: 0 2px 2px 0;
    -webkit-border-radius: 0 2px 2px 0;
}
.ui-datepicker td.end-range a:before {
    border-color: transparent #fc8e0d transparent transparent;
    border-style: solid;
    border-width: 15px 8px 15px 0;
    content: "";
    height: 0;
    left: -8px;
    position: absolute;
    top: 0;
    width: 0;
    z-index: 2;
}

.ui-datepicker td:hover .tooltip_nights_counter {
    display: block !important;
}

.tooltip_nights_counter {
    background: #333 none repeat scroll 0 0 !important;
    color: #fff !important;
    display: none !important;
    font-size: 11px !important;
    left: -5px;
    padding: 4px 4px 8px !important;
    position: absolute;
    top: -38px;
    width: 80px;
    z-index: 2;
    text-transform: lowercase;
}

.tooltip_nights_counter:after {
    border-color: #333 transparent transparent;
    border-style: solid;
    border-width: 6px 6px 0;
    bottom: -6px;
    content: "";
    height: 0;
    left: 18px;
    position: absolute;
    width: 0;
}

.ui-datepicker td.highlight-day  {
    background: #ccc none repeat scroll 0 0!important;
}

/* Rooms cant */

.own_spinner {
    height: 44px;
    width: 100px;
    border-color: #EAEAEA;
}

.own_spinner .n_value {
    font-weight: normal;
    font-size: 16px;
    padding-left: 15px;
    height: 43px;
    margin-top: 1px;
}

.own_spinner .bw_rooms {
    height: 22px;
    border-color: #EAEAEA;
}

.bw_rooms:hover,
.spin_value_modifier:hover,
.own_incrementer_hit:hover {
    background-color: #EAEAEA;
}

.own_spinner > span i {
    position: absolute;
    top: 50%;
    left: 50%;
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.check.spinner_inside,
.check.incrementer_inside {
    float: none;
}

.check.spinner_inside,
.check.incrementer_inside {
    margin: 0;
}

.check label {
    padding-bottom: 0;
}

/* Rooms occupancy */

.rooms_occupancy {
    padding: 0;
    border-top: 2px solid #EAEAEA;
    border-top: 2px solid rgba(0, 0, 0, 0.05);
    margin-top: 10px;
    padding-top: 10px;
}

.occupancy_selection {
    border: none
}

.occupancy_selection + .occupancy_selection {
    border-top: 1px solid #F6F6F6;
    border-top: 1px solid rgba(0, 0, 0, 0.03);
    padding-top: 10px;
}

.occupancy_selection > div {
    display: inline-block;
    vertical-align: middle;
}

.room_selection_header {
    font-weight: bold;
    text-transform: uppercase;
    text-align: right;
    margin-right: 20px;
    padding-right: 40px;
    position: relative;
}

.room_selection_header:before {
    position: absolute;
    top: 50%;
    right: 0;
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: "FontAwesome";
    opacity: 0.4;
    filter: alpha(opacity=40);
    content: "\f101";
    font-weight: normal;
}

.occupancy_selectors {
    padding: 0;
}

.occupancy_selectors_wrap.spinner_inside {
    display: inline-block;
    float: none;
    padding-bottom: 0;
    padding-right: 20px;
    position: relative;
}

.occupancy_selectors_wrap label {
    display: inline-block !important;
    padding-bottom: 0 !important;
    line-height: 34px;
    font-weight: normal !important;
    width: auto !important;
}

.occupancy_selectors_wrap label span {
    opacity: 0.4;
    filter: alpha(opacity=40);
    font-size: 80%;
}

.occupancy_selectors_wrap.spinner_inside .own_spinner {
    width: 65px;
    height: 35px;
    margin-top: 0;
}

.occupancy_selection .spin_value_modifier {
    height: 18px;
}

.occupancy_selectors_wrap.spinner_inside .n_value {
    font-size: 1em;
    height: 34px;
    padding-left: 15px;
}

.bw_remove_room {
    position: absolute;
    right: -20px;
    top: 50%;
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    cursor: pointer;
    color: #AEAEAE;
}

.adults_selector {}
.teens_selector {}
.children_selector {}
.infants_selectors {}

/* Search button */

.check.search_availability {
    padding-top: 30px;
}

#bw_search_availability {
    max-width: 300px;
    height: 42px;
}


/*

    ROOMS SECTION

*/

#main_content > div {
    padding: 0;
}

._room_idx {
    margin-bottom: 30px;
}

#view_hotel_profile {
    display: none;
}

/* Loading */

#loading-hotels {
    margin-top: 3vh;
}

#loading-rates {
    text-align: center;
}

.hotel_content #loading-rates {
    display: table-cell;
}

/* Room header styles */

.room_occupancy_edition_header {
    border: none;
    margin: 30px 0;
    padding: 0;
    font-size: 22px;
    font-weight: normal;
}

#room_1 .room_occupancy_edition_header {
    margin-top: 10px;
}

.room_occupancy_edition_header > i {
    opacity: 0.4;
    filter: alpha(opacity=40);
    margin: 0 10px;
    font-size: 16px;
}

.room-occupancy {
    font-weight: normal;
    opacity: 0.4;
    filter: alpha(opacity=40);
    font-size: 14px;
}

.nights_count,
.room_occupancy_edition_header:after,
.room_occupancy_edition_header:before {
    display: none;
}

/* Promo banners */

#profile-promo-banner {
    margin-bottom: 40px;
    text-align: center;
}

#profile-banner-title {
    font-weight: bold;
    font-size: 1.5em;
}

#profile-banner-title + #profile-banner-content {
    margin-top: 10px;
    padding-top: 15px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

#profile-banner-content {
    display: inline-block;
    padding-left: 20px;
    padding-right: 20px;
}

#profile-banner-footer {
    display: block;
    margin-top: 5px;
    opacity: 0.6;
}

/* Room item main styles */

.room_main_wrapper,
.hotel_content_wrap {
    display: table;
    width: 100%;
}

.hotel-item-wrap,
.alliance_room_main_wrapper {
    border-radius: 2px;
    border-width: 1px;
    border-style: solid;
    background: #FFFFFF;
    width: 100%;
    box-sizing: border-box;
}

.room_main_wrapper + .room_main_wrapper,
.hotel-item-wrap + .hotel-item-wrap,
.alliance_room_main_wrapper + .alliance_room_main_wrapper {
    margin-top: 20px;
}

.room_wrap {
    background: #FFFFFF;
    padding: 0;
}

.hotel_content,
.room_wrap {
    display: table-row;
}

.room_left_col,
.room_info_wrap,
.hotel_left_col,
.hotel_info_wrap {
    display: table-cell;
    float: none;
    vertical-align: top;
}

.hotel_left_col.shown,
.hotel_info_wrap.shown {
    display: table-cell !important;
}

.room_left_col,
.hotel_left_col {
    width: 350px;
    max-width: 350px;
    margin: 0;
    height: 262px;
}

.room_info_wrap,
.hotel_info_wrap,
.alliance_room_info_wrap {
    width: 100%;
}

.alliance_room_wrap {
    box-shadow: none;
}

.alliance_room_description,
.alliance_all_rate_plans_wrap {
    display: table-cell;
    vertical-align: middle;
    border-width: 0 0 1px;
    border-style: solid;
}

.alliance_room_description {
    padding: 20px 0 20px 20px;
    width: 100%;
}

.alliance_all_rate_plans_wrap {
    padding: 20px;
}

.alliance_room_description > h3 {
    margin: 0 0 5px;
}

.alliance_room_description > h3 sup {
    margin-left: -3px;
}

.alliance_all_rate_plans_wrap .rate-plan-price-wrap span.rate_plan_price sup {
    margin-left: -5px;
}

.alliance_all_rate_plans_wrap .rate_plan_wrap {
    margin-top: 0;
}

.alliance_all_rate_plans_wrap .prices_area_wrap {
    vertical-align: middle;
    padding-top: 2px;
}

.room_left_col {
    -moz-border-radius: 2px 0 0 2px;
    -webkit-border-radius: 2px 0 0 2px;
    border-radius: 2px 0 0 2px;
    border-width: 1px;
    border-style: solid;
}

.room_info_wrap {
    -moz-border-radius: 0 2px 2px 0;
    -webkit-border-radius: 0 2px 2px 0;
    border-radius: 0 2px 2px 0;
    border-width: 1px 1px 1px 0;
    border-style: solid;
}

.alliance_room_info_wrap {
    border-width: 0 0 1px;
    border-style: solid;
    padding: 20px;
}

/* Room images */

.room_gallery_wrap {
    position: relative;
    width: 350px;
    overflow: hidden;
}

.room_gallery_wrap,
.room_gallery_wrap .swiper-container {
    height: 262px;
}

.room_gallery_wrap .swiper-slide {
    background: #FAFAFA;
    background: -moz-linear-gradient(left,  #FAFAFA 0%, #FAFAFA 99%, #EAEAEA 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,#FAFAFA), color-stop(99%,#FAFAFA), color-stop(100%,#EAEAEA));
    background: -webkit-linear-gradient(left,  #FAFAFA 0%,#FAFAFA 99%,#EAEAEA 100%);
    background: -o-linear-gradient(left,  #FAFAFA 0%,#FAFAFA 99%,#EAEAEA 100%);
    background: -ms-linear-gradient(left,  #FAFAFA 0%,#FAFAFA 99%,#EAEAEA 100%);
    background: linear-gradient(to right,  #FAFAFA 0%,#FAFAFA 99%,#EAEAEA 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FAFAFA', endColorstr='#EAEAEA',GradientType=1 );
}

.room_gallery_wrap .swiper-controls-wrap {
    font-size: 40px;
    margin: 0 5%;
    padding: 0;
    top: 50%;
    width: 90%;
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

/* Rate plan description */

.room_info_wrap {
    padding: 20px;
}

.room_name {
    border-width: 0 0 1px;
    border-style: solid;
    padding: 0 0 10px;
    margin-bottom: 10px;
    color: #003b6f;
    position: relative;
    overflow: hidden;
}


.percent_discount.discount_element {
    background: #FFFF93;
    border-color: #E8E884;
    color: #D34C4C;
}

td.discount_element.available {
    background: #f8f8f8 none repeat scroll 0 0;
    border-color: #dddddd;
    color: #1aa226;
    font-weight: 600;
}

.few_rooms_alert {
    float: right;
    margin-top: 0;
    padding: 8px 8px 0;
    -moz-text-shadow: none;
    -webkit-text-shadow: none;
    text-shadow: none;
    background-color: transparent;
    border-color: transparent;
    color: #fd515f;
}

.few_rooms_alert.shown {
    display: inline-block;
}

.view_more,
.view-rate-plan-details,
.set_rate_drop {
    font-size: 9px;
    text-transform: uppercase;
}

.view_more:hover,
.view-rate-plan-details:hover,
.set_rate_drop:hover {
    text-decoration: underline;
}

.room_description {
    font-size: 12px;
    line-height: 1.5;
}

/* Rate plan item styles */

.rate_plan_wrap {
    padding: 0;
    min-height: 52px;
    clear: both;
}

.rate_plan_wrap + .rate_plan_wrap,
.rate_plan_wrap + .percent_discount {
    margin-top: 10px;
}

.rate_plan_header {
    display: table;
    width: 100%;
}

.rate-plan-info-wrap {
    display: table-row;
}

.rate-plan-info-wrap > div.shown {
    display: table-cell;
}

.rate_plan {
    width: 100%;
}

.rate_plan * {
    display: inline-block;
    vertical-align: bottom;
}

.rate_plan h3 {
    margin: 5px 5px 5px 0;
    display: block;
}

.view-rate-plan-details {
    padding-bottom: 2px;
}

.room_wrap .rate_plan {
    float: none;
    padding: 15px;
    vertical-align: top;
    display: table-cell;
}

.rate_plan_total_price {
    border-bottom: 1px solid #ddd;
    font-size: 12px;
    padding-bottom: 3px;
}

.rate_plan_total_price > span{
    color: #888;
    font-size: 10px;
    line-height: 100%;
    padding-right: 5px;
    text-transform: uppercase;
}

.rate_plan_total_price > small {
    color: #d34c4c;
    font-size: 12px;
    line-height: 100%;
    padding-right: 5px;
    text-decoration: line-through;
}

.by_nights {
    padding-top: 3px;
}

.prices_area_wrap {
    display: inline-block;
    padding-right: 10px;
    vertical-align: top;
}

.rate-plan-details {
    display: none;
    margin: 0;
    background: #FFFFFF;
    border-width: 1px 0 0;
    border-style: solid;
}

.group_room_wrap .rate-plan-details {
    display: block !important;
}

.rate_plan_description {
    font-size: 12px;
    line-height: 1.6;
    margin: 0;
    padding: 20px 20px 10px;
}

.rate_plan_daily_rates {
    margin-top: 10px;
    font-size: 10px;
}

.rate_plan_daily_rates tr:first-child td {
    border-bottom: 0
}

.rates_table {
    margin: 0;
    width: 100%;
}

/* Custom styles for prices wrap */

.rate-plan-price-wrap {
    float: right;
    /*width: 60%;*/
    text-align: right;}

.rate-plan-price-wrap span.rate_plan_price small {
    color: #D34C4C;
    font-size: 0.6em;
    text-decoration: line-through;}

.rate-plan-price-wrap span.rate_plan_price {
    display: inline-block;
    float: none;
    font-size: 1.8em;
    font-weight: bold;
    letter-spacing: -1px;
    margin: 0;
    padding: 0;
    width: auto;}

.rate-plan-price-wrap .mainButton {
    z-index: 3;
    position: relative;}

.rate-plan-price-wrap .mainButton,
.discard-rate-plan.shown,
.discard_this_combination.shown {
    font-size: 16px;
    line-height: 100%;
    padding: 12px 15px !important;
    white-space: normal;
    width: 155px;
    z-index: 0;
    box-sizing: border-box;
    margin-bottom: 5px;}

.rate-plan-price-wrap .mainButton.shown {
    display: inline-block;
}

.subgroup_rooms_details .rate-plan-price-wrap{
    float: left !important;
    text-align: left !important;
}


/* Custom styles for prices wrap */

.rate-plan-price-wrap {
    padding: 10px 10px 10px 15px;
    background: #f8f8f8;
    vertical-align: middle;
    float: none;
    position: relative;
    text-align: right;
    white-space: nowrap;
    min-width: 375px;
}

.rate-plan-price-wrap span.avg_rate {
    color: #888;
    display: inline-block;
    font-size: 10px;
    line-height: 100%;
    margin-right: 5px;
    padding: 0;
    text-align: center;
    text-transform: uppercase;
}

.rate-plan-price-wrap span.rate_plan_price small,
.rate_plan_total_price_field small {
    line-height: 1;
    margin: 0 10px 0 0;
}

.rate-plan-price-wrap .mainButton,
.rate_plan_room_change_button {
    z-index: 0;
}

.pick_this_room
.sold_out_this_room {
    width: auto;
}

.rate_plan_restrictions_wrap {
    padding: 10px 15px 10px 10px;
    vertical-align: middle;
    white-space: nowrap;
    display: table-cell;
}

.rate_plan_total_price .total_price {
    color: #444;
    font-size: 12px;
}

#layout_group_redesign .rate_plan_restrictions_wrap span {
    background: #fff none repeat scroll 0 0;
    border: 1px solid #eee;
    display: inline-block;
    font-weight: normal;
    padding: 10px 15px;
}

.percent_discount {
    float: right;
    margin: 0;
    padding: 5px 20px;
    width: auto;
    font-size: 0.9em;
    text-transform: uppercase;
}

.discard-rate-plan.shown {
    display: inline-block;
}

/* Rate drop alert */

.rate_plan_wrap.is-open .set_rate_drop_wrap {
    display: block;
    position: relative;
    right: 0;
}

.rate_plan_wrap .set_rate_drop_wrap {
    margin: 0;
}

.rate_plan_wrap .set_rate_drop_wrap:after {
    clear: both;
    display: block;
    content: "";
}

.rate_plan_wrap .set_rate_drop {
    margin-right: 0;
    text-align: center;
    width: 155px;
    text-decoration: underline;
    float: right;
}

/* No availability for selected rooms message */

.room-occupancy-not-applied {
    font-style: italic;
    opacity: 0.5;
    filter: alpha(opacity=50);
}


/*

    SUPPLEMMENTS

*/

#loading-supplemments {
    margin: 25px 0;
}

.room_supplements {

}

.supplemments_head {
    border-bottom-style: solid;
    border-bottom-width: 1px;
    padding-bottom: 10px;
    padding-top: 10px;
}
.supplemments_head .supplement-offer {
    font-size: 16px
}
.supplemments_head a {
    font-size: 12px
}


.accept_supplemments,
.discard_supplemments {
    min-width: 150px;
}

.supplementes_list {
    padding: 0;
}

.supplement {
    border-bottom-style: solid;
    border-bottom-width: 1px;
    margin-bottom: 5px;
    padding-bottom: 15px;
    padding-top: 15px;
}

.supplement > div {
    display: table-cell;
    float: none;
    vertical-align: top;
    width: 100%;
}

.supplement_image_launcher {
    float: left;
    margin: 5px 15px 10px 0
}

.supplement_picture_col {
    width: 120px;
    padding-right: 20px;
    margin: 0;
}

.supplement_picture {
    width: 120px;
    margin: 5px 15px 10px 0;
    float: left;
}

.supplement_details_col {
    float: none;
    margin-right: 60px;
    max-width: 100%;
    padding: 0 20px 0 0;
    width: auto;
}

.supplement_name {
    font-size: 14px;
    font-weight: bold;
    padding-bottom: 5px;
}

.supplement_selection_col {
    width: auto;
}

.supplement_price_from {
    color: inherit;
    font-style: normal;
    margin-bottom: 10px;
    text-align: center;
}

.supplement_price_from > * {
    display: block;
}

.supplement_price_from > span {
    text-transform: uppercase;
    opacity: 0.5;
    filter: alpha(opacity=50);
    font-size: 9px;
}

.supplement_price_from b {
    font-size: 16px;
}

.supplement_price_from b span {
    margin-right: -5px;
}

.suppQuantity {
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

.supplementes_intro {
    padding-bottom: 20px;
}

.supplements_actions {
    padding: 10px;
}

/*

    GROUPS

*/

/* Booking widget */

.subgroup_tip {
    border: 1px solid rgba(0, 0, 0, 0.1);
    display: inline-block;
    font-style: normal;
    margin: 20px auto 30px;
    padding: 10px 20px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

.subgroup-info {
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    font-size: 1em;
    margin-bottom: 20px;
    padding: 10px 15px;
}

/* Rooms */

.hotel_result {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    padding: 20px;
}

.subgroup-info {
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    padding: 10px 15px;
}

.reserve_room_block {
    margin-top: 40px;
    padding: 0;
}

.subgroup_rooms_details .rate-plan-price-wrap {
    display: table-cell;
    float: none !important;
    text-align: right !important;
    width: 100%;
}

#layout_group_redesign .rate-plan-details {
    display: block;
}

.help_number_rooms {
    display: table-cell;
    float: none;
    font-size: 12px;
    font-weight: normal;
    height: auto;
    position: relative;
    right: auto;
    top: auto;
    white-space: nowrap;
    padding: 0 10px;
    border-left: 1px solid rgba(0, 0, 0, 0.025);
    background: #dfecf8;
    vertical-align: middle;
}

.help_number_rooms .spinner_inside label {
    display: inline-block !important;
    font-size: 12px;
    font-weight: normal;
    padding: 0 5px 0 0;
}

.help_number_rooms .check.spinner_inside,
.help_number_rooms .check.incrementer_inside {
    padding: 0;
}

/* Quantity table */

.rate_plan_info.subgroup_daily {
    padding: 0 10px 10px !important;
}

.subgroup_rooms_details .check.spinner_inside,
.subgroup_rooms_details .check.incrementer_inside {
    padding: 0;
}

.subgroup_rooms_details .own_spinner {
    height: 32px;
    width: 70px;
}

.subgroup_rooms_details .own_spinner .n_value {
    font-size: 12px;
    height: 30px;
}

.subgroup_rooms_details .own_spinner .bw_rooms {
    height: 16px;
    margin-top: 0;
}


/*

    ROOMS COMBINATION

*/

#combination_title {
    border: none;
    margin: 0 0 40px;
    padding-bottom: 0;
}

#combination_title a {
    padding: 5px 10px;
}

#combination_title h5 {
    margin-top: 20px;
}

.combination_room_wrap {
    border: 0;
    padding-bottom: 0;
}

.rate-plan-price-wrap,
.rate_plan_restrictions_wrap,
.rate_plan_room_change_button {
    float: none;
}

.room_occupancy_edition_header.shown ~ .all_rooms_wrap > .combination_block > .block_table > #rooms_combination_wrap {
    margin-top: -35px;
}

.room_change_message {
    margin: 0 0 -8px 9px;
}

.room_change_message div {
    background: #fffe8f none repeat scroll 0 0;
    border: 1px solid #c6c6c6;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    -moz-box-shadow: 0 0 0 1px rgba(112, 112, 112, 0.14);
    -webkit-box-shadow: 0 0 0 1px rgba(112, 112, 112, 0.14);
    box-shadow: 0 0 0 1px rgba(112, 112, 112, 0.14);
    color: #302d5f;
    display: inline-block;
    font-size: 11px;
    font-weight: bold;
    padding: 5px 10px;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.88);
    white-space: normal;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
}
.room_change_message .fa {
    background: #fff none repeat scroll 0 0;
    border: 1px solid #ccc;
    -moz-border-radius: 150%;
    -webkit-border-radius: 150%;
    border-radius: 150%;
    color: #b82424;
    display: inline-block;
    font-size: 16px;
    height: 20px;
    line-height: 20px;
    margin-right: 2px;
    text-align: center;
    width: 20px;
}

.discart_this_room.discard_this_combination {
    width: auto;
}

.discard_this_combination.shown {
    display: inline-block;
}


/*

    BUTTONS STYLES

*/

.button,
.button.red {
    background: #eaeaea;
    background: -moz-linear-gradient(top,  #f4f4f4 0%, #eaeaea 2%, #dadada 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f4f4f4), color-stop(2%,#eaeaea), color-stop(100%,#dadada));
    background: -webkit-linear-gradient(top,  #f4f4f4 0%,#eaeaea 2%,#dadada 100%);
    background: -o-linear-gradient(top,  #f4f4f4 0%,#eaeaea 2%,#dadada 100%);
    background: -ms-linear-gradient(top,  #f4f4f4 0%,#eaeaea 2%,#dadada 100%);
    background: linear-gradient(to bottom,  #f4f4f4 0%,#eaeaea 2%,#dadada 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eaeaea', endColorstr='#dadada',GradientType=0 );
    border: 1px solid #D6D6D6;
    color: #444444;
    font-weight: normal;
    text-align: center;
    box-sizing: border-box;
    padding: 5px 15px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    -moz-text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.25);
    -webkit-text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.25);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.25);
}

.button:hover,
.button.red:hover {
    background: #dadada;
    background: -moz-linear-gradient(top,  #dadada 0%, #eaeaea 98%, #f4f4f4 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#dadada), color-stop(98%,#eaeaea), color-stop(100%,#f4f4f4));
    background: -webkit-linear-gradient(top,  #dadada 0%,#eaeaea 98%,#f4f4f4 100%);
    background: -o-linear-gradient(top,  #dadada 0%,#eaeaea 98%,#f4f4f4 100%);
    background: -ms-linear-gradient(top,  #dadada 0%,#eaeaea 98%,#f4f4f4 100%);
    background: linear-gradient(to bottom,  #dadada 0%,#eaeaea 98%,#f4f4f4 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dadada', endColorstr='#eaeaea',GradientType=0 );
}

.button.small {
    font-size: 12px;
    padding: 5px 10px;
}

.mainButton,
.accept_supplemments {
    background: #e80b0b;
    background: -moz-linear-gradient(top,  #f2cbcb 0%, #e80b0b 3%, #c11000 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f2cbcb), color-stop(3%,#e80b0b), color-stop(100%,#c11000));
    background: -webkit-linear-gradient(top,  #f2cbcb 0%,#e80b0b 3%,#c11000 100%);
    background: -o-linear-gradient(top,  #f2cbcb 0%,#e80b0b 3%,#c11000 100%);
    background: -ms-linear-gradient(top,  #f2cbcb 0%,#e80b0b 3%,#c11000 100%);
    background: linear-gradient(to bottom,  #f2cbcb 0%,#e80b0b 3%,#c11000 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e80b0b', endColorstr='#c11000',GradientType=0 );
    color: #FFFFFF;
    border: 1px solid #c11000;
    font-weight: normal;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    -moz-text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
    -webkit-text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}

.mainButton:hover,
.accept_supplemments:hover {
    background: #c11000;
    background: -moz-linear-gradient(top,  #c11000 0%, #e80b0b 97%, #f2cbcb 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#c11000), color-stop(97%,#e80b0b), color-stop(100%,#f2cbcb));
    background: -webkit-linear-gradient(top,  #c11000 0%,#e80b0b 97%,#f2cbcb 100%);
    background: -o-linear-gradient(top,  #c11000 0%,#e80b0b 97%,#f2cbcb 100%);
    background: -ms-linear-gradient(top,  #c11000 0%,#e80b0b 97%,#f2cbcb 100%);
    background: linear-gradient(to bottom,  #c11000 0%,#e80b0b 97%,#f2cbcb 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c11000', endColorstr='#e80b0b',GradientType=0 );
    border: 1px solid #c11000;
}

.disabled {
    background: #DADADA !important;
    border-color: #CACACA !important;
    color: #AEAEAE !important;
    cursor: default;
    -moz-text-shadow: none !important;
    -webkit-text-shadow: none !important;
    text-shadow: none !important;
    opacity: 0.4;
    filter: alpha(opacity=40);
}

.disabled:hover {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}


/*

    UI MESSAGES

*/

/* Tooltip */

.ui-tooltip {
    background: #444444;
    color: #F2F2F2;
    font-size: 10px;
    padding: 10px 15px;
    text-align: center;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

/* Loadings */

.loading {
    position: relative;
    height: 15px;
    opacity: 0.25;
    filter: alpha(opacity=25);
    font-size: 18px;
    min-height: 172px;
}

.loading-msg-wrap {
    position: absolute;
    top: 50%;
    left: 50%;
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
}

.loading-dots-wrap {
    margin-bottom: 10px;
    opacity: 0.5;
    filter: alpha(opacity=50);
}

.loading-dot {
    display: inline-block;
    background-color: #444444;
    width: 15px;
    height: 15px;
    -moz-animation-name: bounce_loading-dot;
    -moz-animation-duration: 1s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-direction: normal;
    -moz-transform: scale(.3);
    -moz-border-radius: 50%;
    -webkit-animation-name: bounce_loading-dot;
    -webkit-animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-direction: normal;
    -webkit-transform: scale(.3);
    -webkit-border-radius: 50%;
    -ms-animation-name: bounce_loading-dot;
    -ms-animation-duration: 1s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-direction: normal;
    -ms-transform: scale(.3);
    -ms-border-radius: 50%;
    -o-animation-name: bounce_loading-dot;
    -o-animation-duration: 1s;
    -o-animation-iteration-count: infinite;
    -o-animation-direction: normal;
    -o-transform: scale(.3);
    -o-border-radius: 50%;
    animation-name: bounce_loading-dot;
    animation-duration: 1s;
    animation-iteration-count: infinite;
    animation-direction: normal;
    transform: scale(.3);
    border-radius: 50%;
}

.loading-dot-1 {
    -moz-animation-delay:0.4s;
    -webkit-animation-delay:0.4s;
    -ms-animation-delay:0.4s;
    -o-animation-delay:0.4s;
    animation-delay:0.4s;
}

.loading-dot-2 {
    -moz-animation-delay:0.5s;
    -webkit-animation-delay:0.5s;
    -ms-animation-delay:0.5s;
    -o-animation-delay:0.5s;
    animation-delay:0.5s;
}

.loading-dot-3 {
    -moz-animation-delay:0.6s;
    -webkit-animation-delay:0.6s;
    -ms-animation-delay:0.6s;
    -o-animation-delay:0.6s;
    animation-delay:0.6s;
}

.loading-dot-4 {
    -moz-animation-delay:0.7s;
    -webkit-animation-delay:0.7s;
    -ms-animation-delay:0.7s;
    -o-animation-delay:0.7s;
    animation-delay:0.7s;
}

.loading-dot-5 {
    -moz-animation-delay:0.8s;
    -webkit-animation-delay:0.8s;
    -ms-animation-delay:0.8s;
    -o-animation-delay:0.8s;
    animation-delay:0.8s;
}

.loading-dot-6 {
    -moz-animation-delay:0.9s;
    -webkit-animation-delay:0.9s;
    -ms-animation-delay:0.9s;
    -o-animation-delay:0.9s;
    animation-delay:0.9s;
}

.loading-dot-7 {
    -moz-animation-delay:1s;
    -webkit-animation-delay:1s;
    -ms-animation-delay:1s;
    -o-animation-delay:1s;
    animation-delay:1s;
}

.loading-dot-8 {
    -moz-animation-delay:1.1s;
    -webkit-animation-delay:1.1s;
    -ms-animation-delay:1.1s;
    -o-animation-delay:1.1s;
    animation-delay:1.1s;
}

@-moz-keyframes bounce_loading-dot {

    0%{
        -moz-transform:scale(1);
        background-color: #444444;
    }

    100%{
        -moz-transform:scale(.3);
        background-color: transparent;
    }

}

@-webkit-keyframes bounce_loading-dot {

    0%{
        -webkit-transform:scale(1);
        background-color: #444444;
    }

    100%{
        -webkit-transform:scale(.3);
        background-color: transparent;
    }

}

@-ms-keyframes bounce_loading-dot {

    0%{
        -ms-transform:scale(1);
        background-color: #444444;
    }

    100%{
        -ms-transform:scale(.3);
        background-color: transparent;
    }

}

@-o-keyframes bounce_loading-dot {

    0%{
        -o-transform:scale(1);
        background-color: #444444;
    }

    100%{
        -o-transform:scale(.3);
        background-color: transparent;
    }

}

@keyframes bounce_loading-dot {

    0%{
        transform:scale(1);
        background-color: #444444;
    }

    100%{
        transform:scale(.3);
        background-color: transparent;
    }

}


/*

    BOOKING CANCELLATION & COMPLETED

*/

#cancellation_completed_content h3 {
    margin: 0 0 20px;
}

.your_cancellation_number {
    background-color: #EFEFEF;
    border: 1px solid #E3E3E3;
    clear: both;
    display: inline-block;
    margin-bottom: 10px;
    padding: 10px 15px;
}

#cancellation_completed_content .dear_customer {
    margin-bottom: 20px;

}
#cancellation_completed_content .dear_customer span {
    display: block;
}

.we_look_forward {
    margin-top: 20px
}

.we_look_forward b {
    display: block;
}

#layout_simple #featured_content {
    padding: 20px;
}

#profile_hotel_name_wrap,
#featured_content_wrapper {
    min-height: 200px;
}

.sch_welcome_title {
    display: none;
}

#upgrade_confirmation {
    max-width: 600px;
}

/*

    FOOTER

*/

#footer-wrap {
    background: #444444;
    text-align: center;
    padding: 40px 0;
}

#footer-content {
    margin: 0 auto;
    overflow: hidden;
    color: #EAEAEA;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 1366px;
    padding: 0 20px;
    text-align: left;
    overflow: hidden;
}

#footer-wrap a:not(.button) {
    color: #EAEAEA;
}

#footer-content > div {
    box-sizing: border-box;
    float: left;
}

#footer-main-col {
    width: 75%;
    padding-right: 40px;
}

#footer-aside {
    width: 25%;
    font-size: 85%;
}

#footer-contact-wrap {
    margin-top: 20px;
    font-weight: bold;
    font-size: 1.15em;
}

#book-now-footer {
    margin-top: 15px;
    display: inline-block;
}

#footer-contact-wrap > span + span {
    margin-left: 20px;
}

#footer-phone i {
    margin-right: 7px;
}

#footer-social-networks-wrap a {
    display: inline-block;
    font-size: 1.25em;
    font-weight: normal;
}

#footer-social-networks-wrap a + a {
    margin-left: 10px;
}

#footer-images-location-wrap {
    margin-top: 30px;
    overflow: hidden;
}

#footer-images-location-wrap > div {
    box-sizing: border-box;
    float: left;
    width: 50%;
}

#footer-images-location-wrap > div:first-child {
    padding-right: 10px;
}

#footer-images-location-wrap > div:last-child {
    padding-left: 10px;
}

#slider_footer {
    height: 350px;
}

#slider_footer .swiper-controls-wrap {
    top: 50%;
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 35px;
    box-sizing: border-box;
    width: 100%;
    padding: 0 20px;
}

#map-canvas,
#slider_footer .swiper-slide img {
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

#legal-links li + li {
    margin-top: 10px;
}

#footer-aside a:hover {
    text-decoration: underline;
}

#footer-awards,
#footer-regatta {
    padding-top: 20px;
    margin-top: 20px;
    border-top: 1px solid #555555;
}

#footer-awards > li {
    display: inline-block;
    vertical-align: middle;
}

#footer-awards > li + li {
    margin-left: 20px;
}

#CDSWIDCOE {
    margin: 0 !important;
}

#footer-regatta-logo {
    display: block;
    margin-top: 10px;
}

#footer-regatta-logo img {
    max-width: 150px;
}

#footer-regatta-contact {
    margin-top: 20px;
}

/* TripAdvisor comments */

#tripadvisor-comments {
    position: relative;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #555555;
}

#tripadvisor-comments-logo {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    display: inline-block;
    width: 120px;
    height: 20px;
    background: url("/assets_v2/common/img/tripadvisor-logo.png") no-repeat 0 0 transparent;
}

#CDSWIDSSP {
    width: 100% !important;
}

#CDSWIDSSP .widSSPData {
    padding: 0 !important;
    background-color: transparent !important;
}

#CDSWIDSSP .widSSPData .widSSPBranding dt a img,
#CDSWIDSSP .widSSPData .widSSPBranding dt a:link img,
#CDSWIDSSP .widSSPData .widSSPBranding dt a:visited img,
.widSSPSingle > b,
.widSSPComponent:not(.widSSPOptional) {
    display: none;
}

#CDSWIDSSP .widSSPData .widSSPBranding,
.widSSPOptional + .widSSPOptional {
    border-color: #555555 !important;
}

#CDSWIDSSP .widSSPData .widSSPSummary a,
#CDSWIDSSP .widSSPData .widSSPH18,
#CDSWIDSSP .widSSPData .widSSPInformation .widSSPPopIdx b,
#CDSWIDSSP .widSSPData .widSSPInformation .widSSPPopIdx .widSSPPopIdxData,
#CDSWIDSSP dl,
#CDSWIDSSP dt,
#CDSWIDSSP dd,
#CDSWIDSSP ol,
#CDSWIDSSP ul,
#CDSWIDSSP li,
#CDSWIDSSP p,
#CDSWIDSSP .widSSPData .widSSPOneReview .widSSPBullet li span,
#CDSWIDSSP .widSSPData .widSSPAll a,
#CDSWIDSSP .widSSPData .widSSPAll a:hover {
    color: #EAEAEA !important;
}

#CDSWIDSSP .widSSPData .widSSPBranding {
    margin-top: -5px;
}

#CDSWIDSSP .widSSPData .widSSPInformation {
    padding-top: 0 !important;
}

#CDSWIDSSP .widSSPData .widSSPLegal {
    font-size: 9px !important;
}


/*

    RESPONSIVE MODIFICATIONS

*/

@media all and (max-width: 1280px) {

    .bw_rooms,
    .spin_value_modifier,
    .occupancy_selection .spin_value_modifier {
        float: none;
        height: 18px;
        position: absolute;
        width: 31px;
    }

    .spin_value_modifier i, .bw_rooms i {
        font-size: 13px;
        line-height: 1;
    }

    .occupancy_selectors_wrap.spinner_inside .n_value {
        padding-left: 5px;
        width: 25px;
    }

    .hotel_banner_wrap {
        bottom: 10px;
        left: 10px;
    }

    .hotel_banner_wrap .banner {
        padding: 5px 10px;
    }

    #booking-parameters-wrap,
    .booking_resume_title,
    #booking_resume_details,
    #main_content,
    #footer-content {
        padding: 0 10px;
    }

    .room_left_col,
    .hotel_left_col {
        width: 250px;
        max-width: 250px;
        height: 188px;
    }

    .room_gallery_wrap {
        width: 250px;
    }

    .room_gallery_wrap,
    .room_gallery_wrap .swiper-container {
        height: 188px;
    }

    .swipe_nav_wrap {
        font-size: 30px;
    }

    .room_info_wrap {
        padding: 10px;
    }

    .room_wrap .rate_plan {
        padding: 10px;
    }

    .rate-plan-price-wrap {
        padding: 5px 5px 5px 10px;
    }

    .rate-plan-price-wrap span.avg_rate,
    .rate-plan-price-wrap span.rate_plan_price,
    .rate-plan-price-wrap span.rate_plan_price small,
    .rate_plan_total_price_field small {
        margin-right: 5px;
    }

    .rate_plan_wrap.is-open .set_rate_drop_wrap {
        margin-bottom: 0;
    }

    .occupancy_selectors_wrap.spinner_inside .n_value {
        padding-left: 10px;
    }

    .supplement_picture_col,
    .supplement_details_col {
        padding-right: 10px;
    }

}

.payment_module select {font-size: 12px}

#video_slide {
    display: none !important;
}

.colapsible_content {
    padding: 0;
}

#global_widgets {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 2;
}


/*

    concierge filters selected

*/

#concierge_filters_selected {
    margin-bottom: 20px;
    padding-left: 5px;
}

#concierge-filter-selected-wrap {
    font-size: 90%;
    width: 100%;
}

#concierge-filter-selected-wrap td {
    vertical-align: top;
}

.filter-selected-category-name {
    text-transform: uppercase;
    font-weight: bold;
    opacity: 0.4;
    text-align: right;
    padding: 0 10px 0 5px;
    border-right: 2px solid rgba(0, 0, 0, 0.1);
    white-space: nowrap;
    line-height: 28px;
}

.filter-selected-items {
    padding-left: 10px;
    width: 100%;
}

.badge {
    position: relative;
    display: inline-block;
    padding: 0 30px 0 13px;
    height: 26px;
    line-height: 26px;
    border-radius: 13px;
    background: #719500;
    color: #FFFFFF;
    margin-bottom: 5px;
}

.badge:hover {
    cursor: pointer;
}

.badge::after {
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
    font-family: "FontAwesome";
    content: "\f00d";
    font-size: 80%;
}

#packages_bulk_selection_wrap {
    margin-bottom: 20px;
}


/*

    MENU

*/

#sch_menu {
    text-align: right;
    background: #FFFFFF;
    border-width: 0 1px;
    border-style: solid;
}

#sch_menu li {
    display: inline-block;
    text-align: right;
}

#sch_menu li a {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 90%;
    line-height: 1;
    display: inline-block;
    padding: 15px 20px;
}

#sch_menu li a:hover {
    background: rgba(0, 0, 0, 0.03);
}


/*

    NEW RESERVATIONS HOTLINE

*/

#reservations-hotline-wrap {
    position: absolute;
    border-radius: 2px;
    background: rgba(0, 0, 0, 0.45);
    border-color: rgba(0, 0, 0, 0.1);
    padding: 10px 15px 10px 50px;
    color: #FFFFFF;
    text-shadow: none;
    line-height: 1;
    box-sizing: border-box;
}

#reservations-hotline-wrap i {
    font-size: 35px;
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
}

#reservations-hotline-number {
    display: block;
    font-size: 125%;
    font-weight: bold;
    padding: 5px 0;
}

#reservations-hotline-footer {
    opacity: 0.5;
}


#pre-rooms-msg-wrap {
    text-align: center;
    margin: -10px -20px 10px;
    overflow: hidden !important;
    position: relative;
}

#pre-rooms-msg-wrap::after {
    position: absolute;
    top: 0;
    left: 50%;
    bottom: 0;
    content: "";
    width: 1px;
    background: #DADADA;
}

.pre-rooms-msg {
    float: left;
    width: 50%;
    padding: 10px 20px;
    position: relative;
    box-sizing: border-box;
}

#pre-rooms-msg-wrap h3 {
    color: #444;
    display: inline-block;
    margin-bottom: 0;
    padding: 0 10px;
    text-transform: uppercase;
    margin-top: 0;
    font-weight: lighter;
}

#pre-rooms-msg-wrap h3 span {
    font-weight: bold;
}

#pre-rooms-msg-wrap h4 {
    line-height: 19px;
    margin-bottom: 7px;
    margin-top: 5px;
    display: block;
    font-weight: lighter;
}

#pre-rooms-msg-wrap p {
    color: #888;
    font-size: 10px;
}



/*

    AMENITIES

*/

.amenities {
    margin-top: 10px;
}

.amenities i {
    font-size: 1.8em;
    cursor: default;
}

.amenities i + i {
    margin-left: 5px;
}

.more_amenities_text {
    cursor: pointer;
    font-size: 0.885em;
    opacity: 0.5;
    text-decoration: underline dotted;
    margin-left: 5px;
}

.more_amenities_text:hover {
    opacity: 0.7;
}

.more_amenities {
    display: inline-block;
    margin-left: 5px;
}

.rate-plan-details .amenities {
    margin-bottom: -10px;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 10px;
}

#footer-main-col .amenities {
    margin-bottom: 10px;
    margin-top: 0;
}


/*

    GROUP PAGE

*/

#groups_header {
    padding: 20px !important;
    border-radius: 2px;
    border-width: 1px;
    border-style: solid;
    margin: 0px 0 20px;
    text-align: center;
    font-weight: bold;
}

#groups_header p {
    margin-bottom: 15px;
}

.bw_promo_wrap{
    max-width:580px;
    margin:0 auto;
}

.bw_input {
    height: 46px;
    line-height: 46px;
    font-size: 16px;
    padding: 0 10px;
    margin: 0;
    box-sizing: border-box;
}

#promo_code.bw_input{
    width:100%;
}
