/*====================================================================
root css
====================================================================*/
:root {
    --baseColor: #f1151e;
}

@media (min-width: 1500px) {
    .container {
        max-width: 1400px;
    }
}

@media (min-width: 1400px) {
    .container {
        max-width: 1350px;
    }
}

@media (min-width:1400px) {
    #adsPromtModal .modal-dialog {
        max-width: 800px;
    }
}

@media (min-width:992px) {
    #adsPromtModal .modal-dialog {
        background: transparent;
        max-width: 700px;
    }
}

@media (min-width:992px) and (max-width: 1199px) {
    .b-form-group label {
        font-size: 14px !important;
    }

}

@media (max-width: 991px) {
    ul.datebar li.active {
        width: 60%;
    }

    ul.datebar li:last-child {
        border-left: 0px !important;
    }

    .cancel-box {
        min-width: 250px;
        right: 0;
    }

    .single-cancel-list-wrap {
        gap: 10px;
    }

    .demoNavBar .dropdown-menu li {
        padding: 0 15px !important;
    }

    .demoNavBar .dropdown-menu li a {
        width: 100%;
    }

    .ring_phones {
        float: none;
        font-size: 17px !important;
        margin: 0 15px 0 0;
        text-decoration: none;
    }

    .w_100_mobile {
        width: 100%;
    }

    .accordion-button::after {
        width: 1rem;
        height: 1rem;
        background-size: 1rem;
    }

    .b-search-map-wrapper .search_btn {
        margin-top: 10px !important;
    }

    .b-form-group label {
        font-size: 14px !important;
    }

    .b-search-map__wrap {
        margin-bottom: 15px;
        padding: 15px;
    }

    .congratulations_row {
        flex-direction: row-reverse;
    }

    .offcanvas-start {
        border-right: 3px solid #f6a120!important;
    }

    .nav-link.active::after {
        display: none;
    }

    .offcanvas-header .btn-close {
        box-shadow: none !important;
    }

    .toggle_btn {
        padding: 0;
        font-size: 24px;
        color: #20275b;
        box-shadow: none !important;
        outline: 0 !important;
    }

    button.owl-prev {
        top: 50%;
        position: absolute;
        left: 0;
        right: auto;
        transform: translateY(-50%);
    }

    button.owl-next {
        top: 50%;
        position: absolute;
        right: 0;
        left: auto;
        transform: translateY(-50%);
    }

    .banner_carousel .owl-nav button span {
        width: 30px;
        height: 30px;
        line-height: 26px;
        font-size: 25px;
    }

    .demoNavBar li {
        padding: 0px 10px 2px 0px !important;
    }

    .lng_dropdown li {
        padding: 6px 0px 6px 0px !important;
    }

    .booking-box {
        width: 100% !important;
        position: relative;
    }

    .search__panel {
        position: relative;
        top: 0 !important;
        z-index: 1;
        width: 100%;
    }

    .banner_carousel .owl-item img {
        height: auto !important;
    }

    .home_banner_section {
        min-height: auto !important;
    }

    .booking-box .booking-box__body {
        padding: 15px !important;
    }

    .booking-box {
        margin-top: -10px !important;
    }

    .download_app_image {
        height: auto !important;
    }

    header::after {
        width: 62%;
        clip-path: polygon(20% 0%, 100% 0%, 100% 100%, 0% 100%) !important;
    }

    .demoNavBar li a {
        color: #000 !important;
    }

    .works-text {
        font-size: 30px !important;
    }

    .ring_phones {
        font-size: 13px !important;
    }
    .search__panel {
        margin: 0px;
        padding: 25px 0px !important;
    }
}

@media (max-width: 767px) {
    .ring_phones {
        font-size: 13px !important;
    }

    .dept-time-wrapper h4 {
        font-weight: 700;
        font-size: 13px;
    }

    .dept-time-wrapper p {
        font-size: 14px;
    }

    .site_logo {
        max-height: 70px;
        width: 70px !important;
    }

    .route_banner h1 {
        left: 10px;
        right: 10px;
        font-size: 26px;
    }

    .route_banner {
        height: 150px;
    }

    .dpe_ariv_wrap::before {
        display: none !important;
    }

    .dpe_ariv_wrap::after {
        display: none !important;
    }

    .box-operator-name {
        line-height: 27px;
        font-size: 14px;
        padding-left: 23px;
    }

    .box-operator-name::before {
        position: absolute;
        top: 6px !important;
        width: 16px;
        height: 16px;
    }

    .bus-place {
        font-size: 14px;
        line-height: 27px;
        padding-left: 23px;
    }

    .bus-place::before {
        top: 6px !important;
        width: 16px;
        height: 16px;
    }

    button.show_all_route_btn {
        margin-top: 0px;
        font-size: 14px;
        padding: 0 4px;
    }

    .footer_mid_link {
        text-align: center;
    }

    .offcanvas {
        max-width: 88% !important;
    }

    .offcanvas.offcanvas-bottom {
        max-width: 100% !important;
        border-top-left-radius: 30px;
        border-top-right-radius: 30px;
    }

    .congratulations_row {
        flex-direction: column-reverse;
    }

    /* Banner */
    .banner_img {
        object-fit: contain;
    }

    img.banner_img {
        height: auto !important;
    }

    .booking-box .booking-box__body {
        padding: 0px 10px 10px !important;
    }

    .banner-title {
        margin-top: 0px;
        margin-bottom: 20px;
        font-size: 20px;
        line-height: 28px;
    }

    .b-form-group label {
        font-size: 14px;
    }

    .b-search-map-wrapper #searchButton {
        margin-top: 10px !important;
    }

    .banner_carousel .owl-nav {
        position: absolute;
        bottom: 50%;
        right: 0;
        width: 100%;
        left: 0;
    }

    .footer_title {
        margin: 15px 0px 5px;
    }

    .service__box {
        background-color: #fff;
        min-height: 8.4em;
        padding: 20px 10px;
        border: 2px dashed var(--baseColor);
        width: 100%;
    }

    .search_btn {
        font-size: 14px;
    }

    .form-control {
        min-height: 40px;
    }

    .ui-widget.ui-widget-content {
        min-width: auto !important;
    }

    .ui-datepicker-calendar tr td {
        padding: 3px 2px !important;
    }

    .ui-state-default,
    .ui-widget-content .ui-state-default,
    .ui-widget-header .ui-state-default,
    .ui-button,
    html .ui-button.ui-state-disabled:hover,
    html .ui-button.ui-state-disabled:active {
        height: 33px !important;
        width: 33px !important;
        font-size: 15px !important;
        line-height: 26px !important;
    }

    .service__box img {
        filter: brightness(0);
        width: 50px;
    }

    .service__box__wrapper {
        grid-template-columns: auto;
        gap: 10px;
        margin-top: 25px;
        text-align: center;
        justify-content: initial;
    }

    .service__title {
        font-size: 16px;
        color: #000;
        font-weight: 600;
        margin: 15px 0 0;
        line-height: 20px;
        min-height: auto;
    }

    /* Why book with us */
    .why_book_us {
        padding: 30px 0px;
    }

    .section-title {
        font-size: 22px;
        padding-bottom: 10px;
    }

    .icon-box-text {
        min-height: auto;
    }

    .why_choose {
        min-height: auto;
        padding: 20px;
    }

    .service-icon-wrapper img {
        height: 50px;
        object-fit: contain;
    }

    .gall-img {
        min-height: 250px;
    }
    .features-column {
        gap: 25px !important;
        margin-top: 0% !important;
    }
    .section h1 {
        font-size: 22px !important;
        margin-bottom: 0px !important;
    }
    .features-wrapper {
        gap: 25px !important;

    }
    .about_prestige{
     padding: 15px 0px !important;

    }
    .about_prestige h2 {
        font-size: 30px !important;
    }
    button.repeat-arrow-img-btn.repeat-arrow-img-btn2 {
        top: 73px;
        transform: rotate(0deg);
        right: -24px;
    }

    /* Counter */
    .counter_section {
        padding: 30px 0px;
    }

    .counter-texts p {
        font-size: 35px;
    }

    .counter-texts .count-nem {
        font-size: 16px;
    }

    .counter_section .section-title {
        font-size: 24px;
        line-height: 35px;
        font-weight: 800;
        margin: 0;
    }

    .book-us {
        gap: 0px !important;
    }

    .counter-icon {
        top: 15px;
        width: 117px;
        height: 117px;
    }

    .counter-text span {
        line-height: 25px;
        font-size: 15px;
    }

    .counter-text p {
        line-height: 30px;
        font-size: 20px;
        /* margin-top: 20px; */
        margin-bottom: 9px;
    }

    .counter-box {
        min-height: 0px !important;
        box-shadow: none;
        background: #eee;
        border-radius: 7px;
    }

    /* Top routes */
    .bus-info {
        padding-top: 10px;
    }

    .app_sec {
        padding: 30px 0px;
    }

    .Features_subHeadingTxt {
        width: 100%;
    }

    .flat-icon {
        height: 55px;
        width: 55px;
    }

    .flat-icon i {
        font-size: 20px;
    }

    .global_presence {
        padding: 30px 0px;
    }

    .partner_section {
        padding: 30px 0px;
    }

    .popular_trips {
        padding: 30px 0px;
    }

    .route-text {
        font-size: 20px;
    }

    .trip_price {
        font-size: 18px;
        font-weight: 800;
    }

    .marquee-news h6 {
        font-size: 15px;
    }

    marquee {
        padding: 7px 0px 2px;
    }

    /* App section */
    .app_sec .section-title {
        font-size: 20px;
    }

    .app_store_btn {
        text-align: left;
    }

    .qr_code {
        width: 100px;
    }

    .app_sub_title {
        font-size: 14px;
        font-weight: 600;
        line-height: 22px;
    }

    .download_app_image {
        margin: 10px auto 0;
    }

    .qr_image {
        width: 125px;
    }

    .app_sec h2 {
        font-size: 22px;
        font-weight: 700;
        margin-top: 25px;
    }

    /* Footer */
    .b-blog-short-post {
        flex-direction: column !important;
    }

    .copy_right_text {
        font-size: 14px;
        border-bottom: 1px dashed #00000070;
        padding-bottom: 7px;
        margin-bottom: 4px;
    }

    /* .footer_logo {
		width: 80px !important;
		margin: 0 0 10px !important;
	} */
    .footer_left {
        width: 100% !important;
    }

    footer::before {
        background: none;

    }

    .footer_top {
        display: block;
    }

    .works-text {
        font-size: 30px !important;
    }

    .ring_phones {
        font-size: 13px !important;
    }

    /* Search page */
    .dab-center {
        justify-content: space-around;
    }

    .ticket-src-result .b-search-map__wrap {
        padding: 10px;
    }

    .dab-center .title-4 {
        font-size: 16px;
        font-weight: 700;
        line-height: 26px;
    }

    .bdrp-box {
        margin-top: 10px;
    }

    #myModal .modal-body {
        padding: 15px 0px !important;
    }

    #myModal .modal-title {
        color: #fff;
        font-size: 16px;
    }

    .pess-dtls-box {
        min-height: auto;
    }

    .pay-details-box.pess-dtls-box.middle-box {
        margin-bottom: 15px;
    }

    .pay-details-box.pess-dtls-box.last_box {
        min-height: 480px !important;
    }

    .footer_left {
        padding: 15px 10px 15px 0px;
        margin-top: 12px;
    }

    .l-main-container {
        min-height: 200px;
    }

    .social-links a {
        font-size: 16px;
        width: 35px;
        height: 35px;
        line-height: 35px;
    }

    .social-links {
        margin-top: 5px;
    }

    .footer_right {
        width: 100%;
    }

    .footer_right_top {
        padding: 0px;
    }

    /* FAQ */
    .Frequently_section {
        padding: 30px 0px;
    }

    .section-title {
        margin-bottom: 5px;
    }

    .accordion-button h3 {
        font-size: 16px;
        line-height: 26px;
    }

    .accordion-button {
        padding: 10px 0px;
    }

    .accordion-body p {
        line-height: 28px;
        font-size: 15px;
    }

    .radio-btn {
        height: 150px;
    }

    .radio-btn .hobbies-icon img {
        margin-bottom: 10px;
        height: 80px;
    }

    .pay-infos h5 {
        font-size: 20px;
    }

    .select-ticket-row-title-flex {
        flex-wrap: wrap;
    }
    .about_img {
        max-width: 100%;
        max-height: 450px;
    }
    .about_img_abs {
        right: 0;
        height: 150px;
    }
   .about_super h2 {
       font-size: 22px;
       margin-top: 20px;
       font-weight: 600;
       margin-bottom: 10px;
   }
   .super_about {
       padding: 10px 0px;
   }
   .search__panel {
       margin: 0px;
       padding: 25px 0px;
   }
   .app_url_img{
    flex-wrap: wrap !important;
   }
   .about_super h3 {
       font-size: 22px;
   }
}


@media (max-width: 600px) {
    .operator_name {
        font-size: 17px;
    }

    .operator_icon {
        font-size: 12px;
        width: 20px;
        height: 20px;
        line-height: 20px;
    }

    .coach_name {
        font-size: 15px;
        margin: 3px 0px;
    }

    .mbrnad-name {
        font-size: 15px;
        margin-bottom: 3px;
    }

    .price_flex_mobile {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .maker_type {
        font-size: 15px;
        margin-bottom: 3px;
    }

    .dept-time-wrapper .abs_line::before,
    .dept-time-wrapper .abs_line::after {
        display: none;
    }

    .duration_time_wrap {
        color: #f00;
    }

    .dept-time-wrapper .dept_time {
        font-size: 15px;
    }

    .banner-slogan {
        font-size: 20px;
        margin: 5px 0px 25px;
    }

    .b-search-map__wrap {
        border-radius: 10px;
    }

    .label-blank {
        display: none !important;
    }

    #searchButton {
        margin-top: 8px;
    }

    /* Reviews */
    .review_carousel {
        width: 412%;
    }

    /* Congratulations page */
    .ticket_box {
        padding: 10px;
        min-height: auto;
        margin-bottom: 10px;
    }

    /* Login Page */
    .login-box {
        padding: 20px;
    }

    .page_title {
        font-size: 24px;
    }

    .passenger-details-box {
        padding: 20px;
    }

    /* Download */
    .download-ticket-box {
        padding: 20px;
    }

    /* Contact */
    .b-contact-form-box {
        min-height: auto;
        padding: 20px;
    }

    .globar_presence_content img {
        width: 110px;
        height: 110px;
    }
}

@media (max-width: 575px) {
    .repeat-arrow-img-btn {
        position: absolute;
        right: 0px !important;
        top: 75px;
        transform: rotate(90deg);
    }

    .border_right_gray {
        border-bottom: 2px dashed #e3e3e3;
        padding-bottom: 10px;
        border-right: 0px !important;
    }

    .seat-status-box {
        flex-wrap: nowrap !important;
    }

    .seat_layout {
        padding: 15px 0px 4px !important;
    }

    .ticket-status-table>tbody {
        border: 0;
        border-top: 1px solid #ddd;
    }
}

@media (max-width: 400px) {
    .single_search_result_item ul.result_content li .item-content p {
        font-size: 16px;
    }

    .bi_arrow {
        width: 100px;
    }

    .b-form-group label {
        font-size: 12px;
    }

    .ticket-status-table>tbody>tr>td {
        padding: 5px 8px !important;
        vertical-align: middle;
    }

    .seat-status-box {
        flex-wrap: nowrap !important;
    }

    .legend-label {
        line-height: 20px;
        margin: 0px 3px;
    }

    .seat-status-box ul {
        display: flex;
        margin: 0 5px 10px;
    }

    .stearing_image {
        width: 32px;
        height: auto !important;
        object-fit: contain;

    }

    .psnger-no {
        padding: 0px 4px;
    }
}

@media (max-width: 340px) {
    .ring_phones {
        font-size: 13px !important;
    }
}

/* ===bus tracker=== */
@media (max-width: 767px) {
    .tracking_map_height {
        height: 400px;
    }

    .servicesResultArea {
        position: relative;
        width: 100%;
        margin-bottom: 15px;
        z-index: 1;
        box-shadow: none;
    }

    #servicesResult {
        max-height: 320px;
    }

    .ring_phones {
        font-size: 13px !important;
    }

}

@media (max-width: 768px) {
    .last_update_test {
        position: relative;
        z-index: 0;
        right: 0;
        top: 0;
        font-size: 14px;
        background: transparent;
        line-height: 10px;
        box-shadow: none;
        padding: 5px 10px;
        border-radius: 0px;
        color: #000000;
        font-weight: 500 !important;
        text-transform: capitalize;
    }
}