/* Smooth same-origin page links on the public site. Unsupported browsers use normal navigation. */
@view-transition {
    navigation: auto;
}

/* Hold the previous page on screen while the next one fades in above it. */
::view-transition-old(root) {
    animation: .22s ease-out both ce-page-hold;
}
::view-transition-new(root) {
    animation: .22s ease-out both ce-page-appear;
}
@keyframes ce-page-hold {
    from, to { opacity: 1; }
}
@keyframes ce-page-appear {
    from { opacity: 0; }
    to { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
    ::view-transition-old(root), ::view-transition-new(root) {
        animation-duration: .01ms;
    }
}
