.preloader {
    position: fixed;
    z-index: 100000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    transition: opacity .5s ease-out;
    padding: 0 50px;

    svg {
        max-width: 700px;
    }

    &.hide {
        opacity: 0;
        pointer-events: none;
    }
}
.preloader:not(.prepare) {
    display: none;
}

.page-transition {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #fff;
    z-index: 10000;
    pointer-events: none;

    &:not(.show) {
        opacity: 0;
    }
}

body,html {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

main > .scroll {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}

body:has(header.sticky) main > .scroll {
    top: var(--header-height);
}