﻿@import url(https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700&display=swap);

html, body {
    min-height: 100%; /* needed for container min-height */
    font-family: 'Poppins', sans-serif;
    color: #7a7a7a;
}

body {
    margin: 0px;
    padding: 0px;
    background-color: #f6f6f6 !important;
}

h3 {
    margin-bottom: 0px;
}

a img {
    border: 0px;
}

/*--------------------------------------------------------------------------------------------------*/
/* Listings */
#resdetail-wrapper a, #resdetail-wrapper a:visited {
    color: #000000;
    font-size: 14px;
}

#page-wrapper {
    margin-left: auto;
    margin-right: auto;
    width: 1210px;
    display: block;
    height: auto !important; /* real browsers */
    min-height: 1160px; /* real browsers */
    overflow: auto;
}

#header {
    width: 100%;
    margin-bottom: 8px;
    min-height: 1px;
}

#info-wrapper, #outer-listing-wrapper {
    display: block;
    padding: 0px 3px;
}

#right-inner .footer {
    font-family: Zapf;
    padding-bottom: 10px;
    font-size: 10px;
    text-transform: uppercase;
}

.amenitiesContainerTable {
    padding-top: 5px;
    cursor: auto;
}

    .amenitiesContainerTable .action-button-top {
        margin-bottom: 0;
    }

    .amenitiesContainerTable td {
        padding: 0;
    }

#amenitiesTableContainer table {
    border-top: none;
    border-collapse: collapse;
}

#amenitiesTableContainer {
    max-height: 128px;
    overflow: auto;
    border: 1px solid #DDDDDD;
    margin-bottom: 10px;
}

#amenitiesTableContainer table td {
    text-align: left;
    border: 1px solid #eeeeee;
}

#amenitiesTable {
    width: 100%;
}

#amenitiesTable label input {
    float: left;
}

#amenitiesTable input {
    vertical-align: middle;
}

#amenitiesTable td {
    width: 33%;
    cursor: auto;
}

#calendar-wrapper {
    display: inline-block;
    zoom: 1;
    z-index: 10;
}

#resdetail-wrapper {
}

#retailitems-wrapper {
}

#menu-wrapper {
    color: #FFFFFF;
}

#listings-wrapper {
    width: 100%;
    border: 1px solid #dddee3;
    background-color: white;
    padding: 20px;
    display: table;
    box-sizing: border-box;
}

/* Controls */
.validation-summary-valid, .msg-error.validation-summary-valid {
    display: none;
}

.validation-summary-errors {
    display: block;
    color: #FF0000;
    background-color: #FFFFFF;
    padding: 5px;
    border: 1px solid #FF0000;
    margin: 3px 0px;
}

.validation-summary-errors ul {
    margin: 5px 0px !important;
    padding: 0px 10px !important;
    list-style-type: none;
}

.editor-label {
    text-transform: uppercase;
    display: block;
}

.checkbox-label {
    display: inline-block;
    font-size: 12px;
    vertical-align: middle;
}

.editor-field {
    display: inline-block;
    /*padding-right: 3px;*/
}

    .editor-field input, .editor-field textarea, .editor-field select {
        color: #000000;
        background-color: #FFFFFF;
        border-radius: 5px;
        padding: 5px 8px;
        border: none;
    }

.radio-text {
    display: inline-block;
    vertical-align: middle;
}

.msg-success {
    display: block;
    background-color: #E3F1C5;
    border-left: 6px solid #ACD556;
    margin: 10px 0px;
    padding: 10px 15px;
}

.msg-error, .msg-error.validation-summary-errors {
    display: block;
    color: red;
    background-color: #FFFFFF;
    border: 1px solid red;
    border-left: 6px solid red;
    margin: 10px 0px;
    padding: 10px 15px;
}

/* End - Controls */

/* Start - Panels */
/* Cart */
.primary-panel {
    display: grid;
    grid-column-gap: 10px;
    grid-template-columns: 1fr 230px;
    min-width: 350px;
    margin-bottom: 22px;
    align-self: center;
}

.primary-panel .panelHeader {
    padding: 4px 10px;
    font-size: 26px;
    font-variant: small-caps;
}

.reservation {
}

.reservation .item {
    color: inherit;
    display: grid;
    grid-template-rows: 1fr;
    align-items: center;
    padding: 0px 14px 0px 17px;
    margin-bottom: 8px;
    height: 134px;
    -webkit-box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    -moz-box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
}

.reservation .item:last-of-type {
    margin-bottom: 0px;
}

.reservation .item .item-thumbnail {
    vertical-align: middle;
    display: inline-block;
    width: 114px;
    height: 90px;
    margin-right: 15px;
}

.item {
    display: inline-block;
    position: relative;
    background-color: white;
}

.remove {
    background-color: #f6f6f6 !important;
    cursor: pointer;
    position: absolute;
    right: -10px;
    top: 0;
    bottom: 0;
    width: 22px;
    height: 22px;
    margin: auto;
    background: #b7b7b7;
    border-radius: 25px;
    -webkit-box-shadow: inset 3px 3px 3px -2px rgba(196,194,196,1);
    -moz-box-shadow: inset 3px 3px 3px -2px rgba(196,194,196,1);
    box-shadow: inset 3px 3px 3px -2px rgba(196,194,196,1);
}

.remove-icon {
    position: absolute;
    width: 14px;
    height: 14px;
    right: 4px;
    top: 0;
    bottom: 0;
    margin: auto;
    background-image: url(https://d8qysm09iyvaz.cloudfront.net/gen6/icons/delete-group-icon2.svg);
    background-repeat: no-repeat;
}

.reservation .success {
    border: solid 1px #005000;
    background-color: #008000;
    font-weight: bold;
    color: #FFFFFF;
    padding: 5px;
    margin: 5px 0px 5px 0px;
}

.reservation .error {
    border: solid 1px #AA0000;
    background-color: #DD0000;
    font-weight: bold;
    color: #FFFFFF;
    padding: 5px;
    margin: 5px 0px 5px 0px;
}

.item-details {
    vertical-align: middle;
    display: inline-grid;
    grid-template-columns: repeat(4, minmax(50px, auto));
    align-items: center;
    width: 83%;
    justify-content: space-between;
}

.item-details > div {
    width: fit-content;
    padding-left: 10px;
    padding-right: 10px;
}

.item-detail {
    font-weight: 500;
}

.item-detail .title {
    font-size: 13px;
    color: #7a7a7a;
    text-transform: uppercase;
}

.item-detail .content {
    font-size: 15px;
    color: #474747;
    font-weight: 500;
}

#price-checkout {
    width: 100%;
    height: 100%;
    display: grid;
    background-color: white;
    align-self: center;
    justify-self: center;
    -webkit-box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    -moz-box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    align-items: center;
}

#price-checkout.expanded {
    grid-template-rows: 1fr 2px 1fr;
}

#price-checkout.minimal {
    grid-template-rows: 1fr;
}

#price-checkout .price-title {
    display: block;
    text-align: center;
    padding-top: 6px;
}

#price-checkout.minimal .price {
    line-height: 23px;
}

#price-checkout .price {
    display: block;
    color: black;
    text-align: center;
    font-size: 24px;
    font-weight: 600;
}

#price-checkout a {
    display: block;
    text-align: center;
}

.price-container a:last-of-type {
    font-size: 12px !important;
    padding-bottom: 7px;
}

.price-breakdown {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-areas: "1fr 1fr" "1fr 1fr" "1fr 1fr" "1fr 1fr" "1fr 1fr";
    padding: 15px 20px;
}

.price-breakdown-title {
    font-size: 20px;
    text-align: center;
    text-transform: uppercase;
    padding: 15px 15px 0px 15px;
}

.price-breakdown-name {
    font-size: 15px;
    text-align: left;
}

.price-breakdown-price {
    font-size: 15px;
    text-align: right;
}

.horizontal-separator-line {
    height: 2px;
    background-color: #e2e2e2;
}

.vertical-separator-line {
    width: 2px;
    background-color: #c4c4c4;
    height: 55%;
}

.group-icon {
    /*margin-right: 0 !important;*/
    margin-left: 8px;
}

.content .medium {
    font-size: 2em;
}

.final-reservation-title {
    color: #FFFFFF;
    background-color: #404040;
    padding: 3px 5px;
    font-size: 24px;
    text-align: center;
}

.final-reservation-details {
    padding: 5px 10px 6px 10px;
    font-size: 14px;
}

    .final-reservation-details hr {
        margin: 3px 0px 0px 0px;
        padding: 0px;
        border: none;
        border-top: 1px solid #A9A996;
    }

    .final-reservation-details .item-title {
        font-weight: bold;
        padding-top: 5px;
        max-width: 230px;
    }

    .final-reservation-details .item-price {
        font-weight: bold;
        padding-top: 5px;
        float: right;
        max-width: 100px;
        text-align: right;
    }

    .final-reservation-details .item-detail {
        font-size: 13px;
        padding: 2px 0px 2px 15px;
        color: #555555;
    }

    .final-reservation-details .item-detail-price {
        float: right;
        font-size: 13px;
        padding: 2px 80px 2px 0px;
        color: #555555;
    }

/* Buttons */
.checkout-button {
    font-family: 'Poppins', sans-serif;
    background-color: #fcc347;
    color: #715828 !important;
    border-radius: 5px;
    padding: 10px 20px;
    font-size: 14px;
    text-transform: uppercase;
    cursor: pointer;
    margin: 5px;
    border: 1px solid transparent;
    min-width: 180px;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    box-sizing: border-box;
    vertical-align: bottom;
    margin: 15px 25px;
}

#price-checkout.minimal .checkout-button {
    margin: 7px 20px 5px 20px;
}

.checkout-button:hover {
    background-color: #eea327;
}

/* Start - Paging */
ul.footer-paging {
    margin: 0px;
    padding: 0px;
}

    ul.footer-paging li {
        display: block;
        float: left;
    }

a.paging-link {
    display: block;
    color: #FFFFFF;
    background-color: #808080;
    border-radius: 5px;
    padding: 5px 20px;
    margin-right: 5px;
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 16px;
    cursor: pointer;
    text-decoration: none;
    text-transform: none;
}

    a.paging-link.selected, a.paging-link:hover {
        color: #FFFFFF;
        background-color: #000000;
    }

ul.menu-paging {
    margin: 0px;
    padding: 0px;
}

    ul.menu-paging li {
        display: block;
        float: right;
    }

    ul.menu-paging ul {
        margin: 0px;
        padding: 0px;
        display: none;
    }

    ul.menu-paging:hover ul {
        display: block;
        position: absolute;
        right: 0px;
    }

    ul.menu-paging:hover a.paging-link {
        margin-bottom: 0px;
    }
/* End - Paging */

/* Start - Modal Popups */
.popup {
    display: none;
    background-color: #FFFFFF;
    box-shadow: 0px 0px 3px #555555;
    border-radius: 3px;
    padding: 4px;
    width: auto;
    height: auto;
    min-height: 50px;
}

    .popup .border {
        background-color: #D7D7D7;
        padding: 0px;
    }

        .popup .border .inner {
            padding: 10px;
        }

    .popup .title {
        display: block;
        width: 100%;
        color: #FFFFFF;
        background-color: rgba(0,0,0,.5);
    }

        .popup .title .inner {
            padding: 2px 4px;
            font-size: 15px;
            font-variant: small-caps;
        }

    .popup .more-right .title .inner {
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
    }

.ui-dialog {
    z-index: 100;
}

.ui-dialog:focus, .ui-dialog-titlebar-close:focus {
    outline: none;
}

.ui-dialog-titlebar-close {
    font: inherit;
    display: block;
    width: 16px;
    height: 19px;
    float: right;
    color: White;
    background-color: rgba(0,0,0,.5);
    text-decoration: none;
    position: relative;
    top: 33px;
    right: 7px;
    border: none;
    cursor: pointer;
    padding: 0px 0px 0px 1px;
}

.ui-dialog-titlebar-close span {
    display: block;
    width: 100%;
    font-size: 22px;
    line-height: 12px;
    text-align: center;
    border: none;
}

.ui-widget-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: .50 !important; /* Make sure to change both of these, as IE only sees the second one */
    filter: Alpha(Opacity=50) !important;
    background-color: rgb(50, 50, 50) !important; /* This will make it darker */
}
/* End - Modal Popups */

/* Start - Listings */
.listingsDateHeader {
    padding: 3px 10px 3px 10px;
    background-color: black;
    color: white;
    margin-bottom: 15px;
    width: 100%;
    height: 38px;
    display: inline-grid;
    grid-template-columns: auto auto;
    grid-column-gap: 5px;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
}

.listingsDateHeader a {
    color: white;
    text-decoration: none;
}

.listingCurrency {
    float: right;
}

.listingCurrency a {
    padding-left: 10px;
    padding-right: 10px;
}

.listingCurrency.disabled a {
    color: #a5a5a5;
}

.listingCurrency span {
    padding-left: 10px;
}

.listing {
    margin-bottom: 22px;
    border-spacing: 0;
    border: 1px solid #dddee3;
    border-right: 1px solid #c4c2c4;
    border-bottom: 1px solid #c4c2c4;
    -webkit-box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    -moz-box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
}

.listing:last-of-type {
    margin-bottom: 0px;
}

.listing td {
    vertical-align: top;
    padding: 0;
}

.listing-filters {
    width: 100%;
    border: 1px solid #dddee3;
    border-bottom: none;
    background-color: white;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    color: #474747;
    letter-spacing: 0.1em;
}

.filter-items {
    width: 100%;
    height: 66px;
    display: inline-grid;
    grid-template-columns: auto auto auto auto;
    grid-column-gap: 5px;
    align-items: center;
    justify-content: space-between;
}

td.listing-left {
    width: 45%;
    height: 350px;
    position: relative;
}

.listing-right {
    width: 55%;
    min-width: 285px;
    background-color: #FFFFFF !important;
}

.listing-left .inner, listingsDateRange {
    font-size: 16px;
    font-weight: 500;
}

.stay-period {
    font-size: 14px;
    font-weight: 500;
}

.listing-right .inner {
    font-size: 14px;
    padding: 10px 15px 10px 15px;
}

.room-title {
    margin: 12px;
}

.room-title, .stay-period {
    color: #FFFFFF;
    background: rgba(0,0,0,.6);
    padding: 3px 10px 3px 10px;
}

    .room-title .name {
        text-overflow: ellipsis;
        overflow: hidden;
        width: 310px;
        text-transform: uppercase;
        font-weight: 500;
    }

    .room-title .price {
        width: 195px;
        text-align: right;
    }

    .room-title .caption {
        font-style: italic;
        font-size: smaller;
        display: inline-block;
    }

.caption-minor {
    font-style: italic;
    font-size: .8em;
}

.stay-period {
    position: absolute;
    bottom: 0px;
    left: 0px;
    padding: 7px 25px 7px 25px;
}

.more-pics {
    cursor: pointer;
    color: #FFFFFF;
    background: rgba(0,0,0,.5);
    padding: 1px 9px;
    border-top-left-radius: 6px;
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
}

    .more-pics .inner {
        margin-bottom: 2px;
        line-height: 16px;
        font-size: 10px;
        border-bottom: 2px solid rgba(255,255,255,.5);
    }

        .more-pics .inner:hover {
            border-bottom: 2px solid rgba(255,255,255,1);
        }

.detailpopup .picture {
    display: block;
    float: left;
    width: 524px;
    height: 340px;
}

.popup-thumbs {
    display: block;
    width: 100%;
}

    .popup-thumbs .inner {
        padding: 6px 6px 8px 6px;
        text-align: center;
        font-size: 0px;
    }

.thumb-border {
    display: inline-block;
    margin-left: 16px;
    padding: 5px;
}

.thumb-border-first {
    margin-left: 0px;
}

.thumb-border.selected, .thumb-border:hover {
    background-color: #FFFFFF;
    padding: 4px;
    border: 1px solid #000000;
    cursor: pointer;
}

.picture-thumb {
    width: 182px;
    height: 130px;
}

.detailpopup .more-right {
    background-color: White;
    display: block;
    float: right;
    width: 305px;
    height: 340px;
}

.listing-right .inner .reservable-status {
    margin-bottom: 10px;
    height: 50px;
}

.occupancy-container-single {
    line-height: 50px;
    border-bottom: 1px solid #dddee3;
    padding-left: 20px;
}

.occupancy-container {
    line-height: 50px;
    border-bottom: 1px solid #dddee3;
    padding-left: 20px;
    /*display: grid;
    grid-template-columns: 1fr 1fr 1fr;*/
}

.occupancy, .occupancy-single {
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    color: #474747;
    letter-spacing: 0.1em;
}

.occupancy-single {
}

.occupancy {
    margin-right: 50px;
}

.occupancy-image, .group-icon {
    height: 29px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 12px;
}

.booked {
    background-color: #CEE8A7;
    display: table-cell;
    width: 255px;
    height: 32px;
    vertical-align: middle;
    padding-left: 15px;
    padding-right: 15px;
    letter-spacing: 1px;
}

.occupied, .book-button, .blueButton {
    font-family: 'Poppins', sans-serif;
    background-color: #82be37;
    font-weight: normal;
    color: white;
    border-radius: 5px;
    padding: 10px 20px;
    font-size: 14px;
    margin: 5px;
    text-transform: uppercase;
    cursor: pointer;
    border: 1px solid transparent;
    min-width: 180px;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    box-sizing: border-box;
    vertical-align: bottom;
}

.occupied {
    background-color: #000000;
    color: white;
    cursor: inherit;
}

.blueButton {
    vertical-align: 0.05em;
}

.book-button:hover {
    background-color: #7FB239;
}

.blueButton {
    background-color: #4aa0fd;
}

.blueButton:hover {
    background-color: #3c86d6;
}

.add-button {
    -webkit-appearance: none; /*Resets the buttons for iPad so they appear properly*/
    display: inline-block;
    line-height: 32px;
    height: 32px;
    padding: 0 20px;
    margin: 0;
    border-width: 0;
    font-size: 15px;
    letter-spacing: 0px;
    border-radius: 3px;
    color: #fff;
    background-color: #8DC63F;
    box-shadow: 0 0 3px #666;
    cursor: pointer;
    text-transform: uppercase;
    text-decoration: none;
    box-sizing: content-box;
}

.add-button:hover {
    background-color: #7FB239;
}

.book-icon {
    display: inline-block;
    width: 6px;
    margin-left: -25px;
    margin-right: 19px;
}

.page-icon {
    display: inline-block;
    width: 6px;
    transform: rotate(90deg);
    -ms-transform: rotate(90deg); /* IE 9 */
    -webkit-transform: rotate(90deg); /* Safari and Chrome */
    margin: 0px;
}

.minimum {
    background-color: #000000;
    color: #FFFFFF;
    float: right;
    height: 32px;
    padding: 0px 10px;
    line-height: 32px;
}

.fewer-nights {
    background-color: #007236;
    color: #DDECE4;
    float: right;
    height: 32px;
    padding: 0px 10px;
    line-height: 32px;
}

.callus {
    color: #FFFFFF;
    background-color: #8DC63F;
    height: 32px;
    padding: 0px 10px;
    line-height: 32px;
    display: inline-block;
    letter-spacing: 1px;
    font-size: 16px;
}

.try-other {
    display: inline-block;
    background-color: #FFFFFF;
    color: #007236;
    margin-left: 10px;
    height: 32px;
    line-height: 12px;
    font-size: 16px;
    letter-spacing: 1px;
}

.listing-right .inner .description {
    width: 100%;
    height: 239px;
    line-height: 16px;
    margin-bottom: 10px;
    font-size: 13px;
    overflow: hidden;
    word-wrap: break-word;
}

.listing-right .inner .extended-description {
    height: 285px;
    margin-bottom: 0px;
}

.listing-right .inner .description, .listing-right .inner .description a {
    color: #555555;
}

    .res-status-more-info, .listing-right .inner .description .res-status-more-info a {
        color: #BA0000;
        font-weight: bold;
    }

    .listing-right .inner .description .amenities-wrapper {
        word-wrap: normal;
    }

.listing-right .inner .package-description {
    height: 284px;
    margin-bottom: 0px;
}

.listing-right .inner .description.groupBlock {
    height: 285px;
    margin-bottom: 0px;
}

.listing-right .inner .amenities-wrapper {
    width: 100%;
    margin-top: 15px;
    margin-bottom: 0px;
    font-size: 13px;
    min-width: 270px;
    height: auto;
    display: inline-block;
}

.listing-description {
    font-size: 13px;
    margin: 0px 35px 8px 8px;
    line-height: 22px;
}

.description.groupBlock .amenities-wrapper {
    margin-top: 0;
}

.amenities-wrapper .amenities {
    padding: 5px 10px 5px 10px;
}

.amenities li.one-column {
    width: 251px;
}

.amenities table {
    width: 100%;
}

.amenities .title {
    font-weight: bold;
    font-size: 11px;
    color: inherit !important;
    background-color: inherit !important;
    margin-bottom: 5px;
}

.amenities ul {
    list-style-type: square;
    list-style-position: inside;
    margin: 0px;
    padding-left: 2px;
}

    .amenities ul li {
        color: #007236;
        padding-bottom: 3px;
    }

        .amenities ul li:last-child {
            padding-bottom: 0px;
        }

.popup .amenities ul li {
    white-space: normal;
}

.amenities ul li span {
    color: #555555;
}

/* End - Listings */

.payment-right {
    width: 324px;
    float: left;
    margin-left: 15px;
}

/* Start - SVG */
.not-available circle, .not-available line {
    stroke: #555555; /* Change the color of the not available image */
}

.book-icon polyline {
    stroke: #FFFFFF;
    fill: #FFFFFF;
}

.page-icon polyline {
    stroke: #FFFFFF;
    fill: #FFFFFF;
}

.view-avail path {
    fill: #000000;
}

.view-avail:hover path {
    /*fill: #EBEBEB;*/
}

img.no-svg {
    display: none;
}
/* End - SVG */

.spacer {
    clear: both;
}

/* Start - Scroll Pane */
.scroll-pane{position:relative}
.scroll-content {position:absolute;top:0;left:0;}
.slider-wrap{position:absolute;right:0;top:0;box-shadow: inset 0 0 8px rgba(0,0,0,0.3);width:8px;}
.slider-vertical{position:relative;height:100%}
.ui-slider-handle{width:8px;height:10px;margin:0 auto;box-shadow: inset 0 0 8px rgba(0,0,0,0.5);display:block;position:absolute}
.ui-slider-handle img{border:none}
.scrollbar-top{position:absolute;top:0;}
.scrollbar-bottom{position:absolute;bottom:0;}
.scrollbar-grip{position:absolute;top:50%;margin-top:-6px;}
.ui-slider-range{position:absolute;width:100%;}
/* End - Scroll Pane */

.scroll-content {
    position: absolute;
    top: 0;
    left: 0;
}

.slider-wrap {
    position: absolute;
    right: 0;
    top: 0;
    background-color: #e5e7e8;
    width: 5px;
    border-radius: 2.5px;
}

.slider-vertical {
    position: relative;
    height: 100%
}

.ui-slider-handle {
    width: 5px;
    height: 10px;
    margin: 0 auto;
    background-color: #a6b5be;
    border-radius: 2.5px;
    display: block;
    position: absolute
}

    .ui-slider-handle img {
        border: none
    }

.scrollbar-top {
    position: absolute;
    top: 0;
}

.scrollbar-bottom {
    position: absolute;
    bottom: 0;
}

.scrollbar-grip {
    position: absolute;
    top: 50%;
    margin-top: -6px;
}

.ui-slider-range {
    position: absolute;
    width: 100%;
}
/* End - Scroll Pane */

/* Start - Amenity Search */
.searchBox {
    text-transform: none;
    font-size: 14px;
    box-shadow: 0px 0px 5px black;
    border-radius: 5px;
}

.searchDates {
    color: black;
    background-color: #E8F3D3;
    padding: 10px;
    border-bottom: 1px solid #D9DCD3;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.arriveIcon {
    background-image: url(/resnexus/reservations/content/img/booking/calendars.png);
    background-position: 0px 0px;
    background-size: 39px;
    display: inline-block;
    vertical-align: top;
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    margin-top: 2px;
}

.departIcon {
    background-image: url(/resnexus/reservations/content/img/booking/calendars.png);
    background-position: -21px 0;
    background-size: 39px;
    display: inline-block;
    vertical-align: top;
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    margin-top: 2px;
}

.searchDates .searchItem {
    display: table-cell;
    white-space: nowrap;
    padding-right: 10px;
    vertical-align: top;
}

.searchAmenities .searchItem {
    display: table-cell;
    white-space: nowrap;
    padding: 0px 10px 0px 0px;
    vertical-align: middle;
}

    .searchDates .searchItem.options, .searchAmenities .searchItem.options {
        white-space: normal;
        padding-right: 0px;
    }

.searchItem div {
    display: inline-block;
    white-space: nowrap;
    text-align: right;
}

.searchItem.options div {
    padding-right: 10px;
}

.searchAmenities {
    color: black;
    background-color: white;
    padding: 10px;
    border-radius: 5px;
    font-size: 12px;
}

    .searchAmenities hr {
        border: none;
        border-top: 1px dashed gray;
    }

    .searchAmenities .wrapper {
        display: table-row;
    }

    .searchAmenities .searchClass {
        display: inline-block;
        padding-right: 10px;
        padding-bottom: 10px;
    }

        .searchAmenities .searchClass, .searchAmenities .searchClass input {
            cursor: pointer;
        }

.allSearchItems {
    vertical-align: top;
    width: 100%;
}

.searchItem span {
    font-weight: bold;
}

.amenityLabel {
    font-weight: bold;
}
/* End - Amenity Search*/

/* Start - Mobile Colors */
.callus-icon path, .add-icon path, .occupied-icon path, .details-icon path, .cart-icon path {
    fill: #000000;
}

.minimum-nights-alert {
    color: #FFFFFF;
    background-color: rgba(200, 0, 0, .7);
}

.accessibleOnly {
    position: absolute !important;
    top: -9999px !important;
    left: -9999px !important;
}

/* End - Mobile Colors */
@media screen and (min--moz-device-pixel-ratio:0) {
    /*Mozilla specific styles go here*/
    .ui-dialog-titlebar-close {
        top: 29px;
    }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    /* IE10-specific styles go here */
    /* http://www.impressivewebs.com/ie10-css-hacks/ */
    .primary-panel .panelHeader {
        font-size: 24px;
    }
}

@media print {
    html, body {
        height: auto;
    }

    #page-wrapper {
        width: auto;
    }

    #header, #info-wrapper, #menu-wrapper, .step-action {
        display: none;
    }

    #outer-listing-wrapper {
        margin: 0px;
        height: auto;
        width: 825px;
    }

    #right-inner {
        padding: 0px;
    }

    * {
        background: #FFFFFF !important;
        color: #000000 !important;
        text-shadow: none !important;
        filter: none !important;
        -ms-filter: none !important;
    }
}

/* ADA - Make sure all elements on a page that can be tabbed to has an obvious outline */
a:focus, input:focus, select:focus, span.ui-state-focus:focus {
    outline: 2px solid #4D90FE !important;
}

/* Scroll bars need a little adjusting to make sure the outline is visible */
span.ui-state-focus:focus {
    outline-offset: -2px !important;
}

/* While scrolling in a description, a small border was added that was messing with the outline */
span.ui-state-focus.ui-state-active:focus {
    border: none !important;
}

/*--------------------------------------------------------------------------------------------------*/
/* Occupancy Selector (previously called calendar) */
/* PopupMsg */

#divPopupMsg {
    display: table;
    left: 0px;
    overflow: auto;
    position: fixed;
    top: 0px;
    z-index: 99999;
}

.popupSuccess,
.popupError {
    border-collapse: separate !important;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    color: #FFFFFF;
    display: none;
    margin-bottom: 10px;
    margin-left: 8px;
    margin-top: 6px;
    overflow: hidden;
    width: 287px;
}

.popupSuccess {
    background-color: #62B77C;
    border: 1px solid #5cab74;
    box-shadow: 0px 2px #4f9464;
}

.popupError {
    background-color: #d64d4d;
    border: 1px solid #be4444;
    box-shadow: 0px 2px #ba4343;
}

    .popupSuccess td,
    .popupError td {
        padding: 10px;
        vertical-align: middle;
    }

    .popupSuccess a,
    .popupError a {
        color: #FFFFFF;
        text-decoration: none;
    }

.popupSuccessImg,
.popupErrorImg {
    display: inline-block;
    height: 27px;
    width: 36px;
}

.popupSuccessImg {
    background: transparent url(/ResNexus/img/success-error-icons.png) -56px 0px no-repeat;
}

.popupErrorImg {
    background: transparent url(/ResNexus/img/success-error-icons.png) 0px 0px no-repeat;
}

.popupCloseImgContainer {
    text-align: right !important;
    vertical-align: top !important;
}

.popupCloseImg {
    display: inline-block;
    height: 15px;
    width: 17px;
    vertical-align: top;
}

.popupSuccessCloseImg {
    background: transparent url(/ResNexus/img/success-error-icons.png) -109px -7px no-repeat;
}

.popupErrorCloseImg {
    background: transparent url(/ResNexus/img/success-error-icons.png) -135px -7px no-repeat;
}

#booking-engine-calendar {
    background-color: white;
    position: relative;
}

/*#occupancyRowContents .fieldLabelPair:after {
    content: '';
    position: absolute;
    right: -9px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid #474747;
    pointer-events: none;
}*/

.fa-caret-down {
    display: inline-block;
}

#occupancyRow {
    padding-left: 12px;
    padding-right: 12px;
    position: relative;
    background-color: #f1f1f1;
}

#occupancyRowGroup {
    position: relative;
    background-color: #f1f1f1;
}

#occupancyRowContents {
    display: inline-grid;
    /*grid-template-columns: repeat(6, minmax(20px, auto));*/
    /*grid-template-columns: minmax(45px, auto)
                           minmax(50px, auto)
                           minmax(50px, auto)
                           minmax(50px, auto)
                           minmax(50px, auto)
                           minmax(20px, auto);*/
    grid-column-gap: 10px;
    justify-content: space-around;
    align-items: center;
    grid-auto-flow: row;
    padding-top: 10px;
    padding-bottom: 10px;
    cursor: pointer;
    background-color: white;
}

#occupancyRowContents:hover {
    background-color: #ececec;
}

#occupancyRowContents .fieldLabelPair {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #474747;
}

.ui-datepicker-current-day a,
.arrive-date span {
    border-radius: 25px;
    border: 3px solid;
}


#calendarSearchButtonRow {
    padding-top: 12px;
    border-bottom: 1px solid #cdcdcd;
    background-color: #f1f1f1;
}

#calendarSearchButtonRow .add-button {
    margin-left: 12px;
    margin-bottom: 15px;
    width: 293px;
    text-align: center;
    margin-top: 4px;
}

#changeLabel {
    display: none;
    text-align: center;
    font-size: 14px;
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /*background-color: black;
    opacity: 0.5; */
    display: none;
    z-index: 200;
}

#occupancyPopup {
    display: none;
    border-radius: 3px;
    padding: 12px;
    color: #757575;
    z-index: 300;
    background-color: #fff;
    position: absolute;
    left: 0;
    border: 1px solid #dddee3;
    border-right: 1px solid #c4c2c4;
    border-bottom: 1px solid #c4c2c4;
    -webkit-box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    -moz-box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
}

.occupancyPopupRow {
    display: grid;
    grid-template-columns: 1fr 33px 46px 22px;
    align-items: center;
    margin-bottom: 10px;
    grid-row-gap: 5px;
    padding-left: 22px;
    padding-right: 20px;
    padding-top: 5px;
}

.occupancyPopupTitle {
    margin-right: 50px;
}

.occupancyPopupLabel {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    max-width: 203px;
    display: inline-block;
}

#closePopupButton {
    cursor: pointer;
    color: #4a95e1;
    text-align: center;
    grid-column-start: 1;
    grid-column-end: 5;
    margin-top: 10px;
}

.occupancyPopupButton {
    width: 25px;
    height: 25px;
    border: 1px solid #4a95e1;
    border-radius: 25px;
    color: #4a95e1;
    text-align: center;
    font-size: 18px;
    line-height: 24px;
    cursor: pointer;
    -webkit-user-select: none; /* Safari 3.1+ */
    -moz-user-select: none; /* Firefox 2+ */
    -ms-user-select: none; /* IE 10+ */
    user-select: none; /* Standard syntax */
}

.occupancyPopupValue input {
    width: 25px;
    text-align: center;
    border: none;
    color: #757575;
}

.occupancyPopupValue {
    width: 40px;
    text-align: center;
}

/*Calendar Controls*/

.calLabel h4 {
    color: #ebebeb;
}

.calendar-input {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 0px;
    width: 80px;
    text-align: center;
    font-size: 13px;
    color: #000000;
    height: 28px;
}

.rounded-num-container {
    cursor: default;
    text-align: center;
    display: inline-block;
}

.guest-input-container {
    background-image: url(/resnexus/reservations/content/img/booking/guests-icon.png);
    background-repeat: no-repeat;
    background-position: 7px 13px;
    cursor: pointer;
    margin: 6px 0px;
}

.rounded-num-container .num-container-text {
    margin-left: 30px;
}

.rounded-num-container.nomargin .num-container-text {
    margin-left: 0px;
    margin-right: 0px;
}

.num-container-text {
    display: inline-block;
    font-family: Arial;
    border: none;
    color: #BDBDBD;
    background: none;
    margin: 4px 4px 4px 8px;
    font-size: 30px;
}

    .num-container-text .smallLabel {
        font-size: 11px;
        text-transform: uppercase;
        font-weight: bold;
    }


/*Calendar Table Styles*/
.calendar-table, .calendar-legend {
    background-color: #fff;
}

.calendar-table {
    width: 358px;
    padding-bottom: 5px;
}

.calendar-legend {
    width: 350px;
    min-height: 20px;
    padding: 2px 0 20px 8px;
}

    .calendar-legend .legItem {
        margin-right: 2px;
    }

/* Deep selector to fix arrow fonts being overridden (the arrows are font-awesome unicode) */
#booking-engine-calendar > section.calendar-dates > div > div.calMonthsDropDown > div > div.tableArrow.fa.fa-angle-right,
#booking-engine-calendar > section.calendar-dates > div > div.calMonthsDropDown > div > div.tableArrow.fa.fa-angle-left {
    font-family: 'FontAwesome' !important;
}

.calendar-dates .calMonthsDropDown .monthsRow .monthItem:last-child {
    margin-right: 0;
}

.calLabel .labelDropDown {
    display: none;
    position: absolute;
    background: #EEEEEE;
    border: 1px solid black;
    z-index: 2;
    top: 75px;
    color: #B7B7B7;
    font-weight: bold;
}

.nowrap {
    white-space: nowrap;
}

.numNightsLabel .labelDropDown.arriveOnlyDropDown {
    left: -168px;
}

.guestsLabel .labelDropDown.arriveOnlyDropDown {
    right: -9px;
}

.labelDropDown .capLabel {
    float: left;
    margin-bottom: 5px;
    color: #686868;
}

.labelDropDown .ddButton {
    font-size: 16px;
    text-align: center;
    display: inline-block;
    width: 50px;
    height: 26px;
    line-height: 26px;
    border: 1px solid #BDBDBD;
    margin: 0 0 10px 0;
    cursor: pointer;
    -moz-user-select: none;
    -webkit-user-select: none;
    user-select: none;
    -o-user-select: none;
}

.guestsLabel .labelDropDown .ddButton {
    margin-right: 2px;
}

.labelDropDown .ddButton:last-of-type {
    margin-right: 0;
}

.labelDropDown .labelOptionDropDown {
    display: inline-block;
    text-align: center;
    width: 70px;
    height: 28px;
    line-height: 26px;
    border: 1px solid #BDBDBD;
    margin-bottom: 10px;
    cursor: pointer;
    text-align: center;
    text-align-last: center;
    background: #eee;
    font-size: 15px;
    font-family: Zapf;
    font-weight: bold;
    color: #ababab;
    vertical-align: top;
}

.guestsLabel .labelDropDown .labelOptionDropDown {
    margin-left: 2px;
}

.labelDropDown .labelOptionDropDown option {
    font-weight: bold;
    cursor: default;
}

.labelDropDown .labelOptionDropDown.hasSelectedValue {
    background: #5F5F5F;
}

.labelDropDown .dropDownContainer {
    margin: 10px 25px 0 25px;
}

.labelDropDown .capButtonContainer {
    margin-bottom: 10px;
    clear: left;
    font-size: 0;
}

.labelDropDown .capAmountContainer {
    text-align: left;
    white-space: nowrap;
    clear: left;
}

.labelDropDown .selectedValue {
    background: #5F5F5F;
}

.calLabel .dropDownArrow {
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 7px solid #eee;
    position: absolute;
    left: 29px;
    top: 69px;
    z-index: 3;
    display: none;
}

.legItem {
    /* note: this border is the same color as the legend item unless the legend item needs a border */
    border: 2px solid;
}

.calendar-input-hidden {
    position: absolute;
    width: 0;
    height: 0;
    background: none;
}

    .calendar-input-hidden:focus {
        outline: none;
    }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    /* IE10+ CSS styles go here */

    #occupancyRow {
        -ms-grid-row: 2;
    }

    #occupancyRowContents {
        display: -ms-grid;
        -ms-grid-columns: 1fr 1fr 1fr;
    }

        #occupancyRowContents .fieldLabelPair:nth-child(3n + 1) {
            -ms-grid-column: 1;
        }

        #occupancyRowContents .fieldLabelPair:nth-child(3n + 2) {
            -ms-grid-column: 2;
        }

        #occupancyRowContents .fieldLabelPair:nth-child(3n + 3) {
            -ms-grid-column: 3;
        }

        #occupancyRowContents .fieldLabelPair:nth-child(1),
        #occupancyRowContents .fieldLabelPair:nth-child(2),
        #occupancyRowContents .fieldLabelPair:nth-child(3) {
            -ms-grid-row: 1;
        }

        #occupancyRowContents .fieldLabelPair:nth-child(4),
        #occupancyRowContents .fieldLabelPair:nth-child(5),
        #occupancyRowContents .fieldLabelPair:nth-child(6) {
            -ms-grid-row: 2;
        }

        #occupancyRowContents .fieldLabelPair:nth-child(7),
        #occupancyRowContents .fieldLabelPair:nth-child(8),
        #occupancyRowContents .fieldLabelPair:nth-child(9) {
            -ms-grid-row: 3;
        }

    .occupancyPopupRow {
        display: -ms-grid;
        -ms-grid-columns: 1fr 22px 40px 22px;
    }

    .occupancyPopupTitle {
        -ms-grid-column: 1;
    }

    .occupancyPopupButton.Minus {
        -ms-grid-column: 2;
    }

    .occupancyPopupValue {
        -ms-grid-column: 3;
    }

    .occupancyPopupButton.Add {
        -ms-grid-column: 4;
    }

    #calendarSearchButtonRow {
        -ms-grid-row: 3;
    }

    /*Calendar Controls*/
    .guestsLabel {
        -ms-grid-column: 4;
    }

    .calendar-buttons {
        -ms-grid-row: 6;
    }
}

/*--------------------------------------------------------------------------------------------------*/
/* Group Reservation Information */

.groupInfoContainer {
    background-color: white;
    margin-bottom: 22px;
    padding: 25px 30px;
    border-spacing: 0;
    border-left: 4px solid #4aa0fd;
    -webkit-box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    -moz-box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
    box-shadow: 3px 3px 3px -2px rgba(196,194,196,1);
}

.groupTitle {
    font-size: 20px;
    font-weight: 600;
    color: #474747;
    margin-bottom: 3px;
}

.groupDateRange {
    color: #4aa0fd;
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 10px;
}

.groupDescription {
    font-size: 14px;
    margin-bottom: 22px;
    line-height: 27px;
}

.groupCoordinator {
    background-color: #efefef;
    padding: 18px 10px 10px 25px;
    width: fit-content;
    min-width: 200px;
}

.groupCoordinator .name {
    color: #474747;
    font-size: 18px;
    font-weight: 600;
}

.groupCoordinator .coordinatorTitle {
    font-size: 14px;
    margin-bottom: 10px;
}

.groupCoordinator .email, .groupCoordinator .phone {
    color: #4aa0fd;
    font-size: 14px;
    margin-bottom: 5px;
}