.xxpage-loader {
    background:#fff;
    position: fixed;
    inset: 0;
    display:grid;
    place-items:center;
    background: #ffffff;
    z-index: 99999;
    transition: opacity .45s ease, visibility .45s ease;
}

.xxpage-loader.hide {
    opacity: 0;
    visibility: hidden;
}

.xxpage-loader svg {
    width: 150px;
    height: auto;
}

/* Required for SVG transforms */
.xxleft-part,
.xxright-part {
    transform-box: fill-box;
    transform-origin:center;
}

/* Left animation */
.xxleft-part {
    animation: xxleftMove 1.3s ease-in-out infinite;
}

/* Right animation */
.xxright-part {
    animation: xxrightMove 1.3s ease-in-out infinite;
}

@keyframes xxleftMove {
 0%{
        transform:translateX(-35px);
        opacity:0;
    }

    40%{
        transform:translateX(0);
        opacity:1;
    }

    60%{
        transform:translateX(0);
        opacity:1;
    }

    100%{
        transform:translateX(-35px);
        opacity:0;
    }
}

@keyframes xxrightMove {

     0%{
        transform:translateX(35px);
        opacity:0;
    }

    40%{
        transform:translateX(0);
        opacity:1;
    }

    60%{
        transform:translateX(0);
        opacity:1;
    }

    100%{
        transform:translateX(35px);
        opacity:0;
    }
}