/* =========================================================
       RESET
    ========================================================= */

    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    html {
        scroll-behavior: smooth;
        background: #07142b;
    }

    body {
        margin: 0 !important;
        background: #07142b !important;
        font-family: Arial, Helvetica, sans-serif !important;
        color: #ffffff !important;
        line-height: 1.7;
        overflow-x: hidden;
    }

    /* =========================================================
       BIẾN CHUNG
    ========================================================= */

    :root {
        --blue: #1E50A2;
        --blue-dark: #0b2454;
        --blue-deep: #061735;
        --blue-light: #2d68c7;

        --red: #ff5858;
        --red-dark: #d93636;

        --white: #ffffff;
        --text: #ffffff;
        --text-soft: #dbe7ff;

        --border: rgba(255, 255, 255, 0.18);
        --border-red: rgba(255, 88, 88, 0.7);

        --shadow:
            0 0 25px rgba(255, 88, 88, 0.12);
    }

    /* =========================================================
       KHUNG WEBSITE
    ========================================================= */

    .container {
        position: relative;
        z-index: 1;

        width: min(95%, 1000px);

        margin: 25px auto;
        padding: 12px;

        background:
            linear-gradient(
                180deg,
                rgba(18, 57, 122, 0.96),
                rgba(6, 23, 53, 0.98)
            );

        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 14px;

        color: #ffffff;

        box-shadow:
            0 0 30px rgba(0, 0, 0, 0.35),
            0 0 20px rgba(30, 80, 162, 0.12);
    }

    /* =========================================================
       ẢNH NỀN
    ========================================================= */

    .image_background {
        width: 100%;
        overflow: hidden;
        border-radius: 12px;

        background: var(--blue-dark);
    }

    .image_background img {
        width: 100%;
        height: auto;

        display: block;

        border-radius: 12px;

        object-fit: cover;
    }

    /* =========================================================
       HEADER
    ========================================================= */

    .header_info {
        display: flex !important;

        justify-content: space-between;
        align-items: center;

        gap: 20px;

        margin: 20px 0 30px;
        padding: 18px;

        flex-wrap: wrap;

        background:
            linear-gradient(
                135deg,
                rgba(11, 36, 84, 0.95),
                rgba(18, 57, 122, 0.82)
            );

        border: 1px solid rgba(255, 88, 88, 0.35) !important;
        border-radius: 14px;

        box-shadow:
            0 0 20px rgba(255, 88, 88, 0.08);
    }

    .left_info {
        display: flex;

        align-items: center;

        gap: 15px;

        min-width: 0;

        color: #ffffff !important;
    }

    .header_profile {
        width: 110px;
        height: 110px;

        padding: 0;
        margin: 0;

        border: 3px solid var(--red);
        border-radius: 50%;

        overflow: hidden;

        flex-shrink: 0;

        background: var(--blue-dark);

        box-shadow:
            0 0 12px rgba(255, 88, 88, 0.45);
    }

    .header_profile img {
        width: 100%;
        height: 100%;

        display: block;

        object-fit: cover;
    }

    .left_info h1,
    .header_info h1 {
        margin: 0;

        color: #ffffff !important;

        font-size: clamp(
            24px,
            4vw,
            38px
        );

        line-height: 1.25;

        text-shadow:
            0 0 8px rgba(255, 255, 255, 0.1);
    }

    .right_info {
        display: flex !important;

        gap: 15px;

        align-items: center;

        justify-content: flex-end;

        flex-wrap: wrap;

        margin-left: auto;
    }

    .right_info a {
        text-decoration: none !important;
    }

    .logo_social {
        width: 55px;
        height: 55px;

        display: grid;
        place-items: center;

        flex-shrink: 0;

        border: 1px solid rgba(255, 88, 88, 0.45);
        border-radius: 10px;

        background: rgba(255, 255, 255, 0.04);

        overflow: hidden;

        transition:
            transform 0.2s ease,
            background 0.2s ease,
            box-shadow 0.2s ease;
    }

    .logo_social img {
        width: 100%;
        height: 100%;

        object-fit: contain;

        display: block;

        opacity: 1;

        filter: none !important;
    }

    .right_info a:hover .logo_social {
        transform: translateY(-3px);

        background: rgba(255, 88, 88, 0.12);

        box-shadow:
            0 0 10px rgba(255, 88, 88, 0.45);
    }

    /* =========================================================
       BIO BOX
    ========================================================= */

    .bio_box {
        width: 100%;

        margin-top: 20px;
        padding: 25px;

        color: #ffffff !important;

        background:
            linear-gradient(
                180deg,
                rgba(18, 57, 122, 0.95),
                rgba(7, 20, 43, 0.98)
            ) !important;

        border: 2px solid var(--red) !important;
        border-radius: 14px;

        box-shadow:
            0 0 25px rgba(255, 88, 88, 0.12),
            inset 0 0 25px rgba(0, 0, 0, 0.15);

        position: relative;

        overflow: hidden;
    }

    .bio_box::before {
        content: "";

        position: absolute;

        top: 0;
        left: 0;
        right: 0;

        height: 3px;

        background: var(--red);

        box-shadow:
            0 0 10px var(--red),
            0 0 22px var(--red);

        z-index: 1;
    }

    /* =========================================================
       ÉP CHỮ TRẮNG TOÀN BỘ BIO
    ========================================================= */

    .bio_box,
    .bio_box *,
    .content_xe,
    .content_xe *,
    .tlg-future,
    .tlg-future *,
    .tlg-shell,
    .tlg-shell *,
    .tlg-moc-chau-bac-ninh,
    .tlg-moc-chau-bac-ninh * {
        color: #ffffff !important;
    }

    /* =========================================================
       TIÊU ĐỀ BIO
    ========================================================= */

    .bio_box h1 {
        color: #ffffff !important;

        font-size: 32px;

        margin-bottom: 20px;

        line-height: 1.4;

        padding-bottom: 10px;

        border-bottom:
            2px solid rgba(255, 88, 88, 0.55);
    }

    .bio_box h2 {
        color: #ffffff !important;

        font-size: 24px;

        margin: 30px 0 15px;

        padding: 12px 16px;

        background:
            linear-gradient(
                90deg,
                rgba(255, 255, 255, 0.05),
                rgba(255, 255, 255, 0.01)
            );

        border-left: 5px solid var(--red);

        border-radius: 6px;
    }

    .bio_box h3 {
        color: #ffffff !important;

        font-size: 20px;

        margin: 25px 0 10px;

        padding: 9px 13px;

        background: var(--blue-dark);

        border-left: 4px solid var(--red);

        border-radius: 6px;
    }

    .bio_box p {
        margin-bottom: 15px;

        color: #ffffff !important;
    }

    .bio_box strong,
    .bio_box b {
        color: #ffffff !important;

        font-weight: 700;
    }

    .bio_box ul,
    .bio_box ol {
        padding: 16px 20px 16px 42px;

        margin: 15px 0;

        background:
            rgba(255, 255, 255, 0.06);

        border: 1px solid rgba(255, 255, 255, 0.16);

        border-radius: 10px;
    }

    .bio_box li {
        margin-bottom: 8px;

        color: #ffffff !important;
    }

    .bio_box li::marker {
        color: var(--red);
    }

    /* =========================================================
       LINK
    ========================================================= */

    .bio_box a {
        color: #ffffff !important;

        text-decoration: underline;

        text-decoration-color: var(--red);

        text-decoration-thickness: 2px;

        text-underline-offset: 3px;

        font-weight: 700;
    }

    .bio_box a:hover {
        color: #ffe1e1 !important;
    }

    /* =========================================================
       ẢNH TRONG BIO
    ========================================================= */

    .bio_box img {
        display: block;

        width: 100%;
        max-width: 100%;

        height: auto;

        border-radius: 8px;
    }

    /* =========================================================
       BLOCKQUOTE
    ========================================================= */

    .bio_box blockquote {
        margin: 20px 0;

        padding: 16px 18px;

        color: #ffffff !important;

        background:
            linear-gradient(
                135deg,
                #123875,
                #0b2454
            );

        border-left: 5px solid var(--red);

        border-top: 1px solid rgba(255, 255, 255, 0.12);
        border-right: 1px solid rgba(255, 255, 255, 0.12);
        border-bottom: 1px solid rgba(255, 255, 255, 0.12);

        border-radius: 8px;

        box-shadow:
            0 4px 15px rgba(0, 0, 0, 0.18);
    }

    .bio_box blockquote p {
        color: #ffffff !important;

        margin: 0;
    }

    /* =========================================================
       BẢNG TRONG BIO
    ========================================================= */

    .bio_box .table-responsive {
        width: 100%;

        overflow-x: auto;

        -webkit-overflow-scrolling: touch;

        margin: 20px 0;

        border: 2px solid var(--red);

        border-radius: 10px;

        box-shadow:
            0 0 15px rgba(255, 88, 88, 0.08);
    }

    .bio_box table {
        width: 100%;

        margin: 0;

        border-collapse: collapse;

        background: #0b2454 !important;

        color: #ffffff !important;

        border: 0;
    }

    .bio_box th,
    .bio_box td {
        padding: 12px;

        border:
            1px solid rgba(255, 255, 255, 0.2);

        color: #ffffff !important;

        background: #0b2454 !important;

        vertical-align: middle;
    }

    .bio_box th {
        background: #123875 !important;

        color: #ffffff !important;

        text-align: center;

        font-weight: 700;
    }

    .bio_box td:first-child {
        text-align: left;
    }

    .bio_box td:last-child {
        text-align: center;

        font-weight: bold;
    }

    .bio_box tbody tr:nth-child(even) td {
        background: #102e65 !important;

        color: #ffffff !important;
    }

    .bio_box tbody tr:hover td {
        background: #173d80 !important;

        color: #ffffff !important;
    }

    /* =========================================================
       CONTENT XE
    ========================================================= */

    .content_xe {
        width: 100%;
        max-width: 880px;

        margin: auto;

        padding: 16px;

        overflow-x: auto;

        background:
            linear-gradient(
                180deg,
                rgba(18, 57, 122, 0.95),
                rgba(7, 20, 43, 0.98)
            );

        border: 2px solid var(--red);

        border-radius: 10px;

        box-shadow:
            0 0 20px rgba(255, 88, 88, 0.08);
    }

    .content_xe h2,
    .content_xe h3 {
        color: #ffffff !important;
    }

    .content_xe h2 {
        padding: 20px 0;
    }

    /* =========================================================
       SERVICE TABLE
    ========================================================= */

    .service-table {
        width: 100%;
        min-width: 600px;

        border-collapse: collapse;

        border: 2px solid var(--red);

        background: #0b2454 !important;

        color: #ffffff !important;
    }

    .service-table th,
    .service-table td {
        border:
            1px solid rgba(255, 255, 255, 0.22);

        padding: 10px 12px;

        text-align: center;

        color: #ffffff !important;

        background: #0b2454 !important;
    }

    .service-table th {
        background: #123875 !important;

        color: #ffffff !important;

        font-weight: bold;
    }

    .service-table tbody tr:nth-child(even) td {
        background: #102e65 !important;

        color: #ffffff !important;
    }

    .service-table tbody tr:hover td {
        background: #173d80 !important;

        color: #ffffff !important;
    }

    /* =========================================================
       TLG FUTURE / SHELL
    ========================================================= */

    .tlg-future {
        width: 100%;

        background:
            linear-gradient(
                180deg,
                rgba(18, 57, 122, 0.95),
                rgba(7, 20, 43, 0.98)
            ) !important;

        border: 2px solid var(--red) !important;

        border-radius: 14px;

        color: #ffffff !important;

        box-shadow:
            0 0 25px rgba(255, 88, 88, 0.12);

        overflow: hidden;

        position: relative;
    }

    .tlg-future::before {
        content: "TLG // FUTURE TRANSIT";

        display: block;

        padding: 10px 16px;

        color: #ffffff !important;

        background:
            linear-gradient(
                90deg,
                var(--red),
                var(--red-dark),
                #0b2050
            );

        border-bottom: 1px solid var(--red);

        font-size: 12px;

        font-weight: 700;

        letter-spacing: 0.14em;

        text-transform: uppercase;
    }

    .tlg-shell {
        position: relative;

        padding: 25px;

        color: #ffffff !important;
    }

    .tlg-shell h1,
    .tlg-shell h2,
    .tlg-shell h3,
    .tlg-shell p,
    .tlg-shell li,
    .tlg-shell td,
    .tlg-shell th,
    .tlg-shell strong,
    .tlg-shell b {
        color: #ffffff !important;
    }

    .tlg-shell h2 {
        padding: 12px 16px;

        margin: 30px 0 15px;

        background:
            linear-gradient(
                90deg,
                rgba(255, 255, 255, 0.05),
                rgba(255, 255, 255, 0.01)
            );

        border-left: 5px solid var(--red);

        border-radius: 6px;
    }

    .tlg-shell h3 {
        padding: 9px 13px;

        margin: 25px 0 10px;

        background: var(--blue-dark);

        border-left: 4px solid var(--red);

        border-radius: 6px;
    }

    .tlg-shell p {
        margin-bottom: 15px;

        line-height: 1.7;
    }

    .tlg-shell ul,
    .tlg-shell ol {
        padding: 16px 20px 16px 42px;

        margin: 15px 0;

        background:
            rgba(255, 255, 255, 0.06);

        border:
            1px solid rgba(255, 255, 255, 0.16);

        border-radius: 10px;
    }

    .tlg-shell li {
        margin-bottom: 8px;
    }

    .tlg-shell li::marker {
        color: var(--red);
    }

    .tlg-shell a {
        color: #ffffff !important;

        text-decoration: underline;

        text-decoration-color: var(--red);

        font-weight: 700;
    }

    .tlg-shell table {
        width: 100%;

        border-collapse: collapse;

        background: #0b2454 !important;

        color: #ffffff !important;

        border: 2px solid var(--red);
    }

    .tlg-shell th,
    .tlg-shell td {
        padding: 12px;

        border:
            1px solid rgba(255, 255, 255, 0.2);

        color: #ffffff !important;

        background: #0b2454 !important;
    }

    .tlg-shell th {
        background: #123875 !important;
    }

    /* =========================================================
       CONTACT BOX
    ========================================================= */

    .contact-box {
        margin-top: 35px;

        padding: 20px;

        background:
            linear-gradient(
                135deg,
                rgba(18, 57, 122, 0.98),
                rgba(11, 36, 84, 0.98)
            );

        border: 2px solid var(--red);

        border-radius: 14px;

        box-shadow:
            0 0 20px rgba(255, 88, 88, 0.15);
    }

    .contact-box h2 {
        margin-top: 0;

        text-align: center;

        background:
            linear-gradient(
                90deg,
                rgba(255, 88, 88, 0.12),
                rgba(255, 255, 255, 0.03)
            );
    }

    .contact-box ul {
        margin-bottom: 0;
    }

    /* =========================================================
       COMPANY INFO
    ========================================================= */

    .company-info {
        margin-top: 25px;

        padding: 20px;

        background:
            rgba(255, 255, 255, 0.06);

        border: 1px solid rgba(255, 255, 255, 0.18);

        border-left: 5px solid var(--red);

        border-radius: 12px;
    }

    .company-info h2 {
        margin-top: 0;
    }

    .company-info p:last-child {
        margin-bottom: 0;
    }

    /* =========================================================
       HOTLINE
    ========================================================= */

    .tlg-hotline {
        margin: 25px 0;

        padding: 25px;

        text-align: center;

        color: #ffffff !important;

        background:
            linear-gradient(
                135deg,
                #123875,
                #1E50A2
            );

        border: 2px solid var(--red);

        border-radius: 14px;

        box-shadow:
            0 0 20px rgba(255, 88, 88, 0.2),
            inset 0 0 20px rgba(0, 0, 0, 0.12);
    }

    .tlg-hotline-title {
        margin-bottom: 8px;

        font-size: 20px;

        font-weight: 700;

        color: #ffffff !important;
    }

    .tlg-hotline-number {
        display: inline-block;

        margin-top: 8px;

        padding: 10px 22px;

        color: #ffffff !important;

        background:
            linear-gradient(
                135deg,
                #102e65,
                #0b2454
            );

        border: 2px solid var(--red);

        border-radius: 8px;

        font-size: 24px;

        font-weight: 700;

        text-decoration: none !important;

        box-shadow:
            0 0 12px rgba(255, 88, 88, 0.3);
    }

    .tlg-hotline-number:hover {
        color: #ffffff !important;

        background:
            linear-gradient(
                135deg,
                #173d80,
                #123875
            );
    }

    /* =========================================================
       NOTE
    ========================================================= */

    .tlg-note {
        margin: 15px 0 25px;

        padding: 14px 18px;

        color: #ffffff !important;

        background:
            linear-gradient(
                135deg,
                rgba(18, 56, 117, 0.98),
                rgba(11, 36, 84, 0.98)
            );

        border-left: 5px solid var(--red);

        border-top:
            1px solid rgba(255, 255, 255, 0.14);

        border-right:
            1px solid rgba(255, 255, 255, 0.14);

        border-bottom:
            1px solid rgba(255, 255, 255, 0.14);

        border-radius: 8px;

        box-shadow:
            0 4px 15px rgba(0, 0, 0, 0.18);

        font-style: italic;
    }

    /* =========================================================
       FAQ
    ========================================================= */

    .tlg-faq {
        margin: 12px 0;

        padding: 16px 18px;

        color: #ffffff !important;

        background:
            rgba(255, 255, 255, 0.09);

        border:
            1px solid rgba(255, 255, 255, 0.25);

        border-radius: 10px;
    }

    .tlg-faq strong {
        color: #ffffff !important;
    }

    /* =========================================================
       IMAGE
    ========================================================= */

    .tlg-moc-chau-bac-ninh img {
        max-width: 100%;

        height: auto;

        display: block;

        border-radius: 10px;
    }

    /* =========================================================
       TABLE RESPONSIVE
    ========================================================= */

    .bio_box table {
        min-width: 650px;
    }

    /* =========================================================
       TABLET
    ========================================================= */

    @media (max-width: 768px) {

        .container {
            width: 95%;

            margin: 15px auto;

            padding: 8px;
        }

        .header_info {
            flex-direction: column;

            text-align: center;

            padding: 15px;
        }

        .left_info {
            flex-direction: column;

            justify-content: center;
        }

        .right_info {
            justify-content: center;

            margin-left: 0;
        }

        .header_profile {
            width: 90px;
            height: 90px;
        }

        .logo_social {
            width: 45px;
            height: 45px;
        }

        .bio_box {
            padding: 18px;
        }

        .bio_box h1 {
            font-size: 26px;
        }

        .bio_box h2 {
            font-size: 22px;
        }

        .bio_box h3 {
            font-size: 18px;
        }

        .bio_box .table-responsive {
            overflow-x: auto;
        }

        .bio_box table {
            min-width: 650px;
        }

        .content_xe {
            padding: 10px;
        }

        .tlg-shell {
            padding: 18px;
        }

        .contact-box {
            padding: 15px;
        }
    }

    /* =========================================================
       MOBILE NHỎ
    ========================================================= */

    @media (max-width: 480px) {

        body {
            font-size: 14px;
        }

        .container {
            width: 98%;

            padding: 6px;

            margin: 10px auto;
        }

        .header_profile {
            width: 75px;
            height: 75px;
        }

        .left_info h1,
        .header_info h1 {
            font-size: 22px;
        }

        .logo_social {
            width: 38px;
            height: 38px;
        }

        .right_info {
            gap: 8px;
        }

        .bio_box {
            padding: 15px;

            border-radius: 10px;
        }

        .bio_box h1 {
            font-size: 22px;
        }

        .bio_box h2 {
            font-size: 20px;
        }

        .bio_box h3 {
            font-size: 17px;
        }

        .bio_box th,
        .bio_box td {
            padding: 10px;

            font-size: 14px;
        }

        .tlg-shell {
            padding: 14px 12px;
        }

        .tlg-future::before {
            padding: 8px 12px;

            font-size: 10px;
        }

        .contact-box {
            padding: 10px;
        }

        .company-info {
            padding: 15px;
        }

        .bio_box ul,
        .bio_box ol {
            padding-left: 30px;
        }
    }

    /* =========================================================
       GIẢM CHUYỂN ĐỘNG
    ========================================================= */

    @media (prefers-reduced-motion: reduce) {

        html {
            scroll-behavior: auto;
        }

        *,
        *::before,
        *::after {
            transition: none !important;
            animation: none !important;
        }
    }