/* Sidebar */
.tfvt-sidebar #search-box .search-box-header h3,
.tfvt-sidebar h2,
.tfvt-sidebar .widget-title {
    font-weight: 500;
    font-size: 18px;
    line-height: 22.68px;
    color: #24272C;
    margin-bottom: 10px !important;
}

.tfvt-sidebar .widget-tf-booking-price-filter .widget-title {
    margin-bottom: 15px;
}


.widget-tf-booking-search-filter .widget-title {
    position: relative;
    cursor: pointer;
}

.widget-tf-booking-search-filter .widget-title::after  {
    content: "\f077";
    font-family: 'Font Awesome 5 Pro';
    position: absolute;
    right: 15px;
    top: 0px;
    background: transparent !important;
    color: #121212;
    -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;
}

.widget-tf-booking-search-filter .widget-title.active::after  {
    /* content: "\f078"; */
    transform: rotate(180deg);
}


.filter-content > .tfvt-sidebar:not(:last-child),
.tfvt_sidebar > .tfvt-sidebar:not(:last-child) {
    margin-bottom: 24px;
}


/*Widget Search form */
.tfvt-sidebar #search-box {
    width: 100%;
    padding: 0;
    margin: 0;
}


.tfvt-sidebar #search-box .input-group {
    display: block;
}

.tfvt-sidebar #search_form .input-group > div,
.tfvt-sidebar #search_form .input-group .add_input_field {
    border: none;
    padding: 0;
    margin: 0;
    margin-bottom: 24px;
}

.tfvt-sidebar #search_form .input-group .search_guests_field > div,
.tfvt-sidebar #search_form .input-group .search-date .search_date,
.tfvt-sidebar .input-group .add_input_field .add_ids_title {
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #121212;
    border: 1px solid #DFE2E7;
    padding: 10px 16px;
    border-radius: 8px;
    width: 100%;
}

.tfvt-sidebar #search_form .input-group .add_input_field .add_ids_title i {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    padding: 0;
    color: #121212;
    font-size: 16px;
    font-weight: 500;
    font-family: 'Font Awesome 5 Pro';
}

.tfvt-sidebar #search_form .input-group .add_input_field .add_ids_list {
   width: 100%;
}

.tfvt-sidebar #search_form .input-group .search_guests_field > div,
.tfvt-sidebar #search_form .input-group .search-date .search_date {
    width: calc(100% );
    margin: 0;
    padding-left: 36px;
}

.tfvt-sidebar #search_form .input-group .search_guests_field > div,
.tfvt-sidebar #search_form .input-group .search-date {
    position: relative;
}

.tfvt-sidebar #search_form .input-group .search_guests_field i,
.tfvt-sidebar #search_form .input-group .search-date i {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 15px;
}

.daterangepicker {
    margin-left: 0;
}

.tfvt-sidebar #search_form .search_advanced_field  {
    display: none !important;
}


.tfvt-sidebar #search_form .search_guests_select_wrapper {
    position: absolute;
    width: 100%;
    border: 1px solid #DFE2E7;
    padding: 20px;
    margin-top: 11px;
    margin-left: 0px;
    left: 0;
}

.tfvt-sidebar #search_form .input-group > div.submit button {
    border-radius: 8px;
    padding: 10px 15px;
    width: 100%;
    text-align: center;
    justify-content: center;
}

.tfvt-sidebar #search_form .submit i {
    display: none;
}

.tfvt-sidebar .search-field-inner .title-field,
.tfvt-sidebar .search-field-inner:has([data-tax="ba_booking-type"]),
.tfvt-sidebar .search-field-inner:has([data-tax="ba_booking-locations"]),
.tfvt-sidebar [data-tax="ba_booking-type"],
.tfvt-sidebar [data-tax="ba_booking-locations"],
.tfvt-sidebar #search_form .submit {
    display: none !important;
}


/* Custom checkbox */
.tf-search-filter-terms input[type="checkbox"] {
	visibility: hidden;
	width: 20px;
	height: 20px;
	margin-right: 10px;
    border-radius: 6px;
	cursor: pointer;
	top: 1px;
    position: relative;
}

.tf-search-filter-terms input[type='checkbox']:checked {
    background: var(--theme-primary-color);
    border-color: var(--theme-primary-color);
}


.tf-search-filter-terms input[type='checkbox']:checked:before {
    display: block;
}

.tf-search-filter-terms input[type="checkbox"]::before {
    border-radius: 6px;
    content: '';
    width: 20px;
    height: 20px;
    border: 1px solid #E4E4E4;
    background: #fff;
    display: block;
    opacity: 1;
    z-index: 5;
    visibility: visible;
    transform: translate(0%, -50%) rotate(0deg);
    -webkit-transform: translate(0%, -50%) rotate(0deg);
    -ms-transform: translate(0%, -50%) rotate(0deg);
    position: absolute;
    top: 50%;
    left: 0;
}
  
/*Checkmark of the fake checkbox*/
.tf-search-filter-terms input[type="checkbox"]::after {
    height: 5px;
    width: 8px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-55deg);
    display: block;
    opacity: 0;
    z-index: 5;
    visibility: hidden;
    content: '';
    position: absolute;
    left: 6px;
    top: 6px;
}

.daterangepicker {
    z-index: 999999;
}

/*Hide the checkmark by default*/
.tf-search-filter-terms input[type="checkbox"] + label::after {
    content: none;
}

/*Unhide on the checked state*/
.tf-search-filter-terms .term_item_checkbox.active-checkbox input[type="checkbox"]::after,
.tf-search-filter-terms input[type="checkbox"]:checked::after {
    opacity: 1;
    visibility: visible;
}

.tf-search-filter-terms .term_item_checkbox.active-checkbox input[type="checkbox"]:before,
.tf-search-filter-terms input[type="checkbox"]:checked:before {
    background: var(--theme-primary-color);
    border-color: var(--theme-primary-color);
}

/*Adding focus styles on the outer-box of the fake checkbox*/
.tf-search-filter-terms input[type="checkbox"]:focus + label::before {
    outline: none;
}

.tf-search-filter-terms .term_item  {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    margin-bottom: 16px;
    font-weight: 500;
    font-size: 16px;
    line-height: 30px;
    color: #26232A;
}

.tf-search-filter-terms .term_item label {
    margin-bottom: 0;
    font-weight: 400;
    font-size: 16px;
    line-height: 22.4px;
    color: #5F615E;
}

.tf-search-filter-terms #filter_ba_booking-locations .term_item.term_item_level_0 {
    font-weight: 700;
}


/* price */

.tf-booking-price-filter .text-price,
.tf-booking-price-filter #tf_range_price {
    padding: 0;
    margin: 0px;
    font-weight: 500;
    font-size: 16px;
    line-height: 30px;
    color: #303134;
    border: none;
}

.tf-booking-price-filter .tf_price_slider_label {
    margin-top: 14px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
    font-size: 35px;
}

.tf-booking-price-filter .tf_price_slider_label .lable-text {
    width: calc(50% - 15px);
    border: 1px solid #DFE2E7;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #121212;
    padding: 7px 12px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    gap: 5px;
    align-items: flex-end;
}

.tf-booking-price-filter .tf_price_slider_label .lable-text > span:last-child {
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    color: #B1B1B1;
}

.tf-booking-price-filter .tf_price_slider_label .lable-text span span {
    font-size: 16px;
    font-weight: 600;
    line-height: 26px;
    color: #24272C;
    margin-right: 5px;
}

.tf-booking-price-filter .tf_price_slider_label .lable-text:last-child {
    margin-right: 0;
}

.tf-booking-price-filter .ui-slider-range {
	height: 4px;
}
.tf-booking-price-filter .ui-slider-range {
	background: var(--theme-primary-color);
}

.tf-booking-price-filter .tf_price_slider .ui-slider-handle ,
.tf-booking-price-filter .ui-slider-handle {
	border-radius: 50%;
	background: var(--theme-primary-color);
    border-color: #fff;
    border-width: 2px;
    width: 20px;
    height: 20px;
}

.tf-booking-price-filter .ui-widget-content {
	border: none;
}
.tf-booking-price-filter .ui-widget.ui-widget-content {
	border: none;
	margin: 10px 7px 0;
	background: rgba(95, 108, 90, 0.15);

	height: 4px;
	border-radius: 100px;
}

.tf-booking-price-filter #tf_range_price:focus {
	box-shadow: none;
	outline: none;
}

.tf-booking-price-filter .ui-slider-horizontal .ui-slider-handle {
	top: -7px;
}

.tour-listing-sidebar .tfvt-sidebar {
    margin-bottom: 25px;
}

.hide-form {
    display: none;
}

/* search form */
.widget-tf-booking-search-form .input-group > * {
    width: 100%;
}

.widget-tf-booking-search-form .search-field-inner i {
    display: none;
}

.widget-tf-booking-search-form #search_form .input-group>div.search-field-inner {
    border: 1px solid #E7EAF3;
    border-radius: 6px;
    margin: 0;
    margin-bottom: 20px;
    padding: 14px 20px;
}

.widget-tf-booking-search-form #search_form .input-group>div.search-field-inner:has(.search_advanced_field) {
    border: none;
    display: none;
}

.widget-tf-booking-search-form #search_form .title-field {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    font-size: 14px;
    color: #4F545A;
}

.widget-tf-booking-search-form #search_form .title-field img {
    margin-right: 10px;
}

.widget-tf-booking-search-form .search-field-inner i.fa-chevron-down,
.widget-tf-booking-search-form .search-field-inner i.fa-chevron-up {
    display: inline-block;
}

.widget-tf-booking-search-form #search_form input,
.widget-tf-booking-search-form #search_form .input-group .search-date .search_date {
    width: 100%;
    margin-bottom: 0;
}

.widget-tf-booking-search-form #search_form .search_advanced_select_wrapper {
    margin-top: 82px;
    margin-left: 0;
}

.widget-tf-booking-search-form #search_form {
    padding-bottom: 0;
}

.widget-tf-booking-search-form #search_form .search_guests_field,
.widget-tf-booking-search-form #search_form input, 
.widget-tf-booking-search-form #search_form .input-group .search-date .search_date,
.widget-tf-booking-search-form #search_form .add_ids_title_value {
    font-weight: 600;
    color: #041C29;
    font: 16px;
}