#overlay,
.cross {
    will-change: transform
}

#overlay,
.center,
.cross {
    top: 0;
    right: 0
}

.cross {
    position: fixed;
    margin: 30px 55px 0 0;
    cursor: pointer;
    transition: .3s all ease-in-out;
    z-index: 99;
    opacity: 1
}

.cross::after,
.cross::before {
    position: absolute;
    content: '';
    width: 35px;
    height: 2px
}

.cross::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.cross::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.cross--light::after,
.cross--light::before {
    background-color: #000
}

.cross--dark::after,
.cross--dark::before {
    background-color: #fff
}

.slb {
    box-shadow: 2px 2px 12px 1px rgba(0, 0, 0, .2);
    cursor: -webkit-zoom-in;
    cursor: zoom-in;
    width: 300px;
}

.slb--invert {
    box-shadow: 2px 2px 12px 1px rgba(255, 255, 255, .3)
}

.slb--opened {
    cursor: auto;
    width: 600px;
}

.pop-in {
    -webkit-animation: pop-in 250ms;
    -moz-animation: pop-in 250ms;
    -ms-animation: pop-in 250ms
}

.pop-out {
    -webkit-animation: pop-out 250ms;
    -moz-animation: pop-out 250ms;
    -ms-animation: pop-out 250ms
}

#overlay {
    display: none;
    width: 100vw;
    height: 100vh;
    position: fixed;
    left: 0;
    bottom: 0;
    pointer-events: none;
    cursor: pointer;
    z-index: 999
}

.center {
    max-height: 90%;
    max-width: 90%;
    position: absolute;
    bottom: 0;
    left: 0;
    margin: auto
}

@-webkit-keyframes pop-in {
    0% {
        opacity: 0;
        -webkit-transform: scale(.5);
        transform: scale(.5)
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes pop-in {
    0% {
        opacity: 0;
        -webkit-transform: scale(.5);
        transform: scale(.5)
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@-webkit-keyframes pop-out {
    0% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(.5);
        transform: scale(.5)
    }
}

@keyframes pop-out {
    0% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(.5);
        transform: scale(.5)
    }
}