/*
Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
Click nbfs://nbhost/SystemFileSystem/Templates/Other/CascadeStyleSheet.css to edit this template
*/
/* 
    Created on : Sep 4, 2025, 10:57:13 AM
    Author     : user
*/
:root {
    --bg-color: #0b286a;
    --bg-color-light: #0d6efd;
}
* {
    font-family: Montserrat!important;
}
body, html, #wrapper {
    height:100%;
}
.fs-10 {
    font-size: 10px!important;
}
.fs-11 {
    font-size: 11px!important;
}
.fs-12 {
    font-size: 12px!important;
}
.fs-13 {
    font-size: 13px!important;
}
.fs-14 {
    font-size: 14px!important;
}
.fs-15 {
    font-size: 15px!important;
}
.fs-16 {
    font-size: 16px!important;
}
.fs-17 {
    font-size: 17px!important;
}
.fs-18 {
    font-size: 18px!important;
}
.fs-19 {
    font-size: 19px!important;
}
.fs-20 {
    font-size: 20px!important;
}
.fs-21 {
    font-size: 21px!important;
}
.fs-22 {
    font-size: 22px!important;
}
.fs-23 {
    font-size: 23px!important;
}
.fs-24 {
    font-size: 24px!important;
}
.fs-25 {
    font-size: 25px!important;
}
.text-nounderline {
    text-decoration: none!important;
}
.login-button {
    font-size: 14px !important;
    border: 1px solid #ddd;
    padding: 7px 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.3s ease;
    gap: 10px;
    color:#e4e4e4;
}
.login-button:hover {
    color:white;
}
.navbar-nav a {
    color:#e4e4e4;
}
.navbar-nav a:hover {
    color:white;
}
.login-button:hover {
    border: 1px solid #eee;
    box-shadow: 0px 0px 2px 1px rgba(0,0,0,0.1);
    background:#02236f12;
    transition: 0.3s ease;
}
.btn-modal {
    background: none;
    position: absolute;
    right: -30px;
    padding: 0px;
    width: 25px;
    height: 25px;
    opacity: 1;
}
.btn-modal img {
    width: 90%;
    background: white;
    border-radius: 100px;
}
@media (min-width: 992px) {
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 15px;
        padding-left: 15px;
    }
}
.divider {
    position:relative;
}
.divider h6 {
    display: inline-block;
    margin: 0;
    background: white;
    position: relative;
    padding: 0px 15px;
}
.divider::before {
    content: '';
    width: 100%;
    background: #e7e7e7;
    height: 1px;
    position: absolute;
    left: 0;
    top: 50%;
    bottom: 0;
    right: 0;
}
/*.form-floating>.form-control, .form-floating>.form-control-plaintext, .form-floating>.form-select {
    height: inherit!important;
    min-height: inherit!important;
}*/
.cursor {
    cursor:pointer!important;
}
.services-panel {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    font-size: 14px;
    padding:15px 20px;
    border-right:1px solid #eee;
    flex-direction: column;
}
.active {
    color:#0d6efd;
    font-weight: bold;
    border-bottom: 4px solid #0d6efd;
}
.active img {
    filter:brightness(0) saturate(100%) invert(40%) sepia(88%) saturate(4432%) hue-rotate(208deg) brightness(96%) contrast(107%);
}
.service-section {
    position:relative;
    z-index: 999;
    background: white;
}
.header {
    background: linear-gradient(45deg, transparent, #011f64);
}
.flight-box {
    /*margin-top: -45px!important;*/
    /*width: 1200px;*/
    background: rgb(255, 255, 255);
    box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 15px;
    border-radius: 20px;
    padding: 70px 40px 30px;
    margin: 0px auto;
}
.trip-way {
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    margin-right: 8px;
    cursor: pointer;
    padding: 8px 16px;
    border-radius: 100px;
}
.trip-way.tactive {
    background: rgba(34, 118, 227, 0.1);
    color: rgb(34, 118, 227);
}
.journey-div {
    border: 2px solid rgb(225, 231, 238);
    border-radius: 8px;
    height: 75px;
    background: rgb(255, 255, 255);
    cursor: pointer;
    position: relative;
    padding: 15px 18px;
    transition: 0.3s ease;
    display:flex;
    flex-direction: column;
    justify-content: center;
}
.journey-div:hover {
    border:2px solid blue;
    transition: 0.3s ease;
}
.journey-div .label {
    position: absolute;
    left: 20px;
    top: -10px;
    background: white;
    padding: 0px 10px;
    font-size: 12px;
}
.journey-div input {
    font-size: 18px;
    color:black;
    font-weight: 600;
    border:none;
}
.journey-div h3 {
    font-size: 18px;
    color:black;
    font-weight: 600;
    border:none;
}
.journey-div input::placeholder {
    font-size: 16px!important;
    font-weight: 500;
}
input:focus {
    box-shadow: none!important;
}
.search-flight {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -25px;
}
.special-fare {
    background: linear-gradient(304deg, #dce9fc, #c3dbff);
    padding: 15px;
    border-radius: 10px;
}
.return-close {
    position: absolute;
    right: -10px;
    top: -10px;
    background: #eeeeee;
    border-radius: 50px;
    display: flex;
    width: 20px;
    height: 20px;
    align-items: center;
    justify-content: center;
}
.traveller-count {
    position: absolute;
    width: 145%;
    padding: 10px;
    z-index: 999999;
    box-shadow:2px 2px 18px 2px rgba(0,0,0,0.1);
    background: white;
    right: 0px;
    border-radius: 10px;
}
.quantity-field {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 3px 7px;
    box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
}
.value-button {
    border: none;
    background: none;
    font-size: 20px;
    color: #0d6efd;
}
.number {
    width: 5px;
}
ul[uib-typeahead-popup] {
    border-radius: 7px;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1);
    padding: 0;
    border: none;
    padding:0px;
}
.uib-typeahead-match {
    padding:5px;
    border-bottom:1px solid #eee;
}
.uib-typeahead-match a  {
    text-decoration:none;
    color:#222222;
    font-size: 14px;
}
.header {
    border-bottom: 1px solid #dee2e6;
}
.swap-places {
    position: absolute;
    background: white;
    width: 40px;
    border-radius: 50px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    right: -19.5px;
    top: 10px;
    z-index: 9;
    border: #e7e7e7 solid 2px;
}
.btn-filter {
    border: 1px solid #c9c9c9;
    border-radius: 10px;
    background: white;
    transition:0.3s ease;
}
.btn-filter:hover  {
    transition:0.3s ease;
    border: 1px solid #ddd;
    border-radius: 10px;
    background: #f7f7f7;
}
.btn-filter.active {
    background:#bb1a16;
    transition:0.3s ease;
    font-weight: normal;
    border:1px solid #bb1a16;
    color:white;
}
.flight-card {
    position: relative;
    border:1px solid #ddd;
    border-radius: 10px;
}
.refund-status {
    display: inline-block;
    margin: 0;
    font-size: 13px;
    background: #e4edff;
    padding: 3px 15px;
    border-radius: 10px 0px;
    font-weight: 600;
}
.border-bottom-dashed {
    border-bottom: 1px dashed #b1b1b1;
}
.flight-fares {
    min-width: max-content;
}
.flight-classes {
    min-width: max-content;
}
.btn-fares {
    border:1px solid #bb1a16;
    color:#bb1a16;
}
.btn-fares:hover {
    border:1px solid #bb1a16;
    color:#bb1a16;
}
.btn-fares:focus {
    border:1px solid #bb1a16!important;
    color:#bb1a16!important;
}
@media (max-width:576px) {
    .btn-modal {
        right:0px;
        top:-30px;
    }
}
.sidebar-menu {
    height:100%;
    list-style: none;
    margin: 0;
    padding: 0;
    /*box-shadow: 0px 0px 8px inset #0000001c;*/
    background-color: #fbfbfb;
    background: url(/assets/images/sidebar-bg.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.sidebar-menu > li {
    position: relative;
    margin: 0;
    padding: 0;
}
.sidebar-menu > li > a {
    padding: 12px 5px 12px 15px;
    display: block;
    border-left: 3px solid transparent;
    color: #011f64;
    font-size: 14px;
}
.sidebar-menu > li > a > .fa {
    width: 20px;
}
.sidebar-menu > li:hover > a, .sidebar-menu > li.active > a {
    color: #011f64;
    background: #f3f3f3;
}
.sidebar-menu > li > .treeview-menu {
    margin: 0 1px;
    background: #f3f3f3;
}
.sidebar-menu > li .label,
.sidebar-menu > li .badge {
    margin-top: 3px;
    margin-right: 5px;
}
.sidebar-menu li.header {
    padding: 10px 25px 10px 15px;
    font-size: 12px;
    color: #4b646f;
    background: #1a2226;
}
.sidebar-menu li > a > .fa-angle-right {
    width: 6px;
    height: auto;
    padding: 0;
    margin-right: 10px;
    margin-top: 3px;
    position: absolute;
    right: 0px;
    top: 45%;
    transform: translate(-50%, -50%);
    transition: 0.3s ease;
}
.sidebar-menu li.active > a > .fa-angle-right {
    transition: 0.3s ease;
    transform: rotate(90deg) translate(-50%, -50%);
    right: 10px;
    top: 43%;
}
.sidebar-menu li.active > .treeview-menu {
    display: block;
}
.sidebar-menu a {
    color: #b8c7ce;
    text-decoration: none;
}
.sidebar-menu .treeview-menu {
    display: none;
    list-style: none;
    padding: 0;
    margin: 0;
    padding-left: 5px;
}
.sidebar-menu .treeview-menu .treeview-menu {
    padding-left: 20px;
}
.sidebar-menu .treeview-menu > li {
    margin: 0;
}
.sidebar-menu .treeview-menu > li > a {
    padding: 5px 5px 5px 15px;
    display: block;
    font-size: 14px;
    color: #011f64;
}
.sidebar-menu .treeview-menu > li > a > .fa {
    width: 20px;
}
.sidebar-menu .treeview-menu > li > a > .fa-angle-right,
.sidebar-menu .treeview-menu > li > a > .fa-angle-down {
    width: auto;
}
.treeview.active {
    border-color: #b7191454;
}
.fa-arrow-turn-up {
    transform: rotate(90deg);
}
.linear-bg {
    background:linear-gradient(45deg, #0f2a6c17, transparent);
}

/*PAGINATION START*/

.pagination>li {
    display: inline;
}
.pagination>li:first-child>a, .pagination>li:first-child>span {
    margin-left: 0;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.pagination>li>a, .pagination>li>span {
    position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    color: #337ab7;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #ddd;
}
.pagination>li:last-child>a, .pagination>li:last-child>span {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}
.pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover {
    z-index: 3;
    color: #fff;
    cursor: default;
    background-color: #337ab7;
    border-color: #337ab7;
}
.pagination-page.active {
    border-bottom: none;
}
.daterangepicker {
    position: relative;
    max-width: 820px;
    margin: 0 auto;
}
.calendar-popup {
    position: absolute;
    left:0;
    right:0;
    top:10px;
    z-index:2000;
    background:#fff;
    border:1px solid #ddd;
    border-radius:12px;
    padding:18px;
    box-shadow:0 8px 24px rgba(0,0,0,0.12);
}
.calendar-popup-round {
    left:inherit;
    width:150%;
}
.month-header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:10px;
}
.month-title {
    font-weight:600;
    text-align:center;
    flex:1;
    font-size:15px;
}
.nav-btn {
    background:transparent;
    border:none;
    cursor:pointer;
    font-size:18px;
    padding:6px 10px;
    color:#007bff;
}
.nav-btn:disabled {
    color:#ccc;
    cursor:not-allowed;
}

.weekday-row {
    display:grid;
    grid-template-columns:repeat(7,1fr);
    text-align:center;
    color:#999;
    margin-bottom:6px;
    font-size:13px;
}
.days {
    display:grid;
    grid-template-columns:repeat(7,1fr);
    text-align:center;
}
.day {
    position: relative;
    cursor: pointer;
    user-select: none;
    border-radius: 5px;
    font-size: 14px;
    transition: all 0.2s;
    /*width: 35px;*/
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.day.empty {
    background:none !important;
    cursor:default;
}
.day.other-month {
    color:#ccc;
}
.day.today {
    border:1px solid #007bff;
    font-weight:600;
}
.day:hover:not(.disabled):not(.empty) {
    background:#f1f5ff;
    color:black;
}
.day.disabled {
    color:#ddd !important;
    cursor:not-allowed;
    pointer-events:none;
    background:none !important;
}
.day.start {
    background:#007bff;
    color:#fff;
    font-weight:600;
    border-radius:5px  0px 0px 5px;
    z-index:3;
}
.day.end {
    background:#007bff;
    color:#fff;
    font-weight:600;
    border-radius:0px 5px 5px 0px;
    z-index:3;
}
.day.in-range {
    background:#e6f0ff;
    border-radius:0;
    color:#000;
}
.day.in-range:first-child,
.day.start.in-range {
    border-top-left-radius:50%;
    border-bottom-left-radius:50%;
}
.day.in-range:last-child,
.day.end.in-range {
    border-top-right-radius:50%;
    border-bottom-right-radius:50%;
}
.hotelroom-wrapper {
    position: absolute;
    width: 100%;
    background: white;
    right: -1px;
    top: -32px;
    z-index:99;
    border-radius: 8px;
    box-shadow: 1px 3px 11px 1px rgba(0, 0, 0, 0.1);
    z-index: 999;
}
@media (max-width:768px) {
    .hotelroom-wrapper {
        width: 100%;
    }
    .booking-card .icon-img {
        display: none;
    }
}
.day.hover-range {
    background:#f1f5ff;
    border-radius:0;
}
.day.hover-range:first-child {
    border-top-left-radius:50%;
    border-bottom-left-radius:50%;
}
.day.hover-range:last-child {
    border-top-right-radius:50%;
    border-bottom-right-radius:50%;
}

@media (max-width:575px){
    .month-col {
        margin-bottom:16px;
    }
}
.overflow-y-scroll {
    max-height: 360px;
    overflow-y: scroll;
}
.btn-inc-member, .btn-dec-member {
    border: 1px solid #e8e7ff;
    background: #e8e7ff;
    width: 25px;
    height: 25px !important;
    padding: 0;
}
.member-count {
    width: 50px;
    font-weight: bold;
    border: 1px solid #ddd !important;
}
@media (min-width: 768px) {
    .fs-responsive {
        font-size: 35px!important;
    }
}
.fs-responsive {
    font-size: 18px;
}
@media screen and (min-width: 1400px) {
    .container {
        max-width: 1450px !important;
    }
}
.booking-card {
    background: #ffffff;
    border-radius: 25px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    padding: 30px;
    /*margin-top: -50px;*/
    position: relative;
    z-index: 10;
}
section {
    padding: 25px 0;
}
.field-box {
    border: 1px solid #dfdfdf;
    padding: 12px 25px;
    background: #fff;
    display: flex;
    align-items: center;
}
.icon-img {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
}
.field-content {
    display: flex;
    flex-direction: column;
}
.field-title {
    font-size: 12px;
    font-weight: 500;
    color: #8a8a8a;
    line-height: 1.2;
}
.field-content input, .field-content select {
    font-size: 16px;
    font-weight: 600;
    box-shadow: none !important;
}
.cmn__btn {
    width: 200px;
    padding: 12px;
    opacity: 1;
    text-align: center;
    position: absolute;
    bottom: -22px;
    left: 50%;
    transform: translateX(-50%);
    background: transparent;
    color: #ffffff;
    font-size: 16px;
    border: 0;
    background-size: 50% 100%;
    background-repeat: no-repeat;
    background-image: radial-gradient(circle at 0 50%, rgba(255, 255, 224, 0) 0.4em, #2840bf 0.5em), radial-gradient(circle at 100% 50%, rgba(255, 255, 224, 0) 0.4em, #2840bf 0.5em);
    background-position: top left, top right;
    border-radius: 5px;
    font-weight: 700;
    display: inline-block;
    overflow: hidden;
    transition: all 0.5s;
}
.cmn__btn::before {
    position: absolute;
    content: "";
    top: 0;
    left: 50%;
    background: #415fe2;
    transition: all 0.5s;
    width: 0px;
    height: 100%;
}
.cmn__btn span {
    position: relative;
    z-index: 1;
    transition: all 0.5s;
}
.cmn__btn:hover::before {
    width: 100%;
    left: 0;
}
.cmn__btn:hover span {
    color: #fff;
}
a {
    text-decoration: none !important;
}
p {
    font-size: clamp(12px, 1vw, 16px);
}
@media screen and (max-width: 991px) {
    .cmn__btn {
        position: relative;
        transform: translateX(-50%);
        width: 100% !important;
        padding: 10px 0;
        left: 50%;
        font-size: 14px;
        background: linear-gradient(97deg, #476edd, #2840bf 130%);
    }
}
.why-card {
    background: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 12px;
    transition: 0.3s ease-in-out;
}
.light-gray {
    background-color: #f0f2f5 !important;
}
.why-card:hover {
    box-shadow: 0px 8px 25px rgba(0, 0, 0, 0.12);
    transform: translateY(-5px);
}
.mobile-flight-header .btn {
    font-size: 12px;
    border-radius: 6px;
}
.train_listing .filter-options {
    border-radius: 4px;
    position: relative;
    padding: 0;
    background: #fff;
    border-radius: 8px;
    padding: 20px 20px 15px;
    /* box-shadow: 0px 4px 8px 0px #0000004f; */
    box-shadow: 0 3px 30px 0 rgba(0, 0, 0, 0.1);
}
.train_listing .filter-options h5 {
    color: #101010;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -0.08px;
    line-height: 20px;
    margin: 0;
}
.train_listing .filter-options h5 + a {
    color: var(--bg-color-light);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: -0.32px;
    line-height: 24px;
}
.train_listing .filter-options .Filters_mainHeader {
    border-top: 1px solid hsla(0, 0%, 6%, 0.13);
}
.train_listing .filter-options h6 a {
    color: #101010;
    display: flex;
    flex-direction: row;
    font-size: 14px;
    font-weight: 600;
    justify-content: space-between;
    letter-spacing: -0.32px;
    line-height: 24px;
    width: 100%;
    margin: 16px 0 12px;
    align-items: center;
}
.train_listing .filter-options .range-time span {
    font-size: 13px;
}
.train_listing .filter-options .Filters_mainHeader label {
    font-size: 13px;
    font-weight: 400;
    color: #4a4a4a;
}
.train_listing .filter-options .Filters_mainHeader .form-check-input {
    border: 1px solid #000;
    border-radius: 0;
    width: 15px;
    height: 15px;
    margin: 0;
    margin-top: 2px;
}
.train_listing .filter-options .Filters_mainHeader .form-check {
    color: #101010;
    display: flex;
    font-size: 12px;
    font-weight: 500;
    line-height: 28px;
    gap: 12px;
    padding-bottom: 0px;
    padding-top: 0;
    align-items: center;
    padding-left: 5px;
}
.property-card {
    font-size: 14px;
}
.img-wraps {
    height: 300px;
}
.img-wraps img {
    height: 100%;
    width: 100%;
    border-radius: 30px;
    object-fit: cover;
}
.wishlist-icon {
    position: absolute;
    top: 24px;
    right: 24px;
    background: #fff;
    border-radius: 50%;
    padding: 6px 9px;
    font-size: 16px;
    cursor: pointer;
    font-size: 16px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.property-card h5 {
    font-size: 18px;
}
.rating-stars i,  .rating-stars svg{
    color: #febb02;
    font-size: 14px;
}
.property-card .small, .property-card p {
    font-size: 13px;
}
.property-card .fw-semibold {
    font-size: 14px;
}
.property-card .badge {
    font-size: 14px;
}
@media (max-width:992px) {
    .responsive-filter {
        position: fixed;
        top: 0;
        padding: 0;
        z-index: 9;
        overflow-y: scroll;
        height: 100%;
        display: none;
    }
    .responsive-filter .filter-options {
        border-radius: 0px!important;
    }
    #closeFilter {
        border-radius: 4px;
        width: 25px;
        height: 25px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #d70000;
        color: white;
        font-weight: bold;
    }
}
.tabs-wrapper {
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 100;
    border-bottom: 1px solid #e6e6e6;
}
.tabs {
    list-style: none;
    font-size: 18px;
    padding: 12px 16px;
    margin: 0;
    overflow-x: auto;
}
.tab.active {
    color: #000;
    border-bottom: 3px solid #0071c2;
}
.hotel-main-img {
    width: 100%;
    height: 400px;
    border-radius: 8px;
    object-fit: cover;
}
.mini-img {
    height: 85px;
    object-fit: cover;
    border-radius: 6px;
    cursor: pointer;
    border: 2px solid transparent;
}
.amenity-icon {
    width: 20px;
    height: 20px;
    object-fit: contain;
}
.modal .btn-close {
    margin: 0;
    border: 0;
    padding: 0 !important;
    background: var(--bg-color);
    border-radius: 0;
    width: 30px;
    height: 30px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    opacity: 1;
    transition: all 150ms;
    position: absolute;
    right: -15px;
    top: -15px;
    z-index: 1;
}
.modal .btn-close .icon-cross {
    background: none;
    position: relative;
    width: 18px;
    height: 40px;
}
.modal .btn-close .icon-cross:before, .modal .btn-close .icon-cross::after {
    content: "";
    position: absolute;
    top: 14px;
    left: 0;
    right: 0;
    height: 2px;
    background: #fff;
    border-radius: 6px;
}
.modal .btn-close .icon-cross:before {
    transform: rotate(45deg);
}
.modal .btn-close .icon-cross::after {
    transform: rotate(-45deg);
}
.more-amenities {
    align-items: flex-start;
}
.amenity-list {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    flex: 1;
}
.more-amenities span {
    font-size: 14px;
}
.amenity-value {
    flex: 0 0 calc(25% - 12px);
    font-size: 14px;
    color: #333;
}
.amenity-item span {
    font-size: 14px;
    font-weight: 500;
    color: rgb(68, 68, 68);
}
.room-card {
    border: 1px solid #d9d9d9;
    border-radius: 14px;
    padding: 0;
    margin-bottom: 18px;
    background: #fff;
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.05);
}
.room-title {
    font-size: 18px;
    font-weight: 700;
}
.prices {
    font-size: 22px;
    font-weight: 700;
    color: #000;
}
.price-sec {
    border-left: 2px solid #f0f0f0;
}
.house-rules {
    background: #fff;
    border-radius: 6px;
    padding: 24px;
    margin: 40px auto;
}
.rule-row {
    display: grid;
    grid-template-columns: 220px 1fr;
    border-bottom: 1px solid #e6e6e6;
    padding: 16px 0;
    gap: 24px;
}
.rule-title {
    font-weight: 600;
    color: #222;
}
.rule-content {
    font-size: 14px;
    color: #555;
}
.house-rules .section-title {
    font-weight: 600;
    font-size: 20px;
    /* margin-top: 24px; */
    margin-bottom: 12px;
}
.box {
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 12px;
    margin-bottom: 12px;
    font-size: 14px;
}
.fine-print-section {
    margin: 40px 0;
    font-family: Arial, sans-serif;
}
.fine-print-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}
.fine-print-header h2 {
    margin: 0;
    font-size: 24px;
    font-weight: 700;
}
.fine-print-box {
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    padding: 20px;
    background: #fff;
}
.fine-print-box p {
    margin: 0 0 14px;
    font-size: 14px;
    line-height: 1.6;
    color: #333;
}
.fine-print-header p {
    margin: 4px 0 0;
    color: #6b6b6b;
    font-size: 14px;
}
.booking-highlight-card {
    background: #ffffff;
    border: 1px solid #e7e7e7;
    border-radius: 8px;
    padding: 20px;
}
.card-title {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 14px;
}
.blue-box {
    border-radius: 6px;
    margin-bottom: 18px;
}
.highlight-section {
    margin-bottom: 14px;
}
.note-text {
    font-size: 12px;
    color: #6b6b6b;
    text-align: center;
    margin-top: 8px;
    margin-bottom: 0;
}
.hotels-card {
    background: #fff;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.hotels-img {
    width: 100px;
    height: 80px;
    border-radius: 6px;
    object-fit: cover;
}
.check-item {
    min-width: 150px;
    text-align: center;
}
.super-badge {
    border: 1px solid #d6b153;
    color: #d6b153;
    border-radius: 6px;
    font-size: 13px;
    padding: 2px 6px;
    background: #fff8e1;
}
.room-stay {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
    list-style-type: none;
    padding: 0px;
}
.card-box {
    background: #fff;
    border-radius: 15px;
    padding: 20px;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.06);
}
.hotel-card {
    background: #fff;
    border-radius: 12px;
    padding: 16px;
    border: 1px solid #e7e7e7;
    margin-bottom: 20px;
    transition: 0.2s;
}
.price-boxs, .coupon-box {
    background: #fff;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.continue-btn {
    background: #f15a24;
    border: none;
    color: #fff;
    font-weight: 600;
    padding: 10px 25px;
    border-radius: 6px;
    width: 100%;
}
.right-side h3 {
    font-size: 24px;
}
.right-side > p {
    font-size: 14px;
}
.property-card.active {
    background: #eef0ff;
    border: 2px solid #4c5bd4;
}
.property-card {
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 20px;
    cursor: pointer;
    width: 100%;
    position: relative;
    transition: 0.3s;
    background: #fff;
}
.property-card h5 {
    font-size: 18px;
    font-weight: 600;
}
.property-card.active .check-circle {
    background: #4c5bd4;
    border-color: #4c5bd4;
}
.property-card .check-circle {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 2px solid #ccc;
}
.property-card.active .check-circle::after {
    content: "✓";
    color: #fff;
    font-size: 14px;
    position: absolute;
    top: -1px;
    left: 4px;
}
.right-side .property-card .small, .right-side .property-card p {
    font-weight:normal;
}
.hotels-cards.active {
    border: 2px solid #4c5bd4;
}
.hotels-cards {
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    position: relative;
    transition: 0.3s;
}
.hotels-cards img {
    height: 100px;
    object-fit: cover;
    width: 100%;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}
.hotels-cards.active img {
    filter:none;
}
.hotels-cards.active .radio-circle {
    border: 6px solid #4c5bd4;
}
.hotels-cards .radio-circle {
    position: absolute;
    right: 15px;
    top: 15px;
    width: 20px;
    height: 20px;
    border: 2px solid #ccc;
    border-radius: 50%;
}
.hotels-cards h6 {
    font-size: 16px;
    color:black;
    font-weight: 600;
}
.small {
    font-size: 13px !important;
    font-weight: normal;
}
.bottom-bar {
    position: fixed;
    bottom: 0;
    left: 0px;
    right: 0;
    background: #fff;
    border-top: 1px solid #ddd;
    padding: 15px;
    display: flex;
    justify-content: space-between;
    z-index: 9999;
}
.customs-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    scrollbar-width: thin;
}
.customs-tabs .nav-link.active {
    color: #0d6efd;
    font-weight: 600;
    border-bottom: 3px solid #0d6efd;
    background-color: #fff;
}
.customs-tabs .nav-link {
    font-size: 14px;
    font-weight: 500;
    color: #555;
    border: none;
    border-right: 1px solid #eee;
    padding: 12px 18px;
    white-space: nowrap;
}
.tab-number {
    background: #e9ecef;
    border-radius: 50%;
    padding: 4px 8px;
    font-size: 11px;
    margin-right: 6px;
}
.text-muted.small {
    font-size: 13px;
    font-weight: 400;
    color: #6c757d !important;
}
.cursor {
    cursor: pointer;
}
.form-label {
    color: #333;
    font-weight: 500;
}
.list-group-item.active {
    background-color: #eef2ff !important;
    color: #2f3dbb !important;
    font-weight: 600;
    border-left: 4px solid #2f3dbb !important;
}
.list-group-item {
    font-size: 16px;
    font-weight: 700;
    color: #333;
    padding: 12px 16px;
    border: none !important;
    border-radius: 15px !important;
    background: #efefef;
    /*margin-bottom: 10px;*/
    transition: all 0.2s ease;
}
.step {
    display: flex;
    align-items: center;
    justify-content: center;
}
.line {
    flex: 1;
    height: 2px;
    background: #e6e6e6;
    min-width: 40px;
}
.step .circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 2px solid #cfcfcf;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 14px;
    background: #fff;
    transition: 0.3s;
}
.step.active .circle {
    background: #0d6efd;
    border-color: #0d6efd;
    color: #fff;
}
.booking-steps {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    margin-bottom: 20px;
}
.step.active {
    border:none!important;
}
.step.completed .circle {
    background: #198754;
    border-color: #198754;
    color: #fff;
}
.step.completed .circle::after {
    content: "✓";
    font-size: 14px;
}
.form-row-divider {
    border-bottom: 1px solid #e5e7eb;
}
.stepes {
    display: none;
}
.stepes.active {
    display:block!important;
}
label {
    color:black;
    font-weight: 500;
}
h5, h6 {
    color:black;
}
img {
    filter:none!important;
}
.select-selected {
    display: none;
    border: 1px solid #ccc;
    padding: 10px;
    cursor: pointer;
    border-radius:8px;
    display: flex;
    align-items: center;
    gap: 10px;
    height:100%;
    font-weight: 500;
    color:black;
    font-size: 1rem;
}
.select-items {
    display: none;
    position: absolute;
    background-color: #fff;
    border: 1px solid #ccc;
    border-top: none;
    width: 100%;
    z-index: 9;
    background: white;
    max-height: 200px;
    overflow-y: auto;
}
.select-selected img {
    width: 2rem;
    height: 2rem;
}
#optionss .options, #options .option {
    padding: 10px;
    cursor: pointer;
    display: flex;
    font-weight: 500;
    align-items: center;
    color:black;
    gap: 10px;
    font-size: 1rem;
}
.option img, .options img {
    width: 30px;
    height: 30px;
    object-fit: cover;
}
.custom-selects, .custom-select {
    position: relative;
    height:100%;
}
.select-items.open {
    display: block;
}
.disabled {
    opacity: .6;
    pointer-events: none;
    user-select: none;
}
.upload-box {
    border: 2px dashed #d6d6d6;
    border-radius: 10px;
    min-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-color: #fafafa;
    transition: 0.3s;
}
.upload-icon {
    font-size: 40px;
    color: #6c757d;
    margin-bottom: 10px;
}
.instruction-card {
    border-radius: 10px;
    overflow: hidden;
}
.instruction-header {
    background: linear-gradient(135deg, #1e88e5, #42a5f5);
    color: white;
    padding: 12px 16px;
    font-weight: 600;
}
.instruction-body {
    background-color: #f8f9fa;
    padding: 15px;
}
.instruction-item {
    font-size: 14px;
    margin-bottom: 15px;
    display: flex;
    align-items: start;
    gap: 10px;
}
.instruction-item i {
    font-size: 18px;
    color: #0d6efd;
    margin-top: 3px;
}
.uploaded .file-row {
    display: flex;
    border: 2px solid #008000;
    margin-bottom: 15px;
    padding: 10px;
    position: relative;
    gap: 10px;
    border-radius: 10px;
    flex-direction: column;
}
.thumb {
    width: 100%;
    text-align: center;
}
.thumb img {
    width: 100%;
    height: 80px;
    object-fit: cover;
}
.main img, .main video {
    width: 250px;
    height: 150px;
    object-fit: cover;
}
.trash {
    position: absolute;
    top: 5px;
    right: 5px;
    cursor: pointer;
    background: red;
    color: white;
    padding: 0px 6px;
    border-radius: 5px;
}
.main {
    flex: 1;
    position: relative;
}
.status.approved {
    background:green;
}
.status.rejected {
    background:red;
}
.status {
    display: block;
    position: absolute;
    top: 0px;
    left: -1px;
    color: white;
    padding: 2px 6px;
    font-size: 10px;
    font-weight: bold;
    border-radius: 10px 0px;
}
.cover-photo {
    height: 320px;
    justify-content: center;
    border-radius: .5rem;
    background-color: #1e1e1e;
    position: relative;
    align-items: center;
    width: 100%;
    display: flex;
    overflow: hidden!important;
}
.absolute {
    position: absolute;
}
.top-0 {
    top: 0;
}
.right-0 {
    right: 0;
}
.left-0 {
    left: 0;
}
.top-0 {
    top: 0 !important;
}
.rounded-t-lg {
    border-top-left-radius: .5rem;
    border-top-right-radius: .5rem;
}
.bg-color-black {
    /* --tw-bg-opacity: 1; */
    background-color: #00000066;
}
.justify-between {
    justify-content: space-between;
}
.w-full {
    width: 100%;
}
.flex {
    display: flex;
}
.text-underline {
    text-decoration: underline;
}
.p-6 {
    padding: 24px !important;
}
.border-divider{
    border-color: #d2d1d1;
}
.z-10 {
    z-index: 10;
}
.mx-8 {
    margin-left: 32px;
    margin-right: 32px;
}
.-mt-14 {
    margin-top: -56px;
}
.gap-6 {
    gap: 24px;
}
.shadow-10 {
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.rounded-lg {
    border-radius: .5rem;
}
.flex {
    display: flex;
}
.flex-col {
    flex-direction: column;
}
.border-solid {
    border-style: solid;
}
.bg-color-white {
    background-color: white;
}
.px-10 {
    padding-left: 40px;
    padding-right: 40px;
}
.py-17 {
    padding-top: 17px;
    padding-bottom: 17px;
}
.h-full {
    height: 100%;
}
.jss237 {
    color: rgb(11, 97, 217);
}
.justify-center {
    justify-content: center!important;
}
.items-center {
    align-items: center;
}
.bg-color-primary {
    background-color: #eff1ff;
}
.justify-start {
    justify-content: flex-start;
}
.h-76 {
    height: 76px;
}
.w-116 {
    width: 116px;
}
.shadow-40 {
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.relative {
    position: relative;
}
.cursor:hover {
    opacity: 100;
}
.img-rolling {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 10px;
    box-shadow: 1px 1px 4px 2px rgba(0, 0, 0, 0.1);
}
.selected-checbox {
    position:relative;
}
.selected-checbox:after {
    content: '';
    background: url(https://cdn-icons-png.flaticon.com/128/5610/5610944.png);
    position: absolute;
    top: -10px;
    right: 5px;
    width: 30px;
    height: 30px;
    background-size: 100% 100%;
}
.yes-no-toggle {
    display: inline-flex;
    background: #f1f3f5;
    border-radius: 50px;
    padding: 3px;
}
.yes-no-toggle input {
    display: none;
}
.yes-no-toggle input:checked + label {
    background: #0d6efd;
    color: #fff;
}
.yes-no-toggle label {
    padding: 4px 14px;
    border-radius: 50px;
    cursor: pointer;
    font-size: 13px;
    color: #6c757d;
}
.policy .multi-select{
    width:300px;
    position:relative;
    font-family: Arial;
}

.policy .select-box{
    border:1px solid #ccc;
    padding:10px;
    cursor:pointer;
    background:white;
}

.policy .arrow{
    float:right;
}

.policy .dropdown{
    border:1px solid #ccc;
    background:white;
    position:absolute;
    width:100%;
    max-height:250px;
    overflow:auto;
    display:none;
    z-index:100;
}

.policy .multi-select.open .dropdown{
    display:block;
}

.policy .search-box{
    width:100%;
    padding:8px;
    border:none;
    border-bottom:1px solid #ddd;
}

.policy .option{
    display:block;
    padding:8px;
    cursor:pointer;
}

.policy .option:hover{
    background:#f0f0f0;
}

.policy .all{
    border-bottom:1px solid #ddd;
    background:#fafafa;
}