.page-transition-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000000;
    z-index: 999999;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.4s ease-in-out;
}

.page-transition-overlay.is-active {
    opacity: 1;
    pointer-events: all;
}

/* Initial state on page load */
body.is-loading .page-transition-overlay {
    opacity: 1;
    pointer-events: all;
}

/* Fade out after load */
body.is-loaded .page-transition-overlay {
    opacity: 0;
    pointer-events: none;
}