.reveal-word {
    display: inline-block;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .4s ease, transform .4s ease;
}

.reveal-word.is-visible {
    opacity: 1;
    transform: translateY(0);
}

[class^="reveal-"] {
    opacity: 0;
    transition: all 0.9s cubic-bezier(0.25, 1, 0.5, 1);
    will-change: transform, opacity, filter;
}


/* 1–5 */

.reveal-up {
    transform: translateY(50px);
}

.reveal-down {
    transform: translateY(-50px);
}

.reveal-left {
    transform: translateX(-60px);
}

.reveal-right {
    transform: translateX(60px);
}

.reveal-diagonal {
    transform: translate(60px, 60px);
}


/* 6–10 */

.reveal-scale {
    transform: scale(0.85);
}

.reveal-zoom-in {
    transform: scale(0.7);
}

.reveal-zoom-out {
    transform: scale(1.2);
}

.reveal-pop {
    transform: scale(0.6);
}

.reveal-blur {
    filter: blur(12px);
}


/* 11–15 */

.reveal-rotate {
    transform: rotate(15deg) scale(1);
}

.reveal-flip-x {
    transform: rotateX(90deg);
}

.reveal-flip-y {
    transform: rotateY(90deg);
}

.reveal-tilt {
    transform: rotate(-6deg) translateY(30px);
}

.reveal-swing {
    transform: rotate(12deg);
    transform-origin: top;
}


/* 16–20 */

.reveal-fade {
    opacity: 0;
}

.reveal-skew {
    transform: skewY(6deg) translateY(40px);
}

.reveal-rise-soft {
    transform: translateY(30px) scale(0.95);
}

.reveal-drop {
    transform: translateY(-80px);
}

.reveal-glide {
    transform: translateX(-120px);
}


/* Active */

.reveal-show {
    opacity: 1;
    transform: none;
    filter: blur(0);
    transition: all 1s ease;
}