#page-loader {
    position: fixed;
    inset: 0;
    z-index: 20000;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    transition: opacity .35s ease, visibility .35s ease;
}
#page-loader.is-done {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.page-loader__mark {
    position: relative;
    width: min(210px, 39vw);
    aspect-ratio: 1024 / 251;
}
.page-loader__base,
.page-loader__bolt {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.page-loader__base {
    object-fit: contain;
}
.page-loader__bolt {
    background-image: linear-gradient(105deg,
        transparent 0%,
        transparent 34%,
        rgba(53, 70, 236, .2) 40%,
        #3546ec 45%,
        #6a4bff 48%,
        #ffffff 50%,
        #ff4ad4 52%,
        #d100b9 56%,
        rgba(209, 0, 185, .25) 62%,
        transparent 70%,
        transparent 100%);
    background-size: 240% 100%;
    background-repeat: no-repeat;
    -webkit-mask-image: url("../img/galaticos-loader.png?v=5");
    mask-image: url("../img/galaticos-loader.png?v=5");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    mix-blend-mode: screen;
    animation: page-loader-bolt 1.15s linear infinite;
}
#nprogress .spinner,
#nprogress .bar {
    display: none !important;
}
@keyframes page-loader-bolt {
    from { background-position: 130% 0; }
    to { background-position: -130% 0; }
}
@media (prefers-reduced-motion: reduce) {
    .page-loader__bolt { animation: none; opacity: 0; }
}
