@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes slideIn {
    0% {
        -webkit-transform: translate(-50%,50vh)
    }

    100% {
        -webkit-transform: translate(-50%,-50%)
    }
}

@keyframes slideIn {
    0% {
        transform: translate(-50%,50vh)
    }

    100% {
        transform: translate(-50%,-50%)
    }
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(360deg)
    }
}

@keyframes spin {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(360deg)
    }
}

@-webkit-keyframes spinReturn {
    0% {
        -webkit-transform: rotate(0)
    }

    25% {
        -webkit-transform: rotate(225deg)
    }

    50% {
        -webkit-transform: rotate(180deg)
    }

    75% {
        -webkit-transform: rotate(405deg)
    }

    100% {
        -webkit-transform: rotate(360deg)
    }
}

@keyframes spinReturn {
    0% {
        transform: rotate(0)
    }

    25% {
        transform: rotate(225deg)
    }

    50% {
        transform: rotate(180deg)
    }

    75% {
        transform: rotate(405deg)
    }

    100% {
        transform: rotate(360deg)
    }
}

@-webkit-keyframes lightUp {
    0% {
        opacity: .2
    }

    40% {
        opacity: 1
    }

    60% {
        opacity: .2
    }

    100% {
        opacity: .2
    }
}

@keyframes lightUp {
    0% {
        opacity: .2
    }

    40% {
        opacity: 1
    }

    60% {
        opacity: .2
    }

    100% {
        opacity: .2
    }
}

@-webkit-keyframes wave {
    0% {
        -webkit-transform: scaleY(1)
    }

    40% {
        -webkit-transform: scaleY(.1)
    }

    80% {
        -webkit-transform: scaleY(1)
    }

    100% {
        -webkit-transform: scaleY(1)
    }
}

@keyframes wave {
    0% {
        transform: scaleY(1)
    }

    40% {
        transform: scaleY(.1)
    }

    80% {
        transform: scaleY(1)
    }

    100% {
        transform: scaleY(1)
    }
}

@-webkit-keyframes drawframeTop {
    0% {
        -webkit-transform: scaleX(1);
        transform-origin: 100% 0%
    }

    12.5% {
        -webkit-transform: scaleX(0);
        transform-origin: 100% 0%
    }

    50% {
        -webkit-transform: scaleX(0);
        transform-origin: 0% 0%
    }

    62.5% {
        -webkit-transform: scaleX(1);
        transform-origin: 0% 0%
    }

    100% {
        -webkit-transform: scaleX(1);
        transform-origin: 100% 0%
    }
}

@keyframes drawframeTop {
    0% {
        transform: scaleX(1);
        transform-origin: 100% 0%
    }

    12.5% {
        transform: scaleX(0);
        transform-origin: 100% 0%
    }

    50% {
        transform: scaleX(0);
        transform-origin: 0% 0%
    }

    62.5% {
        transform: scaleX(1);
        transform-origin: 0% 0%
    }

    100% {
        transform: scaleX(1);
        transform-origin: 100% 0%
    }
}

@-webkit-keyframes drawframeBottom {
    0% {
        -webkit-transform: scaleX(1);
        transform-origin: 0% 0%
    }

    12.5% {
        -webkit-transform: scaleX(0);
        transform-origin: 0% 0%
    }

    50% {
        -webkit-transform: scaleX(0);
        transform-origin: 100% 0%
    }

    62.5% {
        -webkit-transform: scaleX(1);
        transform-origin: 100% 0%
    }

    100% {
        -webkit-transform: scaleX(1);
        transform-origin: 0% 0%
    }
}

@keyframes drawframeBottom {
    0% {
        transform: scaleX(1);
        transform-origin: 0% 0%
    }

    12.5% {
        transform: scaleX(0);
        transform-origin: 0% 0%
    }

    50% {
        transform: scaleX(0);
        transform-origin: 100% 0%
    }

    62.5% {
        transform: scaleX(1);
        transform-origin: 100% 0%
    }

    100% {
        transform: scaleX(1);
        transform-origin: 0% 0%
    }
}

@-webkit-keyframes drawframeRight {
    0% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 100%
    }

    12.5% {
        -webkit-transform: scaleY(0);
        transform-origin: 0% 100%
    }

    50% {
        -webkit-transform: scaleY(0);
        transform-origin: 0% 0%
    }

    62.5% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 0%
    }

    100% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 100%
    }
}

@keyframes drawframeRight {
    0% {
        transform: scaleY(1);
        transform-origin: 0% 100%
    }

    12.5% {
        transform: scaleY(0);
        transform-origin: 0% 100%
    }

    50% {
        transform: scaleY(0);
        transform-origin: 0% 0%
    }

    62.5% {
        transform: scaleY(1);
        transform-origin: 0% 0%
    }

    100% {
        transform: scaleY(1);
        transform-origin: 0% 100%
    }
}

@-webkit-keyframes drawframeLeft {
    0% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 0%
    }

    12.5% {
        -webkit-transform: scaleY(0);
        transform-origin: 0% 0%
    }

    50% {
        -webkit-transform: scaleY(0);
        transform-origin: 0% 100%
    }

    62.5% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 100%
    }

    100% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 0%
    }
}

@keyframes drawframeLeft {
    0% {
        transform: scaleY(1);
        transform-origin: 0% 0%
    }

    12.5% {
        transform: scaleY(0);
        transform-origin: 0% 0%
    }

    50% {
        transform: scaleY(0);
        transform-origin: 0% 100%
    }

    62.5% {
        transform: scaleY(1);
        transform-origin: 0% 100%
    }

    100% {
        transform: scaleY(1);
        transform-origin: 0% 0%
    }
}

@-webkit-keyframes imgLoading {
    0% {
        height: 0%;
        opacity: 1
    }

    95% {
        height: 100%;
        opacity: 1
    }

    100% {
        height: 100%;
        opacity: 0
    }
}

@keyframes imgLoading {
    0% {
        height: 0%;
        opacity: 1
    }

    95% {
        height: 100%;
        opacity: 1
    }

    100% {
        height: 100%;
        opacity: 0
    }
}

@-webkit-keyframes imgLoadingH {
    0% {
        width: 0%;
        opacity: 1
    }

    95% {
        width: 100%;
        opacity: 1
    }

    100% {
        width: 100%;
        opacity: 0
    }
}

@keyframes imgLoadingH {
    0% {
        width: 0%;
        opacity: 1
    }

    95% {
        width: 100%;
        opacity: 1
    }

    100% {
        width: 100%;
        opacity: 0
    }
}

@-webkit-keyframes imgRotate2d {
    0% {
        -webkit-transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(360deg)
    }
}

@keyframes imgRotate2d {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(360deg)
    }
}

@-webkit-keyframes imgRotate2dCounter {
    0% {
        -webkit-transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(-360deg)
    }
}

@keyframes imgRotate2dCounter {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(-360deg)
    }
}

@-webkit-keyframes imgRotate3dY {
    0% {
        -webkit-transform: rotateY(0)
    }

    100% {
        -webkit-transform: rotateY(360deg)
    }
}

@keyframes imgRotate3dY {
    0% {
        transform: rotateY(0)
    }

    100% {
        transform: rotateY(360deg)
    }
}

@-webkit-keyframes imgRotate3dX {
    0% {
        -webkit-transform: rotateX(0)
    }

    100% {
        -webkit-transform: rotateX(360deg)
    }
}

@keyframes imgRotate3dX {
    0% {
        transform: rotateX(0)
    }

    100% {
        transform: rotateX(360deg)
    }
}

@-webkit-keyframes imgRotate2dEase {
    0% {
        -webkit-transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(720deg)
    }
}

@keyframes imgRotate2dEase {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(720deg)
    }
}

@-webkit-keyframes imgRotate2dEaseCounter {
    0% {
        -webkit-transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(-720deg)
    }
}

@keyframes imgRotate2dEaseCounter {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(-720deg)
    }
}

@-webkit-keyframes imgRotate3dYEase {
    0% {
        -webkit-transform: rotateY(0)
    }

    100% {
        -webkit-transform: rotateY(720deg)
    }
}

@keyframes imgRotate3dYEase {
    0% {
        transform: rotateY(0)
    }

    100% {
        transform: rotateY(720deg)
    }
}

@-webkit-keyframes imgRotate3dXEase {
    0% {
        -webkit-transform: rotateX(0)
    }

    100% {
        -webkit-transform: rotateX(720deg)
    }
}

@keyframes imgRotate3dXEase {
    0% {
        transform: rotateX(0)
    }

    100% {
        transform: rotateX(720deg)
    }
}

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

    50% {
        -webkit-transform: translateY(-40%)
    }
}

@keyframes imgBounce {
    0% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-40%)
    }
}

@-webkit-keyframes imgBounceRoll {
    0% {
        -webkit-transform: translateY(0) rotate(0)
    }

    12.5% {
        -webkit-transform: translateY(-40%) rotate(45deg)
    }

    25% {
        -webkit-transform: translateY(0) rotate(90deg)
    }

    37.5% {
        -webkit-transform: translateY(-40%) rotate(135deg)
    }

    50% {
        -webkit-transform: translateY(0) rotate(180deg)
    }

    62.5% {
        -webkit-transform: translateY(-40%) rotate(225deg)
    }

    75% {
        -webkit-transform: translateY(0) rotate(270deg)
    }

    87.5% {
        -webkit-transform: translateY(-40%) rotate(315deg)
    }

    100% {
        -webkit-transform: translateY(0) rotate(360deg)
    }
}

@keyframes imgBounceRoll {
    0% {
        transform: translateY(0) rotate(0)
    }

    12.5% {
        transform: translateY(-40%) rotate(45deg)
    }

    25% {
        transform: translateY(0) rotate(90deg)
    }

    37.5% {
        transform: translateY(-40%) rotate(135deg)
    }

    50% {
        transform: translateY(0) rotate(180deg)
    }

    62.5% {
        transform: translateY(-40%) rotate(225deg)
    }

    75% {
        transform: translateY(0) rotate(270deg)
    }

    87.5% {
        transform: translateY(-40%) rotate(315deg)
    }

    100% {
        transform: translateY(0) rotate(360deg)
    }
}

@-webkit-keyframes imgShadow {
    0% {
        -webkit-transform: scale(.6)
    }

    50% {
        -webkit-transform: scale(1);
        opacity: .05
    }

    100% {
        -webkit-transform: scale(.6)
    }
}

@keyframes imgShadow {
    0% {
        transform: scale(.6)
    }

    50% {
        transform: scale(1);
        opacity: .05
    }

    100% {
        transform: scale(.6)
    }
}

@-webkit-keyframes imgShadowRoll {
    0% {
        -webkit-transform: scale(.6)
    }

    12.5% {
        -webkit-transform: scale(1);
        opacity: .05
    }

    25% {
        -webkit-transform: scale(.6)
    }

    37.5% {
        -webkit-transform: scale(1);
        opacity: .05
    }

    50% {
        -webkit-transform: scale(.6)
    }

    62.5% {
        -webkit-transform: scale(1);
        opacity: .05
    }

    75% {
        -webkit-transform: scale(.6)
    }

    87.5% {
        -webkit-transform: scale(1);
        opacity: .05
    }

    100% {
        -webkit-transform: scale(.6)
    }
}

@keyframes imgShadowRoll {
    0% {
        transform: scale(.6)
    }

    12.5% {
        transform: scale(1);
        opacity: .05
    }

    25% {
        transform: scale(.6)
    }

    37.5% {
        transform: scale(1);
        opacity: .05
    }

    50% {
        transform: scale(.6)
    }

    62.5% {
        transform: scale(1);
        opacity: .05
    }

    75% {
        transform: scale(.6)
    }

    87.5% {
        transform: scale(1);
        opacity: .05
    }

    100% {
        transform: scale(.6)
    }
}

@-webkit-keyframes crossingLeft {
    0% {
        -webkit-transform: translateX(-150%)
    }

    50% {
        -webkit-transform: translateX(150%)
    }

    100% {
        -webkit-transform: translateX(-150%)
    }
}

@keyframes crossingLeft {
    0% {
        transform: translateX(-150%)
    }

    50% {
        transform: translateX(150%)
    }

    100% {
        transform: translateX(-150%)
    }
}

@-webkit-keyframes crossingRight {
    0% {
        -webkit-transform: translateX(150%)
    }

    50% {
        -webkit-transform: translateX(-150%)
    }

    100% {
        -webkit-transform: translateX(150%)
    }
}

@keyframes crossingRight {
    0% {
        transform: translateX(150%)
    }

    50% {
        transform: translateX(-150%)
    }

    100% {
        transform: translateX(150%)
    }
}

@-webkit-keyframes ducks {
    0% {
        -webkit-transform: translateX(0)
    }

    100% {
        -webkit-transform: translateX(100%)
    }
}

@keyframes ducks {
    0% {
        transform: translateX(0)
    }

    100% {
        transform: translateX(100%)
    }
}

@-webkit-keyframes duckHead {
    0% {
        -webkit-transform: translateX(0)
    }

    50% {
        -webkit-transform: translateX(3px)
    }
}

@keyframes duckHead {
    0% {
        transform: translateX(0)
    }

    50% {
        transform: translateX(3px)
    }
}

@-webkit-keyframes rainbow {
    0% {
        -webkit-transform: rotate(-180deg)
    }

    100% {
        -webkit-transform: rotate(0)
    }
}

@keyframes rainbow {
    0% {
        transform: rotate(-180deg)
    }

    100% {
        transform: rotate(0)
    }
}

@-webkit-keyframes circlefill {
    0% {
        -webkit-transform: scaleY(0)
    }

    100% {
        -webkit-transform: scaleY(1)
    }
}

@keyframes circlefill {
    0% {
        transform: scaleY(0)
    }

    100% {
        transform: scaleY(1)
    }
}

@-webkit-keyframes waterup {
    0% {
        -webkit-transform: translateX(0)
    }

    50% {
        -webkit-transform: translateX(75%)
    }
}

@keyframes waterup {
    0% {
        transform: translateX(0)
    }

    50% {
        transform: translateX(75%)
    }
}

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

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

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

    100% {
        transform: translateY(0)
    }
}

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

    100% {
        -webkit-transform: translateY(100px)
    }
}

@keyframes bubbles {
    0% {
        transform: translateY(0)
    }

    100% {
        transform: translateY(100px)
    }
}

@-webkit-keyframes crystal {
    0% {
        -webkit-transform: rotate(0) scale(1)
    }

    50% {
        -webkit-transform: rotate(180deg) scale(.75)
    }

    100% {
        -webkit-transform: rotate(360deg) scale(1)
    }
}

@keyframes crystal {
    0% {
        transform: rotate(0) scale(1)
    }

    50% {
        transform: rotate(180deg) scale(.75)
    }

    100% {
        transform: rotate(360deg) scale(1)
    }
}

@-webkit-keyframes petals {
    0% {
        box-shadow: 0 -15px 0 -15px transparent,10.5px -10.5px 0 -15px transparent,15px 0 0 -15px transparent,10.5px 10.5px 0 -15px transparent,0 15px 0 -15px transparent,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    12.5% {
        box-shadow: 0 -25px 0 -15px currentColor,10.5px -10.5px 0 -15px transparent,15px 0 0 -15px transparent,10.5px 10.5px 0 -15px transparent,0 15px 0 -15px transparent,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    25% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,15px 0 0 -15px transparent,10.5px 10.5px 0 -15px transparent,0 15px 0 -15px transparent,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    37.5% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,10.5px 10.5px 0 -15px transparent,0 15px 0 -15px transparent,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    50% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 15px 0 -15px transparent,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    62.5% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 25px 0 -15px currentColor,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    75% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 25px 0 -15px currentColor,-17.5px 17.5px 0 -15px currentColor,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    87.5% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 25px 0 -15px currentColor,-17.5px 17.5px 0 -15px currentColor,-25px 0 0 -15px currentColor,-10.5px -10.5px 0 -15px transparent
    }

    100% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 25px 0 -15px currentColor,-17.5px 17.5px 0 -15px currentColor,-25px 0 0 -15px currentColor,-17.5px -17.5px 0 -15px currentColor
    }
}

@keyframes petals {
    0% {
        box-shadow: 0 -15px 0 -15px transparent,10.5px -10.5px 0 -15px transparent,15px 0 0 -15px transparent,10.5px 10.5px 0 -15px transparent,0 15px 0 -15px transparent,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    11% {
        box-shadow: 0 -25px 0 -15px currentColor,10.5px -10.5px 0 -15px transparent,15px 0 0 -15px transparent,10.5px 10.5px 0 -15px transparent,0 15px 0 -15px transparent,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    22% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,15px 0 0 -15px transparent,10.5px 10.5px 0 -15px transparent,0 15px 0 -15px transparent,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    33% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,10.5px 10.5px 0 -15px transparent,0 15px 0 -15px transparent,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    44% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 15px 0 -15px transparent,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    55% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 25px 0 -15px currentColor,-10.5px 10.5px 0 -15px transparent,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    66% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 25px 0 -15px currentColor,-17.5px 17.5px 0 -15px currentColor,-15px 0 0 -15px transparent,-10.5px -10.5px 0 -15px transparent
    }

    77% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 25px 0 -15px currentColor,-17.5px 17.5px 0 -15px currentColor,-25px 0 0 -15px currentColor,-10.5px -10.5px 0 -15px transparent
    }

    88% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 25px 0 -15px currentColor,-17.5px 17.5px 0 -15px currentColor,-25px 0 0 -15px currentColor,-17.5px -17.5px 0 -15px currentColor
    }

    100% {
        box-shadow: 0 -25px 0 -15px currentColor,17.5px -17.5px 0 -15px currentColor,25px 0 0 -15px currentColor,17.5px 17.5px 0 -15px currentColor,0 25px 0 -15px currentColor,-17.5px 17.5px 0 -15px currentColor,-25px 0 0 -15px currentColor,-17.5px -17.5px 0 -15px currentColor
    }
}

@-webkit-keyframes beat {
    0% {
        transform: scale(0);
        opacity: 0
    }

    80% {
        transform: scale(1);
        opacity: .7
    }

    100% {
        transform: scale(1);
        opacity: 0
    }
}

@keyframes beat {
    0% {
        transform: scale(0);
        opacity: 0
    }

    80% {
        transform: scale(1);
        opacity: .7
    }

    100% {
        transform: scale(1);
        opacity: 0
    }
}

@-webkit-keyframes imgFade {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes imgFade {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes endBgShrinkFade {
    0% {
        transform: translateZ(0);
        opacity: 1
    }

    50% {
        transform: translateZ(-120px);
        opacity: 1
    }

    70% {
        transform: translateZ(-120px);
        opacity: 1
    }

    100% {
        transform: translateZ(-120px);
        opacity: 0
    }
}

@keyframes endBgShrinkFade {
    0% {
        transform: translateZ(0);
        opacity: 1
    }

    50% {
        transform: translateZ(-120px);
        opacity: 1
    }

    70% {
        transform: translateZ(-120px);
        opacity: 1
    }

    100% {
        transform: translateZ(-120px);
        opacity: 0
    }
}

@-webkit-keyframes bgShrinkFade {
    0% {
        transform: translateZ(-120px);
        opacity: 0
    }

    50% {
        transform: translateZ(-120px);
        opacity: 1
    }

    70% {
        transform: translateZ(-120px);
        opacity: 1
    }

    100% {
        transform: translateZ(0);
        opacity: 1
    }
}

@keyframes bgShrinkFade {
    0% {
        transform: translateZ(-120px);
        opacity: 0
    }

    50% {
        transform: translateZ(-120px);
        opacity: 1
    }

    70% {
        transform: translateZ(-120px);
        opacity: 1
    }

    100% {
        transform: translateZ(0);
        opacity: 1
    }
}

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

    100% {
        transform: translateY(0)
    }
}

@keyframes leaveFromBottom {
    0% {
        transform: translateY(100%)
    }

    100% {
        transform: translateY(0)
    }
}

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

    100% {
        transform: translateY(0)
    }
}

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

    100% {
        transform: translateY(0)
    }
}

@-webkit-keyframes leaveFromRight {
    0% {
        transform: translateX(100%)
    }

    100% {
        transform: translateY(0)
    }
}

@keyframes leaveFromRight {
    0% {
        transform: translateX(100%)
    }

    100% {
        transform: translateY(0)
    }
}

@-webkit-keyframes leaveFromLeft {
    0% {
        transform: translateX(-100%)
    }

    100% {
        transform: translateY(0)
    }
}

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

    100% {
        transform: translateY(0)
    }
}

body, html {
    opacity: 1 !important
}

#loftloader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    z-index: 9999999;
    width: 100%;
    height: 100%;
    min-width: 100vw;
    min-height: 100vh;
    background: 0 0 !important
}

    #loftloader-wrapper.adaptive-height {
        min-height: 100%
    }

    #loftloader-wrapper img {
        max-width: 100%
    }

    #loftloader-wrapper.bgnone {
        pointer-events: none
    }

.loaded.loftloader-loaded #loftloader-wrapper {
    pointer-events: none
}

    .loaded.loftloader-loaded #loftloader-wrapper #loader, .loaded.loftloader-loaded #loftloader-wrapper .loader-close-button, .loaded.loftloader-loaded #loftloader-wrapper .loader-message, .loaded.loftloader-loaded #loftloader-wrapper span.bar, .loaded.loftloader-loaded #loftloader-wrapper span.percentage {
        opacity: 0;
        transition: all .3s ease-out
    }

    .loaded.loftloader-loaded #loftloader-wrapper.inner-end-up .loader-inner {
        -webkit-transform: translate(-50%,-120vh);
        -ms-transform: translate(-50%,-120vh);
        transform: translate(-50%,-120vh);
        transition: transform .7s ease-out
    }

        .loaded.loftloader-loaded #loftloader-wrapper.inner-end-up .loader-inner #loader, .loaded.loftloader-loaded #loftloader-wrapper.inner-end-up .loader-inner .loader-message, .loaded.loftloader-loaded #loftloader-wrapper.inner-end-up .loader-inner span.bar, .loaded.loftloader-loaded #loftloader-wrapper.inner-end-up .loader-inner span.percentage {
            opacity: 1
        }

.loaded.loftloader-loaded.leaves.spt-show-all #loftloader-wrapper #loader, .loaded.loftloader-loaded.leaves.spt-show-all #loftloader-wrapper .loader-message, .loaded.loftloader-loaded.leaves.spt-show-all #loftloader-wrapper span.bar, .loaded.loftloader-loaded.leaves.spt-show-all #loftloader-wrapper span.percentage {
    opacity: 1
}

.loaded.loftloader-loaded.leaves.spt-show-all #loftloader-wrapper #loader, .loaded.loftloader-loaded.leaves.spt-show-all #loftloader-wrapper .loader-message {
    transition-delay: 0.3s
}

.loaded.loftloader-loaded.leaves.spt-show-all #loftloader-wrapper.inner-end-up .loader-inner {
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    transition: 0s 0s
}

#loftloader-wrapper .loader-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    z-index: 1001;
    width: 100%;
    text-align: center;
    transition: all 0s;
    font-size: 0
}

    #loftloader-wrapper .loader-inner #loader {
        position: relative;
        z-index: 1002;
        top: auto;
        left: auto;
        display: inline-block;
        margin: 0 auto;
        padding: 0;
        border: none;
        border-radius: 0;
        background: 0 0 !important;
        color: #248acc
    }

    #loftloader-wrapper .loader-inner .with-percentage {
        position: relative
    }

#loftloader-wrapper.inner-enter-fade .loader-inner {
    -webkit-animation: fadeIn .7s ease-in 1;
    animation: fadeIn .7s ease-in 1
}

#loftloader-wrapper.inner-enter-up .loader-inner {
    -webkit-animation: slideIn .7s ease-in 1;
    animation: slideIn .7s ease-in 1
}

#loftloader-wrapper .loader-bg {
    position: fixed;
    top: 0;
    z-index: 999;
    width: 100%;
    height: 100%;
    opacity: 1
}

#loftloader-wrapper.end-split-h .loader-bg:after, #loftloader-wrapper.end-split-h .loader-bg:before {
    position: absolute;
    top: 0;
    display: block;
    width: 50%;
    height: 100%;
    background-color: #fff;
    background-size: 200% 100%;
    content: "";
    transition: all 0s;
    will-change: transform
}

#loftloader-wrapper.end-split-h .loader-bg:before {
    left: 0;
    background-position: 0 0;
    width: calc(50% + 1px)
}

#loftloader-wrapper.end-split-h .loader-bg:after {
    right: 0;
    background-position: 100% 0
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-h .loader-bg:after, .loaded.loftloader-loaded #loftloader-wrapper.end-split-h .loader-bg:before {
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1)
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-h .loader-bg:before {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%)
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-h .loader-bg:after {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-h .loader-bg:after, .loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-h .loader-bg:before {
    transition: all .4s cubic-bezier(.645, .045, .355, 1)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-h .loader-bg:before {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-h .loader-bg:after {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

#loftloader-wrapper.end-split-v .loader-bg:after, #loftloader-wrapper.end-split-v .loader-bg:before {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 50%;
    background-color: #fff;
    background-size: 100% 200%;
    content: "";
    transition: all 0s;
    will-change: transform
}

#loftloader-wrapper.end-split-v .loader-bg:before {
    top: 0;
    background-position: 0 0
}

#loftloader-wrapper.end-split-v .loader-bg:after {
    bottom: 0;
    background-position: 0 100%
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-v .loader-bg:after, .loaded.loftloader-loaded #loftloader-wrapper.end-split-v .loader-bg:before {
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1)
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-v .loader-bg:before {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%)
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-v .loader-bg:after {
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-v .loader-bg:after, .loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-v .loader-bg:before {
    transition: all .4s cubic-bezier(.645, .045, .355, 1)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-v .loader-bg:before {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-v .loader-bg:after {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

#loftloader-wrapper.end-fade .loader-bg {
    background-color: #fff;
    will-change: opacity
}

.loaded.loftloader-loaded:not(.leaves) #loftloader-wrapper.end-fade .loader-bg {
    opacity: 0 !important;
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-fade .loader-bg {
    transition: all .4s cubic-bezier(.645, .045, .355, 1)
}

#loftloader-wrapper.end-up .loader-bg {
    background-color: #fff;
    will-change: transform
}

.loaded.loftloader-loaded #loftloader-wrapper.end-up .loader-bg {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-up .loader-bg {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    transition: all .4s cubic-bezier(.645, .045, .355, 1)
}

    .loaded.loftloader-loaded.leaves #loftloader-wrapper.end-up .loader-bg.spt-bg-reverse {
        -webkit-animation: leaveFromBottom .4s cubic-bezier(.645,.045,.355,1) 1 forwards;
        animation: leaveFromBottom .4s cubic-bezier(.645,.045,.355,1) 1 forwards;
        transform: translateY(100%);
        transition: 0s 0s
    }

#loftloader-wrapper.end-down .loader-bg {
    background-color: #fff;
    will-change: transform
}

.loaded.loftloader-loaded #loftloader-wrapper.end-down .loader-bg {
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-down .loader-bg {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    transition: all .4s cubic-bezier(.645, .045, .355, 1)
}

    .loaded.loftloader-loaded.leaves #loftloader-wrapper.end-down .loader-bg.spt-bg-reverse {
        -webkit-animation: leaveFromTop .4s cubic-bezier(.645,.045,.355,1) 1 forwards;
        animation: leaveFromTop .4s cubic-bezier(.645,.045,.355,1) 1 forwards;
        transform: translateY(-100%);
        transition: 0s 0s
    }

#loftloader-wrapper.end-left .loader-bg {
    background-color: #fff;
    will-change: transform
}

.loaded.loftloader-loaded #loftloader-wrapper.end-left .loader-bg {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-left .loader-bg {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    transition: all .4s cubic-bezier(.645, .045, .355, 1)
}

    .loaded.loftloader-loaded.leaves #loftloader-wrapper.end-left .loader-bg.spt-bg-reverse {
        -webkit-animation: leaveFromRight .4s cubic-bezier(.645,.045,.355,1) 1 forwards;
        animation: leaveFromRight .4s cubic-bezier(.645,.045,.355,1) 1 forwards;
        transform: translateX(100%);
        transition: 0s 0s
    }

#loftloader-wrapper.end-right .loader-bg {
    background-color: #fff;
    will-change: transform
}

.loaded.loftloader-loaded #loftloader-wrapper.end-right .loader-bg {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-right .loader-bg {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    transition: all .4s cubic-bezier(.645, .045, .355, 1)
}

    .loaded.loftloader-loaded.leaves #loftloader-wrapper.end-right .loader-bg.spt-bg-reverse {
        -webkit-animation: leaveFromLeft .4s cubic-bezier(.645,.045,.355,1) 1 forwards;
        animation: leaveFromLeft .4s cubic-bezier(.645,.045,.355,1) 1 forwards;
        transform: translateX(-100%);
        transition: 0s 0s
    }

#loftloader-wrapper.end-shrink-fade .loader-bg {
    perspective: 1000px
}

    #loftloader-wrapper.end-shrink-fade .loader-bg:before {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 100%;
        content: "";
        will-change: transform,opacity;
        transform-style: preserve-3d
    }

.loaded.loftloader-loaded #loftloader-wrapper.end-shrink-fade .loader-bg:before {
    -webkit-animation: endBgShrinkFade .7s linear .3s 1;
    animation: endBgShrinkFade .7s linear .3s 1;
    animation-fill-mode: forwards
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-shrink-fade .loader-bg:before {
    -webkit-animation: bgShrinkFade .5s linear 0s 1;
    animation: bgShrinkFade .5s linear 0s 1
}

#loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:after, #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:before {
    will-change: transform,height
}

#loftloader-wrapper.end-split-h.split-reveal-v .loader-bg.bg-img:after, #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg.bg-img:before {
    background-attachment: fixed !important;
    background-position: 50% 50% !important
}

#loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:after {
    top: auto;
    bottom: 0
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:after, .loaded.loftloader-loaded #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:before {
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1);
    height: 0
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:before {
    -webkit-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    transform: translateY(-100px)
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:after {
    -webkit-transform: translateY(100px);
    -ms-transform: translateY(100px);
    transform: translateY(100px)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:after, .loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:before {
    transition: all .4s cubic-bezier(.645, .045, .355, 1);
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    height: 100%
}

#loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:after, #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:before {
    will-change: transform,width
}

#loftloader-wrapper.end-split-v.split-reveal-h .loader-bg.bg-img:after, #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg.bg-img:before {
    background-attachment: fixed !important;
    background-position: 50% 50% !important
}

#loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:after {
    right: 0;
    left: auto
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:after, .loaded.loftloader-loaded #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:before {
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1);
    width: 0
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:before {
    -webkit-transform: translateX(-100px);
    -ms-transform: translateX(-100px);
    transform: translateX(-100px)
}

.loaded.loftloader-loaded #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:after {
    -webkit-transform: translateX(100px);
    -ms-transform: translateX(100px);
    transform: translateX(100px)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:after, .loaded.loftloader-loaded.leaves #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:before {
    transition: all .4s cubic-bezier(.645, .045, .355, 1);
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    width: 100%
}

#loftloader-wrapper.split-diagonally .loader-bg:after, #loftloader-wrapper.split-diagonally .loader-bg:before {
    opacity: 0
}

.loaded.loftloader-loaded #loftloader-wrapper.split-diagonally .loader-bg:after, .loaded.loftloader-loaded #loftloader-wrapper.split-diagonally .loader-bg:before {
    opacity: 1;
    transition: transform .7s .3s cubic-bezier(.645, .045, .355, 1),opacity 0s 0s
}

#loftloader-wrapper.split-diagonally .loader-bg.bg-img.pattern {
    background-position: 50% 50%
}

#loftloader-wrapper.split-diagonally.end-split-h .loader-bg:after, #loftloader-wrapper.split-diagonally.end-split-h .loader-bg:before {
    width: 100%;
    background-size: 100% 100%
}

#loftloader-wrapper.split-diagonally.end-split-h .loader-bg:before {
    -webkit-clip-path: polygon(0% 0%,55% 0%,45% 100%,0% 100%);
    clip-path: polygon(0% 0%,55% 0%,45% 100%,0% 100%)
}

#loftloader-wrapper.split-diagonally.end-split-h .loader-bg:after {
    -webkit-clip-path: polygon(55% 0%,100% 0%,100% 100%,45% 100%);
    clip-path: polygon(55% 0%,100% 0%,100% 100%,45% 100%)
}

#loftloader-wrapper.split-diagonally.end-split-v .loader-bg:after, #loftloader-wrapper.split-diagonally.end-split-v .loader-bg:before {
    height: 100%;
    background-size: 100% 100%
}

#loftloader-wrapper.split-diagonally.end-split-v .loader-bg:before {
    -webkit-clip-path: polygon(0% 0%,100% 0%,100% 60%,0% 40%);
    clip-path: polygon(0% 0%,100% 0%,100% 60%,0% 40%)
}

#loftloader-wrapper.split-diagonally.end-split-v .loader-bg:after {
    -webkit-clip-path: polygon(0% 40%,100% 60%,100% 100%,0% 100%);
    clip-path: polygon(0% 40%,100% 60%,100% 100%,0% 100%)
}

.loaded.loftloader-loaded.leaves #loftloader-wrapper {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    visibility: visible;
    pointer-events: auto;
    opacity: 1;
    transition-delay: 0s
}

#loftloader-wrapper.end-down .loader-bg.bg-img.full, #loftloader-wrapper.end-fade .loader-bg.bg-img.full, #loftloader-wrapper.end-left .loader-bg.bg-img.full, #loftloader-wrapper.end-right .loader-bg.bg-img.full, #loftloader-wrapper.end-shrink-fade .loader-bg.bg-img.full:before, #loftloader-wrapper.end-split-h .loader-bg.bg-img.full:after, #loftloader-wrapper.end-split-h .loader-bg.bg-img.full:before, #loftloader-wrapper.end-split-v .loader-bg.bg-img.full:after, #loftloader-wrapper.end-split-v .loader-bg.bg-img.full:before, #loftloader-wrapper.end-up .loader-bg.bg-img.full, #loftloader-wrapper.split-diagonally .loader-bg.bg-img.full {
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat
}

    #loftloader-wrapper.end-down .loader-bg.bg-img.full.bg-contain, #loftloader-wrapper.end-fade .loader-bg.bg-img.full.bg-contain, #loftloader-wrapper.end-left .loader-bg.bg-img.full.bg-contain, #loftloader-wrapper.end-right .loader-bg.bg-img.full.bg-contain, #loftloader-wrapper.end-shrink-fade .loader-bg.bg-img.full.bg-contain:before, #loftloader-wrapper.end-split-h .loader-bg.bg-img.full.bg-contain:after, #loftloader-wrapper.end-split-h .loader-bg.bg-img.full.bg-contain:before, #loftloader-wrapper.end-split-v .loader-bg.bg-img.full.bg-contain:after, #loftloader-wrapper.end-split-v .loader-bg.bg-img.full.bg-contain:before, #loftloader-wrapper.end-up .loader-bg.bg-img.full.bg-contain, #loftloader-wrapper.split-diagonally .loader-bg.bg-img.full.bg-contain {
        background-size: contain
    }

#loftloader-wrapper.end-down .loader-bg.bg-img.pattern, #loftloader-wrapper.end-fade .loader-bg.bg-img.pattern, #loftloader-wrapper.end-left .loader-bg.bg-img.pattern, #loftloader-wrapper.end-right .loader-bg.bg-img.pattern, #loftloader-wrapper.end-shrink-fade .loader-bg.bg-img.pattern:before, #loftloader-wrapper.end-split-h .loader-bg.bg-img.pattern:after, #loftloader-wrapper.end-split-h .loader-bg.bg-img.pattern:before, #loftloader-wrapper.end-split-v .loader-bg.bg-img.pattern:after, #loftloader-wrapper.end-split-v .loader-bg.bg-img.pattern:before, #loftloader-wrapper.end-up .loader-bg.bg-img.pattern, #loftloader-wrapper.split-diagonally .loader-bg.bg-img.pattern {
    background-size: auto;
    background-repeat: repeat
}

#loftloader-wrapper.end-down .loader-bg.bg-img.pattern, #loftloader-wrapper.end-fade .loader-bg.bg-img.pattern, #loftloader-wrapper.end-left .loader-bg.bg-img.pattern, #loftloader-wrapper.end-right .loader-bg.bg-img.pattern, #loftloader-wrapper.end-shrink-fade .loader-bg.bg-img.pattern:before, #loftloader-wrapper.end-up .loader-bg.bg-img.pattern {
    background-position: 50% 50%
}

#loftloader-wrapper.split-diagonally.end-split-h .loader-bg.bg-img.pattern:after, #loftloader-wrapper.split-diagonally.end-split-h .loader-bg.bg-img.pattern:before, #loftloader-wrapper.split-diagonally.end-split-v .loader-bg.bg-img.pattern:after, #loftloader-wrapper.split-diagonally.end-split-v .loader-bg.bg-img.pattern:before {
    background-position: 50% 50%
}

#loftloader-wrapper.end-split-h .loader-bg.bg-img.full:after, #loftloader-wrapper.end-split-h .loader-bg.bg-img.full:before {
    background-attachment: fixed
}

#loftloader-wrapper.end-split-h .loader-bg.bg-img.pattern:before {
    background-position: 100% 50%
}

#loftloader-wrapper.end-split-h .loader-bg.bg-img.pattern:after {
    background-position: 0 50%
}

#loftloader-wrapper.end-split-h:not(.split-diagonally) .loader-bg.bg-img .loader-bg-half {
    width: calc(50% + .5px) !important
}

#loftloader-wrapper.end-split-v .loader-bg.bg-img.full:after, #loftloader-wrapper.end-split-v .loader-bg.bg-img.full:before {
    background-attachment: fixed
}

#loftloader-wrapper.end-split-v .loader-bg.bg-img.pattern:before {
    background-position: 50% 100%
}

#loftloader-wrapper.end-split-v .loader-bg.bg-img.pattern:after {
    background-position: 50% 0
}

#loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full:after, #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full:before, #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full:after, #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full:before {
    display: none
}

#loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half, #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half {
    position: absolute;
    display: block;
    transition: all 0s;
    will-change: transform;
    overflow: hidden
}

    #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half:before, #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half:before {
        position: absolute;
        display: block;
        background-size: cover;
        background-position: 50% 50%;
        background-repeat: no-repeat;
        content: ""
    }

#loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full.bg-contain .loader-bg-half:before, #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full.bg-contain .loader-bg-half:before {
    background-size: contain
}

#loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half {
    top: 0;
    width: 50%;
    height: 100%
}

    #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half:before {
        top: 0;
        width: 200%;
        height: 100%
    }

    #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half:first-child, #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half:first-child:before {
        left: 0
    }

    #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half:last-child, #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half:last-child:before {
        right: 0
    }

.loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half {
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1)
}

    .loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half:first-child {
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%)
    }

    .loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half:last-child {
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%)
    }

.loaded.leaves #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half {
    transition: all .4s cubic-bezier(.645, .045, .355, 1)
}

    .loaded.leaves #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half:first-child {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

    .loaded.leaves #loftloader-wrapper.bg-split.end-split-h .loader-bg.bg-img.full .loader-bg-half:last-child {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

#loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half {
    left: 0;
    width: 100%;
    height: 50%
}

    #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half:before {
        left: 0;
        width: 100%;
        height: 200%
    }

    #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half:first-child, #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half:first-child:before {
        top: 0
    }

    #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half:last-child, #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half:last-child:before {
        bottom: 0
    }

.loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half {
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1)
}

    .loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half:first-child {
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%)
    }

    .loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half:last-child {
        -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
        transform: translateY(100%)
    }

.loaded.leaves #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half {
    transition: all .4s cubic-bezier(.645, .045, .355, 1)
}

    .loaded.leaves #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half:first-child {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    .loaded.leaves #loftloader-wrapper.bg-split.end-split-v .loader-bg.bg-img.full .loader-bg-half:last-child {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

#loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img:after, #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img:before, #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img:after, #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img:before {
    display: none
}

#loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half, #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half {
    position: absolute;
    display: block;
    transition: all 0s;
    overflow: hidden
}

    #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half:before, #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half:before {
        position: absolute;
        display: block;
        content: ""
    }

#loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img.full .loader-bg-half:before, #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img.full .loader-bg-half:before {
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat
}

#loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img.full.bg-contain .loader-bg-half:before, #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img.full.bg-contain .loader-bg-half:before {
    background-size: contain
}

#loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img.pattern .loader-bg-half:before, #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img.pattern .loader-bg-half:before {
    background-size: auto;
    background-position: 50% 50%;
    background-repeat: repeat
}

#loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half {
    top: 0;
    width: 50%;
    height: 100%;
    will-change: transform,height
}

    #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half:before {
        top: 0;
        width: 100vw;
        height: 100vh
    }

    #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half:first-child, #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half:first-child:before {
        left: 0
    }

    #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half:last-child, #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half:last-child:before {
        top: auto;
        right: 0;
        bottom: 0
    }

.loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half {
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1);
    height: 0
}

    .loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half:first-child {
        -webkit-transform: translateY(-100px);
        -ms-transform: translateY(-100px);
        transform: translateY(-100px)
    }

    .loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half:last-child {
        -webkit-transform: translateY(100px);
        -ms-transform: translateY(100px);
        transform: translateY(100px)
    }

.loaded.leaves #loftloader-wrapper.bg-split.end-split-h.split-reveal-v .loader-bg.bg-img .loader-bg-half {
    transition: all .4s cubic-bezier(.645, .045, .355, 1);
    transform: none !important;
    height: 100%
}

#loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half {
    left: 0;
    width: 100%;
    height: 50%;
    will-change: transform,width
}

    #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half:before {
        left: 0;
        width: 100vw;
        height: 200%
    }

    #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half:first-child, #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half:first-child:before {
        top: 0
    }

    #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half:last-child, #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half:last-child:before {
        right: 0;
        bottom: 0;
        left: auto
    }

.loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half {
    transition: all .7s .3s cubic-bezier(.645, .045, .355, 1);
    width: 0
}

    .loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half:first-child {
        -webkit-transform: translateX(-100px);
        -ms-transform: translateX(-100px);
        transform: translateX(-100px)
    }

    .loaded.loftloader-loaded #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half:last-child {
        -webkit-transform: translateX(100px);
        -ms-transform: translateX(100px);
        transform: translateX(100px)
    }

.loaded.leaves #loftloader-wrapper.bg-split.end-split-v.split-reveal-h .loader-bg.bg-img .loader-bg-half {
    transition: all .4s cubic-bezier(.645, .045, .355, 1);
    transform: none !important;
    width: 100%
}

#loftloader-wrapper.bg-split.end-split-h.split-diagonally .loader-bg.bg-img.full .loader-bg-half {
    width: 100%
}

    #loftloader-wrapper.bg-split.end-split-h.split-diagonally .loader-bg.bg-img.full .loader-bg-half:before {
        width: 100%
    }

    #loftloader-wrapper.bg-split.end-split-h.split-diagonally .loader-bg.bg-img.full .loader-bg-half:first-child {
        -webkit-clip-path: polygon(0% 0%,55% 0%,45% 100%,0% 100%);
        clip-path: polygon(0% 0%,55% 0%,45% 100%,0% 100%)
    }

    #loftloader-wrapper.bg-split.end-split-h.split-diagonally .loader-bg.bg-img.full .loader-bg-half:last-child {
        -webkit-clip-path: polygon(55% 0%,100% 0%,100% 100%,45% 100%);
        clip-path: polygon(55% 0%,100% 0%,100% 100%,45% 100%)
    }

#loftloader-wrapper.bg-split.end-split-v.split-diagonally .loader-bg.bg-img.full .loader-bg-half {
    height: 100%
}

    #loftloader-wrapper.bg-split.end-split-v.split-diagonally .loader-bg.bg-img.full .loader-bg-half:before {
        height: 100%
    }

    #loftloader-wrapper.bg-split.end-split-v.split-diagonally .loader-bg.bg-img.full .loader-bg-half:first-child {
        -webkit-clip-path: polygon(0% 0%,100% 0%,100% 60%,0% 40%);
        clip-path: polygon(0% 0%,100% 0%,100% 60%,0% 40%)
    }

    #loftloader-wrapper.bg-split.end-split-v.split-diagonally .loader-bg.bg-img.full .loader-bg-half:last-child {
        -webkit-clip-path: polygon(0% 40%,100% 60%,100% 100%,0% 100%);
        clip-path: polygon(0% 40%,100% 60%,100% 100%,0% 100%)
    }

#loftloader-wrapper.loftloader-sun #loader {
    width: 50px;
    height: 50px
}

    #loftloader-wrapper.loftloader-sun #loader span {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 50px;
        height: 50px;
        background: currentColor;
        opacity: .9;
        transform-origin: 50% 50%;
        -webkit-animation: spinReturn 4s ease infinite;
        animation: spinReturn 4s ease infinite
    }

        #loftloader-wrapper.loftloader-sun #loader span:before {
            position: absolute;
            top: 0;
            left: 0;
            display: block;
            width: 100%;
            height: 100%;
            background: inherit;
            opacity: .9;
            content: "";
            transform-origin: 50% 50%;
            -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
            transform: rotate(45deg)
        }

#loftloader-wrapper.loftloader-luminous #loader {
    width: 100px;
    height: 60px
}

    #loftloader-wrapper.loftloader-luminous #loader span, #loftloader-wrapper.loftloader-luminous #loader:after, #loftloader-wrapper.loftloader-luminous #loader:before {
        position: absolute;
        display: block;
        width: 10px;
        height: 10px;
        border-radius: 50%;
        opacity: .2;
        background: currentColor
    }

    #loftloader-wrapper.loftloader-luminous #loader span {
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
        transform: translate(-50%,-50%);
        -webkit-animation: lightUp 1.5s linear infinite .5s;
        animation: lightUp 1.5s linear infinite .5s
    }

    #loftloader-wrapper.loftloader-luminous #loader:after, #loftloader-wrapper.loftloader-luminous #loader:before {
        content: "";
        top: 50%;
        -webkit-transform: translate(0,-50%);
        -ms-transform: translate(0,-50%);
        transform: translate(0,-50%)
    }

    #loftloader-wrapper.loftloader-luminous #loader:before {
        left: 0;
        -webkit-animation: lightUp 1.5s linear infinite;
        animation: lightUp 1.5s linear infinite
    }

    #loftloader-wrapper.loftloader-luminous #loader:after {
        right: 0;
        -webkit-animation: lightUp 1.5s linear infinite 1s;
        animation: lightUp 1.5s linear infinite 1s
    }

#loftloader-wrapper.loftloader-wave #loader {
    width: 60px;
    height: 30px
}

    #loftloader-wrapper.loftloader-wave #loader span, #loftloader-wrapper.loftloader-wave #loader:after, #loftloader-wrapper.loftloader-wave #loader:before {
        position: relative;
        display: inline-block;
        width: 6px;
        height: 100%;
        background: currentColor
    }

    #loftloader-wrapper.loftloader-wave #loader span {
        margin: 0 16px;
        -webkit-animation: wave .9s linear infinite .3s;
        animation: wave .9s linear infinite .3s
    }

    #loftloader-wrapper.loftloader-wave #loader:after, #loftloader-wrapper.loftloader-wave #loader:before {
        content: ""
    }

    #loftloader-wrapper.loftloader-wave #loader:before {
        -webkit-animation: wave .9s linear infinite;
        animation: wave .9s linear infinite
    }

    #loftloader-wrapper.loftloader-wave #loader:after {
        -webkit-animation: wave .9s linear infinite .6s;
        animation: wave .9s linear infinite .6s
    }

#loftloader-wrapper.loftloader-square #loader {
    width: 50px;
    height: 50px;
    transform-origin: 50% 50%;
    -webkit-animation: spinReturn 4s ease infinite;
    animation: spinReturn 4s ease infinite
}

    #loftloader-wrapper.loftloader-square #loader span {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 100%;
        border: 4px solid currentColor;
        box-sizing: border-box;
        transform-origin: 50% 50%;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }

#loftloader-wrapper.loftloader-frame #loader {
    width: 80px;
    height: 80px;
    max-width: 90vw
}

    #loftloader-wrapper.loftloader-frame #loader:after, #loftloader-wrapper.loftloader-frame #loader:before {
        position: absolute;
        width: 100%;
        height: 4px;
        background: currentColor;
        content: ""
    }

    #loftloader-wrapper.loftloader-frame #loader:before {
        top: 0;
        right: 0;
        left: auto;
        -webkit-animation: drawframeTop 4s linear infinite;
        animation: drawframeTop 4s linear infinite
    }

    #loftloader-wrapper.loftloader-frame #loader:after {
        right: auto;
        bottom: 0;
        left: 0;
        -webkit-animation: drawframeBottom 4s linear infinite 1s;
        animation: drawframeBottom 4s linear infinite 1s
    }

    #loftloader-wrapper.loftloader-frame #loader span {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 100%
    }

        #loftloader-wrapper.loftloader-frame #loader span:after, #loftloader-wrapper.loftloader-frame #loader span:before {
            position: absolute;
            width: 4px;
            height: 100%;
            background: currentColor;
            content: ""
        }

        #loftloader-wrapper.loftloader-frame #loader span:before {
            top: auto;
            right: 0;
            bottom: 0;
            -webkit-animation: drawframeRight 4s linear infinite .5s;
            animation: drawframeRight 4s linear infinite .5s
        }

        #loftloader-wrapper.loftloader-frame #loader span:after {
            top: 0;
            bottom: auto;
            left: 0;
            -webkit-animation: drawframeLeft 4s linear infinite 1.5s;
            animation: drawframeLeft 4s linear infinite 1.5s
        }

    #loftloader-wrapper.loftloader-frame #loader img {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
        transform: translate(-50%,-50%);
        display: block;
        max-width: 80%;
        max-height: 80%
    }

#loftloader-wrapper.loftloader-imgloading #loader {
    width: auto;
    height: auto
}

    #loftloader-wrapper.loftloader-imgloading #loader img {
        position: relative;
        z-index: 1;
        display: block;
        width: 100%;
        height: auto;
        margin: 0 auto
    }

    #loftloader-wrapper.loftloader-imgloading #loader img {
        opacity: .3
    }

    #loftloader-wrapper.loftloader-imgloading #loader .imgloading-container {
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 3;
        display: block;
        width: 100%;
        height: 100%;
        transition: 0s;
        overflow: hidden
    }

    #loftloader-wrapper.loftloader-imgloading #loader span {
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 3;
        display: block;
        width: 100%;
        height: 100%;
        background-repeat: no-repeat;
        background-size: cover;
        transition: 0s
    }

#loftloader-wrapper.loftloader-imgloading.imgloading-vertical #loader .imgloading-container {
    width: 100%;
    height: 0%;
    -webkit-animation: imgLoading 6s linear infinite;
    animation: imgLoading 6s linear infinite;
    will-change: height,opacity;
    transform-origin: 0 100%
}

#loftloader-wrapper.loftloader-imgloading.imgloading-vertical:not(.top-to-bottom) span {
    background-position: 0 100%
}

#loftloader-wrapper.loftloader-imgloading.imgloading-vertical.top-to-bottom #loader .imgloading-container {
    top: 0;
    bottom: auto;
    transform-origin: 0 0
}

    #loftloader-wrapper.loftloader-imgloading.imgloading-vertical.top-to-bottom #loader .imgloading-container span {
        top: 0;
        bottom: auto
    }

#loftloader-wrapper.loftloader-imgloading.imgloading-horizontal #loader .imgloading-container {
    width: 0%;
    height: 100%;
    -webkit-animation: imgLoadingH 6s linear infinite;
    animation: imgLoadingH 6s linear infinite;
    will-change: width,opacity;
    transform-origin: 0 0
}

#loftloader-wrapper.loftloader-imgrotating #loader {
    width: auto;
    height: auto;
    backface-visibility: visible;
    transform-style: preserve-3d
}

    #loftloader-wrapper.loftloader-imgrotating #loader img {
        position: relative;
        z-index: 1;
        display: block;
        width: 100%;
        height: auto;
        margin: 0 auto
    }

#loftloader-wrapper.loftloader-imgrotating.twod #loader {
    -webkit-animation: imgRotate2d 4s linear infinite;
    animation: imgRotate2d 4s linear infinite
}

#loftloader-wrapper.loftloader-imgrotating.twod.counterclockwise #loader {
    -webkit-animation: imgRotate2dCounter 4s linear infinite;
    animation: imgRotate2dCounter 4s linear infinite
}

#loftloader-wrapper.loftloader-imgrotating.threed-y #loader {
    -webkit-animation: imgRotate3dY 4s linear infinite;
    animation: imgRotate3dY 4s linear infinite
}

#loftloader-wrapper.loftloader-imgrotating.threed-x #loader {
    -webkit-animation: imgRotate3dX 4s linear infinite;
    animation: imgRotate3dX 4s linear infinite
}

#loftloader-wrapper.loftloader-imgrotating.ease-back.twod #loader {
    -webkit-animation: imgRotate2dEase 4s cubic-bezier(.07,.29,.63,1.55) infinite;
    animation: imgRotate2dEase 4s cubic-bezier(.07,.29,.63,1.55) infinite
}

#loftloader-wrapper.loftloader-imgrotating.ease-back.twod.counterclockwise #loader {
    -webkit-animation: imgRotate2dEaseCounter 4s cubic-bezier(.07,.29,.63,1.55) infinite;
    animation: imgRotate2dEaseCounter 4s cubic-bezier(.07,.29,.63,1.55) infinite
}

#loftloader-wrapper.loftloader-imgrotating.ease-back.threed-y #loader {
    -webkit-animation: imgRotate3dYEase 4s cubic-bezier(.07,.29,.63,1.55) infinite;
    animation: imgRotate3dYEase 4s cubic-bezier(.07,.29,.63,1.55) infinite
}

#loftloader-wrapper.loftloader-imgrotating.ease-back.threed-x #loader {
    -webkit-animation: imgRotate3dXEase 4s cubic-bezier(.07,.29,.63,1.55) infinite;
    animation: imgRotate3dXEase 4s cubic-bezier(.07,.29,.63,1.55) infinite
}

#loftloader-wrapper.loftloader-imgbouncing #loader {
    width: auto;
    height: auto
}

    #loftloader-wrapper.loftloader-imgbouncing #loader img {
        position: relative;
        z-index: 1;
        display: block;
        width: 100%;
        height: auto;
        margin: 0 auto
    }

    #loftloader-wrapper.loftloader-imgbouncing #loader img {
        -webkit-animation: imgBounce 1s ease-in-out infinite;
        animation: imgBounce 1s ease-in-out infinite
    }

    #loftloader-wrapper.loftloader-imgbouncing #loader:after {
        position: absolute;
        bottom: -5px;
        left: 0;
        display: block;
        width: 100%;
        height: 15px;
        background: #000;
        border-radius: 50%;
        opacity: .1;
        -webkit-animation: imgShadow 1s ease-in-out infinite;
        animation: imgShadow 1s ease-in-out infinite;
        content: ""
    }

#loftloader-wrapper.loftloader-imgbouncing.loftloader-rolling #loader img {
    -webkit-animation: imgBounceRoll 4s ease-in-out infinite;
    animation: imgBounceRoll 4s ease-in-out infinite
}

#loftloader-wrapper.loftloader-imgbouncing.loftloader-rolling #loader:after {
    -webkit-animation: imgShadowRoll 4s ease-in-out infinite;
    animation: imgShadowRoll 4s ease-in-out infinite
}

#loftloader-wrapper.loftloader-crossing.loftloader-blendmode-lighten #loader span:after, #loftloader-wrapper.loftloader-crossing.loftloader-blendmode-lighten #loader span:before {
    mix-blend-mode: lighten
}

#loftloader-wrapper.loftloader-crossing.loftloader-blendmode-darken #loader span:after, #loftloader-wrapper.loftloader-crossing.loftloader-blendmode-darken #loader span:before {
    mix-blend-mode: darken
}

#loftloader-wrapper.loftloader-crossing.loftloader-blendmode-none #loader span:after, #loftloader-wrapper.loftloader-crossing.loftloader-blendmode-none #loader span:before {
    opacity: .8
}

#loftloader-wrapper.loftloader-crossing #loader span {
    display: block;
    width: 300px;
    height: 60px;
    background: 0 0
}

    #loftloader-wrapper.loftloader-crossing #loader span:after, #loftloader-wrapper.loftloader-crossing #loader span:before {
        position: relative;
        display: inline-block;
        width: 50px;
        height: 50px;
        margin-top: 5px;
        border-radius: 50%;
        opacity: 1;
        content: ""
    }

    #loftloader-wrapper.loftloader-crossing #loader span:before {
        background: #0ff;
        -webkit-animation: crossingLeft 2s ease infinite;
        animation: crossingLeft 2s ease infinite
    }

    #loftloader-wrapper.loftloader-crossing #loader span:after {
        background: red;
        -webkit-animation: crossingRight 2s ease infinite;
        animation: crossingRight 2s ease infinite
    }

#loftloader-wrapper.loftloader-ducks #loader {
    width: 320px;
    height: 40px;
    overflow: hidden
}

    #loftloader-wrapper.loftloader-ducks #loader span {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 40px;
        background: 0 0;
        -webkit-animation: ducks 6s linear infinite;
        animation: ducks 6s linear infinite;
        color: gold
    }

        #loftloader-wrapper.loftloader-ducks #loader span:after, #loftloader-wrapper.loftloader-ducks #loader span:before {
            position: absolute;
            top: 0;
            left: 0;
            display: block;
            width: 40px;
            height: 20px;
            background: currentColor;
            content: "";
            box-shadow: -320px 0 0 currentColor,-240px 0 0 currentColor,-160px 0 0 currentColor,-80px 0 0 currentColor,80px 0 0 currentColor,160px 0 0 currentColor,240px 0 0 currentColor,320px 0 0 currentColor
        }

        #loftloader-wrapper.loftloader-ducks #loader span:before {
            top: 5px;
            left: 14px;
            width: 30px;
            height: 15px;
            border-top-left-radius: 100px;
            border-top-right-radius: 100px;
            -webkit-animation: duckHead .9s ease infinite;
            animation: duckHead .9s ease infinite
        }

        #loftloader-wrapper.loftloader-ducks #loader span:after {
            top: 20px;
            left: 0;
            border-bottom-left-radius: 100px;
            border-bottom-right-radius: 100px
        }

#loftloader-wrapper.loftloader-rainbow #loader {
    width: 200px;
    height: 100px;
    overflow: hidden
}

    #loftloader-wrapper.loftloader-rainbow #loader span {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 200px;
        height: 100px;
        overflow: hidden;
        box-sizing: border-box;
        transform-origin: 50% 100%;
        -webkit-transform: rotate(-180deg);
        -ms-transform: rotate(-180deg);
        transform: rotate(-180deg);
        -webkit-animation: rainbow 3s linear infinite;
        animation: rainbow 3s linear infinite
    }

        #loftloader-wrapper.loftloader-rainbow #loader span:before {
            position: absolute;
            top: 30px;
            left: 30px;
            display: block;
            width: 140px;
            height: 140px;
            background: 0 0;
            border-radius: 50%;
            box-shadow: 0 0 0 10px red,0 0 0 20px gold,0 0 0 30px #0ff;
            content: ""
        }

#loftloader-wrapper.loftloader-circlefilling #loader {
    width: 100px;
    height: 100px;
    overflow: hidden;
    border-radius: 100px
}

    #loftloader-wrapper.loftloader-circlefilling #loader:before {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 100%;
        background: currentColor;
        content: "";
        opacity: .1
    }

    #loftloader-wrapper.loftloader-circlefilling #loader span {
        display: block;
        width: 100px;
        height: 100px;
        background: currentColor;
        transform-origin: 50% 100%;
        -webkit-transform: scaleY(0);
        -ms-transform: scaleY(0);
        transform: scaleY(0);
        -webkit-animation: circlefill 3s linear infinite;
        animation: circlefill 3s linear infinite
    }

#loftloader-wrapper.loftloader-waterfilling #loader {
    width: 100px;
    height: 100px;
    overflow: hidden;
    border-radius: 100px;
    -webkit-transform: rotate(179deg);
    -ms-transform: rotate(179deg);
    transform: rotate(179deg)
}

    #loftloader-wrapper.loftloader-waterfilling #loader:before {
        display: block;
        width: 100px;
        height: 100px;
        background: currentColor;
        transform-origin: 50% 0%;
        -webkit-transform: scaleY(0);
        -ms-transform: scaleY(0);
        transform: scaleY(0);
        -webkit-animation: circlefill 10s linear infinite;
        animation: circlefill 10s linear infinite;
        content: ""
    }

    #loftloader-wrapper.loftloader-waterfilling #loader:after {
        position: absolute;
        top: 50%;
        left: 50%;
        display: block;
        width: 10px;
        height: 10px;
        background: #fff;
        border-radius: 50%;
        content: "";
        box-shadow: -17px -25px 0 -4px #fff,20px -38px 0 -2px #fff,-36px 36px 0 -3px #fff,10px 35px 0 -2px rgba(255,255,255,.8),0 -100px 0 0 #fff,-17px -125px 0 -4px #fff,20px -138px 0 -2px #fff,-36px -64px 0 -3px #fff,10px -65px 0 -2px rgba(255,255,255,.8);
        -webkit-animation: bubbles 1s linear infinite;
        animation: bubbles 1s linear infinite
    }

    #loftloader-wrapper.loftloader-waterfilling #loader span {
        display: block;
        width: 100px;
        height: 100px;
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
        -webkit-animation: waterupfill 10s linear infinite;
        animation: waterupfill 10s linear infinite
    }

        #loftloader-wrapper.loftloader-waterfilling #loader span:after {
            position: absolute;
            top: 0;
            left: -65px;
            display: block;
            width: 130px;
            height: 130px;
            background: 0 0;
            border-radius: 50%;
            box-shadow: 78px -83px 0 -16px currentColor,0 -70px 0 -17px currentColor,-78px -83px 0 -16px currentColor;
            -webkit-animation: waterup 2s ease-in-out infinite;
            animation: waterup 2s ease-in-out infinite;
            content: ""
        }

#loftloader-wrapper.loftloader-crystal #loader {
    width: 100px;
    height: 100px;
    overflow: hidden;
    border-radius: 100px;
    -webkit-animation: crystal 5s linear infinite;
    animation: crystal 5s linear infinite
}

    #loftloader-wrapper.loftloader-crystal #loader span {
        display: block;
        width: 70px;
        height: 70px;
        margin: 15px auto 0;
        border-radius: 50%;
        background: 0 0;
        box-shadow: 0 -15px 0 0 rgba(36,138,204,.5),15px -15px 0 0 rgba(36,138,204,.5),15px 0 0 0 rgba(36,138,204,.5),15px 15px 0 0 rgba(36,138,204,.5),0 15px 0 0 rgba(36,138,204,.5),-15px 15px 0 0 rgba(36,138,204,.5),-15px 0 0 0 rgba(36,138,204,.5),-15px -15px 0 0 rgba(36,138,204,.5)
    }

#loftloader-wrapper.loftloader-petals #loader {
    width: 100px;
    height: 100px
}

    #loftloader-wrapper.loftloader-petals #loader span {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
        transform: translate(-50%,-50%);
        display: block;
        width: 50px;
        height: 50px;
        border-radius: 50%;
        background: 0 0;
        box-shadow: 0 -25px 0 -15px transparent,17.5px -17.5px 0 -15px transparent,25px 0 0 -15px transparent,17.5px 17.5px 0 -15px transparent,0 25px 0 -15px transparent,-17.5px 17.5px 0 -15px transparent,-25px 0 0 -15px transparent,-17.5px -17.5px 0 -15px transparent;
        -webkit-animation: petals 5s linear infinite;
        animation: petals 5s linear infinite
    }

#loftloader-wrapper.loftloader-beating #loader {
    width: 60px;
    height: 60px
}

    #loftloader-wrapper.loftloader-beating #loader span, #loftloader-wrapper.loftloader-beating #loader:before {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 60px;
        height: 60px;
        border-radius: 50%;
        background: currentColor;
        box-shadow: 0 0 50px;
        opacity: 0
    }

    #loftloader-wrapper.loftloader-beating #loader span {
        -webkit-animation: beat 1.5s linear infinite;
        animation: beat 1.5s linear infinite
    }

    #loftloader-wrapper.loftloader-beating #loader:before {
        content: "";
        -webkit-animation: beat 1.5s linear infinite 1s;
        animation: beat 1.5s linear infinite 1s
    }

#loftloader-wrapper.loftloader-imgfading #loader {
    width: auto;
    height: auto
}

    #loftloader-wrapper.loftloader-imgfading #loader img {
        position: relative;
        z-index: 1;
        display: block;
        width: 100%;
        height: auto;
        margin: 0 auto
    }

    #loftloader-wrapper.loftloader-imgfading #loader img {
        -webkit-animation: imgFade 3s ease-in-out infinite;
        animation: imgFade 3s ease-in-out infinite
    }

#loftloader-wrapper.loftloader-incomplete-ring #loader {
    width: 80px;
    height: 80px
}

    #loftloader-wrapper.loftloader-incomplete-ring #loader span {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 80px;
        height: 80px;
        background: 0 0;
        transform-origin: 50% 50%;
        -webkit-animation: spin 2s ease infinite;
        animation: spin 2s ease infinite
    }

        #loftloader-wrapper.loftloader-incomplete-ring #loader span:after, #loftloader-wrapper.loftloader-incomplete-ring #loader span:before {
            position: absolute;
            top: 0;
            left: 0;
            display: block;
            width: 100%;
            height: 100%;
            background: inherit;
            border: 8px solid currentColor;
            border-radius: 50%;
            content: "";
            transform-origin: 50% 50%;
            box-sizing: border-box
        }

        #loftloader-wrapper.loftloader-incomplete-ring #loader span:before {
            border-top-color: transparent;
            border-right-color: transparent;
            border-bottom-color: transparent
        }

        #loftloader-wrapper.loftloader-incomplete-ring #loader span:after {
            border-bottom-color: transparent;
            border-left-color: transparent;
            -webkit-animation: spin 2s linear .5s infinite;
            animation: spin 2s linear .5s infinite
        }

#loftloader-wrapper.loftloader-once.loftloader-circlefilling #loader span, #loftloader-wrapper.loftloader-once.loftloader-petals #loader span, #loftloader-wrapper.loftloader-once.loftloader-rainbow #loader span, #loftloader-wrapper.loftloader-once.loftloader-waterfilling #loader span {
    -webkit-animation: none;
    animation: none
}

#loftloader-wrapper.loftloader-once.loftloader-imgloading #loader .imgloading-container {
    -webkit-animation: none;
    animation: none
}

#loftloader-wrapper.loftloader-once.loftloader-waterfilling #loader:before {
    -webkit-animation: none;
    animation: none
}

#loftloader-wrapper span.percentage {
    display: block;
    font-size: 16px;
    font-weight: 100;
    letter-spacing: .1em;
    line-height: 1
}

    #loftloader-wrapper span.percentage.front {
        z-index: 1003
    }

#loftloader-wrapper:not(.loftloader-none) #loader + span.percentage:not(.middle) {
    margin-top: 24px
}

#loftloader-wrapper:not(.loftloader-none) span.percentage.middle {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    margin: 0
}

#loftloader-wrapper:not(.loftloader-none) .with-percentage span.percentage:not(.middle) {
    margin-bottom: -18px
}

#loftloader-wrapper span.bar {
    position: relative;
    z-index: 1000;
    display: block;
    width: 100vw;
    max-width: 100vw;
    height: 4px;
    margin: 0 auto;
    color: #248acc
}

@media screen and (max-width:500px) {
    #loftloader-wrapper span.bar {
        min-width: 220px
    }
}

#loftloader-wrapper span.bar span.load, #loftloader-wrapper span.bar:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: currentColor
}

#loftloader-wrapper span.bar:before {
    content: "";
    opacity: .1;
    will-change: transform
}

#loftloader-wrapper span.bar span.load {
    transform-origin: 0% 0%
}

#loftloader-wrapper span.bar.bottom, #loftloader-wrapper span.bar.top {
    position: fixed;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-top: 0
}

#loftloader-wrapper span.bar.top {
    top: 0
}

#loftloader-wrapper span.bar.bottom {
    bottom: 0
}

#loftloader-wrapper span.bar span.load-count {
    position: absolute;
    bottom: -5px;
    left: 0;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    font-size: 16px;
    font-weight: 100;
    letter-spacing: .1em;
    line-height: 1;
    color: currentColor;
    text-align: right;
    white-space: nowrap
}

#loftloader-wrapper span.bar.bottom span.load-count {
    top: -5px;
    bottom: auto;
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%)
}

#loftloader-wrapper:not(.loftloader-none) #loader + span.bar {
    margin-top: 50px
}

#loftloader-wrapper .loader-message ~ span.bar {
    margin-top: 24px
}

.loader-message {
    width: 100vw;
    padding: 0 20px;
    margin: 0 auto;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: .1em;
    line-height: 1.5;
    word-wrap: break-word;
    box-sizing: border-box
}

#loftloader-wrapper:not(.loftloader-none) .loader-inner > .loader-message:first-child {
    margin-bottom: 24px
}

#loftloader-wrapper * + .loader-message {
    margin-top: 24px
}

#loftloader-wrapper.loftloader-none #loader + .loader-message {
    margin-top: 0
}

#loftloader-wrapper.loftloader-none .with-percentage + .loader-message {
    margin-top: 6px
}

.loader-close-button {
    position: fixed;
    right: 10px;
    top: 10px;
    z-index: 99999;
    box-sizing: border-box;
    width: auto;
    min-width: 35px;
    height: 35px;
    padding: 5px 30px 5px 5px;
    border-radius: 999px;
    background: rgba(0,0,0,.3);
    color: #fff;
    font-size: 12px;
    line-height: 25px;
    cursor: pointer
}

    .loader-close-button:hover {
        background: rgba(0,0,0,.7)
    }

    .loader-close-button:after, .loader-close-button:before {
        position: absolute;
        top: 16px;
        right: 9px;
        display: block;
        width: 18px;
        height: 2px;
        transform-origin: 50% 50%;
        content: "";
        background: #fff
    }

    .loader-close-button:before {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    .loader-close-button:after {
        -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        transform: rotate(135deg)
    }

    .loader-close-button .screen-reader-text {
        position: absolute !important;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        border: 0;
        clip: rect(1px,1px,1px,1px);
        clip-path: inset(50%);
        overflow: hidden;
        word-wrap: normal !important
    }

    .loader-close-button .close-des {
        padding: 0 5px;
        font-size: 12px
    }
