/* Style CSS Copyrigth 2024 by BusX */
@font-face {
    font-family: 'SukhumvitSet-Text';
    src: url('../plugin/font/SukhumvitSet-Text.ttf');
}

:root {
    /* width */
    --width-header-banner: 1700px;
    --width-content: 1100px;

    /* color */
    --theme-color: #383838;

    /* text */
    --text-white: #FFFFFF;
    --text-black: #212529;
    --text-weight: 600;
    --text-light: var(--bs-light-text-emphasis);
    --text-link: var(--theme-color);

    /* font size */
    --fs-s: 14px;
    --fs-m: 16px;
    --fs-l: 18px;
    --fs-xl: 20px;
    --fs-xxl: 24px;


    --border-radius: 10px;
    --border-radius-button: 5px;

    --box-shadow-md: 0px 0px 16px -4px #a7a7a7b8;
    --bg-wp: rgb(224 224 224 / 23%);
}

body {
    font-family: 'SukhumvitSet-Text', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: var(--theme-color);
    background-color: #ffffff;
    scroll-behavior: smooth;
}

.bg-wrapper {
    background: var(--bg-wp);
}

.wrapper-banner {
    position: relative;
    top: 60px;

    .banner {
        position: relative;
        height: 500px;
        width: 100%;
        background: url('../images/banner/background-banner-1.webp') repeat;
        background-repeat: no-repeat;
        background-size: cover;
        display: flex;
        justify-content: center;
        background-position: 0 -656px;

        &.banner-small {
            height: 250px !important;
        }

        @media (min-width: 1140px) {
            background-position: center;
        }

        @media (max-width: 1139px) {
            background-size: auto !important;
        }

        @media (max-width: 1038px) {
            height: 373px;
        }

        .backdrop-banner {
            position: absolute;
            width: 100%;
            height: 100%;
            background-color: #000000;
            opacity: 0.7;
        }

        .col-banner {
            width: 100%;
            max-width: var(--width-header-banner);
            display: flex;
            justify-content: space-between;
            position: relative;

            @media (max-width: 1038px) {
                justify-content: center;
                align-items: center;
            }

            @media (min-width: 1038px) and (max-width: 1750px) {
                padding: 0 35px;
            }
        }

        .banner-text {
            font-weight: var(--text-weight);
            z-index: 9;
            max-width: 770px;
            padding: 50px 0 0 0px;
            color: var(--text-white);
            text-align: start;

            @media only screen and (max-width: 1038px) {
                padding: 10px 30px;
            }

            h1 {
                font-size: 45px;
                font-weight: var(--text-weight);
                font-family: inherit;
                padding: 92px 0 0;
                color: inherit;

                @media only screen and (max-width: 1038px) {
                    padding: 20px 0;
                    font-size: 28px;
                    text-align: center;
                }
            }

            h2 {
                font-size: var(--fs-xl);
                line-height: 1.5;
                color: inherit;
                font-family: inherit;

                @media only screen and (max-width: 1038px) {
                    font-size: var(--fs-m);
                }

            }

            span {
                font-family: inherit;
                display: flex;
                justify-content: start;
                color: var(--bs-light-border-subtle);
                font-weight: var(--text-weight);

                @media only screen and (max-width: 1038px) {
                    justify-content: center;
                }

                .btn-quotation {
                    font-weight: inherit;
                    padding: 12px 71px;
                    border-radius: var(--border-radius-button);
                    background-color: var(--theme-color);
                    color: var(--bs-light-border-subtle);
                    margin: 15px 0 0 0;
                    font-size: var(--fs-xl);
                    background: var(--theme-color);
                    border: none;

                    &:hover {
                        background-color: #4b4b4b;
                        transition: .5s;
                    }

                    @media only screen and (max-width: 1038px) {
                        font-size: 15px;
                    }
                }
            }

        }

        .banner-bus {
            overflow: hidden;

            img,
            svg {
                animation-name: StartBus;
                animation-duration: 1s;
                animation-timing-function: ease;
                animation-fill-mode: forwards;
                filter: brightness(0.8);
                right: -500px;
                top: -51px;
                position: relative;
                vertical-align: baseline;
                width: 740px;
                height: 626px;
                object-fit: contain;
                filter: brightness(0.6);

                @media (max-width: 1525px) {
                    right: 0px !important;
                    width: 100% !important;
                }

                @media (max-width: 1038px) {
                    display: none;
                }
            }

        }
    }

    @media (max-width: 1038px) {
        top: 80px;
    }
}

.wrapper-header {

    header {
        /* height: 60px; */
        width: 100%;
        background-color: var(--theme-color);
        color: var(--text-white);
        display: flex;
        font-size: 20px;
        position: fixed;
        z-index: 999;
        top: 0;


        @media only screen and (max-width: 1038px) {
            padding: 0;
        }

        section.header-container {
            max-width: var(--width-header-banner);
            width: 100%;
            display: flex;
            align-items: center;
            flex-direction: row;
            margin: auto;
            transition: .2s;

            /*             
            .active {
                text-decoration: underline;   
                transition: 1s;
            }
             */
            nav.desktop {
                flex-grow: 1;
                margin: 0;
                padding: 0;


                ul {
                    list-style: none;
                    margin: 0;
                    padding: 0;
                    display: flex;
                    align-items: center;
                    justify-content: space-between;

                    li {
                        display: flex;
                        position: relative;
                        float: left;
                        padding: 10px 30px;
                        text-align: center;

                        a {
                            text-align: center;
                            color: inherit;
                            text-decoration: none;
                            font-size: var(--fs-l);
                            position: relative;
                        }
                    }

                    li.menu-link.active a::before {
                        content: '';
                        height: 2px;
                        width: 100%;
                        position: absolute;
                        background: var(--text-white);
                        bottom: 0px;
                        left: 0px;
                        transition-delay: .2s;
                    }

                    li.menu-link a::before {
                        content: '';
                        height: 2px;
                        width: 0px;
                        position: absolute;
                        background: var(--text-white);
                        bottom: 0px;
                        left: 0px;
                    }

                    li.menu-link a:hover::before {
                        width: 100%;
                        background: var(--text-white);
                        transition: .1s;
                    }

                    li:nth-last-of-type(1) {
                        display: grid;
                        grid-template-columns: 1fr 1fr;
                        width: 175px;
                        align-items: center;
                        align-content: center;

                        a {
                            padding: 0 10px 0 0;
                        }
                    }
                }
            }

            nav.mobile {
                display: none;
                flex-grow: 1;
                margin: 0;
                padding: 0;

                ul.mobile-menu-header,
                ul.mobile-menu-list {
                    width: 100%;
                    margin: 0;
                    padding: 0;
                    display: flex;
                    justify-content: space-between;
                    top: 60px;
                    font-size: var(--fs-l);

                    li {
                        cursor: pointer;
                        display: flex;
                        position: relative;
                        float: left;
                        padding: 10px 40px;
                        text-align: center;

                        @media (max-width: 1038px) {
                            padding: 10px 26px;
                        }

                        a {
                            text-align: center;
                            color: inherit;
                            text-decoration: none;
                        }
                    }
                }

                .btn-show-menu {
                    position: relative;
                    top: 4px;
                }

                ul.mobile-menu-header {
                    align-items: center;
                }

                ul.mobile-menu-list {
                    top: 80px;
                    position: fixed;
                    background-color: #444444;
                    height: 0px;
                    overflow: hidden;
                    transition: .2s;
                    display: grid;

                }

                ul.mobile-menu-list-open {
                    height: 339px;
                    display: flex;
                    flex-direction: column;
                    justify-content: center;
                }
            }

            .card-language {
                width: 116px;
                gap: 3px;
                display: flex;
                align-items: center;
                justify-content: end;
                text-decoration: none;

                @media (max-width: 1038px) {
                    justify-content: start;
                    padding: 0;
                    margin: 0;
                }

                a {
                    padding: 3px !important;
                    position: unset !important;
                    color: var(--text-link);
                }
            }

            .btn-language {
                color: rgb(191, 191, 191);
                font-weight: 400;
                cursor: pointer;
                padding: 5px;
                text-decoration: none;
            }

            @media only screen and (max-width: 1038px) {
                & {
                    height: 80px !important;
                }

                nav.desktop {
                    display: none;
                }

                nav.mobile {
                    display: block;
                }
            }
        }

        @media (max-width: 1038px) {
            & {
                height: 80px !important;
            }
        }

        section.header-container-scroll {
            max-width: var(--width-content);
            transition: .2s;
        }

        .img-header-title {
            height: 44px;
        }

        .img-header-title-scroll {
            height: 50px !important;
        }

        .title {
            font-size: inherit;
            cursor: pointer;
            font-weight: var(--text-weight);
            /* padding: 10px 30px 10px 0px !important; */
            flex-grow: 1;
        }

        .navbar {
            font-size: 18px;

            i.bi-distribute-vertical {
                display: block;
                color: var(--text-light);
                font-weight: var(--text-weight);
                font-size: 24px;

                @media only screen and (min-width: 960px) {
                    display: none;
                }
            }

            ul {
                list-style: none;
                margin: 0;

                @media only screen and (max-width: 960px) {
                    display: none;
                }

                li {
                    padding: 15px;
                    float: left;
                }

                li a {
                    color: inherit;
                    text-decoration: none;
                    font-weight: var(--text-weight);

                    &:hover {
                        color: var(--theme-color);
                        transition: 0.3s;
                        text-decoration: dashed !important;
                    }
                }
            }
        }

        .slide-open {
            max-height: 240px !important;
            height: 100% !important;
        }

        .slide-drop {
            max-height: 0px !important;
        }

        .navbar-mobile {
            max-height: 0;
            overflow: hidden;
            font-size: 18px;
            width: 100%;
            position: fixed;
            left: 0;
            top: 80px;
            background-color: var(--theme-color);
            background-color: gray;
            transition: .5s;
            transition-delay: .1s;
            transform-style: flat;

            i.bi-distribute-vertical {
                display: block;
                color: var(--text-white);
                font-weight: var(--text-weight);
                font-size: 24px;

                @media only screen and (min-width: 960px) {
                    display: block;
                }
            }

            ul {
                list-style: none;
                margin: 0;
                padding: 0;

                @media only screen and (max-width: 960px) {
                    display: block;
                }

                li {
                    padding: 5px;
                }

                li a {
                    color: var(--text-white);
                    text-decoration: none;

                    &:hover {
                        color: #ecf2f88c;
                        transition: 0.3s;
                        text-decoration: dashed !important;
                    }
                }
            }
        }
    }

    .sub-header {
        position: relative;
        top: 64px;
        height: 50px;
        width: 100%;
        z-index: 10;
        display: flex;
        color: var(--theme-color);
        align-items: center;
        justify-content: center;
        font-size: var(--fs-m);
        font-weight: 500;

        @media (max-width: 1038px) {
            font-size: 10px;
            top: 80px;
            height: 40px;
            text-align: center;
        }
    }
}

.page-home {
    position: relative;
    padding: 0;
    margin: 0;

    .container-wrapper {
        margin: 59px 0px 0px;

        @media (max-width: 768px) {
            & {
                margin: 90px 0 0;
            }
        }
    }

    .wrapper {
        position: relative;
        max-width: var(--width-content);
        width: 100%;
        padding: 1px 0px 40px 0px;
        margin: 0 auto;

        @media (max-width: 768px) {
            & {
                padding: 18px;
            }
        }

        @media (max-width: 375px) {
            & {
                padding: 18px;
            }
        }

        section {
            scroll-margin-top: 80px;
            margin-top: 40px;

            @media only screen and (max-width: 900px) {
                margin-top: 0;
            }
        }

        img {
            border-radius: 5px;
            object-fit: cover;
        }

        input[type="checkbox"]:checked {
            accent-color: var(--theme-color);
        }

        .card-header {
            width: 100%;
            margin-bottom: 20px;
            color: var(--theme-color);

            h1 {
                font-weight: var(--text-weight);
                text-align: center;
                font-size: var(--fs-xxl);
                padding: 10px;
            }

            h3 {
                font-size: var(--fs-l);
                color: var(--text-light);
            }

            span {
                display: block;
                text-align: center;
                padding: 0 0 15px 0;
                font-size: var(--fs-l);
            }
        }

        .card-header-2 {
            width: 100%;
            padding: 0px 15px 15px 0px;
            color: var(--theme-color);

            h1,
            h2,
            h3,
            h4,
            h5,
            h6,
            strong,
            span {
                font-size: var(--fs-xl);
            }
        }

        .card-header-3 {
            width: 100%;
            padding: 0px 15px 15px 0px;
            color: var(--theme-color);

            h1,
            h2,
            h3,
            h4,
            h5,
            h6,
            strong,
            span {
                font-size: var(--fs-l);
                font-weight: 300;
            }
        }

        .services {
            margin-top: 0px;
            padding: 30px 0px 0px;

            .card-content {
                display: flex;
                flex-wrap: wrap;
                gap: 20px;

                .card-item {
                    box-shadow: var(--box-shadow-md) !important;
                    flex-grow: 1;
                    flex-basis: 300px;
                    color: var(--theme-color);
                    border-radius: var(--border-radius);
                    padding: 7px 0;

                    .icon {
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        font-size: 49px;
                        color: var(--theme-color);

                        img {
                            height: 80px;
                            filter: contrast(0.4);
                            padding-bottom: 15px;
                        }
                    }

                    h2 {
                        display: flex;
                        justify-content: center;
                        text-align: center;
                        font-size: var(--fs-xxl);
                        font-weight: var(--text-weight);
                    }

                    h3 {
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        font-size: var(--fs-m);
                        font-weight: 500;
                    }
                }

            }
        }

        .car-standards {

            .card-header {
                width: 100%;
                margin-bottom: 20px;

                h1 {
                    font-weight: var(--text-weight);
                    text-align: ce;
                    font-size: var(--fs-xxl);
                    padding: 0;

                }
            }

            .car-standard {
                .card-header-3 {
                    text-align: center;
                }

                .car-standard-grid {
                    display: grid;
                    grid-template-columns: 1fr 40% 1fr;
                    gap: 10px;

                    @media (max-width:1038px) {
                        gap: 15px;
                    }

                    .icon {
                        width: 19px !important;
                    }

                    @media (max-width:1038px) {
                        grid-template-columns: 1fr;
                    }

                    .standard-item-header {
                        grid-column: span 3;

                        @media (max-width:1038px) {
                            grid-column: unset;
                        }
                    }

                    .standard-item-text {
                        color: var(--theme-color);
                        font-size: var(--fs-l);
                        margin-bottom: 15px;
                        font-weight: 300;
                    }

                    .accessories-car {
                        display: flex;
                        justify-content: end;

                        @media (max-width:1038px) {
                            justify-content: start;
                            order: 2;
                        }
                    }

                    .accessories-car,
                    .services-car {
                        .card-header-3 h4 {
                            text-align: left;
                            font-weight: var(--text-weight);
                        }

                        ul {
                            padding: 0 20px;
                        }

                        ul li {
                            display: flex;
                            align-items: center;
                            flex-direction: row;
                            gap: 10px;
                            line-height: 1.8;
                            color: var(--text-light);
                            font-size: var(--fs-m);
                            text-align: left;

                            &:hover {
                                transition: .3s;
                            }
                        }
                    }

                    .service-car-item {
                        @media (max-width: 1038px) {
                            order: 3;
                            margin-top: 40px;
                        }
                    }

                    .service-car-item,
                    .accessories-car-item {
                        position: relative;
                        right: 0;
                    }

                    .car-standard-item {
                        text-align: center;
                        font-weight: var(--text-weight);

                        strong {
                            font-weight: var(--text-weight);
                        }

                        .icon {
                            filter: contrast(0.4);
                        }

                        img {
                            width: 100%;
                            object-fit: cover;
                            transition: .5s;
                            transform: scale(1);
                        }
                    }
                }
            }

            /* edit fix lib splide */
            .splide__slide {
                border: 1px solid #fff;
                font-size: 50px;
                display: flex;
                margin: 0;
                align-items: center;
                justify-content: center;

            }

            .splide__pagination__page {
                bottom: -45px;
                background: silver !important;
            }

            .splide__pagination__page.is-active {
                background: var(--theme-color) !important;
            }

            .my-slider-progress {
                background: #ccc;
            }

            .splide__slide {
                width: 278px;
            }

            .splide__slide img {
                height: auto;
            }

            .splide__arrow {
                background-color: #ffffff !important;
                display: none !important;
            }

            .splide__pagination {
                bottom: 1.5em !important;

                @media (max-width: 1038px) {
                    padding: 0px 1em !important;
                }
            }

        }

        .bus-type {
            padding: 60px 20px;
            max-width: 1200px;
            margin: auto;
            text-align: center;

            .card-header {

                & h6 {
                    font-size: var(--fs-m);
                    text-align: center;
                }
            }

            i {
                color: green;
            }

            .bus-grid {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
                gap: 20px;
            }

            .bus-card {
                background: #fff;
                border-radius: var(--border-radius);
                box-shadow: var(--box-shadow-md);
                overflow: hidden;
                transition: transform 0.2s ease;
            }

            .bus-card:hover {
                transform: translateY(-5px);
            }

            .bus-card img {
                width: 100%;
                height: auto;
                display: block;
                border-radius: 5px;
                padding: 30px;
            }

            .bus-card span.type-name {
                font-size: var(--fs-l);
                margin: 16px 0 4px;
                padding: 0 30px;
                text-align: center;
                color: var(--theme-color);
                display: block;
            }

            .bus-card span.type-class {
                color: var(--fs-m);
                margin-bottom: 12px;
                color: var(--theme-color);
                padding: 0 30px;
                text-align: center;
                display: block;
            }

            .bus-card span.type-sui {
                color: var(--fs-m);
                margin-bottom: 8px;
                font-weight: var(--text-weight);
                color: var(--theme-color);
                display: block;
                text-align: start;
                padding: 0 30px;
            }

            .bus-card ul {
                list-style: none;
                padding: 0px 30px 30px 30px;
                margin: 0;
                color: var(--theme-color);
                font-size: var(--fs-m);
                text-align: left;
            }

            .bus-card ul li {
                margin-bottom: 6px;
                position: relative;
            }


        }

        .faq {
            .accordion .accordion-item:nth-child(1) {
                border-top-left-radius: 5px;
                border-top-right-radius: 5px;
                overflow: hidden;
            }

            .accordion .accordion-button:nth-child(1) {
                border-top-left-radius: 5px 5px 0 0;
                border-top-right-radius: 5px;

            }

            .accordion .accordion-button.collapsed:nth-child(1) {
                border-top-left-radius: 5px;
                border-top-right-radius: 5px;

            }

            .accordion .accordion-body:nth-child(1) {
                border-top-left-radius: 0 0 5px 5px;
                border-top-right-radius: 5px;

            }

            .accordion .accordion-item:nth-last-child(1) {
                border-bottom-left-radius: 5px;
                border-bottom-right-radius: 5px;
                overflow: hidden;
            }

            .accordion .accordion-button:nth-last-child(1) {
                border-bottom-left-radius: 5px 5px 0 0;
                border-bottom-right-radius: 5px;

            }

            .accordion .accordion-button.collapsed:nth-last-child(1) {
                border-bottom-left-radius: 5px;
                border-bottom-right-radius: 5px;

            }

            .accordion .accordion-body:nth-last-child(1) {
                border-bottom-left-radius: 0 0 5px 5px;
                border-bottom-right-radius: 5px;
                text-indent: 18px;

            }


            .accordion-button:focus {
                box-shadow: 0 0 0 1px #ddd8d8f2 !important;
            }

            .accordion-button {
                color: var(--theme-color);
                font-size: var(--fs-m);
            }

            .accordion-body {
                color: var(--text-light);
                background-color: #f9f9f9c7;

                a {
                    color: var(--text-link);
                    text-decoration: none;

                    &:hover {
                        color: #000;
                    }
                }
            }

            .feq-menu-question {
                border: 1px solid var(--bs-gray-300);
                border-radius: 5px;
            }
        }

        .gallery {
            .gallery-list {
                max-width: 1100px;
                margin: auto;

            }

            .item-gallery {
                width: 100%;
                height: 100%;
                max-height: 300px;
                border-radius: var(--border-radius);
                transition: .5s;
                padding: 13px 0px;

                & img {
                    border-radius: var(--border-radius);
                    cursor: pointer;
                }

                &:hover {
                    transform: scale(1.05);
                }

            }
        }

        .contact-us {
            .card-header {
                margin-bottom: 35px;

                #alert-send-mail {
                    margin: auto;
                }

                .contact-header-item {
                    max-width: 950px;
                    margin: auto;
                    padding: 0 13px;
                }
            }

            .contact-section {
                color: #001f3f;
                /* padding: 40px 20px; */
                padding: 0px 0px 40px 0px;
                margin: 0;

                .card-header-2 {
                    padding: 0;
                }
            }

            .container {
                max-width: 950px;
                margin: auto;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
                gap: 13px;
                flex-direction: row;

                @media (max-width: 1038px) {
                    flex-direction: column !important;
                }
            }

            .info-text {
                height: 100%;
                margin: 0;

                .card-header-2 {
                    font-weight: var(--text-weight);

                    h1 {
                        font-weight: inherit;
                    }
                }

                .info-contact-item {
                    padding: 10px 0;
                    display: flex;
                    gap: 10px;
                    align-items: center;

                    .icon-in-contact {
                        font-size: 20px;
                        display: inherit;
                        align-items: center;
                        color: #FB6900;
                    }

                    img.icon-contact {
                        height: 35px;
                    }

                    .contact-text {

                        label {
                            color: var(--theme-color);
                            font-weight: var(--text-weight);
                        }

                        a {
                            color: var(--text-link) !important;
                            text-decoration: none;
                            font-weight: 600;

                            &:hover {
                                text-decoration: underline;
                            }
                        }

                        a:hover {
                            text-align: center;
                            text-decoration: underline;
                        }

                    }
                }
            }

            .contact-info {
                flex: 1;
                width: 100%;
            }

            .contact-info h2 {
                font-size: 28px;
                margin-bottom: 20px;
                font-weight: 700;
            }

            .info-item {
                display: flex;
                align-items: flex-start;
                margin-bottom: 20px;
            }

            .info-item i {
                font-size: 24px;
                margin-right: 15px;
            }

            .contact-form {
                flex: 1;
                width: 100%;
                display: flex;
                flex-direction: column;
                justify-content: center;

                .form-radio {

                    .title {
                        font-size: var(--fs-m);
                        font-weight: var(--text-weight);
                        color: var(--theme-color);
                    }

                    .group-radio {
                        display: grid;
                        grid-template-columns: 80px 80px;
                        margin-top: 10px;

                        input[type="radio"]:checked {
                            accent-color: var(--theme-color);
                        }

                        label[for=cus_callback_y],
                        label[for=cus_callback_n] {
                            cursor: pointer;
                        }
                    }

                }

                @media (max-width: 1038px) {
                    margin: 15px 0 0 0;

                }
            }


            .contact-form>input[type=text] input[type=email] {
                margin-bottom: 15px;
                border: 1px solid #ccc;
                border-radius: 5px;
                font-size: 16px;
            }

            .contact-form textarea {
                padding: 10px;
                margin-bottom: 15px;
                border: 1px solid #ccc;
                border-radius: 5px;
                font-size: 16px;
            }

            .contact-form button {
                background: var(--theme-color);
                color: white;
                padding: 12px;
                font-size: 16px;
                border: none;
                border-radius: 5px;
                cursor: pointer;

                &:hover {
                    background-color: #4b4b4b;
                    transition: .5s;
                }
            }



        }

        .about-us {
            ul {
                list-style: none;
                padding: 5px 20px 0;

                li::before {
                    content: '- ';
                }
            }

            .content-about-us {
                display: grid;
                grid-template-columns: 1fr 1fr 1fr;
                gap: 29px;

                @media only screen and (max-width: 900px) {
                    grid-template-columns: 1fr;
                }



                & .content-about {
                    padding: 30px;
                    border-radius: var(--border-radius);
                    box-shadow: var(--box-shadow-md);

                    @media (max-width: 1038px) {
                        padding: 20px;
                    }

                    .card-header-2 {
                        text-align: start;
                        padding: 0;

                        h4 {
                            font-weight: var(--text-weight);
                        }
                    }

                    span {
                        color: var(--text-light);
                    }

                }

                & .content-about.main {
                    grid-column: span 3;
                    background-color: #ffffff;
                    display: flex;
                    gap: 20px;

                    @media only screen and (max-width: 900px) {
                        grid-column: span 1;
                        flex-direction: column !important;

                        img:nth-child(1) {
                            width: 100% !important;
                        }
                    }

                    .desc {
                        .item-desc {
                            font-size: var(--fs-m);
                            display: block;
                            padding: 10px 10px;
                            color: var(--text-light);

                            @media only screen and (max-width: 1038px) {
                                padding: 10px 0px;
                            }
                        }
                    }
                }

                & .content-about.item {
                    background-color: #ffffff;

                    .desc {
                        display: grid;
                        gap: 10px;
                        grid-template-rows: 1fr;

                        .item-desc {
                            display: block;
                            padding: 10px 10px;
                            color: var(--text-light);
                        }

                        .text-about {
                            max-height: 150px;
                            height: 88px;

                            @media (max-width: 1038px) {
                                height: auto;
                                margin-bottom: 8px;
                            }
                        }

                        .text-about-md {
                            max-height: 150px;
                            height: 130px;

                            @media (max-width: 1038px) {
                                height: auto;
                                margin-bottom: 8px;
                            }
                        }
                    }
                }

                .img-about {
                    display: flex;
                    justify-content: center;

                    img {
                        height: 312px;
                        width: 100%;
                        object-fit: cover;
                        /* margin-top: 23px; */
                    }
                }
            }

        }

    }
}

.page-quotation {
    position: relative;
    padding: 20px;
    margin-top: 50px;
    background-color: #f8f9fa;

    @media screen and (max-width: 767px) {
        padding: 10px;
    }

    .container-wrapper {
        max-width: 1200px;
        margin: 0 auto;

        .wrapper {
            background-color: #fff;
            border-radius: 10px;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
            padding: 40px 20px 20px 20px;

            @media screen and (max-width: 767px) {
                padding: 30px 10px 10px 10px;
            }

            .card-header {
                text-align: center;

                h2 {
                    font-size: var(--fs-xl);
                    color: #333;
                }
            }

            .card-content {
                .container {
                    padding: 20px;

                    form {
                        display: flex;
                        flex-wrap: wrap;
                        gap: 20px;

                        .header-title {
                            width: 100%;
                            margin-bottom: 20px;
                            border-bottom: 2px solid var(--theme-color);

                            h1 {
                                font-size: var(--fs-xl);
                                font-weight: bold;
                                color: #333;
                            }
                        }

                        .form-group {
                            width: 100%;
                            margin-bottom: 20px;

                            label {
                                display: block;
                                margin-bottom: 5px;
                                font-weight: bold;
                                color: #333;
                                font-size: var(--fs-md);
                            }

                            input,
                            textarea,
                            select {
                                width: 100%;
                                padding: 10px;
                                border-radius: 5px;
                                border: 1px solid #ccc;
                                font-size: var(--fs-md);
                                box-sizing: border-box;
                            }
                        }

                        .form-check {
                            .form-check-input:checked {
                                background-color: var(--theme-color) !important;
                                border-color: var(--theme-color) !important;
                            }

                            .form-check-input:focus {
                                outline: none;
                                box-shadow: unset !important;
                            }
                        }

                        .btn-send-form {
                            background-color: var(--theme-color);
                            color: #fff;
                            font-size: var(--fs-md);
                            padding: 10px 20px;
                            border: none;
                            border-radius: 5px;
                            cursor: pointer;

                            &:hover {
                                background-color: #fff;
                                color: var(--theme-color);
                                border: 1px solid var(--theme-color);
                            }
                        }
                    }
                }
            }
        }
    }
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
    background: var(--theme-color) !important;
    border-color: var(--theme-color) !important;
}

/* footer */
footer {
    text-align: center;
    height: 60px;
    background-color: var(--theme-color);
    color: var(--text-white);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    font-size: var(--fs-m);

    @media (max-width: 1038px) {
        height: 90px;
    }

    .btn-onTop {
        opacity: 0;
        color: #ffffff;
        transition: .5s;
        text-decoration: none;
        font-size: var(--fs-xl);
        font-weight: var(--text-weight);
        position: fixed;
        right: 26px;
        bottom: 40px;
        width: 50px;
        height: 50px;
        border-radius: 50%;
        background-color: var(--theme-color);
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;

        &.active {
            opacity: 1 !important;
        }

        &:hover {
            transform: scale(1.1);
            transition: .5s ease-in-out linear;
        }

        & i {
            color: #ffffff;
        }
    }

    & span {
        display: block;
        padding: 5px;
    }

    a {
        color: #ffffff;
        text-decoration: none;
    }

    @media (max-width: 1038px) {
        height: unset;

        & section {
            padding: 10px;
        }
    }

}


@keyframes StartBus {
    from {
        right: -500px;
    }

    to {
        right: 30px;
    }
}

@keyframes rotate {
    0% {
        transform: rotate(0deg) scale(0.8)
    }

    50% {
        transform: rotate(360deg) scale(1.2)
    }

    100% {
        transform: rotate(720deg) scale(0.8)
    }
}

@keyframes lqt {

    0%,
    100% {
        background-image: linear-gradient(#FF3D00 40px, transparent 0);
        background-position: 0% 0px;
    }

    50% {
        background-image: linear-gradient(#FF3D00 40px, transparent 0);
        background-position: 0% 40px;
    }

    50.1% {
        background-image: linear-gradient(#FF3D00 40px, transparent 0);
        background-position: 0% -40px;
    }
}

@keyframes lqb {
    0% {
        background-image: linear-gradient(#FF3D00 40px, transparent 0);
        background-position: 0 40px;
    }

    100% {
        background-image: linear-gradient(#FF3D00 40px, transparent 0);
        background-position: 0 -40px;
    }
}

@keyframes spinx {

    0%,
    49% {
        transform: rotate(0deg);
        background-position: 50% 36px;
    }

    51%,
    98% {
        transform: rotate(180deg);
        background-position: 50% 4px;
    }

    100% {
        transform: rotate(360deg);
        background-position: 50% 36px;
    }
}


/* edit fix code bootrap */
.accordion-button:not(.collapsed) {
    background-color: unset !important;
    border: unset !important;
}

.form-floating>.form-control,
.form-floating>.form-control-plaintext,
.form-floating>.form-select {
    line-height: 3.5 !important;
}

.form-floating>label {
    color: var(--theme-color);
    padding: 13px .75rem !important;
}

.form-control {
    border: var(--bs-border-width) solid var(--bs-border-color);
}

.form-control:focus {
    box-shadow: none;
    border: var(--bs-border-width) solid var(--bs-border-color);
}