
.tfvt_single_sidebar {
    position: sticky;
    top: 150px;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -ms-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}

#tabs-single-tour .tfvt_single_sidebar {
    top: 250px;
}
/* Header */
.single-listing-element.listing-info-header {
    border-bottom: 1px solid #D9D9D9;
    padding: 50px 0 60px;
    margin-bottom: 51px;
}

.single-listing-element .infor-header-left .featured-text {
    background: #FF494F;
    font-size: 15px;
    font-weight: 500;
    color: #fff;
    text-align: center;
    border-radius: 2px;
    display: inline-block;
    padding: 0 18px;
    margin-bottom: 20px;
}

.single-listing-element .infor-header-left .tour-title {
    font-size: 46px;
    font-weight: 700;
    margin-bottom: 14px;
}

.single-listing-element .infor-header-left .tfvt-listing-info {
    display: flex;
    align-items: center;
    gap: 42px;
    row-gap: 10px;
    flex-wrap: wrap;
}

.single-listing-element .infor-header-left .tfvt-listing-info .details-info {
    gap: 16px;
}

.single-listing-element .infor-header-left .tfvt-listing-info .details-info .detail-icon svg {
    width: 23px;
    color: var(--theme-primary-color);
}


.single-listing-element .infor-header-left .tfvt-listing-info .details-info .detail-icon svg.icon-marker {
    width: 12px;
}

.single-listing-element .infor-header-left .tfvt-listing-info .details-info .detail-text {
    font-size: 16px;
    font-weight: 500;
    line-height: 30px;
    color: #83827F;
}


.single-listing-element .infor-header-right{
    float: inline-end;
}

.single-listing-element .infor-header-right .tfvt-listing-price {
    color: var(--theme-primary-color);
    font-size: 24px;
    font-weight: 700;
    line-height: 30.24px;
    text-align: left;
}

.single-listing-element .infor-header-right .rating-review {
    gap: 5px;
}

.single-listing-element .infor-header-right .rating-review .review {
    color: #000;
    font-weight: 500;
}

.single-listing-element .infor-header-right .rating-review .fa-star-half-alt:before,
.single-listing-element .infor-header-right .rating-review .fa-star:before {
    color: #FBAD17;
}

.tfvt-form-edit-review{
    display: none;
}

#widget-babe-booking-form .booking_services_inner .list_service_title label {
    font-size: 0;
}

/* Gallery Style 1 */

.gallery-style-1 .tfvt-listing-gallery-single .container-images-gallery .gallery-image {
    width: 100%;
    min-height: 452px;
    object-fit: cover;
}

.tfvt-listing-gallery-single {
    position: relative;
}

.tfvt-listing-gallery-single .group-meta {
    position: absolute;
    bottom: 20px;
    right: 20px;
    z-index: 5;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    gap: 10px;
}

.tfvt-listing-gallery-single .group-meta.style-2 {
    bottom: auto;
    right: auto;
    top: 10px;
    left: 10px;
}

.tfvt-listing-gallery-single .group-meta > * {
    font-size: 14px;
    font-weight: 500;
    line-height: 17.64px;
    padding: 5px 7px;
    color: #fff;
    background: #000000A1;
    box-shadow: 0px 4px 18px 0px #0000000D;
    border-radius: 2px;
    cursor: pointer;
}

.tfvt-listing-gallery-single .group-meta > * svg {
    margin-right: 7px;
}

/* Gallery Style 2 */
.gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery {
    position: relative;
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
}

.gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery .gallery-image {
    max-width: 300px;
    width: 100%;
    min-height: 452px;
    object-fit: cover;
    border-radius: 7px;
}

.gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery .gallery-image:first-child {
    max-width: 630px;
}

.gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery .group-meta {
    position: absolute;
    top: 10px;
    left: 10px;
}

.gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery .group-meta .list-gallery,
.gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery .group-meta .view-tour-video {
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 2px;
    background: #000000A1;
    box-shadow: 0px 4px 18px 0px rgba(0, 0, 0, 0.05);
    display: flex;
    align-items: center;
    gap: 5px;
    color: #FFF;
    font-size: 16px;
    font-weight: 300;
    text-transform: capitalize;
    padding: 7px;
    height: 29px;
    cursor: pointer;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -ms-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}

.gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery .group-meta .view-tour-video {
    left: 95px !important;
}

.gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery .group-meta .list-gallery img,
.gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery .group-meta.view-tour-video img {
    max-width: 20px;
    min-height: auto !important;
    background: unset !important;
}

/* Carousel Gallery */

.container-images-gallery.owl-carousel .owl-nav {
    position: absolute;
    right: 0%;
    top: 50%;
    width: 100%;
}

.container-images-gallery.owl-carousel .owl-nav .owl-next,
.container-images-gallery.owl-carousel .owl-nav .owl-prev {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-50%);
    color: var(--theme-primary-color);
    background-color: #fff;
    border: none;
    font-size: 20px;
    text-align: center;
    padding: 0;
    display: flex;
    width: 50px;
    height: 50px;
    justify-content: center;
    align-items: center;
    border-radius: 25px;
}

.container-images-gallery.owl-carousel .owl-nav .owl-next {
    left: unset;
    right: 0;
}

.container-images-gallery.owl-carousel .owl-nav .owl-prev:before,
.container-images-gallery.owl-carousel .owl-nav .owl-next:before,
.container-images-gallery.owl-carousel .owl-dots .owl-dot:before {
    display: none;
}

.container-images-gallery.owl-carousel .owl-nav .owl-prev:hover,
.container-images-gallery.owl-carousel .owl-nav .owl-next:hover{
    color: #fff;
    background-color: var(--theme-primary-color);
}

.container-images-gallery.owl-carousel {
    margin: 0 !important;
    overflow: hidden;
}

/* End Carousel */

.single-listing-element .tfvt-listing-header {
    margin-bottom: 17px;
}

.single-listing-element .tfvt-listing-header h3 {
    font-size: 24px;
    font-weight: 700;
    line-height: 30px;
    color: #000;
}

.single-listing-element .tfvt-listing-info {
    font-size: 16px;
    font-weight: 400;
    line-height: 34px;
}

.listing-description {
    margin-bottom: 60px;
}

.listing-description .tfvt-listing-info p {
    margin-bottom: 50px;
}

.listing-description .tfvt-listing-info p.mb26 {
    margin-bottom: 26px;
}

.listing-description .tfvt-listing-info h1,
.listing-description .tfvt-listing-info h2,
.listing-description .tfvt-listing-info h3,
.listing-description .tfvt-listing-info h4,
.listing-description .tfvt-listing-info h5,
.listing-description .tfvt-listing-info h6 {
    margin-bottom: 14px;
    font-size: 20px;
    line-height: 30px;
    font-weight: 700;
    color: #000;
}

.listing-description .tfvt-listing-info ul {
    margin-top: 12px;
}

.listing-description .tfvt-listing-info ul li {
    font-size: 16px;
    font-weight: 600;
    line-height: 52px;
    color: #000;
    padding-left: 23px;
    position: relative;
}

.listing-description .tfvt-listing-info ul li::after {
    content: '';
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--theme-primary-color);

}

.single-to_book .page-title {
    display: none !important;
}

.single-to_book #themesflat-content {
    padding-top: 0px;
}

.image-featured {
    width: 100%;
    height: auto;
    object-fit: cover;
    max-height: 287px;
}

/* List Tabs */
#tabs-single-tour{
    border: 0;
    background: transparent;
    padding: 0;
}

.ui-tabs .ui-tabs-panel {
    padding: 0;
}

.ui-tabs .ui-tabs-panel .container {
    padding: 0;
}

.listing-tab-item {
    margin-bottom: 120px;
}

#tabs-single-tour div.listing-tab-item {
    padding-top: 0;
    margin-top: -50px;
}

#tabs-single-tour div.listing-tab-item.fixed-show {
    position: fixed;
    width: 100%;
    z-index: 100;
    box-shadow: none;
    top: -100px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#tabs-single-tour > div > .container {
    padding: 0;
}

#tabs-single-tour .single-listing-element.listing-info-header {
    border-bottom: none;
    padding: 0px 0 50px;
    margin-bottom: 0;
}

#tabs-single-tour #tour-infomation .tfvt-listing-gallery-single {
    padding-bottom: 43px;
}


#tabs-single-tour #tour-infomation .tfvt-listing-gallery-single .container-images-gallery .gallery-image {
    height: 482px;
    object-fit: cover;
}

#tabs-single-tour #tour-infomation .tfvt-listing-gallery-single .container-images-gallery {
    width: calc(100% + 30px);
    gap: 0;
    row-gap: 30px;
    margin-left: -30px !important;
}

#tabs-single-tour #tour-infomation .tfvt-listing-gallery-single .container-images-gallery .gallery-image:nth-child(6n+6),
#tabs-single-tour #tour-infomation .tfvt-listing-gallery-single .container-images-gallery .gallery-image:nth-child(6n+1) {
    max-width: calc(49.9% - 30px);
    width: calc(49.9% - 30px);
    margin-left: 30px;
}

#tabs-single-tour #tour-infomation .tfvt-listing-gallery-single .container-images-gallery .gallery-image,
#tabs-single-tour #tour-infomation .tfvt-listing-gallery-single .container-images-gallery .gallery-image:nth-child(6n+5)
#tabs-single-tour #tour-infomation .tfvt-listing-gallery-single .container-images-gallery .gallery-image:nth-child(6n+4),
#tabs-single-tour #tour-infomation .tfvt-listing-gallery-single .container-images-gallery .gallery-image:nth-child(6n+3),
#tabs-single-tour #tour-infomation .tfvt-listing-gallery-single .container-images-gallery .gallery-image:nth-child(6n+2) {
    max-width: calc(25.05% - 30px);
    width: calc(25.05% - 30px);
    margin-left: 30px;
}


.listing-tab-item .list-tab {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    background: #FFFFFF;
    box-shadow: 0px 4px 16px 0px #0000000D;
    padding: 11px 15px;
    border: 0;
    border-radius: 48px;
    gap: 45px;
    row-gap: 20px;
}

.ui-helper-clearfix:before, 
.ui-helper-clearfix:after {
    display: none;
}

.listing-tab-item .list-tab .tab-item  {
    display: flex;
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 48px;
    float: none;
    flex-shrink: 0;
}

.listing-tab-item .list-tab .tab-item:last-child {
    margin-right: 0;
}

.listing-tab-item .list-tab .tab-item.ui-tabs-active, .listing-tab-item .list-tab .tab-item:hover{
    background: #F4F6F8;
    border-radius: 48px;
}

.listing-tab-item .list-tab .tab-item .item-nav{
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
    color: #000;
    cursor: pointer;
    padding: 26px 45px;
    display: inline-flex;
    align-items: center;
    gap: 16px;
}

@media only screen and (max-width: 767px) { 
    .listing-tab-item .list-tab .tab-item .item-nav { 
        padding: 20px 30px;
    }
}


/* Short Gallery */

#tabs-single-tour #shot-gallery .tfvt-listing-gallery-single .container-images-gallery {
    gap: 0;
    row-gap: 30px;
    margin-left: -30px;
}

#tabs-single-tour #shot-gallery .container {
    padding: 0;
}

#tabs-single-tour #shot-gallery .tfvt-listing-gallery-single .container-images-gallery .gallery-image:nth-child(4n+1),
#tabs-single-tour #shot-gallery .tfvt-listing-gallery-single .container-images-gallery .gallery-image:nth-child(4n){
    max-width: calc(62.3% - 30px);
    width: calc(62.3% - 30px);
    margin-left: 30px;
}

#tabs-single-tour #shot-gallery .tfvt-listing-gallery-single .container-images-gallery .gallery-image {
    max-width: calc(37.7% - 30px);
    width: calc(37.7% - 30px);
    margin-left: 30px;
}

/* Tour Plan */
.listing-tour-plan {
    margin-bottom: 60px;
}

.listing-tour-plan .tfvt-listing-header {
    margin-bottom: 41px;
}

.listing-tour-plan .tfvt-listing-header h3 {
    font-size: 32px;
}

.listing-tour-plan .tour-plans {
    position: relative;
    list-style: none;
    margin-left: 56px;
}

.listing-tour-plan .tour-plan-item {
    position: relative;
    counter-increment: list;
    padding-left: 102px;
    min-height: 94px;
}

.listing-tour-plan .tour-plan-item > div {
    font-size: 16px;
    font-weight: 400;
    line-height: 34px;
    color: #4F545A;
} 

.listing-tour-plan .tour-plan-item ul {
    margin-top: 12px;
}

.listing-tour-plan .tour-plan-item ul li {
    font-size: 16px;
    font-weight: 600;
    line-height: 52px;
    color: #000;
    padding-left: 23px;
    position: relative;
}

.listing-tour-plan .tour-plan-item ul li::after {
    content: '';
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--theme-primary-color);

}

.listing-tour-plan .tour-plan-item:not(:last-child) {
    padding-bottom: 60px;
}

.listing-tour-plan .tour-plan-item::before {
    display: inline-block;
    content: '';
    position: absolute;
    left: 0;
    width: 5px;
    height: 100%;
    top: 5px;
    border-left: 1px dotted #CED1D4;
    border-right: 1px dotted #CED1D4;
}

.listing-tour-plan .tour-plan-item:last-child::before {
    border: 0;
}

.listing-tour-plan .tour-plan-item::after {
    content: attr(data-plan);
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 5px;
    left: -50px;
    width: 100px;
    height: 94px;
    font-size: 25px;
    line-height: 34px;
    font-size: 25px;
    font-weight: 700;
    color: #FFF;
    text-align: center;
    border-radius: 7px;
    border: 2px solid var(--theme-primary-color);
    background-color: var(--theme-primary-color);
}

.listing-tour-plan .tour-plans strong {
    display: block;
    font-size: 20px;
    font-weight: 700;
    line-height: 30px;
    color: #000;
    margin-bottom: 19px;
}

/* Tour Location */
.listing-tour-location {
    margin-bottom: 60px;
}

.listing-tour-location .tfvt-listing-header h3 {
    font-size: 32px;
}

.listing-tour-location .tfvt-listing-info .listing-address {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 22px 13px;
    font-size: 18px;
    font-weight: 500;
    line-height: 20px;
    color: #0E0D0B;
}

.listing-tour-location .tfvt-listing-info .listing-address svg {
    font-size: 11px;
}

/* Tour Calendar */
.listing-tour-calendar {
    margin-bottom: 60px;
}

.listing-tour-calendar .tfvt-listing-header h3 {
    font-size: 32px;
}


.listing-tour-calendar .cal-week-name {
    background-color: var(--theme-primary-color);
    color: #fff;
}

.listing-tour-calendar .cal-month-bar {
    background-color: #fff;
    color: #000;
}

.view-rate-details {
    font-size: 16px !important;
    padding: 20px !important;
    border-radius: 6px;
    box-shadow: 0px 3px 30px 0px #0000000D;
    border: none;
    top: 100%;
    width: 290px;
}
  
.view-rate-details h4 {
    font-size: 20px;
    margin: 0;
    padding-bottom: 0 !important;
}
  
  
.view-rate-details .rate_price_general > span {
    font-size: 14px;
    line-height: 22px;
    display: inline;
    text-decoration: none;
}
  
.view-rate-details .rate_price_general > span.rate_details_label {
    display: block;
    color: #1C231F;
    font-weight: 500;
    font-size: 16px;
    margin-bottom: 5px;
}
  
.view-rate-details .rate_price_general > span.price_age_title {
    position: relative;
}
  
.view-rate-details .rate_price_general > span.price_age_title:after {
    content: ':';
    padding-left: 1px;
    font-weight: 500;
}
  

/* Tour FAQ */
.listing-tour-faq {
    margin-bottom: 60px;
}

.listing-tour-faq .tfvt-listing-header {
    margin-bottom: 41px;
}

.listing-tour-faq .tfvt-listing-header h3 {
    font-size: 32px;
}

.listing-tour-faq .accordion .card {
    margin-bottom: 16px;
    border: 1px solid #ebeced;
    border-radius: 0;
}

.listing-tour-faq .accordion .card .card-header {
    background-color: #fff;
    border-bottom: 0;
    padding: 31px 36px;
}

.listing-tour-faq .accordion .card .card-header .text-left {
    font-family: 'DM Sans';
    font-size: 20px;
    font-weight: 500;
    line-height: 26.04px;
    color: #1B1B1B;
    margin-bottom: 0;
    position: relative;
    padding-right: 45px;
}

.listing-tour-faq .accordion .card .card-header .text-left::after {
    content: '\f106';
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-family: 'Font Awesome 5 Pro';
    font-size: 20px;
    font-weight: 500;
    color: #000D44;
}

.listing-tour-faq .accordion .card .card-header .text-left.collapsed::after {
    content: '\f107';
}



.listing-tour-faq .accordion .card .card-body {
    font-family: 'DM Sans';
    font-size: 16px;
    font-weight: 400;
    line-height: 28px;
    color: #83827F;
    padding: 0px 36px 55px;
    margin-top: -8px;
}


.listing-tour-faq .accordion .card:has(.show) {
    background-color: #fff ;
    box-shadow: 0px 14px 50px 0px #040B111F;
    border-color: transparent;
}


/* Review & Rating */
.listing-tour-review .tfvt-listing-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.listing-tour-review .tfvt-listing-header h3 {
    font-size: 24px;
    font-weight: 700;
    line-height: 26px;
    margin: 0;
    border-left: 2px solid var(--theme-primary-color);
    padding-left: 8px;
}

.listing-tour-review .tfvt-listing-header .rating-review {
    gap: 14px;
    font-size: 16px;
    font-weight: 700;
    line-height: 30px;
    color: #000000;
}

.listing-tour-review .comment-respond {
    background: #F6F6F6;
    padding: 40px;
}

.listing-tour-review .comment-title {
    font-size: 24px;
}

.listing-tour-review .comments-area ol.comment-list article .comment_content .comment_meta .comment_author {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    line-height: 25px;
    color: #121416;
}

.listing-tour-review .comment-respond .comment-reply-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 26px;
    border-left: 2px solid var(--theme-primary-color);
    padding-left: 5px;
}

.logged-in-as,
.comment-form-rating {
    width: 100%;
}

.comment-rating-stars .star, 
.comment-total-rating-stars .star {
    font-size: 15px;
    margin-right: 1.5px;
}

.listing-tour-review .comment-respond .comment-form .comment-form-rating label {
    display: block;
    font-size: 16px;
    font-weight: 700;
    line-height: 20px;
}

.listing-tour-review .comment-respond .comment-form .comment-form-comment label,
.listing-tour-review .tfvt-listing-info h3,
.listing-tour-review .commentlist .comment .comment-body .comment-meta .comment-author .says {
    display: none;
}

.listing-tour-review .comment-respond .comment-form .comment-form-comment textarea[name=comment] {
    width: 100%;
    border: 0;
}

.listing-tour-review .comment-respond .comment-form .form-submit input[name=submit] {
    width: 100%;
    border-radius: 0;
    background: var(--theme-primary-color);
    font-size: 15px;
    font-weight: 700;
    line-height: 18px;
    text-align: center;
    text-transform: uppercase;
}

.listing-tour-review .commentlist {
    list-style: none;
    padding-left: 0;
    margin-bottom: 80px;
}

.listing-tour-review .commentlist .comment {
    padding: 20px 0;
    border-bottom: 1px solid #eeeeee;
}

.listing-tour-review .commentlist .comment .comment-body .comment-meta .comment-author .avatar {
    max-width: 80px;
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.listing-tour-review .commentlist .comment .comment-body .comment-meta .comment-author .fn a {
    font-size: 16px;
    font-weight: 700;
    line-height: 25px;
    text-align: left;
    color: #000000;
}

.listing-tour-review .commentlist .comment .comment-body .comment-meta .comment-metadata {
    padding-left: 80px;
}

.listing-tour-review .commentlist .comment .comment-body .comment-meta .comment-metadata a {
    font-size: 12px;
    font-weight: 700;
    line-height: 20px;
    text-align: left;
    text-transform: uppercase;
    color: #949392;
}

.listing-tour-review .commentlist .comment .comment-body .comment-content,
.listing-tour-review .commentlist .comment .comment-body .reply {
    padding-left: 80px;
}

.listing-tour-review .commentlist .comment .comment-body .comment-content p {
    display: flex;
    flex-direction: column-reverse;
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    color: #4F545A;
}

.listing-tour-review .commentlist .comment .comment-body .comment-content .comment-total-rating-value {
    font-size: 18px;
    font-weight: 700;
    line-height: 20px;
    color: #000000;
    padding-left: 10px;
}

.listing-tour-review .commentlist .comment .comment-body .reply a {
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    color: #4F545A;
}

/* Included/Exclude */
.listing-tour-included-exclude {
    margin-bottom: 65px;
}

.listing-tour-included-exclude .tfvt-listing-header {
    margin-bottom: 36px;
}

.listing-tour-included-exclude .tfvt-listing-info .included-item,
.listing-tour-included-exclude .tfvt-listing-info .exclude-item {
    margin-bottom: 7px;
}

.listing-tour-included-exclude .tfvt-listing-info .included-item .included-name,
.listing-tour-included-exclude .tfvt-listing-info .exclude-item .exclude-name {
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    text-align: left;
    padding-left: 10px;
}

/* Amenities */
.listing-tour-amenities {
    margin-bottom: 60px;
}

.listing-tour-amenities .tfvt-listing-header {
    margin-bottom: 33px;
}

.listing-tour-amenities .tfvt-listing-info {
    row-gap: 15px;
}

.listing-tour-amenities .tfvt-listing-info .amenities-item .amenities-name {
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    text-align: left;
    padding-left: 20px;
}

/* Booking Form */

.tfvt_single_sidebar .widget.widget_babe_widget_booking_form{
    background: #F8F8F8;
    padding: 45px 40px;
    box-shadow: none;
}

.tfvt_single_sidebar .widget_babe_widget_booking_form .widget-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 20px;
    border-left: 2px solid var(--theme-primary-color);
}

.booking-form-block .booking_form_input_label {
    font-size: 18px;
    font-weight: 700;
    line-height: 30px;
    color: #131111;
}

.tfvt_single_sidebar .widget_babe_widget_booking_form .booking-form-block.booking-date-block{
    background: #fff;
    padding: 0 19px;
    border-radius: 5px;
    border: 1px solid #E6E6E6;
    margin-bottom: 33px;
}

.tfvt_single_sidebar .widget_babe_widget_booking_form .booking-form-block.booking-date-block .booking_form_input_label{
    display: none;
}

.tfvt_single_sidebar .widget_babe_widget_booking_form .booking-form-block.booking-date-block .booking-date{
    flex-wrap: nowrap;
    justify-content:flex-start;
}

.tfvt_single_sidebar .widget_babe_widget_booking_form .booking-form-block.booking-date-block .booking-date .fa-calendar-alt:before{
    color: var(--theme-primary-color);
}

.tfvt_single_sidebar .widget_babe_widget_booking_form .booking-form-block.booking-date-block .booking-date input[type="text"].booking_date{
    width: 100%;
    margin: 0;
    border: 0;
    padding: 15px;
    font-size: 15px;
    font-weight: 500;
    line-height: 26px;
    color: #838383;    
}

.tfvt_single_sidebar .widget_babe_widget_booking_form .booking-form-block, .tfvt_single_sidebar .widget_babe_widget_booking_form .booking-form-block .list_service{
    border: 0;
    margin-bottom: 6px;
}

.tfvt_single_sidebar .widget_babe_widget_booking_form .submit_group .booking_form_submit{
    width: 100%;
}

.tfvt_single_sidebar .widget_babe_widget_booking_form .booking-form-block .input_select_field .input_select_input{
    width: 100%;
    border-radius: 5px;
    border: 1px solid #E6E6E6;
    margin: 0;
    padding: 7px 14px;
}

.input_select_field .input_select_title_value {
    padding: 0px;
    padding-right: 10px;
    flex-basis: 60%;
    flex-grow: 1;
    flex-shrink: 1;
}

.input_select_field .input_select_wrapper i, .input_select_field .input_select_wrapper svg {
    right: 1.5em;
    top: 40%;
    font-weight: 400;
}

.tfvt_single_sidebar .widget_babe_widget_booking_form #total_group #booking_form_total{
    color: var(--theme-primary-color);
    font-weight: 700;
}

#booking-guests-result,
.list_service_prices .service_price_line label,
.list_service_title label,
.list_service_title h4 ,
.select_guests_block .input_select_title_value {
    font-size: 15px;
    font-weight: 500;
    line-height: 26px;
    color: #838383;    
}

.list_service_title label input {
    margin-right: 10px;
}

.booking_form_input_label {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 0;
    color: #131111;
}

#booking_form_total .currency_amount {
    color: var(--theme-primary-color);
}

.cal-cell.cal-cell-active.cal-cell-selected, .cal-cell.cal-cell-disabled-first.cal-cell-selected {
    background-color: var(--theme-primary-color);
}

/* Responsive */
@media only screen and (max-width: 1800px) {
    .listing-tab-item .list-tab {
        flex-wrap: nowrap;
        justify-content: flex-start;
        gap: 15px;
        overflow-x: auto;
    }
}

@media only screen and (max-width: 1500px) {
    .listing-tab-item .list-tab {
        border-radius: 0;
    }
    #tabs-single-tour div.listing-tab-item {
        margin-top: 0px;
    }
}

@media only screen and (max-width: 1200px) {
    .gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery .gallery-image {
        max-width: 300px !important;
    }
}

@media only screen and (max-width: 991px) {

    .tfvt_single_sidebar {
        margin-top: 30px;
    }
    
    .single-listing-element .infor-header-right {
        float: none;
        margin-top: 20px;
    }

    .listing-tour-review .comment-respond {
        background: #F6F6F6;
        padding: 25px;
    }
}

@media only screen and (max-width: 767px) {
    .gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery {
        gap: 10px;
        padding: 0 10px;
    }

    .gallery-style-2 .tfvt-listing-gallery-single .container-images-gallery .gallery-image {
        max-width: 100% !important;
    }

    .cal-month-block .cal-cell .cal-cell-pricefrom {
        font-size: 11px;
    }
   
}

@media only screen and (max-width: 500px) { 
    .listing-tour-review .tfvt-listing-header {
        flex-wrap: wrap;
        gap: 15px;
    }
    .listing-tour-review .tfvt-listing-header .rating-review {
       flex-wrap: wrap;
    }

    .listing-tab-item .list-tab .tab-item {
        width: 100%;
        justify-content: center;
    }

    .listing-tour-plan .tour-plan-item::after {
        left: -35px;
        width: 70px;
        height: 70px;
    }

    .listing-tour-plan .tour-plans {
        margin-left: 40px;
    }

    .listing-tour-plan .tour-plan-item {
        padding-left: 55px;
    }

    .listing-tour-calendar .tfvt-listing-info {
        overflow-x: auto;
    }
    
    .listing-tour-calendar .tfvt-listing-info #av-cal {
        width: 500px;
    }
    
    .cal-cell:hover .view-rate-details {
        left: 50%;
        transform: translateX(-50%);
    }

    .view-rate-details .rate_price_general > span {
        font-size: 12px;
    }

    .view-rate-details {
        width: 250px;
    }
}

/* Sidebar */

.tfvt-single-tour-sidebar:not(:last-child) {
    margin-bottom: 30px;
}

.tfvt-single-tour-sidebar .widget {
    background: #fff;
    box-shadow: 0px 9px 46px 0px #0000000F;
    padding: 45px 30px;
}

.tfvt-single-tour-sidebar .widget .widget-title,
.tfvt-single-tour-sidebar .widget h2 {
    font-size: 18px;
    font-weight: 700;
    line-height: 30px;
    color: #131111;
    padding-left: 19px;
    letter-spacing: 0;
    margin-bottom: 27px;
    border-left: 2px solid var(--theme-primary-color);
}


.tfvt-single-tour-sidebar .widget:last-child {
    margin-bottom: 0;
}

.widget-recent-tour ul {
    margin: 0;
}

.widget-recent-tour ul li {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 31px;
    padding: 0;
}

.widget-recent-tour ul li:last-child {
    margin-bottom: 0;
}

.widget-recent-tour ul li .thumb {
    margin-right: 24px;
}

.widget-recent-tour ul li .thumb img {
    max-width: 103px;
    border-radius: 4px;
}

.widget-recent-tour ul li .content h6 {
    font-size: 15px;
    font-weight: 600;
    line-height: 25.8px;
    color: #081E2A;
    margin-bottom: 6px;
}

.widget-recent-tour ul li .content .rating-review {
    line-height: 1;
    margin: 4px 0;
}

.widget-recent-tour ul li .content .rating-review span {
    font-size: 14px;
    margin-right: 5.5px;
}

.widget-recent-tour ul li .content .rating-review i.far {
    font-weight: 600;
    color: #D8D5CE;
}

.widget-recent-tour ul li .content .rating-review i.fas {
    font-weight: 600;
    color: #FFB41B;
}

.widget-recent-tour ul li .content .price {
    font-size: 14px;
    font-weight: 400;
    line-height: 25.8px;
    color: #000;
}

.widget-recent-tour ul li .content .price > span {
    margin-right: 2px;
}

.widget-recent-tour ul li .content .price .price-content .currency_amount {
    font-size: 15px;
    font-weight: 400;
    line-height: 25.8px;
    color: var(--theme-primary-color);
}


.widget-list-services {
    margin: 0 !important;
}

.sidebar .widget .widget-list-services h2 {
    font-size: 18px;
    font-weight: 700;
    line-height: 30px;
    color: #131111;
    padding-left: 19px;
    letter-spacing: 0;
    margin-bottom: 27px;
}

.widget .list-services {
    margin-left: -8px;
}

.list-services li span {
    font-size: 16px;
    font-weight: 500;
    line-height: 30px;
    color: #44454F;
}

.list-services li:not(:last-child) {
    margin-bottom: 10px;
}

.list-services li img,
.list-services li svg {
    margin-right: 10px;
    max-width: 27px;
}

#booking-times {
    gap: 10px;
}

.booking-form-block.booking-times-block .booking_form_input_label {
    margin-right: 20px;
}

#booking-times .booking_time_line {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    gap: 5px;
}

#booking-times .booking_time_line label {
    margin-bottom: 0;
}

@media only screen and (max-width: 991px) { 
    .single-listing-element .infor-header-left .tfvt-listing-info {
        margin-top: 30px;
    }
}