body {
    opacity: 0;
    transition: 0.5s ease-out opacity;
}

body.visible {
    opacity: 1;
}

#page-transition {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vw;
    height: calc(100 * var(--vh));
    transform: translateX(100%);
    background-color: var(--white);
    z-index: 2147483646;
    opacity: 0;
    transition: cubic-bezier(0.175, 0.885, 0.32, 1) 0.75s transform, cubic-bezier(0.175, 0.885, 0.32, 1) 0.5s opacity;
}

#page-transition.show {
    opacity: 1;
    transform: translateX(0);
}