.loading-screen {
    display:table;
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-color:#fff;
    z-index:9999;
    transition:background-color 0.5s;
    -o-transition:background-color 0.5s;
    -moz-transition:background-color 0.5s;
    -webkit-transition:background-color 0.5s;
}

.loading-screen.off-screen {
    -webkit-animation: moveUp 1s 1 forwards ease-out;
    animation: moveUp 1s 1 forwards ease-out;
    background-color:transparent;
}

.loading-screen > .container {
    display:table-cell;
    vertical-align:middle;
}

.loading-icon .vc_icon_element-inner .vc_icon_element-icon:before {
    -webkit-animation: rotateIcon 1.2s infinite ease-in-out;
    animation: rotateIcon 1.2s infinite ease-in-out;
}

@-webkit-keyframes rotateIcon {
    0% { -webkit-transform: rotate(0deg) }
    100% { -webkit-transform: rotate(360deg) }
}

@keyframes rotateIcon {
    0% {
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg)
    } 100% {
        transform: rotate(360deg);
        -webkit-transform: rotate(360deg)
    }
}

@-webkit-keyframes moveUp {
    0% { -webkit-transform: translateY(0) }
    100% { -webkit-transform: translateY(-100%) }
}

@keyframes moveUp {
    0% {
        transform: translateY(0);
        -webkit-transform: translateY(0)
    } 100% {
        transform: translateY(-100%);
        -webkit-transform: translateY(-100%)
    }
}