
.step-content {
    display: none;
}

.step-content.active {
    display: block;
}
.customize_model .modal-header{
    padding:0;
    width:auto;
    position:absolute;
    border:none;
    right:22px;
    top:36px;
    z-index:1;
}
.customize_model .modal-content{
    border:none;
    background-color:#fff;
    border-radius:16px;
}
.left_model_item {
    width: 340px;
    background-color: rgba(255, 117, 85, 0.1);
    padding: 76px 20px 20px;
}
.right_model_item {
    width: calc(100% - 340px);
    padding:76px 20px 40px;
    position:relative;
}
.left_model_content a {
    width: 200px;
    margin: 0 auto;
    display: block;
}
.left_model_content a em{
    display:block;
    font-size: 13px;
    font-weight: 600;
    color:rgba(255, 117, 85, 1);
    font-style: italic;
    line-height:16px;
}
.popup_pic{
    margin-top:100px;
}

/* Progress container */
.custom-progress {
    height: 10px;
    background-color: #fde9df; 
    border-radius: 10px;
    overflow: hidden;
}

/* Progress fill */
.custom-progress-bar {
    background-color: rgba(255, 117, 85, 1); 
    border-radius: 10px;
    transition: width 0.4s ease;
}
.right_model_item h3{
    font-size:24px;
    font-weight:600;
    color:#000;
    text-align:center;
}
.custom_label {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    display: block;
    margin-bottom: 14px;
}
.departure_city select {
    width: 100%;
    border: 1px solid rgba(152, 161, 176, 1);
    border-radius: 8px;
    height: 40px;
    padding: 0px 50px 0px 16px;
    font-size: 16px;
    font-weight: 400;
    background-image: url('../images/select-drop.png');
    background-size: 3%;
    background-position: 95% 50%;
    background-repeat: no-repeat;
    line-height:24px;
    cursor:pointer;
}
.departure_city select:focus{
    outline:none;
}
.no-arrow {
    appearance: none; /* Chrome, Edge */
    -webkit-appearance: none; /* Safari */
    -moz-appearance: none; /* Firefox */
    background: none;
    padding-right: 10px; /* optional */
}
.default_select_city ul{
    column-count:2;
}
.default_select_city ul li{
    font-size:16px;
    font-weight:400;
    line-height:24px;
    color:#000;
    padding:7px 20px;
    margin-bottom:7px;
    transition:0.5s ease-in-out;
    border-radius:8px;
    cursor:pointer;
    border:1px solid transparent;
    
}
.default_select_city ul li:hover{
    background-color:rgba(255, 117, 85, 0.1);
    color:rgba(255, 117, 85, 1);
    border:1px solid rgba(255, 117, 85, 1);
}
.package_type ul li {
    width: 200px;
    padding: 12px 10px;
    text-align: center;
    background-color: #fff;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
    transition: 0.5s ease-in-out;
    border-radius: 8px;
    cursor: pointer;
    border: 1px solid transparent;
}
.package_type ul li span{
    font-size:14px;
    font-weight:500;
    line-height:22px;
    color:#000;
    display:block;
    margin-top:15px;
    transition: 0.5s ease-in-out;
}
.package_type ul li:hover{
    background-color:rgba(255, 117, 85, 0.1);
    border:1px solid rgba(255, 117, 85, 1);
}
.package_type ul li:hover span{
    color:rgba(255, 117, 85, 1);    
}
.package_type ul li.active{
    background-color:rgba(255, 117, 85, 0.1);
    border:1px solid rgba(255, 117, 85, 1);
}
.package_type ul li.active span{
    color:rgba(255, 117, 85, 1);  
}

.back-step {
    padding: 10px;
    border: none;
    background-color: transparent;
    position: absolute;
    left: 10px;
    top: 20px;
}
.next-step, #finalSubmit {
    border: none;
    font-size: 20px;
    font-weight: 500;
    background-color: rgba(255, 117, 85, 1);
    color: #fff;
    border-radius: 8px;
    text-align: center;
    height: 50px;
    display: block;
    width: 100%;
    margin: 20px auto 0px;
}
.next-step img, #finalSubmit img{
    vertical-align: middle;
    filter: brightness(0) invert(1);
    width: 18px;
    transform: rotate(180deg);
    margin-left: 5px;
}
.back-step:focus, #finalSubmit:focus {
    outline: none;
}

.night-options {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 40px;
}

.night-box {
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 15px;
}

.night-box input {
    appearance: none;
    width: 14px;
    height: 14px;
    border: 1.5px solid #ff5a3c;
    border-radius: 2px;
    margin-right: 8px;
    position: relative;
}
.night-box span{
    font-size:14px;
    font-weight:400;
    color:#000;
}

.night-box input:checked {
    background: #ff5a3c;
}

.night-box input:checked::after {
    content: '';
    position: absolute;
    left: 4px;
    top: 1px;
    width: 4px;
    height: 8px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.selector-date input{
    display:none;
}
.selector-date .flatpickr-calendar {
    width: 100%;
    border: none;
    box-shadow: none;
    outline: none;
    border-radius: 0px;
}
.selector-date .flatpickr-current-month{
    font-size:16px;
    color:#000;
    line-height:24px;
}
.selector-date .flatpickr-current-month span{
    font-weight:500 !important;
}
.selector-date .flatpickr-current-month .numInputWrapper input{
    font-weight:500 !important;
}
.selector-date .flatpickr-months{
    margin-bottom:15px;
}
/* Calendar container full width */
.selector-date .flatpickr-calendar {
    width: 100% !important;
    max-width: 100% !important;
}

/* Days grid full width */
.selector-date .flatpickr-rContainer,
.selector-date .flatpickr-days {
    width: 100% !important;
}

/* Week row full width */
.selector-date .dayContainer {
    width: 100% !important;
    min-width: 100% !important;
}

/* Each day equal width */
.selector-date .flatpickr-day {
    flex: 1 0 calc(100% / 7);
    font-size: 14px;
    width: 38px;
    height: 36px;
    border-radius: 5px;
    line-height: 36px;
    margin: 2px;
}
.selector-date .flatpickr-day.flatpickr-disabled,
.selector-date .flatpickr-day.nextMonthDay{
    color:rgb(57 57 57 / 48%) !important;
}
.selector-date .flatpickr-day:focus{
    background: rgba(255, 117, 85, 0.1) !important;
    border-color: rgba(255, 117, 85, 1) !important;tant;
}
.selector-date .flatpickr-day.today{
    border:1px solid rgba(255, 117, 85, 1);
    color: rgba(255, 117, 85, 1) !important;
}
.selector-date .flatpickr-day.selected{
     background-color:rgba(255, 117, 85, 0.1);
    border:1px solid rgba(255, 117, 85, 1);
    color: rgba(255, 117, 85, 1) !important;
}
.selector-date .flatpickr-weekday {
    font-size: 14px;
    font-weight: 500;
    color: #000;
    text-transform: uppercase;
}

/*step-3 css*/

.traveller-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.traveller-card {
    box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    padding: 16px 12px;
    cursor: pointer;
    transition: all 0.3s ease;
    background: #fff;
    text-align: center;
    border:1px solid transparent;
}

.traveller-card img {
    width: 72px;
    height: auto;
    margin-bottom:5px;
}

.traveller-card span {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: #000;
    line-height: 22px;
}

.traveller-card:hover {
    border-color: #ff5a3c;
    background: rgba(255, 117, 85, 0.1);
}

.traveller-card.active {
    background: rgba(255, 117, 85, 0.1);
    border:1px solid #ff5a3c;
}

.traveller-card.active span {
    color: #ff5a3c;
}

/*travelloer-count*/

.traveller-count {
    display: flex;
    justify-content: space-between;
    gap: 24px;
}

.count-box h4 {
    font-size: 16px;
    font-weight: 500;
    margin: 0;
    line-height:24px;
}

.count-box small {
    display: block;
    font-size: 12px;
    font-weight:400;
    color: rgba(103, 102, 102, 1);
    margin-bottom: 10px;
}

.counter {
    display: flex;
    align-items: center;
    border: 1.5px solid #e6e6e6;
    border-radius: 8px;
    padding: 6px 10px;
    width: 120px;
    justify-content: space-between;
}

.counter button {
    border: none;
    background: none;
    font-size: 24px;
    font-weight: 400;
    color: #ff5a3c;
    cursor: pointer;
    width: 28px;
    height: 28px;
    line-height: 1;
}

.counter input {
    width: 30px;
    text-align: center;
    border: none;
    font-size: 16px;
    font-weight: 400;
    background: transparent;
    pointer-events: none;
    color:#000;
}
.count-box.disabled {
    opacity: 0.4;
    pointer-events: none;
}
.mini-info-list {
    font-size: 16px;
    font-weight: 400;
    color: rgba(103, 102, 102, 1);
}
.mini-info-list ul{
    list-style:disc;
}
.mini-info-list ul li{
    margin-left: 12px;
    margin-right: 12px;
    font-size:14px;
    font-weight:400;
}
.mini-info-list ul li:first-of-type{
    list-style:none;
}
.mini-info-list ul li::marker{
    color:rgba(255, 117, 85, 1);
}

.personal-info .form-label{
    font-size:18px;
    font-weight:500;
    line-height:26px;
    color:#000;
    display:block;
    margin-bottom:5px;
}
.personal-info .input-with-icon input, .personal-info #Inputphone {
    border: 1px solid rgba(152, 161, 176, 1);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: rgba(103, 102, 102, 1);
    border-radius: 8px;
    padding: 7px 16px;
    height: auto;
}
.personal-info #CountryPhnCode {
    padding: 7px 10px;
    height: auto;
    border: 1px solid rgba(152, 161, 176, 1);
}

@media only screen and (max-width:991px){
    .left_model_content a{width:150px;}
    .left_model_content a img{width:100% !important;}
    .left_model_content a em{font-size:11px;}
    .left_model_item{padding: 50px 20px 20px;}
    .left_model_item{width:260px;}
    .popup_pic img{width:100%;}
    .right_model_item{width: calc(100% - 260px);padding: 40px 20px 20px;}
    .customize_model .modal-header{top:13px;}
    .right_model_item h3{font-size:18px;line-height:24px;}
    .custom_label,.departure_city select{font-size:14px;}
    .default_select_city ul li{font-size:14px;padding: 7px 12px;line-height: 20px;}
    .package_type ul li{width:150px;}
    .package_type ul li img{width: 55px;height: 60px;object-fit: contain;}
    .back-step{top:0;}
}

@media only screen and (min-width:576px) and (max-width:991px){
    .customize_model .modal-dialog {max-width: 700px;}

}
@media only screen and (max-width:767px){
    .customize_model .modal-dialog{max-width: 500px;}
    .left_model_item{display:none;}
    .right_model_item{width:100%;}
}
@media only screen and (max-width:576px){
    .customize_model .modal-dialog{max-width: 100%;}
    .package_type ul li {width: 130px;}
    .next-step, #finalSubmit{font-size:16px;height:40px;}
    .default_select_city ul li{font-size: 13px;padding: 7px 6px;line-height: 15px;}
    .custom_label, .departure_city select {font-size: 12px;}
    .departure_city select{height: 34px;padding: 0px 30px 0px 10px;}
    .package_type ul li img {width: 40px;height: 50px;}
    .package_type ul li span{font-size: 12px;line-height: 22px;margin-top: 5px;}
    .right_model_item h3{font-size:16px;}
    .selector-date .flatpickr-day{font-size: 12px;width: 25px;line-height: 25px;height: 25px;}
    .traveller-card img{width:45px;}
    .traveller-card{padding: 8px 8px;}
    .traveller-card span{font-size:12px;line-height:18px;}
    .counter{width:100%;padding:5px;}
    .traveller-count{gap:10px;}
    .counter input{font-size:12px;}
    .count-box h4{font-size:14px;}
    #finalSubmit{font-size:14px;}
    .mini-info-list{display:none !important;}
    
}

