[data-reveal] {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.9s cubic-bezier(0.16, 1, 0.3, 1),
                transform 0.9s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
}

[data-reveal].revealed {
    opacity: 1;
    transform: none;
}

[data-reveal="left"] {
    opacity: 0;
    transform: translateX(-40px);
}

[data-reveal="left"].revealed {
    opacity: 1;
    transform: none;
}

[data-reveal="right"] {
    opacity: 0;
    transform: translateX(40px);
}

[data-reveal="right"].revealed {
    opacity: 1;
    transform: none;
}

[data-reveal="scale"] {
    opacity: 0;
    transform: scale(0.92);
}

[data-reveal="scale"].revealed {
    opacity: 1;
    transform: none;
}

[data-reveal="fade"] {
    opacity: 0;
    transform: none;
}

[data-reveal="fade"].revealed {
    opacity: 1;
}
