@font-face {
    font-family: "SVN-Gilroy";
    src: url("../fonts/SVN-Gilroy/SVN-Gilroy-Regular.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "SVN-Gilroy";
    src: url("../fonts/SVN-Gilroy/SVN-Gilroy-Bold.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: "SVN-Gilroy";
    src: url("../fonts/SVN-Gilroy/SVN-Gilroy-XBold.woff2") format("woff2");
    font-weight: 800;
    font-style: normal;
}

html {
    width: 100%;
    overflow: hidden;
}

body {
    font-family: "Inter", sans-serif;
    color: #fff;
    font-weight: 500;
    font-size: 16px;
    line-height: 150%;
    overflow: hidden;

    p {
        margin-bottom: 0px;
    }
}

.container-fluid {
    padding: 0px;

    .logo-container.d-flex.justify-content-center.w-100 {
        gap: 50px;
    }

    .login-container {
        .form-login-wrap {
            max-width: 623px;
            background: linear-gradient(
                174deg,
                rgba(255, 255, 255, 0.4) 4.82%,
                rgba(255, 255, 255, 0) 38.08%,
                rgba(255, 255, 255, 0) 56.68%,
                rgba(255, 255, 255, 0.1) 95.1%
            );
            background: rgba(0, 0, 0, 0.24);
            backdrop-filter: blur(25px);
            align-items: center;
            height: 100%;
            overflow-x: auto;
            scrollbar-width: none; /* Firefox */
            -ms-overflow-style: none; /* IE 10+ */

            &::-webkit-scrollbar {
                display: none; /* Chrome, Safari */
            }
        }

        img.logo-company {
            max-width: 100px;
            height: 45px;
            margin-top: 55px;
            aspect-ratio: 20/9;
        }

        img.img-top.logo-app {
            max-width: 139px;
            height: 79px;
            margin-top: 35px;
            aspect-ratio: 139/79;
        }

        .form-login {
            position: absolute;
            padding-bottom: 33px;
        }

        .form-container {
            padding-top: 24px;
            .title-form.text-center {
                position: relative;

                &::after {
                    content: "";
                    position: absolute;
                    bottom: -10px;
                    left: 50%;
                    transform: translateX(-50%);
                    width: 129px;
                    height: 2px;
                    background: #0eb47e;
                }
            }

            h1.title-page {
                color: #fff;
                text-align: center;
                font-size: 24px;
                font-style: normal;
                font-weight: 600;
                line-height: 150%;
                margin-top: 10px;
            }

            form#registerForm {
                padding: 12px 0px;
                margin: 12px 110px;
            }

            label.form-label {
                color: #0eb47e;
                font-weight: 500;
                line-height: 150%;
                align-self: stretch;
            }

            span.icon-required {
                color: #f00;
                font-family: Inter;
                font-size: 16px;
                font-style: normal;
                font-weight: 500;
                line-height: 150%;
            }

            .form-control {
                height: 38px;
                width: 100%;
                border-radius: 24px;
                border: 1px solid var(--Stock-L, rgba(255, 255, 255, 0.4));
                background: rgba(85, 85, 85, 0.24);
                color: white;

                &::placeholder {
                    color: #dbdedf;
                }
            }

            .confirm-policy {
                align-items: center;
                gap: 12px;
                align-self: stretch;
                width: 100%;
                justify-content: space-between;
                margin-bottom: 24px;
                display: flex;
            }

            input.check-box-register {
                background: green !important;
                width: 17px !important;
                height: 17px !important;
                justify-content: center;
                align-items: center;
                display: flex;
                font-weight: unset;
            }

            p.remember-account {
                margin-bottom: 0px;
                justify-content: center;
                align-items: center;
                gap: 8px;
                display: flex;
                font-weight: 400;

                input.check-box-remember {
                    width: 17px;
                    height: 17px;
                    border-radius: 3px;
                }
            }

            p.confirm-text {
                color: #fff;
                font-size: 14px;
                font-style: normal;
                font-weight: 400;
                line-height: 22px;
                margin-bottom: 0px;

                a {
                    color: #29ade4;
                    text-align: right;
                    font-size: 16px;
                    font-style: normal;
                    font-weight: 400;
                    line-height: 150%; /* 24px */
                    text-decoration: none;

                    &:hover {
                        color: #20a1d7 !important;
                    }
                }
            }

            a.link-forget-password {
                color: #0eb47e;
                text-align: right;
                font-family: Inter;
                font-size: 16px;
                font-style: normal;
                font-weight: 400;
                line-height: 150%; /* 24px */
                text-decoration: none;
            }

            a.link-forget-password:hover {
                color: #58997e;
            }

            button.btnResigter.btn-green.w-100 {
                height: 38px;
                flex-shrink: 0;
                width: 100%;
                border-radius: 24px;
                background: linear-gradient(90deg, #079e7a 0%, #5fb13a 100%);
                color: white;
                border: 0.5px;
                transition: all 0.3s ease; /* hiệu ứng mượt khi hover */
            }

            button.btnResigter:hover {
                background: rgba(0, 0, 0, 0.5);
                transform: translateY(-2px) scale(1.04);
                box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
            }

            .row-space-component {
                width: 100%;
                position: relative;

                &:before {
                    position: absolute;
                    left: 12px;
                    top: 10px;
                    content: "";
                    width: 120px;
                    height: 1px;
                    background: #dfdfdf;
                }

                &:after {
                    position: absolute;
                    right: 12px;
                    top: 10px;
                    content: "";
                    width: 120px;
                    height: 1px;
                    background: #dfdfdf;
                }
            }

            hr {
                color: #d9d9d9;
                height: 1px;
                width: 100%;
            }

            .color-green {
                color: #0eb47e;
            }

            p.desc {
                font-size: 14px;
                font-style: normal;
                font-weight: 400;
                line-height: normal;
                margin-bottom: 0px;
                margin-top: 12px;

                a.link-login-form {
                    font-size: 14px;
                    font-style: normal;
                    font-weight: 600;
                    text-decoration: none;
                    position: relative;
                    color: white;
                    display: inline-block;
                    transition: color 0.3s ease;
                }

                a.link-login-form::after {
                    content: "";
                    position: absolute;
                    bottom: -3px;
                    left: 50%;
                    transform: translateX(-50%) scaleX(0);
                    transform-origin: center;
                    width: 100%;
                    height: 1px;
                    background: #ffffff;
                    transition: transform 0.3s ease;
                }

                a.link-login-form:hover {
                    color: #f0f0f0;
                }

                a.link-login-form:hover::after {
                    transform: translateX(-50%) scaleX(1);
                }

                span#countdownText {
                    float: right;
                }
            }

            p.login-form {
                margin: 12px 0px;
            }

            button.btnResigterNew {
                border-radius: 24px;
                background: rgba(0, 0, 0, 0.24);
                color: white;
                height: 38px;
                border: none;
                transition: all 0.3s ease; /* hiệu ứng mượt khi hover */
            }

            button.btnResigterNew:hover {
                background: rgba(0, 0, 0, 0.5);
                transform: translateY(-2px) scale(1.04);
                box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
            }

            button.btn-custom.google,
            button.btn-custom.facebook {
                padding: 5px 15px;
                width: 100%;
                border-radius: 10px;
                border: 1px solid rgba(255, 255, 255, 0.4);
                background: rgba(246, 246, 246, 0.12);
                color: white;
                position: relative;
                height: 45px;
                cursor: pointer;
                text-decoration: none;
                display: flex;
                align-items: center;
                justify-content: center;
                gap: 10px;

                transition: background 0.4s ease, transform 0.3s ease,
                    box-shadow 0.3s ease;
                will-change: transform, background, box-shadow;
            }

            button.btn-custom.google img,
            button.btn-custom.facebook img {
                position: absolute;
                left: 20px;
                width: 20px;
                height: 20px;
            }

            button.btn-custom.google:hover,
            button.btn-custom.facebook:hover {
                background: rgba(255, 255, 255, 0.2);
                transform: translateY(-2px) scale(1.02);
                box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
            }
        }

        .footer-component {
            padding: 0px 33px;
            position: fixed;
            bottom: auto;
            width: 100%;

            .footer-group {
                display: flex;
                width: 100%;
            }

            h2.company-name {
                color: #fff;
                font-size: 16px;
                font-style: normal;
                font-weight: 800;
                line-height: 150%;
                margin-bottom: 12px;
            }

            .company-infor {
                width: 100%;
                margin-bottom: 10px;
                display: flex;
                flex-direction: column;
                align-items: flex-start;
                gap: 6px;
                align-self: stretch;
            }

            .address-company {
                display: flex;
                gap: 12px;
                color: rgba(255, 255, 255, 0.8);
                font-size: 14px;
                font-style: normal;
                font-weight: 500;
                line-height: normal;
                letter-spacing: -0.5px;
                align-items: flex-start;

                p {
                    font-size: 14px;
                    margin-bottom: 0px;
                }

                img.address-icon {
                    height: 20px;
                    width: auto;
                }

                img.email-icon {
                    height: 20px;
                    width: 25px;
                }

                img.phone-icon {
                    height: 20px;
                }
            }

            .company-footer-link {
                display: flex;
                gap: 12px;
                justify-content: end;
                align-items: end;
                margin-bottom: 10px;

                a {
                    color: #29ade4;
                    font-size: 14px;
                    font-style: normal;
                    font-weight: 500;
                    line-height: 22px;
                    text-decoration: none;

                    &:hover {
                        color: #20a1d7 !important;
                    }
                }
            }
        }

        .slick-item {
            display: flex;
            align-items: flex-end;
            aspect-ratio: 1920 / 920;
            position: relative;
        }

        .slick-banner {
            position: relative;
            width: 100%;
            ul.slick-dots {
                position: absolute;
                bottom: 50px;
                display: block;
                text-align: left;
                left: 680px;
            }

            ul.slick-dots li {
                width: 24px;
                height: 24px;
            }

            ul.slick-dots li.slick-active {
                border: 2px solid #ffffff;
                border-radius: 50%;
                box-sizing: border-box;
                font-size: 16px;
                display: inline-flex;
                align-items: center;
                justify-content: center;
            }

            ul.slick-dots li button:before {
                display: none;
            }

            .slick-dots li button {
                font-size: 0;
                line-height: 0;
                display: block;
                width: 16px;
                height: 16px;
                padding: 0px;
                cursor: pointer;
                color: transparent;
                border: 0;
                outline: none;
                background: white;
                border-radius: 50%;
                opacity: 0.5;
            }

            ul.slick-dots li.slick-active button {
                opacity: 1;
            }

            ul.slick-dots li {
                margin-right: 24px;
            }
        }

        .banner-infor {
            max-width: 800px;
            margin-bottom: 98px;
            position: absolute;
            bottom: 0;
            left: 0;
            transform: translateX(670px);
            .title-slide {
                display: flex;
                flex-direction: column;
                justify-content: center;
                flex: 1 0 0;
                align-self: stretch;
                padding-bottom: 0px;
                color: #fff;
                text-shadow: 0px 4px 12px rgba(0, 0, 0, 0.3);
                font-family: "SVN-Gilroy", sans-serif;
                font-size: 40px;
                font-style: normal;
                font-weight: 700;
                line-height: 120%;
            }
        }

        .text-danger {
            color: rgb(211 0 20) !important;
        }
    }
}

@media (max-width: 991px) {
    .form-container {
        padding-top: 5px !important;
    }
    p,
    a,
    .form-label {
        font-size: 14px !important;
        line-height: 1.3;
        margin-bottom: 0px !important;
    }
    h2.company-name {
        font-size: 14px !important;
    }
    .form-control {
        height: 35px !important;
        font-size: 13px !important;
    }
    section.login.bg-custom {
        width: 100%;
    }

    h3.title-slide {
        display: none !important;
    }

    .col-md-4.col-xs-12.top-0.start-0.position-absolute.form-login-wrap {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: start;
        backdrop-filter: blur(10px);
        height: 100vh;
        overflow: auto;
    }

    ul.slick-dots {
        display: none !important;
    }

    button.slick-next.slick-arrow {
        display: none !important;
    }

    .login-form-title {
        margin-top: 35px !important;
        margin-bottom: 14px !important;
    }

    /*.btnResigterNew {*/
    /*    margin-bottom: 30px !important;*/
    /*}*/

    img.logo-company {
        margin-top: 57px !important;
    }

    img.img-top.logo-app {
        margin-top: 40px !important;
    }

    form#registerForm {
        margin: 12px 35px !important;
    }

    .form-login {
        width: 100%;
        display: block !important;
    }

    .company-infor {
        display: block !important;
        column-gap: 12px !important;
    }

    .address-company {
        column-gap: 12px !important;
        margin-bottom: 12px !important;
    }

    .company-footer-link {
        margin-bottom: 24px;
    }

    img.email-icon {
        width: 20px !important;
        height: auto !important;
    }

    img.img-top.logo-app {
        height: 65px !important;
    }

    img.logo-company {
        height: 40px !important;
    }

    button.btnResigterNew {
        background: black !important;
    }

    .slick-item.slick-slide {
        width: 100% !important;
        height: 100vh !important;
        aspect-ratio: unset !important;
        background-size: cover !important;
        background-repeat: no-repeat !important;
        background-position: center center !important;
    }

    .slick-banner {
        width: 100%;
        overflow: hidden;
    }

    .slick-banner .slick-slide {
        width: 100% !important; /* Bắt buộc full width */
        display: flex !important;
        justify-content: center;
    }

    .slick-banner img {
        width: 100%;
        height: auto;
        display: block;
        object-fit: cover;
    }

    .box-icon-local {
        gap: 6px !important;

        img {
            width: 40px !important;
            height: 40px !important;
        }
    }

    .footer-component {
        bottom: 80px !important;
    }
}

.swal2-icon.swal2-info {
    width: 30px; /* hoặc 20px nếu bạn muốn nhỏ */
    height: 30px;
    line-height: 40px;
    font-size: 20px;
}

.swal2-icon.swal2-info::before {
    font-size: 10px; /* icon chữ 'i' nhỏ lại */
    line-height: 30px;
}

.icon_contact_show {
    position: fixed;
    bottom: 50px;
    right: 10px;
}

.box-icon-local {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 4px;
}

img.zalo-img {
    width: 40px;
    height: 40px;
}

.mb-12 {
    margin-bottom: 12px;
}

.gap-20 {
    margin: 20px 0px;
}
.login-copright-text{
    position: absolute;
    bottom: 11px;
    left: 0;
    transform: translateX(688px);
    font-size: 14px;
}

.slick-item {
    position: relative;
    overflow: hidden;
}

.slide-bg {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    transform: scale(1);
    transition: transform 6s ease-out;
    z-index: 0;
}

.slide-bg.zoom-in {
    transform: scale(1.1);
}

.banner-infor {
    position: relative;
    z-index: 1; /* đảm bảo text nằm trên ảnh */
}

.slick-item .slide-bg {
    width: 100%;
    height: 100vh; /* hoặc chiều cao banner bạn muốn */
    background-size: cover;
    background-position: center;
    transform: scale(1);
    transition: transform 6s ease; /* mượt hơn */
}

.slick-item.zoom-in .slide-bg {
    transform: scale(1.1); /* zoom to hơn một chút */
}
