@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css");

body {
    font-family: "DM Sans", sans-serif;
    padding: 0px;
    margin: 0px;
}

.formType-sec {
    display: flex;
    align-items: center;
    margin: 0 0 8px 0;
    position: relative;
    gap: 12px;
}

button.form_btn {
    background: #ffffff;
    color: #000000;
    border: none;
    padding: 12px 22px 12px 22px;
    font-size: 15px;
    font-weight: 500;
    border-radius: 28px;
}

button.form_btn i {
    font-size: 14px;
}

button.form_btn.active {
    background: #fb890b;
    color: #fff;
}

.prsave {
    margin: 7px 18px 0 0px;
    color: #fff;
    display: inline-block;
    float: right;
    font-size: 14px;
    padding: 4px 15px;
    line-height: 14px;
}

.prsave span {
    color: #ff565c;
    font-weight: 600;
}

.prsave strong {
    background: #ffbf00;
    font-weight: 400;
    font-size: 13px;
    color: #333;
    padding: 2px 6px;
    line-height: 13px;
    border-radius: 2px;
    margin: 0 8px 0 0;
}

.bg_clrddd1 {}

.head_hotal {
    font-size: 20px;
    color: #fff;
    margin: 0px;
    font-weight: 500;
    padding: 0 0 15px 0;
    text-transform: capitalize;
}

.span_pseudo,
.chiller_cb span:before,
.chiller_cb span:after {
    content: "";
    display: inline-block;
    background: #fff;
    width: 0;
    height: 0.2rem;
    position: absolute;
    transform-origin: 0% 0%;
}

.chiller_cb {
    position: relative;
    height: 2rem;
    display: flex;
    align-items: center;
    margin-top: 10px;
}

.chiller_cb input {
    display: none;
}

.chiller_cb input:checked~span {
    background: #ffbf00;
    border-color: #ffbf00;
}

.chiller_cb input:checked~span:before {
    width: 1rem;
    height: 0.15rem;
    transition: width 0.1s;
    transition-delay: 0.3s;
}

.chiller_cb input:checked~span:after {
    width: 0.4rem;
    height: 0.15rem;
    transition: width 0.1s;
    transition-delay: 0.2s;
}

.chiller_cb input:disabled~span {
    background: #ececec;
    border-color: #dcdcdc;
}

.chiller_cb input:disabled~label {
    color: #dcdcdc;
}

.chiller_cb input:disabled~label:hover {
    cursor: default;
}

.chiller_cb label {
    padding-left: 2rem;
    position: relative;
    z-index: 2;
    cursor: pointer;
    margin-bottom: 0;
    color: #333;
    font-weight: 500;
}

.chiller_cb span {
    display: inline-block;
    width: 1.2rem;
    height: 1.2rem;
    border: 1px solid #001b94;
    position: absolute;
    left: 0;
    transition: all 0.2s;
    z-index: 1;
    box-sizing: content-box;
}

.chiller_cb span:before {
    transform: rotate(-55deg);
    top: 1rem;
    left: 0.37rem;
}

.chiller_cb span:after {
    transform: rotate(35deg);
    bottom: 0.35rem;
    left: 0.2rem;
}

.form_include {
    position: relative;
    padding: 0 0 0px 0;
}

.swipe_box button {
    border: 1px solid #fb890b66;
    width: 40px;
    height: 40px;
    border-radius: 31px;
    color: #fb890b;
    background: #fff;
}

.panel {
    background-color: transparent !important;
}

.panel-default {
    border-color: transparent !important;
}

.panel.with-nav-tabs .panel-heading {
    padding: 0px 5px 0 0px;
    background: transparent;
}

.nav-tabs>li>a {
    border-radius: 0px !important
}

.panel-default>.panel-heading {
    border-color: transparent !important
}

.panel.with-nav-tabs.panel-default {}

.panel-body {
    padding: 0;
}

.panel.with-nav-tabs .nav-tabs {
    border-bottom: none;
}

.panel.with-nav-tabs .nav-justified {
    margin-bottom: -1px;
}

.with-nav-tabs.panel-default .nav-tabs>li {
    display: block;
}

.with-nav-tabs.panel-default .nav-tabs>li>a {
    display: block;
    padding: 10px 0px 8px 0 !important;
    font-size: 17px;
    font-weight: 500;
    border-bottom: solid 2px #001b94 !important;
    margin: 0 0 8px 0;
}

/********************************************************************/
/*** PANEL DEFAULT ***/
.with-nav-tabs.panel-default .nav-tabs>li>a,
.with-nav-tabs.panel-default .nav-tabs>li>a:hover,
.with-nav-tabs.panel-default .nav-tabs>li>a:focus {
    color: #fff;
}

.with-nav-tabs.panel-default .nav-tabs>.open>a,
.with-nav-tabs.panel-default .nav-tabs>.open>a:hover,
.with-nav-tabs.panel-default .nav-tabs>.open>a:focus,
.with-nav-tabs.panel-default .nav-tabs>li>a:hover,
.with-nav-tabs.panel-default .nav-tabs>li>a:focus {
    color: #fff;
    background: #F8A501;
    border-color: transparent;
}

.with-nav-tabs.panel-default .nav-tabs>li.active>a,
.with-nav-tabs.panel-default .nav-tabs>li.active>a:hover,
.with-nav-tabs.panel-default .nav-tabs>li.active>a:focus {
    color: #333;
    background: #fff;
    border-color: #fff;
    border-bottom-color: transparent;
}

.with-nav-tabs.panel-default .nav-tabs>li.dropdown .dropdown-menu {
    background-color: #f5f5f5;
    border-color: #ddd;
}

.with-nav-tabs.panel-default .nav-tabs>li.dropdown .dropdown-menu>li>a {
    color: #777;
}

.with-nav-tabs.panel-default .nav-tabs>li.dropdown .dropdown-menu>li>a:hover,
.with-nav-tabs.panel-default .nav-tabs>li.dropdown .dropdown-menu>li>a:focus {
    background-color: #ddd;
}

.with-nav-tabs.panel-default .nav-tabs>li.dropdown .dropdown-menu>.active>a,
.with-nav-tabs.panel-default .nav-tabs>li.dropdown .dropdown-menu>.active>a:hover,
.with-nav-tabs.panel-default .nav-tabs>li.dropdown .dropdown-menu>.active>a:focus {
    color: #fff;
    background-color: #555;
}

.form_bx {
    box-shadow: 0px 4px 25px 0px rgba(0, 0, 0, 0.08);
    background: #ffffff;
    padding: 0px 0px 0px 0px;
    border-radius: 20px 20px 20px 20px;
    margin: 0px 0 0 0;
    z-index: 9;
    position: relative;
}

.form_field_group {
    display: flex;
    gap: 8px;
    align-items: center;
    padding: 12px 20px 12px 20px;
}

.search_input_box {
    position: relative;
    width: 30%;
}

.date_input_box {
    position: relative;
    width: 25%;
}

.passanger_input_box {
    position: relative;
    width: 22%;
}

.form_bx h2 {
    color: #5d5d5d;
    font-size: 24px;
    margin: 5px 0 15px 10px;
    text-transform: uppercase;
    font-weight: 600;
    font-family: 'Roboto', sans-serif;
}

.form_bx ul {}

.form_bx ul li {
    float: left;
}

.form_bx ul li span {
    color: #5d5d5d;
}

.flight_type {
    margin: 0 0 0px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    padding: 14px 20px 12px 20px;
    box-shadow: 0px 0px 50px 0px #0000000d;
}

.flight_type ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.flight_type ul li {}

.ffrms_ppd {
    padding-left: 5px !important;
    padding-right: 5px !important;
    position: relative;
}

.rsts.ffrms_ppd {
    width: 19%;
}

.llefrtsd {
    width: 12%;
}

.form-group.ddtpst {
    margin: 10px 0 0 0 !important;
}

.pplne_hh {
    position: relative;
}

.sm_lbs {
    font-size: 14px;
    color: #fff;
    margin: 0px 0 7px 0;
}

input.ipt1 {
    background: #ffffff00 !important;
    color: #000000;
    font-size: 15px;
    font-weight: 600;
    text-transform: capitalize;
    height: 60px;
    padding: 24px 10px 2px 20px;
    border: none;
    border-right: 1px solid #e9eaec;
    box-shadow: 0 6px 18px rgba(15, 69, 152, 0.08);
    border-radius: 0px;
}

ul.nav.nav-tabs li a i {
    font-size: 18px;
    transform: rotate(45deg);
    margin: 0px 7px 0 0;
    position: relative;
    top: 1px;
}

.frm_llbs {
    position: absolute;
    top: 25px;
    left: 15px;
    margin: 0;
}

.frm_llbs img {
    height: auto;
    display: none;
}

.res_hh {
    font-size: 12px;
    font-weight: 500;
    text-transform: capitalize;
    color: #212121;
    z-index: 1;
    margin: 0 0px 0px 0;
    display: block;
    position: absolute;
    top: 9px;
    left: 21px;
    line-height: 14px;
}

.rounded_iimg {
    position: relative;
}

.tik_round {
    text-align: center;
    position: absolute;
    left: 19.4%;
    z-index: 1;
    top: 53px;
}

.tik_round img {
    border: solid 1px #95989a;
    border-radius: 22px;
    padding: 5px;
    width: 28px;
    background: #fff;
}


select.ipt1 {
    background: #ffffff !important;
    color: #212121;
    font-size: 15px;
    font-weight: 600;
    text-transform: capitalize;
    height: 55px;
    border-radius: 12px;
    padding: 24px 15px 2px 18px;
    border: 1px solid rgb(188 188 188);
}

.res_hh2 {
    font-size: 12px;
    font-weight: 500;
    text-transform: capitalize;
    color: #212121;
    z-index: 1;
    margin: 0 0px 0px 0;
    display: block;
    position: absolute;
    top: 8px;
    left: 18px;
    line-height: 14px;
}

.inputSet3 {
    margin: 9px 0 0 0;
}

.inputSet3 label span {
    color: #333;
    font-size: 13px;
    margin: 0px 0 0 0;
}

.easy_srch {
    font-size: 16px;
    color: #f1750a;
    margin: 0px 0 0px 0;
    font-weight: 600;
    background: #ffffff;
    padding: 10px 20px 10px 20px;
    display: inline-block;
    border-radius: 25px;
    text-transform: uppercase;
    position: absolute;
    top: -30px;
    left: 26px;
}

h4.easy_srch i {
    margin: 0 4px 0px 0;
}

.form-control:focus {
    border-color: #e9eaec;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(12, 73, 255, 0.12);
}


select.ipt1_hotel {
    background: #fff;
    color: #5d5d5d;
    border: solid 1px #ccc;
    font-size: 14px;
    padding: 8px 10px 8px 10px;
    font-weight: 500;
    text-transform: capitalize;
    height: 50px;
    border-radius: 0;
    font-weight: 600;
}

select.ipt1 option {
    background: #fff;
}

.form-group label {
    color: #a2a2a2;
    font-weight: 600;
    font-size: 16px;
}

.form-group p {
    color: #a5a5a5;
    border-bottom: 2px solid #a5a5a5;
    padding-bottom: 5px;
    font-weight: 500;
}

select,
input.ipt1::-webkit-input-placeholder {
    color: #000000 !important;
    font-weight: 500;
    font-size: 15px;
}

select,
input.ipt1:-moz-placeholder {
    /* Firefox 18- */
    color: #000000 !important;
    font-weight: 500;
    font-size: 15px;
}

select,
input.ipt1::-moz-placeholder {
    /* Firefox 19+ */
    color: #5d5d5d !important;
    font-weight: 400;
    font-size: 14px;
}

select,
input.ipt1:-ms-input-placeholder {
    color: #5d5d5d !important;
    font-weight: 400;
    font-size: 14px;
}

select.ipt1_hotel:-moz-placeholder {
    color: #5d5d5d !important;
    font-weight: 400;
    font-size: 14px;
}

.closed_icon {
    position: absolute;
    top: 16px;
    right: 3px;
    width: 20px;
    height: 20px;
    border-radius: 20px;
    background: #E8381B;
    text-align: center;
    cursor: pointer;
}

.closed_icon i {
    line-height: 20px;
    color: #fff;
    font-size: 15px;
}

.form-control {
    box-shadow: none !important;
}

.ddstr {
    margin-top: 10px;
}

.ddstr_ps {
    margin-top: 30px;
}

.form-control:focus {
    box-shadow: 0 0 0 #5d5d5d !important;
}

.fm_ln1 {
    position: relative;
    margin: 0 0 0 0;
}

.change_city img {
    position: absolute;
    top: 18%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 44px;
    padding: 2px;
}

.change_date img {
    position: absolute;
    bottom: 100px;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 28px;
    padding: 2px;
}

.fm_ln1 .form-group {
    margin: 0 0px 16px 0;
    position: relative;
}

.formTrip_box {
    background: #ededed;
    padding: 4px 4px 4px 4px;
    display: flex;
    align-items: center;
    gap: 4px;
    border-radius: 10px;
    position: relative;
}

.search_btn_box button {
    border: none;
    font-size: 18px;
    width: 56px;
    height: 56px;
    line-height: 56px;
    border-radius: 55px;
    background: #fb890b;
    color: #fff;
}

.flight_type label {
    color: #000000;
    background: #f1f5f900;
    border-radius: 10px;
    letter-spacing: 0;
    font-weight: 500;
    margin: 0;
    font-size: 14px;
    padding: 10px 10px 10px 39px;
    text-align: left;
    line-height: 16px;
    display: inline-flex;
    align-items: center;
    position: relative;
    cursor: pointer;
    border: none;
}

.flight_type input[type=radio] {}

.bg_clrddd {}

/* Custom Radio Button Start*/

.radiotextsty {
    color: #A5A4BF;
    font-size: 18px;
}

.customradio {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    position: relative;
    padding: 12px 22px 12px 50px;
    margin-bottom: 10px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    border-radius: 40px;
    border: 1px solid #c7d9ff;
    background: #eef3ff;
    color: #103c8d;
    transition: all 0.25s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.customradio.active {
    background: #ffffff;
    color: #000000;
}

.customradio .radio-icon {
    position: absolute;
    left: 6px;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #ffffff;
    color: #9b9b9b;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}

.customradio.active .radio-icon {
    background: rgb(237 237 237);
    color: #c9a66c;
}

.customradio.active .checkmark {
    border-color: #ffffff !important;
    background-color: #ffffff;
}

.customradio.active .checkmark:after {
    background: #c9a66c;
}

/* Hide the browser's default radio button */
.customradio input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

/* Create a custom radio button */
.checkmark {
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    height: 18px;
    width: 18px;
    background-color: transparent !important;
    border-radius: 50%;
    border: 2px solid #9bb6f2 !important;
}

/* On mouse-over, add a grey background color */
.customradio:hover input~.checkmark {
    background-color: transparent;
}

/* When the radio button is checked, add a blue border and white fill */
.customradio input:checked~.checkmark {
    background-color: #ffffff;
    border: 2px solid #c9a66c !important;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the indicator (dot/circle) when checked */
.customradio input:checked~.checkmark:after {
    display: block;
}

/* Style the indicator (dot/circle) */
.customradio .checkmark:after {
    top: 2px;
    left: 2px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ff4600;
}

.gapres_dd {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
    cursor: not-allowed;
    background-color: transparent;
    opacity: 1;
}

.readtrue {
    cursor: pointer !important;
    background-color: #fff !important;
    opacity: 1;
}

.form-control[disabled] {
    background: #9f9f9f2e !important;
    opacity: 0.1;
    cursor: not-allowed !important;
}

.field-error {
    position: absolute;
    top: 52px;
    left: 19px;
    padding: 8px 20px 8px 20px !important;
}

/* Custom Radio Button End*/
.fm_ln1 {}

.main_fm {
    position: relative;
}

input.add_num {
    padding: 0;
    height: 40px;
    border: none;
}

.input-group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 55%;
    border: 1px solid #e3e3e3;
    border-radius: 12px;
    overflow: hidden;
    padding: 2px 2px 2px 2px;
}

a.add_btn,
a.mns_btn {
    color: #000000 !important;
    background: #e3e3e3;
    padding: 0 0 0 0;
    border-radius: 10px;
    height: 40px;
    width: 40px;
    line-height: 40px;
    font-size: 12px;
}

a.add_btn:hover,
a.mns_btn:hover {
    color: #5d5d5d;
    text-decoration: none;
}

/*a.mns_btn{color: #5d5d5d;background: #ff7742;padding: 3px 12px;}*/
.pass_bx label {
    font-size: 15px;
    font-weight: 500;
    color: #000;
    text-transform: capitalize;
    margin-bottom: 0;
    width: 45%;
}

.passanger_boxHd {
    color: #000000;
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 14px 0;
}

.passanger_boxHd i {}

.pass_bx {
    margin: 0px 0px 14px 0px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.btn_dn {
    margin: 15px 0px 0 0;
}

.btn_dn button {
    background: #fb890b;
    width: 38%;
    color: #fdfdfd !important;
    text-transform: uppercase;
    padding: 5px 10px;
    border-radius: 10px;
    letter-spacing: 1px;
    font-size: 15px;
    margin: 0 auto 0 auto;
    height: 45px;
    border: none;
    float: right;
}

.psg_dls {
    width: 350px;
    display: table;
    background: #ffffff;
    padding: 25px 25px 25px 25px;
    position: absolute;
    top: 72px;
    right: 0px;
    z-index: 9;
    box-shadow: rgba(19, 41, 104, 0.2) 0px 6px 16px 0px;
    border-radius: 22px 22px 22px 22px;
}

.form-group {
    position: relative;
}



#radioBtn .notActive {
    color: #3276b1;
    background-color: #5d5d5d;
}



@media (min-width:320px) and (max-width:479px) {

    .bg_clrddd1 {
        padding: 0 0 0px 0;
    }

    .frm_gap {
        padding: 0px;
    }

    .fm_ln1 {
        padding: 5px 10px 2px 10px;
        display: block;
        position: relative;
    }

    .fm_ln1 .form-group {
        margin: 0 0px 10px 0;
    }

    .ui-widget.ui-widget-content {
        border: 0;
        box-shadow: 0 0px 3px #777;
        padding: 0px;
        z-index: 1045 !important;
        position: absolute;
        width: 100% !important;
        left: 0 !important;
    }

    .change_city img {
        position: absolute;
        top: 50%;
        left: 49%;
        transform: translate(-50%, -50%);
        width: 36px;
        padding: 2px;
    }

    .bg_clrddd {
        position: relative;
        z-index: 9;
        width: 100%;
        top: -10px;
    }

    .form_bx {
        background: white;
        padding: 10px 0px 16px 0;
        display: block;
        width: 100%;
    }

    .frm_llbs {
        position: absolute;
        top: 12px;
        left: 12px;
        margin: 0;
    }

    .panel-body {
        background: transparent;
    }

    .flight_type label {
        margin: 0 0 0 0;
    }

    .tik_round {
        display: none;
    }

    input.ipt1 {
        height: 50px;
        padding: 8px 0 8px 35px;
    }

    .panel.with-nav-tabs.panel-default {
        padding: 0px 15px 12px 15px;
        box-shadow: none;
    }

    .res_hh {
        display: none;
    }

    .fm_ln1 button {
        margin: 0px auto 0px auto;
        width: 100%;
        padding: 10px 0;
        height: 50px;
        border-radius: 14px;
    }

    .flight_type {
        margin: 0 0 0 12px;
        display: table;
        width: 100%;
    }

    input.add_num {
        width: 29% !important;
    }

    .btn_dn button {
        margin: 5px 0 0px 0 !important;
        border: solid 1px #f04824;
        height: 38px;
        padding: 0;
    }

    select.ipt1 {
        height: 50px !important;
        padding: 8px 0 8px 35px;
    }

    .psg_dls,
    .col-sm-12,
    .col-6 {
        float: left;
    }

    .rsts.ffrms_ppd {
        width: 100%;
    }

    .res_hh {
        display: none;
    }

    .llefrtsd {
        width: 100%;
    }

    .checkmark {
        position: absolute;
        top: 5px;
        left: 8px;
        height: 16px;
        width: 16px;
        background-color: transparent !important;
        border-radius: 50%;
        border: 2px solid #ff4600 !important;
    }

    .customradio .checkmark:after {
        top: 2px;
        left: 2px;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #ff4600;
    }
}


@media (min-width:360px) and (max-width:639px) {

    .bg_clrddd1 {
        padding: 0 0 0px 0;
    }

    .frm_gap {
        padding: 0px;
    }

    .fm_ln1 {
        padding: 5px 10px 2px 10px;
        display: block;
        position: relative;
    }

    .fm_ln1 .form-group {
        margin: 0 0px 10px 0;
    }

    .ui-widget.ui-widget-content {
        border: 0;
        box-shadow: 0 0px 3px #777;
        padding: 0px;
        z-index: 1045 !important;
        position: absolute;
        width: 70% !important;
        left: 21px !important;
    }

    .change_city img {
        position: absolute;
        top: 50%;
        left: 49%;
        transform: translate(-50%, -50%);
        width: 36px;
        padding: 2px;
    }

    .bg_clrddd {
        position: relative;
        z-index: 9;
        width: 100%;
        top: -10px;
    }

    .form_bx {
        background: white;
        padding: 10px 0px 16px 0;
        display: block;
        width: 100%;
    }

    .frm_llbs {
        position: absolute;
        top: 12px;
        left: 12px;
        margin: 0;
    }

    .panel-body {
        background: transparent;
    }

    .flight_type label {
        margin: 0 0 0 0;
    }

    .flight_type {
        margin: 0 0 0 12px;
        display: table;
        width: 100%;
    }

    input.add_num {
        width: 29% !important;
    }

    .tik_round {
        display: none;
    }

    input.ipt1 {
        height: 50px;
        padding: 8px 0 8px 35px;
    }

    .panel.with-nav-tabs.panel-default {
        padding: 0px 15px 12px 15px;
        box-shadow: none;
    }

    .res_hh {
        display: none;
    }

    .fm_ln1 button {
        margin: 0px auto 0px auto;
        width: 100%;
        padding: 10px 0;
        height: 50px;
        border-radius: 14px;
    }

    .flight_type {
        margin: 0 0 0 12px;
        display: table;
        width: 100%;
    }

    input.add_num {
        width: 46% !important;
    }

    .btn_dn button {
        margin: 5px 0 0px 0 !important;
        border: solid 1px #f04824;
        height: 38px;
        padding: 0;
    }

    select.ipt1 {
        height: 50px !important;
        padding: 8px 0 8px 35px;
    }

    .psg_dls,
    .col-sm-12,
    .col-6 {
        float: left;
    }

    .rsts.ffrms_ppd {
        width: 100%;
    }

    .llefrtsd {
        width: 100%;
    }

    .checkmark {
        position: absolute;
        top: 5px;
        left: 8px;
        height: 16px;
        width: 16px;
        background-color: transparent !important;
        border-radius: 50%;
        border: 2px solid #ff4600 !important;
    }

    .customradio .checkmark:after {
        top: 2px;
        left: 2px;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #ff4600;
    }
}


@media (min-width:480px) and (max-width:639px) {
    input.add_num {
        width: 29% !important;
    }

    .bg_clrddd1 {
        padding: 0 0 0px 0;
    }

    .frm_gap {
        padding: 0px;
    }

    .fm_ln1 {
        padding: 5px 10px 2px 10px;
        display: block;
        position: relative;
    }

    .fm_ln1 .form-group {
        margin: 0 0px 10px 0;
    }

    .ui-widget.ui-widget-content {
        border: 0;
        box-shadow: 0 0px 3px #777;
        padding: 0px;
        z-index: 1045 !important;
        position: absolute;
        width: 70% !important;
        left: 21px !important;
    }

    .change_city img {
        position: absolute;
        top: 50%;
        left: 49%;
        transform: translate(-50%, -50%);
        width: 36px;
        padding: 2px;
    }

    .bg_clrddd {
        position: relative;
        z-index: 9;
        width: 100%;
        top: -10px;
    }

    .form_bx {
        background: white;
        padding: 10px 0px 16px 0;
        display: block;
        width: 100%;
    }

    .flight_type {
        margin: 0 0 0 12px;
        display: table;
        width: 100%;
    }

    .frm_llbs {
        position: absolute;
        top: 12px;
        left: 12px;
        margin: 0;
    }

    .panel-body {
        background: transparent;
    }

    .flight_type label {
        margin: 0 0 0 0;
    }

    .tik_round {
        display: none;
    }

    .panel.with-nav-tabs.panel-default {
        padding: 0px 15px 12px 15px;
        box-shadow: none;
    }

    .res_hh {
        font-size: 12px;
        color: #53555a;
        font-weight: 500;
    }

    .fm_ln1 button {
        margin: 0px auto 0px auto;
        width: 100%;
        padding: 10px 0;
        height: 50px;
        border-radius: 14px;
    }

    .flight_type {
        margin: 0 0 0 12px;
        display: table;
        width: 100%;
    }

    input.ipt1 {
        height: 50px;
        padding: 8px 0 8px 35px;
    }

    .llefrtsd {
        width: 100%;
    }

    .checkmark {
        position: absolute;
        top: 5px;
        left: 8px;
        height: 16px;
        width: 16px;
        background-color: transparent !important;
        border-radius: 50%;
        border: 2px solid #ff4600 !important;
    }

    .customradio .checkmark:after {
        top: 2px;
        left: 2px;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #ff4600;
    }
}


@media (min-width:640px) and (max-width:767px) {
    input.add_num {
        width: 29% !important;
    }

    .bg_clrddd1 {
        padding: 0 0 0px 0;
    }

    .frm_gap {
        padding: 0px;
    }

    .fm_ln1 .form-group {
        margin: 0 0px 5px 0;
    }

    .ui-widget.ui-widget-content {
        border: 0;
        box-shadow: 0 0px 3px #777;
        padding: 0px;
        z-index: 1045 !important;
        position: absolute;
        width: 70% !important;
        left: 21px !important;
    }

    .change_city img {
        position: absolute;
        top: 50%;
        left: 49%;
        transform: translate(-50%, -50%);
        width: 36px;
        padding: 2px;
    }

    .bg_clrddd {
        position: relative;
        z-index: 9;
        width: 100%;
        top: -10px;
    }

    .form_bx {
        background: white;
        padding: 10px 0px 16px 0;
        display: block;
        width: 100%;
    }

    .flight_type {
        margin: 0 0 0 12px;
        display: table;
        width: 100%;
    }

    .frm_llbs {
        position: absolute;
        top: 12px;
        left: 12px;
        margin: 0;
    }

    .panel-body {
        background: transparent;
    }

    .flight_type label {
        margin: 0 0 0 0;
    }

    .tik_round {
        display: none;
    }

    input.ipt1 {
        height: 50px;
        padding: 8px 0 8px 35px;
    }

    .panel.with-nav-tabs.panel-default {
        padding: 0px 15px 12px 15px;
        box-shadow: none;
    }

    .res_hh {
        font-size: 13px;
        color: #001b94;
        font-weight: 600;
    }

    .llefrtsd {
        width: 100%;
    }

    .checkmark {
        position: absolute;
        top: 5px;
        left: 8px;
        height: 16px;
        width: 16px;
        background-color: transparent !important;
        border-radius: 50%;
        border: 2px solid #ff4600 !important;
    }

    .customradio .checkmark:after {
        top: 2px;
        left: 2px;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #ff4600;
    }
}


@media (min-width:768px) and (max-width:799px) {
    input.add_num {
        width: 29% !important;
    }

    .bg_clrddd1 {
        padding: 0 0 0px 0;
    }

    .frm_gap {
        padding: 0px;
    }

    .fm_ln1 .form-group {
        margin: 0 0px 5px 0;
    }

    .ui-widget.ui-widget-content {
        border: 0;
        box-shadow: 0 0px 3px #777;
        padding: 0px;
        z-index: 1045 !important;
        position: absolute;
        width: 100% !important;
        left: 0 !important;
    }

    .change_city img {
        position: absolute;
        top: 50%;
        left: 49%;
        transform: translate(-50%, -50%);
        width: 36px;
        padding: 2px;
    }

    .bg_clrddd {
        position: relative;
        z-index: 9;
        width: 100%;
        top: -10px;
    }

    .form_bx {
        background: white;
        padding: 10px 0px 16px 0;
        display: block;
        width: 100%;
    }

    .flight_type {
        margin: 0 0 0 12px;
        display: table;
        width: 100%;
    }

    .fm_ln1 {
        padding: 5px 10px 2px 10px;
        display: block;
        position: relative;
    }

    .frm_llbs {
        position: absolute;
        top: 12px;
        left: 12px;
        margin: 0;
    }

    .panel-body {
        background: transparent;
    }

    .flight_type label {
        margin: 0 0 0 0;
    }

    input.ipt1 {
        height: 50px;
        padding: 8px 0 8px 35px;
    }

    .llefrtsd {
        width: 100%;
    }

    .checkmark {
        position: absolute;
        top: 5px;
        left: 8px;
        height: 16px;
        width: 16px;
        background-color: transparent !important;
        border-radius: 50%;
        border: 2px solid #ff4600 !important;
    }

    .customradio .checkmark:after {
        top: 2px;
        left: 2px;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #ff4600;
    }
}

/* =========================================================
   Responsive layer for the current search-form markup
   (.form_field_group / .search_input_box / .date_input_box /
    .passanger_input_box / .swipe_box / .search_btn_box)
   The blocks above only target the old .fm_ln1 markup, so the
   live form had no breakpoints at all and overflowed the page.
   ========================================================= */

/* ---------- Tablet: 2 fields per row ---------- */
@media (max-width: 991px) {

    .form_bx {
        width: 100%;
        max-width: 100%;
        border-radius: 18px;
        overflow: visible;
    }

    .flight_type {
        margin: 0;
        display: flex;
        width: auto;
        padding: 12px 14px 10px 14px;
    }

    .form_field_group {
        flex-wrap: wrap;
        align-items: stretch;
        gap: 10px;
        padding: 14px;
    }

    .search_input_box,
    .date_input_box,
    .passanger_input_box {
        width: auto;
        min-width: 0;
    }

    /* row 1: From | swap | To   (swap button is 40px, two 10px gaps) */
    .search_input_box {
        flex: 1 1 calc((100% - 60px) / 2);
    }

    .swipe_box {
        flex: 0 0 40px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* row 2: Departure | Return */
    .date_input_box {
        flex: 1 1 calc((100% - 10px) / 2);
    }

    /* row 3: Passengers | search button (56px + 10px gap) */
    .passanger_input_box {
        flex: 1 1 calc(100% - 66px);
    }

    .search_btn_box {
        flex: 0 0 56px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* each field becomes a self-contained bordered box */
    .form_field_group .form-group {
        height: 100%;
        border: 1px solid #e9eaec;
        border-radius: 12px;
        background: #fff;
    }

    input.ipt1,
    select.ipt1 {
        width: 100%;
        height: 58px;
        border: none !important;
        border-right: none;
        box-shadow: none;
        border-radius: 12px;
        padding: 25px 14px 7px 14px;
        text-overflow: ellipsis;
    }

    .res_hh {
        display: block;
        top: 9px;
        left: 15px;
    }

    .closed_icon {
        position: absolute;
        top: 50%;
        right: 12px;
        transform: translateY(-50%);
        cursor: pointer;
        font-size: 12px;
        color: #8a8f98;
    }

    .field-error {
        top: 60px;
        left: 0;
        padding: 6px 12px !important;
        font-size: 12px;
    }

    /* passenger dropdown must not hang off the card */
    .psg_dls {
        width: min(350px, calc(100vw - 32px));
        top: 66px;
        right: 0;
        left: auto;
        padding: 20px;
    }
}

/* ---------- Phone: one field per row ---------- */
@media (max-width: 767px) {

    .formType-sec {
        margin: 0 0 10px 0;
    }

    button.form_btn {
        padding: 10px 18px;
        font-size: 14px;
    }

    .flight_type {
        padding: 12px 12px 10px 12px;
    }

    .form_field_group {
        gap: 10px;
        padding: 12px;
    }

    .search_input_box,
    .date_input_box,
    .passanger_input_box,
    .search_btn_box {
        flex: 0 0 100%;
        width: 100%;
    }

    /* swap button sits between From and To, rotated to match the stack */
    .swipe_box {
        flex: 0 0 100%;
        width: 100%;
        margin: -6px 0;
    }

    .swipe_box button {
        transform: rotate(90deg);
    }

    input.ipt1,
    select.ipt1 {
        height: 56px;
        font-size: 15px;
    }

    /* full-width labelled search button instead of a 56px circle */
    .search_btn_box {
        text-align: center;
        margin-top: 2px;
    }

    .search_btn_box button {
        width: 100%;
        height: 52px;
        line-height: 52px;
        border-radius: 14px;
        font-size: 16px;
        font-weight: 600;
    }

    .search_btn_box button::after {
        content: " Search flights";
    }

    /* passenger dropdown: full width, single column */
    .psg_dls {
        width: 100%;
        right: 0;
        left: 0;
        top: 62px;
        padding: 18px;
    }

    .psg_dls .col-6,
    .psg_dls .col-sm-12,
    .psg_dls .col-xs-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    /* bootstrap .row gutters push the panel content past its own padding */
    .psg_dls .row {
        --bs-gutter-x: 0;
        margin-left: 0;
        margin-right: 0;
    }

    .pass_bx {
        margin-bottom: 12px;
        gap: 10px;
    }

    .pass_bx label {
        width: auto;
        flex: 1 1 auto;
    }

    .pass_bx label small {
        white-space: nowrap;
    }

    /* the spinner must keep a fixed footprint, otherwise bootstrap's
       .form-control width:100% blows the panel open */
    .input-group {
        width: 136px;
        flex: 0 0 136px;
        flex-wrap: nowrap;
    }

    input.add_num {
        width: 48px !important;
        flex: 0 0 48px;
        text-align: center;
    }

    .input-group-btn {
        flex: 0 0 40px;
    }

    .btn_dn button {
        width: 100%;
        float: none;
        height: 46px;
    }

    /* jQuery UI popovers */
    .ui-autocomplete {
        width: calc(100vw - 32px) !important;
        max-width: calc(100vw - 32px) !important;
        left: 16px !important;
        max-height: 280px;
        overflow-y: auto;
        overflow-x: hidden;
    }

    .ui-datepicker {
        max-width: calc(100vw - 32px);
    }
}

/* ---------- Small phones ---------- */
@media (max-width: 479px) {

    .flight_type {
        gap: 8px;
    }

    .customradio {
        margin-bottom: 0;
        padding: 10px 16px 10px 38px;
        font-size: 14px;
    }

    .customradio .radio-icon {
        width: 24px;
        height: 24px;
        left: 5px;
        font-size: 11px;
    }

    .psg_dls {
        padding: 16px 14px;
    }

    .passanger_boxHd {
        font-size: 16px;
        margin-bottom: 10px;
    }
}
