main, .hero-section {
    transition: none;
}

main.fade-out, .hero-section.fade-out {
    opacity: 1;
}

main.fade-in, .hero-section.fade-in {
    opacity: 1;
    animation: none;
}

body.page-loading::after {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, #333, #ffc107);
    animation: loading 1s infinite linear;
    z-index: 9999;
}

@keyframes loading {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}