/* Custom booking box styles */
.booking-info .btnDetail {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    outline: none !important;
    color: #231f20 !important;
    display: inline-flex !important;
    align-items: center !important;
    cursor: pointer !important;
    font-weight: 500 !important;
}

.booking-info .btnDetail i {
    font-size: 10px !important;
    margin-right: 5px !important;
    color: #231f20 !important;
}

.booking-info .formBox__sub {
    background-color: rgba(14, 97, 215, .08) !important;
    border-radius: 4px !important;
    padding: 10px !important;
    margin-top: 10px !important;
}

.booking-info .formBox__sub li {
    display: flex !important;
    justify-content: space-between !important;
    padding: 5px 0 !important;
}

.fly-list__btn .btn,
.fly-checkout__btn .btn {
    display: inline;
    margin-bottom: 15px;
}

@media (max-width: 767px) {
    /* --- Search page selected flight card --- */
    .reChange__down {
        display: flex !important;
        flex-direction: column !important;
    }
    .box_after_choosing_flight .flTicket__left, 
    .box_after_choosing_flight .flTicket__right {
        width: 100% !important;
    }
    .box_after_choosing_flight .flTicket__right {
        border-top: 1px dashed #E0E0E0;
        padding: 15px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }
    .box_after_choosing_flight .flInfo__flex {
        width: 100% !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
    .box_after_choosing_flight .ANN_airline_info {
        display: flex !important;
        align-items: center !important;
    }
    .box_after_choosing_flight .airlineInfo__logo {
        display: flex !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
    }
    .box_after_choosing_flight .airlineInfo__logo img {
        height: 20px !important;
        width: auto !important;
        object-fit: contain !important;
    }
    .box_after_choosing_flight .airlineInfo__logo span {
        position: static !important;
        padding-left: 0 !important;
        font-size: 13px !important;
        color: #333 !important;
        display: flex !important;
        align-items: center !important;
        gap: 5px !important;
    }
    .box_after_choosing_flight .class_name {
        margin-top: 5px !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        color: #F79320 !important;
    }
    .box_after_choosing_flight .p-show-detail {
        font-size: 13px !important;
        color: #0E61D7 !important;
        margin: 0 !important;
    }

    /* --- Review, Passenger, Payment selected flight card --- */
    .fly-review__itinerary .itinerary-box__content {
        display: flex !important;
        flex-direction: column !important;
        padding: 15px !important;
    }
    .fly-review__itinerary .itinerary-box__content .formBox__left,
    .fly-review__itinerary .itinerary-box__content .formBox__right {
        width: 100% !important;
        padding: 0 !important;
    }
    .fly-review__itinerary .itinerary-box__content .formBox__right {
        border-top: 1px dashed #E0E0E0 !important;
        margin-top: 15px !important;
        padding-top: 15px !important;
    }
    .fly-review__itinerary .yourSelection__group {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
        margin-bottom: 15px !important;
    }
    .fly-review__itinerary .yourSelection__group .d-block {
        flex: 1 !important;
    }
    .fly-review__itinerary .yourSelection__group .d-block:nth-child(2) {
        text-align: center !important;
    }
    .fly-review__itinerary .yourSelection__group .d-block:nth-child(3) {
        text-align: right !important;
    }
    .fly-review__itinerary .airlineInfo {
        display: flex !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        gap: 10px !important;
        margin: 10px 0 !important;
    }
    .fly-review__itinerary .airlineInfo__logo {
        display: flex !important;
        align-items: center !important;
        gap: 6px !important;
    }
    .fly-review__itinerary .airlineInfo__logo img {
        height: 20px !important;
        width: auto !important;
        object-fit: contain !important;
    }
    .fly-review__itinerary .airlineInfo__logo span {
        font-size: 13px !important;
        color: #333 !important;
    }
    .fly-review__itinerary .airlineInfo__name {
        font-size: 13px !important;
        color: #666 !important;
        display: flex !important;
        align-items: center !important;
    }
    .fly-review__itinerary .airlineInfo__name:before {
        content: "•" !important;
        color: #ccc !important;
        margin-right: 8px !important;
        font-size: 18px !important;
    }
    .fly-review__itinerary .viewMore.viewDetail {
        margin-top: 10px !important;
        display: inline-block !important;
        color: #0E61D7 !important;
        background: none !important;
        border: none !important;
        padding: 0 !important;
        font-size: 13px !important;
        text-decoration: underline !important;
    }
    .fly-review__itinerary .formBox__sub {
        background-color: rgba(14, 97, 215, 0.05) !important;
        border-radius: 6px !important;
        padding: 12px !important;
    }
    .fly-review__itinerary .formBox__sub li {
        display: flex !important;
        justify-content: space-between !important;
        padding: 6px 0 !important;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
    }
    .fly-review__itinerary .formBox__sub li:last-child {
        border-bottom: none !important;
    }

    /* --- Flight Detail Modal / Popup on Mobile --- */
    .modal-dialog.modal-flightDetail {
        margin: 10px !important;
        max-width: calc(100% - 20px) !important;
        width: auto !important;
    }
    .modal-flightDetail .modal-content {
        border-radius: 12px !important;
        border: none !important;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
    }
    .modal-flightDetail .modal-body {
        padding: 20px !important;
    }
    .modal-flightDetail .close {
        font-size: 28px !important;
        opacity: 0.5 !important;
        outline: none !important;
        top: 15px !important;
        right: 15px !important;
        position: absolute !important;
        z-index: 10 !important;
    }
    .detail-box__title h5 {
        font-size: 18px !important;
        font-weight: 700 !important;
        color: #01144D !important;
        margin-bottom: 12px !important;
    }
    .detail-box__name p {
        font-size: 13px !important;
        color: #666 !important;
        margin-bottom: 15px !important;
    }
    .flightDetail__row {
        border-bottom: 1px dashed #E0E0E0 !important;
        padding-bottom: 15px !important;
        margin-bottom: 15px !important;
    }
    .flightDetail__row:last-child {
        border-bottom: none !important;
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }
    .detail-box__airline {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        margin-bottom: 15px !important;
        text-align: left !important;
        width: 100% !important;
        padding: 0 !important;
    }
    .detail-box__airline img.ANN_logo {
        height: 24px !important;
        width: auto !important;
        object-fit: contain !important;
    }
    .detail-box__airline p {
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 2px !important;
    }
    .detail-box__airline p span {
        display: inline-block !important;
    }
    .detail-box__airline p .ANN_airline_name {
        font-weight: 700 !important;
        color: #333 !important;
        font-size: 13px !important;
    }
    .detail-box__airline p .ANN_flight_number,
    .detail-box__airline p .ANN_equipmentType {
        font-size: 12px !important;
        color: #666 !important;
    }
    .detail-box__trip {
        width: 100% !important;
        padding: 0 !important;
    }
    .detail-box__trip .trip-box {
        display: flex !important;
        justify-content: space-between !important;
        align-items: flex-start !important;
        padding: 0 !important;
    }
    .detail-box__trip .trip-box__start,
    .detail-box__trip .trip-box__end {
        width: 38% !important;
        flex: none !important;
    }
    .detail-box__trip .trip-box__start p,
    .detail-box__trip .trip-box__end p {
        font-size: 12px !important;
        line-height: 1.4 !important;
        margin-bottom: 4px !important;
        color: #333 !important;
    }
    .detail-box__trip .trip-box__start p span,
    .detail-box__trip .trip-box__end p span {
        display: inline !important;
    }
    .detail-box__trip .trip-box__start p span.ANN_timeOfDeparture,
    .detail-box__trip .trip-box__end p span.ANN_timeOfArrival {
        font-size: 16px !important;
        font-weight: 700 !important;
        color: #01144D !important;
    }
    .detail-box__trip .trip-box__line {
        width: 20% !important;
        text-align: center !important;
        margin-top: 6px !important;
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }
    .detail-box__trip .trip-box__line .ANN_duration {
        font-size: 11px !important;
        color: #666 !important;
        margin-bottom: 4px !important;
        display: block !important;
    }
    .detail-box__trip .trip-box__line .straight-line {
        width: 100% !important;
        height: 2px !important;
        background-color: #E0E0E0 !important;
        position: relative !important;
        margin-top: 4px !important;
    }
    .detail-box__trip .trip-box__line .straight-line:before,
    .detail-box__trip .trip-box__line .straight-line:after {
        content: "" !important;
        position: absolute !important;
        top: -3px !important;
        width: 8px !important;
        height: 8px !important;
        border-radius: 50% !important;
        background-color: #E0E0E0 !important;
    }
    .detail-box__trip .trip-box__line .straight-line:before {
        left: 0 !important;
    }
    .detail-box__trip .trip-box__line .straight-line:after {
        right: 0 !important;
    }
    .detail-box__time.timeStop {
        background-color: rgba(23, 192, 218, 0.06) !important;
        border-radius: 6px !important;
        padding: 8px 12px !important;
        margin: 12px 0 0 0 !important;
        text-align: center !important;
        border: 1px solid rgba(23, 192, 218, 0.15) !important;
    }
    .detail-box__time.timeStop p {
        color: #17c0da !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        margin: 0 !important;
    }

    /* --- Date of Birth on Mobile --- */
    .form-checkout__row.row-date .form-group {
        width: 100% !important;
        max-width: 100% !important;
    }
    .form-checkout__row.row-date .d-flex {
        flex-direction: column !important;
        gap: 10px !important;
        width: 100% !important;
    }
    .form-checkout__row.row-date .form-group .form-control {
        width: 100% !important;
    }

    /* --- Payment Methods on Mobile --- */
    .formBox__payment__card {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        padding-left: 0 !important;
        margin: 10px 0 !important;
        list-style: none !important;
    }
    .formBox__payment__card li {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .formBox__payment__card li img {
        height: 35px !important;
        width: auto !important;
        max-width: 100% !important;
    }
}

/* Centering container for page breadcrumbs on 752px wide pages */
.page-breadcrumbs-centered {
    max-width: 752px;
    margin: 0 auto;
    padding: 0 15px;
}

/* Full-width wrapper for page breadcrumbs */
.breadcrumbs-wrapper {
    background: #fff;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    margin-top: 0;
    margin-bottom: 1.5rem;
    width: 100%;
}

.tabInfo {
    padding-top: 12px;
    padding-bottom: 12px;
    margin-top: 0;
    margin-bottom: 0;
}