/* Page Transition — Fade */
.page-transitioning { pointer-events: none; }

body.page-exit {
    animation: pageFadeOut 280ms ease-in forwards;
}

body.page-enter {
    animation: pageFadeIn 320ms ease-out forwards;
}

@keyframes pageFadeOut {
    from { opacity: 1; }
    to   { opacity: 0; }
}

@keyframes pageFadeIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    body.page-exit,
    body.page-enter {
        animation: none;
    }
}
