#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
}

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

.slb--opened {
  cursor: auto
}

.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: 1
}

.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)
  }
}
