/* Reveal on Scroll */
[data-reveal] {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s var(--ease-out-expo);
}

[data-reveal].revealed {
    opacity: 1;
    transform: translateY(0);
}

[data-reveal="fade"] {
    transform: translateY(0);
    opacity: 0;
}

[data-reveal="zoom"] {
    transform: scale(0.9);
    opacity: 0;
}

[data-reveal="zoom"].revealed {
    transform: scale(1);
    opacity: 1;
}

/* Staggered Reveals */
.stagger-container>* {
    opacity: 0;
    transform: translateY(20px);
}

.stagger-container.revealed>* {
    opacity: 1;
    transform: translateY(0);
}

/* Pulsing Glow Animation */
@keyframes pulseGlowGold {

    0%,
    100% {
        box-shadow: 0 0 20px rgba(201, 176, 55, 0.5),
            0 0 40px rgba(201, 176, 55, 0.3);
    }

    50% {
        box-shadow: 0 0 30px rgba(201, 176, 55, 0.8),
            0 0 60px rgba(201, 176, 55, 0.5);
    }
}

.pulse-glow {
    animation: pulseGlowGold 2s ease-in-out infinite;
}

/* Scroll Magnetism - Controlled via JS */

/* Text Reveal Animation */
.text-reveal {
    overflow: hidden;
}

.text-reveal span {
    display: block;
    transform: translateY(110%);
    transition: transform 0.8s cubic-bezier(0.77, 0, 0.175, 1);
}

.revealed .text-reveal span {
    transform: translateY(0);
}