.bannerCharacterLayoutTh,
.bannerCharacterLayoutEn,
.bannerCharacterLayoutId,
.bannerLogoRcc,
.bannerTitleLayout,
.bannerBtnMainSecLayout {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 1s ease, transform 1s ease;
}

@keyframes floating {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(0px);
    }
}

@keyframes floating2 {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(6px);
    }

    100% {
        transform: translateY(0px);
    }
}

@keyframes pulse-glow {
    0% {
        filter: drop-shadow(4px 4px 5px #000);
    }

    50% {
        filter: drop-shadow(4px 4px 15px rgba(255, 180, 0, 0.7));
    }

    100% {
        filter: drop-shadow(4px 4px 5px #000);
    }
}

@keyframes pulse-glow2 {
    0% {
        filter: drop-shadow(4px 4px 5px #cd7138a9);
    }

    50% {
        filter: drop-shadow(4px 4px 15px #cd7038);
    }

    100% {
        filter: drop-shadow(4px 4px 5px #cd7138a9);
    }
}

@keyframes button-glow {
    0% {
        filter: drop-shadow(1px 1px 3px rgba(253, 205, 61, 0.3));
    }

    50% {
        filter: drop-shadow(1px 1px 20px rgba(253, 205, 61, 0.8));
    }

    100% {
        filter: drop-shadow(1px 1px 3px rgba(253, 205, 61, 0.3));
    }
}

.bannerTitle {
    animation: text-shimmer 3s linear infinite;
}

@keyframes text-shimmer {
    0% {
        background-position: -500px 0;
    }

    100% {
        background-position: 500px 0;
    }
}