/* ============================================
   Animations — Minimal, Subtle Reveal Only
   ============================================ */

.reveal,
.reveal-left,
.reveal-right,
.reveal-scale {
    opacity: 0;
    transform: translateY(12px);
    transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
                transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: opacity, transform;
}

.reveal.revealed,
.reveal-left.revealed,
.reveal-right.revealed,
.reveal-scale.revealed {
    opacity: 1;
    transform: translateY(0);
}

/* Slightly staggered for grouped elements */
.stagger-children .reveal {
    transition-delay: calc(var(--stagger-index, 0) * 0.05s);
}

/* Gradient text disabled — keep selector to prevent layout break */
.gradient-text-animated {
    background: none;
    -webkit-background-clip: initial;
    -webkit-text-fill-color: currentColor;
    background-clip: initial;
    color: inherit;
    animation: none;
}

/* No-op legacy helpers */
.glow-hover { position: relative; }
.glow-hover::after { display: none; }
.typewriter { border-right: 0; animation: none; padding-right: 0; }

@keyframes pulse-whatsapp {
    0%, 100% { box-shadow: none; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }

    .reveal,
    .reveal-left,
    .reveal-right,
    .reveal-scale {
        opacity: 1;
        transform: none;
    }
}
