/**************** TITLE ****************/
.tf-map-link a.more-hotel {
    font-weight: bold;
}

.tf-wishlist-button {
    font-size: 24px;
    cursor: pointer;
    margin: 0 5px 0 0;
    line-height: 1;
}

.tf-share {
    position: relative;
}

.share-tour-content {
    display: none;
    position: absolute;
    min-width: 100%;
    top: 100%;
    transform: translateY(8px);
    z-index: 200;
    left: auto;
    right: 0;
}

.share-tour-content .tf-dropdown-content {
    margin: 0;
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    min-width: 200px;
    z-index: 100;
    box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.12), 0 2px 3px -1px rgba(0, 0, 0, 0.2);
}

.share-tour-content .tf-dropdown-item-content {
    white-space: nowrap;
    display: flex;
    align-items: center;
    column-gap: 5px;
}

.tf-dropdown-content li {
    display: inline-block;
}


.tf-dropdown-content li a i {
    color: #1D75E3;
    font-size: 17px;
}

.tf-dropdown-content li:nth-child(2) a i {
    color: #1D9BF0;
}

.tf-dropdown-content li:nth-child(3) a i {
    color: #0A66C2;
}

.tf-dropdown-content li:nth-child(4) a i {
    color: #CC0000;
}

.share-tour-content .tf-dropdown-item {
    border: 0;
    margin: 0;
    cursor: pointer;
    padding: 12px 16px;
    white-space: nowrap;
    text-decoration: none;
    color: #333;
    background-color: #fff;
    fill: #333;
    display: flex;
    align-items: center;
    font-weight: 400;
    font-size: 14px;
}

.share-tour-content .tf-dropdown-item:hover {
    background-color: #f5f5f5;
}

.share-tour-content .share-center-copy-form {
    display: flex;
    align-items: center;
    padding: 12px 16px;
}

.share-tour-content .share-center-copy-label {
    white-space: nowrap;
}

.share-tour-content .share-center-copied-message {
    display: none;
}

.share-center-copy-cta.copied .share-center-copied-message {
    display: inline-block;
    font-weight: bold;
}

.share-center-copy-cta.copied .share-center-copy-message {
    display: none;
}

.share-tour-content #share_link_button {
    white-space: nowrap;
    font-size: 13px;
    padding: 5px 12px;
}

.share-tour-content input#share_link_input {
    width: auto !important;
    flex-grow: 1;
    margin: 0 8px;
    background-color: #e6e6e6;
    padding: 0;
    border: 2px solid rgba(118, 118, 118, 0.3);
}

.tf-share a {
    line-height: 1;
    font-size: 22px;
    display: block;
    margin: 0 10px 0 0;
    outline: none;
}

.show-on-map .btn-styled {
    text-transform: uppercase;
    font-weight: bold;
}

/**************** HERO ****************/
.hero-left .tf-top-review {
    position: absolute;
    margin: 20px;
}

.hero-section-wrap {
    display: grid;
    grid-template-columns: 75% 25%;
}

.hero-left {
    padding-right: 15px;
}

.hero-right {
    padding-left: 15px;
}

.swiper-button-next {
    background-image: unset;
}

.slick-slide-item img {
    width: 100% !important;
}

a.slick-slide-item-link {
    width: 100% !important;
}

.single-slider-wrapper {
    position: relative;
}

.swiper-button-prev,
.swiper-button-next {
    position: absolute;
    z-index: 9;
    top: 50%;
    transform: translateY(-50%);
    color: #fff;
    background-color: #000;
    text-align: center;
    cursor: pointer;
    padding: 6px 13px 0px 12px;
    border-radius: 4px;
    width: auto;
}

.swiper-button-prev i,
.swiper-button-next i {
    font-size: 28px;
}

.swiper-button-prev {
    left: 20px;
}

.swiper-button-next {
    right: 20px;
}

.tf-gallery-wrap .slick-slide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    cursor: zoom-in;
}

.tf-gallery-wrap .swiper-button-prev {
    background-image: none !important;
}

.show-on-map {
    margin-bottom: 20px;
}
.show-on-map iframe {
    height: 130px;
}

.show-on-map .btn-styled {
    background: linear-gradient(to bottom, #005cb9 0, #003162 100%);
    border: none;
}

.show-on-map .btn-styled:hover {
    background: linear-gradient(to bottom, #0071e3 0, #003162 100%);
}

.show-on-map i {
    padding-right: 8px;
    font-size: 15px;
}

.hero-booking .widget {
    margin-bottom: 0;
}

/**************** FEATURES ****************/
.tf_features {
    padding-top: 15px;
}

.tf_features .feature-list-title {
    margin: 0;
    padding-left: 8px;
    text-transform: capitalize;
    letter-spacing: 0.5px;
    font-size: 13px;
}

.tf_features i {
    color: #549501;
}

.tf_features .single-feature-box {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    margin-right: 10px;
    padding: 6px 10px;
    border-radius: 4px;
    border: 1px solid #0000002e;
    box-shadow: -1px 1px 6px -1px #0000002e;
    margin-top:10px;
}

.tf_features .tf-feature-list {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
}

/**************** FAQ ****************/

.hotel-faq .tf-faq-sec-title {
    text-align: left;
    margin-bottom: 20px;
}

/*.tf-single-faq .tf-tours-single-faq-inner {
    border-bottom: 1px solid #c8e2fc;
    background: #fff;
}

.tf-single-faq .faq-content {
    display: none;
    padding-bottom: 20px;
}

.tf-single-faq .faq-head {
    cursor: pointer;
    padding: 10px 0;
    position: relative;
    font-size: 18px;
    font-weight: bold;
}

.tf-single-faq .faq-head .faq-indicator {
    position: absolute;
    right: 15px;
}

.tf-single-faq .faq-head .faq-indicator i {
    font-size: 14px;
    color: #4F91FF;
}

.tf-single-faq .tf-tours-single-faq-inner .faq-indicator .fa-minus {
    display: none;
}

.tf-single-faq .tf-tours-single-faq-inner.active .faq-indicator .fa-minus {
    display: block;
}

.tf-single-faq .tf-tours-single-faq-inner.active .faq-indicator .fa-plus {
    display: none;
}*/

/**************** ROOMS ****************/
.availability-table {
    border: none;
    margin-bottom: 0;
}

.availability-table thead {
    background: #003162;
    color: #fff;
}

.availability-table td {
    border-left: 1px solid #c8e2fc;
    border-bottom: 1px solid #c8e2fc;
    border-top: none;
    border-right: none;
}

.availability-table td.reserve {
    border-right: 1px solid #c8e2fc;
}

.tf-room-table .availability-table tbody tr:nth-child(odd) td {
    background: #fff;
}

.hotel-room-wrap {
    width: 100%;
    overflow-x: auto;
}

.room-selection-wrap select,
.room-selection-wrap .select2-container .select2-selection--single {
    background-image: none;
    padding: 10px;
    width: 100%;
    text-align: center;
}

.availability-table td.description {
    padding: 25px;
}

.availability-table td.description h3 a,
.availability-table td.description h3 {
    font-size: 20px;
    line-height: 1.5;
}

.availability-table td.description h3 a {
    text-decoration: underline !important;
}

.room-features h4,
.pax h4 {
    font-size: 16px;
}

.room-features {
    margin-top: 15px;
}

.room-feature-list {
    list-style: none;
    padding: 0;
    margin: 5px 0 0;
}

.room-feature-list li {
    display: inline-block;
    margin-right: 8px;
}

.tf-room-table td.pax {
    min-width: 80px;
}

.room-detail-icon {
    text-align: center;
    margin: 15px 0 0 0;
}

.room-detail-icon .room-icon-wrap {
    border: 1px solid #eaeef3;
    border-radius: 4px;
    padding: 8px 10px 4px 10px;
    margin-right: 5px;
}

.room-detail-icon .room-icon-wrap i,
.room-features i {
    font-size: 16px;
    color: #5e6d77;
}

.room-detail-icon .icon-text {
    font-size: 14px;
    color: #5e6d77;
}

.hotel-room-availability,
.hotel-room-book {
    white-space: nowrap;
}

.hotel-room-book {
    margin-top: 15px;
}

#tour_room_details_loader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, .8);
    display: none;
    z-index: 999999;
}

#tour-room-details-loader-img {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

span.tf-price .amount {
    font-weight: bold;
}

.price-per-night {
    font-size: 12px;
    white-space: nowrap;
}

.bed-facilities {
    margin: 8px 0;
}

.room-feature-list li {
    margin-right: 15px;
}

/********************** RESPONSIVE **********************/
@media only screen and (min-width: 951px) {
    .popupmap-for-mobile {
        display: none;
    }
}

@media only screen and (max-width: 950px) {
    .hero-right .tf-hotel-location-preview {
        display: none;
    }

    .tf-hotel-location-preview iframe {
        height: 200px;
    }

    .popupmap-for-mobile {
        margin-top: 15px;
    }
}

@media only screen and (min-width: 831px) {
    .map-for-mobile {
        display: none;
    }
}

@media only screen and (max-width: 830px) {
    .tf_booking-widget {
        margin-bottom: 0;
    }

    .hero-right .show-on-map {
        display: none;
    }

    .map-for-mobile {
        margin-top: 15px;
    }
}

@media only screen and (min-width: 821px) and (max-width: 991px) {
    .hero-section-wrap {
        grid-template-columns: 72% 28%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .hero-section-wrap {
        grid-template-columns: 72% 28%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 820px) {
    .hero-section-wrap {
        grid-template-columns: 67% 33%;
    }
}

@media only screen and (max-width: 767px) {
    .tf-title-area h1 {
        font-size: 28px;
    }

    .more-hotel.tf-d-ib {
        display: inline;
    }

    .hero-section-wrap {
        grid-template-columns: 60% 40%;
    }

    .hotel-room-wrap {
        width: auto;
        overflow-x: auto;
    }

    .description {
        min-width: 300px;
    }

    .single-feature-box {
        margin-bottom: 10px;
    }
}

@media only screen and (max-width: 600px) {
    .tf-title-wrap {
        display: block;
    }

    .hero-section-wrap {
        grid-template-columns: 100%;
    }

    .tf-title-right {
        margin-top: 15px;
        justify-content: end;
    }

    .hero-left {
        padding-right: 0;
    }

    .hero-right {
        padding-left: 0;
        max-width: 316px;
        margin: auto;
    }

    .share-tour-content .tf-dropdown-content {
        min-width: 270px;
        margin-left: -170px;
    }

    .tf-dropdown-content li {
        display: block;
    }

    .share-tour-content input#share_link_input {
        width: 100% !important;
        margin: 5px 0;
        max-width: 100%;
        display: block;
    }

    .share-tour-content {
        left: 50px;
    }

    .share-tour-content .share-center-copy-form {
        display: block;
    }
}