        html {
            scrollbar-gutter: stable;
            /* 現代瀏覽器支援即可 */
        }

        .owl-carousel2 .owl-stage {
            display: flex;
            display: -webkit-flex;
        }

        /* 2. 讓每一個子元素（卡片）高度撐滿 100% */
        .owl-carousel2 .owl-item {
            display: flex;
            display: -webkit-flex;
            flex: 1 0 auto;
        }

        /* 3. 針對你自己寫的卡片內容類別（假設叫 .item 或 .card） */
        .owl-carousel2 .item {
            width: 100%;
            /* 確保寬度正常 */
            height: 100%;
            /* 關鍵：強制拉伸高度 */
        }

        .owl-carousel2 .owl-nav .owl-prev {
            left: -5px;
        }

        .owl-carousel2 .owl-nav .owl-next {
            right: -5px;
        }

        .owl-carousel2 .owl-dots {
            margin-top: 10px
        }

        img {
            image-rendering: -webkit-optimize-contrast;
            image-rendering: crisp-edges;
        }

        .owl-nav button {
            font-size: 60px;
            background: #000;
            color: #fff;
            border-radius: 50%;
        }

        .owl-prev {
            position: absolute;
            top: 50%;
            left: 0;
            z-index: 10;
            transform: translateY(-100%);
        }

        .owl-next {
            position: absolute;
            top: 50%;
            right: 0;
            z-index: 10;
            transform: translateY(-100%);
        }

        .is-lock {
            position: fixed;
        }

        .animate_header {
            animation: headerShow 0.6s 3.5s both;
        }

        .animate_textWrapper {
            animation: textWrapperEffect 1.5s 3s forwards, textWrapperHidden .5s 4s forwards;
        }

        .animate_openTextWrap {
            filter: contrast(10);
        }

        .animate_openText {
            animation: openTextEffect 2s 0.5s both;
        }

        .animate_card {
            animation: openCardMove 2s 3.8s both, cardLight 3.1s 4.5s ease-out infinite;
        }

        .animate_kvMainTitle {
            animation: textTitle 2s 3.5s both;
        }

        .animate_kvSecondTitle {
            animation: textTitle 2s 3.8s both;
        }

        .animate_kvBtn {
            animation: textTitle 2s 4.1s both;
        }

        .menuUpSpan {
            transform: rotate(45deg) translate(30%, 475%);
        }

        .menuDownSpan {
            transform: rotate(-45deg) translate(30%, -475%);
        }

        .animate_kvCardLogo {
            /* 遮罩（筆刷） */
            -webkit-mask-image: linear-gradient(90deg,
                    transparent 0%,
                    black 40%,
                    black 60%,
                    transparent 100%);
            -webkit-mask-size: 300% 150%;
            -webkit-mask-position: 0% 0%;

            mask-image: linear-gradient(90deg,
                    transparent 0%,
                    black 40%,
                    black 60%,
                    transparent 100%);
            mask-size: 300% 150%;
            mask-position: 0% 0%;
            animation: drawMask 1.6s ease-out forwards;
        }

        .animate_river_1 {
            transform-origin: right center;
            animation: riverMove 15s infinite;
        }

        .animate_river_2 {
            animation: riverMove 10s 1s infinite;
            transform-origin: left center;
        }

        .animate_river_3 {
            animation: riverMove 10s 2s infinite;
            transform-origin: left center;
        }

        @keyframes riverMove {
            0% {
                transform: scaleX(1);
            }

            50% {
                transform: scaleX(1.1);
            }

            100% {
                transform: scaleX(1);
            }
        }

        @keyframes cardLight {
            0% {
                filter: brightness(1);
            }

            20% {
                filter: brightness(1.5);
            }

            40% {
                filter: brightness(1);
            }

            100% {
                filter: brightness(1);
            }
        }

        @keyframes drawMask {
            to {
                -webkit-mask-position: 100% 0%;
                mask-position: 200% 0%;
            }
        }


        @keyframes textTitle {
            0% {
                opacity: 0;
                transform: translateX(-30%);
            }

            100% {
                opacity: 1;
                transform: translateX(0%);
            }
        }

        @keyframes openTextEffect {
            0% {
                letter-spacing: -20px;
                filter: blur(5px);
            }

            100% {
                letter-spacing: 8px;
                filter: blur(0px);
            }
        }

        @keyframes textWrapperEffect {
            0% {
                opacity: 1;
            }

            100% {
                opacity: 0;
            }
        }

        @keyframes openCardMove {
            0% {
                opacity: 0;
                transform: translate(0%, 0%);
            }

            100% {
                opacity: 1;
                transform: translate(15%, 0%);
            }
        }

        @keyframes textWrapperHidden {
            0% {
                display: none;
            }

            100% {
                display: none;
            }
        }

        @keyframes headerShow {
            0% {
                opacity: 0;
            }

            100% {
                opacity: 1;
            }
        }

        @media screen and (max-width:767px) {
            @keyframes openTextEffect {
                0% {
                    letter-spacing: -15px;
                    filter: blur(10px);
                }

                100% {
                    letter-spacing: 5px;
                    filter: blur(0px);
                }
            }

            @keyframes openCardMove {
                0% {
                    opacity: 0;
                    transform: translate(0%, 0%);
                }

                100% {
                    opacity: 1;
                    transform: translate(13%, 0%);
                }
            }
        }