html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    text-decoration: none;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
    font-family: "Noto Sans";
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

img {
    max-width: 100%;
}

/*************/
.banner-search-sec {
    position: relative;
    padding: 50px 0 0px;
    background: rgba(255, 122, 61, 1);
}

.listing-list-wrapper ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

.listing-list-wrapper ul li a {
    padding: 12px 24px;
    text-decoration: none;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    border: solid 1px #fff;
    border-radius: 4px;
}

.listing-list-wrapper ul li a img {
    width: 24px;
}

.listing-list-wrapper ul li.active a {
    background-color: rgba(255, 255, 255, 1);
    color: rgba(255, 122, 61, 1);
}

.main-listing-sec {
    padding: 80px 0;
    position: relative;
}

.hotel-filter{
	display: none;
}
.filter-item {
    border-radius: 6px;
    border-bottom: 1px solid rgba(224, 224, 224, 1);
    box-shadow: 0px 8px 8px 0px rgba(50, 50, 71, 0.06);
    box-shadow: 0px 4px 4px 0px rgba(50, 50, 71, 0.08);
}

.filter-options {
    display: none;
    padding: 18px;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 20px;
    overflow: hidden;
}

.toggle-button {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 500;
    line-height: 17.07px;
    letter-spacing: 0.01em;
    text-align: left;
    border-bottom: 1px solid rgba(224, 224, 224, 1);
    padding: 14px 18px 14px 18px;
    cursor: pointer;
}


.col-lg-9.package-full-width {
    width: 100%;
}
.custom-checkbox {
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 16px;
    justify-content: space-between;
}

.custom-checkbox input {
    display: none;
    /* Hide the default checkbox */
}

.checkmark {
    height: 20px;
    width: 20px;
    border: 1px solid rgba(189, 189, 189, 1);
    border-radius: 5px;
    margin-right: 10px;
    position: relative;
    display: inline-block;
}

.custom-checkbox input:checked+.checkmark {
    background-color: rgba(255, 122, 61, 1);
    border-color: rgba(255, 122, 61, 1);
}

.checkmark::after {
    content: "";
    position: absolute;
    display: none;
}

.custom-checkbox input:checked+.checkmark::after {
    display: block;
}

.checkmark::after {
    left: 7px;
    top: 3px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

span.check-wrap {
    display: flex;
    align-items: center;
}


.filter-container {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 30px;
    transition: all 0.4s;
}

.filter-title-wrapper h2 {
    font-family: 'Montserrat';
    font-size: 18px;
    font-weight: 600;
    line-height: 21.48px;
    letter-spacing: 0.02em;
    text-align: left;
}

.filter-title-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.filter-title-wrapper .reset-btn {
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 500;
    line-height: 17.07px;
    letter-spacing: 0.01em;
    text-align: left;
    color: rgba(226, 58, 58, 1);
}

.list-info {
    padding: 18px;
    box-shadow: 0px 8px 8px 0px rgba(50, 50, 71, 0.06);
    box-shadow: 0px 4px 4px 0px rgba(50, 50, 71, 0.08);
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 25px;
    border-radius: 6px;
	height: 100%;
}

.price-box {
    padding: 18px;
    box-shadow: 0px 8px 8px 0px rgba(50, 50, 71, 0.06);
    box-shadow: 0px 4px 4px 0px rgba(50, 50, 71, 0.08);
}

.list-info-item.flight-booking {
    align-items: center;
    background-color: transparent;
    display: flex;
    margin: 0px;
    position: relative;
    justify-content: space-between;
}

.list-info-item.flight-booking .flight-details {
    align-items: center;
    background-color: transparent;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 15px;
    position: relative;
}

.list-info-item.flight-booking .departure-info {
    align-items: center;
    background-color: transparent;
    display: inline-flex;
    flex: 0 0 auto;
    flex-direction: column;
    position: relative;
}

.list-info-item.flight-booking .flight-route {
    align-items: center;
    background-color: transparent;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 15px;
    justify-content: center;
    position: relative;
}

.list-info-item.flight-booking .flight-route h3 {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 600;
    line-height: 29.26px;
    letter-spacing: 0.01em;
    text-align: left;
}

.list-info-item.flight-booking .flight-route img.airline-logo {
    background-color: transparent;
    height: 22px;
    position: relative;
    width: 100%;
}

.list-info-item.flight-booking img.flight-image {
    width: 60px;
}

.list-info-item.flight-booking .time {
    font-family: Noto Sans;
    font-size: 14px;
    font-weight: 400;
    line-height: 19.07px;
    letter-spacing: 0.01em;
    text-align: left;
}

.list-info-item.flight-booking .date {
    font-family: Noto Sans;
    font-size: 10px;
    font-weight: 400;
    line-height: 13.62px;
    letter-spacing: 0.01em;
    text-align: left;
}

.list-info hr {
    border: 1px solid rgba(233, 233, 235, 1);
    opacity: 1;
    margin: 0;
}

.tags {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.tags a {
    padding: 12px 15px;
    border-radius: 6px;
    color: rgba(255, 122, 61, 1);
    background: rgba(255, 122, 61, 0.1);
    font-family: 'Noto Sans';
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.02em;
    text-align: left;
}

.tags a.blue {
    background: rgba(97, 179, 255, 0.1);
    color: rgba(97, 179, 255, 1);
}

.tags a.orange {
    color: rgba(255, 122, 61, 1);
    background: rgba(255, 122, 61, 0.1);
}

.tags a.green {
    color: rgba(42, 205, 78, 1);
    background: rgba(42, 205, 78, 0.1);
}

.listing-search-title h2 {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 600;
    line-height: 29.26px;
    text-align: left;
}

.listing-search-title {
    margin-bottom: 15px;
}

.top-filters ul li {
    padding: 14px 18px 14px 18px;
    border-right: 1px solid rgba(255, 122, 61, 1);
    font-family: Noto Sans;
    font-size: 15px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0.02em;
    text-align: left;
}

.top-filters ul {
    display: inline-flex;
    flex-wrap: wrap;
    border-radius: 6px;
    /* overflow: hidden; */
    border: 1px solid rgba(255, 122, 61, 1);
}

.top-filters ul li:last-child {
    border: none;
}

.top-filters ul li.active {
    background: rgba(255, 122, 61, 0.05);
    color: rgba(255, 122, 61, 1);
}

.top-filters {
    margin-bottom: 30px;
}

.price-box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.price-box a.view-btn {
    padding: 14px 18px;
    border-radius: 6px;
    background: rgba(255, 122, 61, 1);
    font-family: Noto Sans;
    font-size: 15px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0.02em;
    text-align: center;
    color: #fff;
}

.price-box h4 {
    font-family: Montserrat;
    font-size: 15px;
    font-weight: 600;
    line-height: 18.29px;
    letter-spacing: 0.01em;
    text-align: center;
    color: rgba(121, 126, 134, 1);
	margin-bottom: 5px;
}

.price-box span.sale-price {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 500;
    line-height: 29.26px;
    letter-spacing: 0.01em;
    text-align: center;
    color: rgba(24, 24, 24, 1);
}

.price-box span.reg-price {
    font-family: Montserrat;
    font-size: 15px;
    font-weight: 600;
    line-height: 18.29px;
    letter-spacing: 0.01em;
    text-align: center;
    text-decoration: line-through;
    color: rgba(24, 24, 24, 1);
}

.price-box .list-price {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 2px;
	margin-bottom: 15px;
}
.listing-userinfo {
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 15px 0;
    justify-content: center;
}

.listing-userinfo span {
    display: flex;
    gap: 5px;
}
.listing-search-form {
    background: rgba(255, 255, 255, 1);
    padding: 12px;
    border-radius: 8px;
    box-shadow: 0px 4px 26px 0px rgba(0, 0, 0, 0.15);
    position: relative;
    bottom: -35px;
    z-index: 9;
}

.form-control {
    border: 1px solid rgba(121, 126, 134, 1);
    padding: 12px;
    font-family: Noto Sans;
    font-size: 14px;
    font-weight: 400;
    line-height: 19.07px;
    letter-spacing: 0.04em;
    text-indent: 25px;
    min-width: 250px;
}

.form-group img {
    position: absolute;
    left: 10px;
    top: 45%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
}

.form-group {
    position: relative;
}

.fields-wrapper {
    display: flex;
    gap: 15px;
    justify-content: space-between;
}

.fields-wrapper button.toggle-swap {
    padding: 12px;
    border-radius: 4px;
    border: 1px solid rgba(121, 126, 134, 1);
    background: transparent;
    display: flex;
    align-items: center;
}

.fields-wrapper button.toggle-swap img {
    position: unset;
    transform: unset;
}

.filter-options.active {
    display: flex;
}

.fields-wrapper .submit-btn {
    padding: 12px 18px;
    border-radius: 6px;
    background: rgba(255, 122, 61, 1);
    font-family: Noto Sans;
    font-size: 15px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0.02em;
    text-align: center;
    color: #fff;
    border: solid 1px rgba(255, 122, 61, 1);
    width: 150px;
}


.select-menu {
    width: 240px;
}

.select-menu .select-btn {
    display: flex;
    height: 55px;
    background: #fff;
    padding: 20px;
    font-size: 18px;
    font-weight: 400;
    border-radius: 6px;
    align-items: center;
    cursor: pointer;
    justify-content: space-between;
    border: solid 1px rgba(189, 189, 189, 1);
}

.select-menu .options {
    position: absolute;
    width: 240px;
    overflow-y: auto;
    max-height: 295px;
    padding: 10px;
    margin-top: 10px;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    animation-name: fadeInDown;
    -webkit-animation-name: fadeInDown;
    animation-duration: 0.35s;
    animation-fill-mode: both;
    -webkit-animation-duration: 0.35s;
    -webkit-animation-fill-mode: both;
    z-index: -1;
}

.select-menu .options .option {
    display: flex;
    height: 55px;
    cursor: pointer;
    padding: 0 16px;
    border-radius: 8px;
    align-items: center;
    background: #fff;
}

.select-menu .options .option:hover {
    background: #f2f2f2;
}

.select-menu .options .option i {
    font-size: 25px;
    margin-right: 12px;
}

.select-menu .options .option .option-text {
    font-size: 18px;
    color: #333;
}

.select-btn i {
    font-size: 25px;
    transition: 0.3s;
}
.listing-userinfo input {
  width: 150px;
}
.select-menu.active .select-btn i {
    transform: rotate(-180deg);
}

.select-menu.active .options {
    display: block;
    opacity: 0;
    z-index: 10;
    animation-name: fadeInUp;
    -webkit-animation-name: fadeInUp;
    animation-duration: 0.4s;
    animation-fill-mode: both;
    -webkit-animation-duration: 0.4s;
    -webkit-animation-fill-mode: both;
}

@keyframes fadeInUp {
    from {
        transform: translate3d(0, 30px, 0);
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes fadeInDown {
    from {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }

    to {
        transform: translate3d(0, 20px, 0);
        opacity: 0;
    }
}

.top-filters {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.select-menu .options li {
    border: none;
}

span.sub-text {
    color: rgba(130, 130, 130, 1);
    font-family: 'Montserrat';
    font-size: 12px;
    font-weight: 500;
    line-height: 12px;
    letter-spacing: 0.02em;
    text-align: left;
}

span.sBtn-text {
    font-family: 'Montserrat';
    font-size: 15px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: 0.02em;
    text-align: left;
    display: flex;
    flex-direction: column;
    color: rgba(51, 51, 51, 1);
    gap: 5px;
}

.filter-button {
    display: none;
}


/* Hotels Page CSS*/

.hotel-inner-txt h2 {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 600;
    line-height: 29.26px;
}

.hotel-inner-txt {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 15px;
}

.hotel-inner-txt p.address {
    font-family: Noto Sans;
    font-size: 12px;
    font-weight: 500;
    line-height: 16.34px;
    text-align: left;
    color: rgb(50 57 67 / 75%);
}

.list-star-rating {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

p.stars span {
    font-family: Noto Sans;
    font-size: 12px;
    font-weight: 500;
    line-height: 16.34px;
    margin-left: 5px;
    color: rgba(50, 57, 67, 1);
}

p.stars i {
    color: rgba(255, 122, 61, 1);
}

.list-star-rating p.stars {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    align-items: center;
    font-size: 14px;
}

.list-star-rating p {
    font-family: Noto Sans;
    font-size: 12px;
    font-weight: 500;
    line-height: 16.34px;
}

.overall-rating span {
    font-family: Montserrat;
    font-size: 12px;
    font-weight: 500;
    line-height: 14.63px;
    padding: 8px 16px;
    border: solid 1px rgba(255, 122, 61, 1);
    display: inline-block;
    border-radius: 4px;
}

.overall-rating {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    align-items: center;
}

.overall-rating p {
    font-family: 'Noto Sans';
    font-size: 12px;
    font-weight: 500;
    line-height: 16.34px;
    text-align: left;
}


.hotel-list-item {
    box-shadow: 0px 4px 16px 0px rgba(17, 34, 17, 0.05);
}

.hotel-list-info-wrapper {
    height: 100%;
    padding: 24px 24px 24px 5px;
}

.list-img img {
    width: 100%;
}

.view-btn {
    padding: 14px 18px;
    border-radius: 6px;
    background: rgba(255, 122, 61, 1);
    font-family: Noto Sans;
    font-size: 15px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0.02em;
    text-align: center;
    color: #fff;
    border: solid 1px rgba(255, 122, 61, 1);
}

.listing-button-wrapper .view-btn {
    width: 80%;
}

button.wishlist-btn {
    padding: 16px 16px;
    border: solid 1px rgba(255, 122, 61, 1);
    background: transparent;
    border-radius: 4px;
    color: rgba(255, 122, 61, 1);
}

.listing-button-wrapper {
    display: flex;
    gap: 10px;
}

.hotel-list-info {
    display: flex;
    gap: 15px;
    justify-content: space-between;
}
span.reg-price {
    text-decoration: line-through;
}
p.start-from-txt {
    font-family: Montserrat;
    font-size: 12px;
    font-weight: 500;
    line-height: 14.63px;
    text-align: left;
    color: rgba(17, 34, 17, 1);
}

p.item-price {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    line-height: 29.26px;
    text-align: right;
    color: rgba(255, 122, 61, 1);
}

p.txt-tax {
    font-family: Montserrat;
    font-size: 12px;
    font-weight: 500;
    line-height: 14.63px;
    text-align: right;
    color: rgba(17, 34, 17, 1);
}

.list-pricing {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 5px;
}

.filter-options span.count {
    font-family: Noto Sans;
    font-size: 13px;
    font-weight: 400;
    line-height: 19.07px;
    letter-spacing: 0.02em;
    text-align: right;
    color: rgba(170, 170, 170, 1);
}
.list-img {
    height: 100%;
}

.hotel-list-item .list-img img {
    height: 100%;
    object-fit: cover;
}
.list-search-form.hotels-form input.form-control {
    width: 350px;
}


.suggestions, .dest-suggestions {
    border: 1px solid #ccc;
    max-height: 150px;
    overflow-y: auto;
    display: none;
    position: absolute;
    background-color: white;
    width: 300px;
    z-index: 100;
  }
  .suggestion-item {
    padding: 8px;
    cursor: pointer;
  }
  .suggestion-item:hover {
    background-color: #f0f0f0;
  }



  .loader-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  
  .loader {
    border: 8px solid #f3f3f3; /* Light grey background */
    border-top: 8px solid #3498db; /* Blue color */
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 1.5s linear infinite; /* Animation for spinning */
    margin-bottom: 10px;
  }
  
  /* Spin animation */
  @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }

.main-trip-form {
    padding: 25px 25px 25px 25px;
    border-radius: 10px 10px 10px 10px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    margin-top: 50px;
}
#custom-trip-form .form-group {
    margin: 15px 0;
}
#custom-trip-form input[type="submit"] {
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    border-bottom-right-radius: 30px;
    border-bottom-left-radius: 30px;
    padding-top: 17px;
    padding-right: 40px;
    padding-bottom: 17px;
    padding-left: 40px;
    background-color: #FF7A3D;
    color: #000000;
    border: none;
    width: 200px;
    font-weight: 700;
}
#custom-trip-form .form-control {
    text-indent: 0;
}

.input-inner {
    position: relative;
}
div#adult_fields, div#child_fields, div#infants_in_seat_fields, div#infants_on_lap_fields {
    display: grid;
    grid-template-columns: auto auto;
    gap: 0 15px;
}

.paybtn {
    text-align: center;
    margin: 20px 0;
}

a.pay-now-btn {
    background: #f67f45;
    display: inline-block;
    width: 180px;
    height: 50px;
    line-height: 50px;
    font-size: 18px;
    border-radius: 5px;
    color: #fff;
}

#custom-trip-form .form-group label {
    margin-bottom: 10px;
}
#custom-trip-form input.form-control.source, #custom-trip-form input.form-control.destination, #custom-trip-form input[name="value_from_start_date"], #custom-trip-form input[name="value_from_end_date"] {text-indent: 25px;}

.hotel-list-info-wrapper {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 20px;
}

.hotel-list-main-wpr {
    padding: 50px 0;
}

.hotel-list-main-wpr .slider-item img {
    height: 450px;
    object-fit: cover;
    width: 100%;
}
.hotel-amenities ul, .hotel-essential-info ul, .hotel-excluded-amenities ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.hotel-amenities ul li, .hotel-essential-info ul li, .hotel-excluded-amenities ul li {
    background: #ee834c;
    padding: 5px 20px;
    color: #fff;
    border-radius: 24px;
    font-size: 14px;
}
.hotel-list-main-wpr hr {margin: 10px 0;}
.package-info {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}




.custom-radio {
    display: none; /* Hide the default radio button */
}

.custom-radio + label {
    position: relative;
    display: inline-block;
    padding-left: 30px; /* Space for the custom box */
    cursor: pointer;
    font-size: 16px;
}

/* Custom box appearance */
.custom-radio + label::before {
    /* content: ""; */
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border: 2px solid #333; /* Border for the box */
    background-color: white;
    border-radius: 4px; /* Make it square */
    transition: background-color 0.3s, border-color 0.3s;
}

/* When the radio button is checked */
.custom-radio:checked + label::before {
    background-color: #4CAF50; /* Green background when checked */
    border-color: #4CAF50; /* Green border when checked */
}

/* Custom style when hovering over the box */
.custom-radio + label:hover::before {
    border-color: #2196F3; /* Blue border on hover */
}

/* Style for the checked radio button (optional for display) */
.custom-radio:checked + label::after {
    /* content: "âœ”"; */ /* Checkmark symbol */
    position: absolute;
    left: 4px;
    top: 50%;
    transform: translateY(-50%);
    color: white;
    font-size: 14px;
}

.custom-radio + label {
    background: #f7f7f7;
    padding: 12px;
    color: #000;
    border-radius: 8px;
    min-width: 115px;
    text-align: center;
    -webkit-box-shadow: 1px 1px 3px 0px rgba(0,0,0,0.2);
    -moz-box-shadow: 1px 1px 3px 0px rgba(0,0,0,0.2);
    box-shadow: 1px 1px 3px 0px rgba(0,0,0,0.2);
}

.custom-radio:checked + label {
    background: #f67f45;
}

div#months_radios, #weeks-radio {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}
.listing-list-wrapper ul {
    list-style: none;
}
.hotel-amenities ul li, .hotel-essential-info ul li, .hotel-excluded-amenities ul li {
    list-style: none;
}






.control {
    position: relative;
    top: 0;
    display: flex;
    align-items: center;
    padding: 5px;
    border-bottom: solid 1px rgba(255, 255, 255, 0.05);
    /* border-top: solid 1px rgba(0, 0, 0, 0.4); */
    transition: all .4s ease;
    gap: 10px;
}
.radio label input[type="radio"] {  
  display: none;
}

.radio label > span,
.radio label > div {
  cursor: pointer;
  margin-right: 4px;
  padding: 4px 8px;
    border-radius: 3px;
    background-color: transparent;
    transition: background .4s ease;
}

.radio label input[type="radio"]:checked ~ span,
.radio label input[type="radio"]:checked ~ div {
  background-color: rgb(246 127 69);
  transition: background .4s ease;
  color: #fff;
}

.radio label > div {display: inline-block;text-align: center;margin-right: 0;padding: 10px;}
.radio label > div small {display: block;font-size: 0.80em;}
.radio label > div span { margin-right: 4px; }
.radio label > div i { margin-left: 4px; }

/*** Begin Spinner Input ***/
.spinner {
    height: 100%;
    /* position: absolute; */
    /* right: 0; */
    border: solid 1px #ee834c;
    display: flex;
}
.spinner button {
  width: 42px;
  height: 50%;
  display: block;
  padding: 5px;
  border: none;
  color: #fff;
  background-color: var(--app-dark-color); 
  outline: none;
}
.passenger-group {
    display: flex;
    align-items: center;
    gap: 10px;
}
.spinner button:first-child {
  border-bottom: solid 1px #444;
}

.control > button {
  width: 100%;
  height: 100%;
  padding: 10px 2px;
  border: none;
  border-radius: 2px;
  color: #fff;
  background-color: var(--app-dark-color); /*#2196F3*/
  outline: none;
  text-transform: uppercase;
}


.control-item {
    position: relative;
}

.spinner button {
    background: #f67f45;
    border: none !important;
    width: 100%;
    padding: 12px 10px;
}

.control-item {
    display: flex;
    align-items: center;
    gap: 15px;
}

.spinner input.passenger-count.form-control {
    width: 50px;
    min-width: auto;
    text-align: center;
    text-indent: 0;
    appearance: none;
    -webkit-appearance: none;
    border: none;
    padding: 10px;
}

.form-control {
    text-indent: 0;
}

.col-md-10 .fields-wrapper {
    gap: 10px;
    justify-content: start;
}


/* End */
@media screen and (max-width: 1399px) {
    .form-control {
        width: 200px;
        min-width: unset;
    }

    .list-info-item.flight-booking .flight-route h3 {
        font-size: 20px;
    }

    .list-info-item.flight-booking .flight-route img.airline-logo {
        height: 20px;
    }
}

@media screen and (max-width: 1199px) {
    .form-control {
        width: 160px;
    }



    .list-info-item.flight-booking .flight-route img.airline-logo {
        height: 14px;
    }

    .list-info-item.flight-booking .flight-route {
        gap: 9px;
    }

    .list-info-item.flight-booking .flight-route h3 {
        font-size: 17px;
    }

    .price-box a.view-btn {
        padding: 12px;
        font-size: 14px;
    }

    .price-box span.sale-price {
        font-size: 20px;
    }

    .price-box span.reg-price {
        font-size: 14px;
    }

    .top-filters ul li {
        padding: 12px 14px;
        font-size: 14px;
    }

    .top-filters {
        align-items: center;
    }
}

@media screen and (max-width:991px) {
    .fields-wrapper {
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .fields-wrapper .form-group {
        width: calc(33% - 8px);
    }

    .fields-wrapper .form-group .form-control {
        width: 100%;
    }

    .fields-wrapper .form-group:first-child {
        width: calc(46% - 10px);
    }

    .fields-wrapper .form-group:nth-child(3) {
        width: calc(46% - 10px);
    }

    .fields-wrapper .form-group:nth-child(2) {
        width: calc(8% - 10px);
    }

    .fields-wrapper .submit-btn {
        width: 100%;
    }

    .filter-button {
        display: flex;
        margin-bottom: 20px;
        gap: 10px;
    }

    .filter-button span {
        display: flex;
        margin-bottom: 20px;
        gap: 10px;
    }

    .filter-container-wrapper {
        opacity: 0;
        left: -100%;
        position: fixed;
        transition: all 0.4s;
        overflow-y: scroll;
    }

    .filter-container-wrapper.active {
        position: fixed;
        display: flex;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 99;
        height: 100%;
        opacity: 1;
    }

    .filter-container {
        width: 280px;
        background: #fff;
        padding: 50px 20px;
        height: 100%;
        flex-wrap: nowrap;
        overflow-y: scroll;
    }

    .filter-container-wrapper.active {
        background: rgba(0 0 0 / 70%);
    }

    .select-menu {
        width: 210px;
    }

    .select-menu .select-btn {
        padding: 15px;
        height: 50px;
    }

    .select-menu .options {
        width: 210px;
    }

    span.sBtn-text {
        font-size: 14px;
    }

    .listing-search-title h2 {
        font-size: 20px;
    }

    .price-box {
        gap: 15px;
    }

    .hotel-list-info {
        flex-direction: column;
    }

    .hotel-list-info-wrapper {
        padding: 24px;
    }

    .hotel-list-item .list-img img {
        border-radius: 32px;
    }

    p.start-from-txt {
        text-align: right;
        margin-right: 54px;
    }

}

@media screen and (max-width: 767px) {
    .fields-wrapper .form-group {
        width: calc(50% - 8px);
    }

    .fields-wrapper .form-group:first-child {
        width: 100%;
    }

    .fields-wrapper .form-group:nth-child(3) {
        width: 100%;
    }

    .fields-wrapper .form-group:nth-child(2) {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .fields-wrapper {
        justify-content: center;
    }

    .list-info-item.flight-booking {
        flex-direction: column;
        gap: 10px;
    }

    .list-info-item.flight-booking .flight-details {
        gap: 10px;
    }

    .tags a {
        padding: 10px;
        font-size: 11px;
    }

    .price-box a.view-btn {
        margin-top: 10px;
    }

    .list-info {
        margin: 20px 0 15px;
    }

    .top-filters {
        flex-direction: column;
        gap: 15px;
    }
	
	#custom-trip-form .form-control {
    width: 100%;
}

.list-info {margin: auto;}

.price-box {
    margin-top: 15px;
}

#listings-container .row.mb-3 {
    margin-bottom: 30px !important;
}
	
	.list-pricing {
    width: calc(50% - 20px);
    align-items: start;
}

.hotel-list-info {flex-direction: unset;flex-wrap: wrap;}

.hotel-inner-txt {
    width: 100%;
}

hr {
    margin-top: 20px;
    margin-bottom: 20px;
}
	.listing-button-wrapper {
    justify-content: center;
}

.control-item {
    flex-direction: column;
}

.control.passengers {
}

.list-search-form .fields-wrapper .form-group:nth-child(2) {
    display: unset;
}

.list-search-form .fields-wrapper .form-group {
    width: 100%;
}
}

@media screen and (max-width: 400px) {
    .list-info-item.flight-booking .flight-details {
        flex-direction: column;
    }

    .list-info-item.flight-booking .flight-route img.airline-logo {
        height: 17px;
    }
}