/* เอฟเฟกต์ขยับ */
.glow-move {
    display: inline-block;
    animation:
        floatMove 4s infinite ease-in-out;
}

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

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

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


.glow-smooth-slow {
    display: inline-block;
    will-change: transform;
    animation: smoothSlow 8s cubic-bezier(.45, 0, .55, 1) infinite;
}

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

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

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






.glow-effect2 {
    display: inline-block;
    animation: glowPulse2 3s infinite alternate ease-in-out;
}

/* เอฟเฟกต์แสง */
@keyframes glowPulse2 {
    from {
        filter: drop-shadow(0 0 5px #ffffff59);
        transform: scale(1);
    }

    to {
        filter: drop-shadow(0 0 20px #ffa640be);
        transform: scale(1.1);
    }
}


.glow-effect3 {
    display: inline-block;
    animation: glowPulse3 2s infinite alternate ease-in-out;
}

/* เอฟเฟกต์แสง */
@keyframes glowPulse3 {
    from {
        filter: drop-shadow(0 0 5px #ffffffef);
        transform: scale(1);
    }

    to {
        filter: drop-shadow(0 0 20px #ffa640be);
        /* transform: scale(1.05); */
    }
}

.glow-scale {
    display: inline-block;
    animation: scaleUpDown 5s infinite ease-in-out;
}

/* เอฟเฟกต์ขยายใหญ่ขึ้น */
@keyframes scaleUpDown {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.06);
    }

    100% {
        transform: scale(1);
    }
}


/* เลื่อนแสดงเนื้้อหา  */

.reveal-section {
    opacity: 0;
    transform: translateY(40px);
    transition: all 0.8s ease;
}

.reveal-section.show {
    opacity: 1;
    transform: translateY(0);
}

.delay-1 {
    transition-delay: .2s;
}

.delay-2 {
    transition-delay: .4s;
}

.delay-3 {
    transition-delay: .6s;
}

.delay-4 {
    transition-delay: .8s;
}


/* Cloud Custom  */
.scene {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;

}

.cloud {
    position: absolute;
    border-radius: 50%;
    background-color: white;
    opacity: 0.7;
    box-shadow: 0 0 60px #ffffffe7;
    filter: blur(5px);
}

.cloud-part {
    position: absolute;
    border-radius: 50%;
    background-color: white;
    opacity: 0.8;
    box-shadow: 0 0 40px rgba(255, 255, 255, 0.5);
}

.alert-blink {
    animation: blinkColor 3s infinite ease-in-out;
}

@keyframes blinkColor {
    0% {
        color: #ff3b3b;
        filter: drop-shadow(0 0 6px #ff3b3b);
    }

    50% {
        color: #ffffff;
        filter: drop-shadow(0 0 6px #ffffff);
    }

    100% {
        color: #ff3b3b;
        filter: drop-shadow(0 0 6px #ff8e8e);
    }
}