/* Scroll animations: cards fade up, headings slide up word by word, numbers count up.
   Nothing is hidden unless reveal.js has run, and elements already on screen
   when the page loads are left alone, so there is no flash. */

/* Cards and list items: fade and rise */
.reveal-ready .reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.6s cubic-bezier(0.165, 0.84, 0.44, 1),
                transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition-delay: var(--reveal-delay, 0ms);
}
.reveal-ready .reveal.is-visible {
    opacity: 1;
    transform: none;
}

/* Headings: each word slides up from behind a mask */
.reveal-word {
    display: inline-block;
    overflow: hidden;
    vertical-align: top;
    padding-bottom: 0.12em;   /* room for descenders (g, y, p) */
    margin-bottom: -0.12em;
}
.reveal-word-inner {
    display: inline-block;
    transform: translateY(110%);
    transition: transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition-delay: var(--reveal-delay, 0ms);
}
.reveal-heading.is-visible .reveal-word-inner {
    transform: none;
}

/* Visitors who ask for less motion see everything immediately */
@media (prefers-reduced-motion: reduce) {
    .reveal-ready .reveal,
    .reveal-word-inner {
        opacity: 1;
        transform: none;
        transition: none;
    }
}
