.animsition,
.animsition-overlay {
  position: relative;
  opacity: 0;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animsition-loading {
  position: fixed;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  background: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2032%2032%22%20width%3D%2232%22%20height%3D%2232%22%20fill%3D%22%23ccc%22%3E%0A%20%20%3Cpath%20opacity%3D%22.25%22%20d%3D%22M16%200%20A16%2016%200%200%200%2016%2032%20A16%2016%200%200%200%2016%200%20M16%204%20A12%2012%200%200%201%2016%2028%20A12%2012%200%200%201%2016%204%22/%3E%0A%20%20%3Cpath%20d%3D%22M16%200%20A16%2016%200%200%201%2032%2016%20L28%2016%20A12%2012%200%200%200%2016%204z%22%3E%0A%20%20%20%20%3CanimateTransform%20attributeName%3D%22transform%22%20type%3D%22rotate%22%20from%3D%220%2016%2016%22%20to%3D%22360%2016%2016%22%20dur%3D%220.8s%22%20repeatCount%3D%22indefinite%22%20/%3E%0A%20%20%3C/path%3E%0A%3C/svg%3E%0A%0A) center center no-repeat;
}

.animsition-loading:after {
  content: "Loading";
  color: #aaa;
  font-size: 1em;
  top: 50%;
  position: fixed;
  text-align: center;
  width: 100%;
  margin-top: 1.25em;
}

.animsition-overlay-slide {
  position: fixed;
  height: 100%;
  width: 100%;
  z-index: 1;
  background-color: #ddd;
}

.animsition,
.animsition-overlay {
  position: relative;
  opacity: 0;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

/**
 * overlay option
 */
.animsition-overlay-slide {
  position: fixed;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: #ddd;
}

/* loading option */
.animsition-loading,
.animsition-loading:after {
  width: 2em;
  height: 2em;
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -1em;
  margin-left: -1em;
  border-radius: 50%;
  z-index: 100;
}

.animsition-loading {
  background-color: transparent;
  border-top: 0.3125em solid rgba(0, 0, 0, 0.2);
  border-right: 0.3125em solid rgba(0, 0, 0, 0.2);
  border-bottom: 0.3125em solid rgba(0, 0, 0, 0.2);
  border-left: 0.3125em solid #eee;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-duration: .8s;
  animation-duration: .8s;
  -webkit-animation-name: animsition-loading;
  animation-name: animsition-loading;
}

@-webkit-keyframes animsition-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

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

@keyframes animsition-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

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

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.fade-in {
  -webkit-animation-name: fade-in;
  animation-name: fade-in;
}

@-webkit-keyframes fade-out {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fade-out {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

.fade-out {
  -webkit-animation-name: fade-out;
  animation-name: fade-out;
}

@-webkit-keyframes fade-in-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(31.25em);
    transform: translateY(31.25em);
  }

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

@keyframes fade-in-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(31.25em);
    transform: translateY(31.25em);
  }

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

.fade-in-up {
  -webkit-animation-name: fade-in-up;
  animation-name: fade-in-up;
}

@-webkit-keyframes fade-out-up {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-31.25em);
    transform: translateY(-31.25em);
  }
}

@keyframes fade-out-up {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-31.25em);
    transform: translateY(-31.25em);
  }
}

.fade-out-up {
  -webkit-animation-name: fade-out-up;
  animation-name: fade-out-up;
}

@-webkit-keyframes fade-in-up-sm {
  0% {
    opacity: 0;
    -webkit-transform: translateY(6.25em);
    transform: translateY(6.25em);
  }

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

@keyframes fade-in-up-sm {
  0% {
    opacity: 0;
    -webkit-transform: translateY(6.25em);
    transform: translateY(6.25em);
  }

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

.fade-in-up-sm {
  -webkit-animation-name: fade-in-up-sm;
  animation-name: fade-in-up-sm;
}

@-webkit-keyframes fade-out-up-sm {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-6.25em);
    transform: translateY(-6.25em);
  }
}

@keyframes fade-out-up-sm {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-6.25em);
    transform: translateY(-6.25em);
  }
}

.fade-out-up-sm {
  -webkit-animation-name: fade-out-up-sm;
  animation-name: fade-out-up-sm;
}

@-webkit-keyframes fade-in-up-lg {
  0% {
    opacity: 0;
    -webkit-transform: translateY(62.5em);
    transform: translateY(62.5em);
  }

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

@keyframes fade-in-up-lg {
  0% {
    opacity: 0;
    -webkit-transform: translateY(62.5em);
    transform: translateY(62.5em);
  }

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

.fade-in-up-lg {
  -webkit-animation-name: fade-in-up-lg;
  animation-name: fade-in-up-lg;
}

@-webkit-keyframes fade-out-up-lg {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-62.5em);
    transform: translateY(-62.5em);
  }
}

@keyframes fade-out-up-lg {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-62.5em);
    transform: translateY(-62.5em);
  }
}

.fade-out-up-lg {
  -webkit-animation-name: fade-out-up-lg;
  animation-name: fade-out-up-lg;
}

@-webkit-keyframes fade-in-down {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-31.25em);
    transform: translateY(-31.25em);
  }

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

@keyframes fade-in-down {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-31.25em);
    transform: translateY(-31.25em);
  }

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

.fade-in-down {
  -webkit-animation-name: fade-in-down;
  animation-name: fade-in-down;
}

@-webkit-keyframes fade-out-down {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(31.25em);
    transform: translateY(31.25em);
  }
}

@keyframes fade-out-down {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(31.25em);
    transform: translateY(31.25em);
  }
}

.fade-out-down {
  -webkit-animation-name: fade-out-down;
  animation-name: fade-out-down;
}

@-webkit-keyframes fade-in-down-sm {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-6.25em);
    transform: translateY(-6.25em);
  }

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

@keyframes fade-in-down-sm {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-6.25em);
    transform: translateY(-6.25em);
  }

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

.fade-in-down-sm {
  -webkit-animation-name: fade-in-down-sm;
  animation-name: fade-in-down-sm;
}

@-webkit-keyframes fade-out-down-sm {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(6.25em);
    transform: translateY(6.25em);
  }
}

@keyframes fade-out-down-sm {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(6.25em);
    transform: translateY(6.25em);
  }
}

.fade-out-down-sm {
  -webkit-animation-name: fade-out-down-sm;
  animation-name: fade-out-down-sm;
}

@-webkit-keyframes fade-in-down-lg {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-62.5em);
    transform: translateY(-62.5em);
  }

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

@keyframes fade-in-down-lg {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-62.5em);
    transform: translateY(-62.5em);
  }

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

.fade-in-down-lg {
  -webkit-animation-name: fade-in-down;
  animation-name: fade-in-down;
}

@-webkit-keyframes fade-out-down-lg {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(62.5em);
    transform: translateY(62.5em);
  }
}

@keyframes fade-out-down-lg {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(62.5em);
    transform: translateY(62.5em);
  }
}

.fade-out-down-lg {
  -webkit-animation-name: fade-out-down-lg;
  animation-name: fade-out-down-lg;
}

@-webkit-keyframes fade-in-left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-31.25em);
    transform: translateX(-31.25em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fade-in-left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-31.25em);
    transform: translateX(-31.25em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.fade-in-left {
  -webkit-animation-name: fade-in-left;
  animation-name: fade-in-left;
}

@-webkit-keyframes fade-out-left {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-31.25em);
    transform: translateX(-31.25em);
  }
}

@keyframes fade-out-left {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-31.25em);
    transform: translateX(-31.25em);
  }
}

.fade-out-left {
  -webkit-animation-name: fade-out-left;
  animation-name: fade-out-left;
}

@-webkit-keyframes fade-in-left-sm {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-6.25em);
    transform: translateX(-6.25em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fade-in-left-sm {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-6.25em);
    transform: translateX(-6.25em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.fade-in-left-sm {
  -webkit-animation-name: fade-in-left-sm;
  animation-name: fade-in-left-sm;
}

@-webkit-keyframes fade-out-left-sm {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-6.25em);
    transform: translateX(-6.25em);
  }
}

@keyframes fade-out-left-sm {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-6.25em);
    transform: translateX(-6.25em);
  }
}

.fade-out-left-sm {
  -webkit-animation-name: fade-out-left-sm;
  animation-name: fade-out-left-sm;
}

@-webkit-keyframes fade-in-left-lg {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-93.75em);
    transform: translateX(-93.75em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fade-in-left-lg {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-93.75em);
    transform: translateX(-93.75em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.fade-in-left-lg {
  -webkit-animation-name: fade-in-left-lg;
  animation-name: fade-in-left-lg;
}

@-webkit-keyframes fade-out-left-lg {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-93.75em);
    transform: translateX(-93.75em);
  }
}

@keyframes fade-out-left-lg {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-93.75em);
    transform: translateX(-93.75em);
  }
}

.fade-out-left-lg {
  -webkit-animation-name: fade-out-left-lg;
  animation-name: fade-out-left-lg;
}

@-webkit-keyframes fade-in-right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(31.25em);
    transform: translateX(31.25em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fade-in-right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(31.25em);
    transform: translateX(31.25em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.fade-in-right {
  -webkit-animation-name: fade-in-right;
  animation-name: fade-in-right;
}

@-webkit-keyframes fade-out-right {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(31.25em);
    transform: translateX(31.25em);
  }
}

@keyframes fade-out-right {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(31.25em);
    transform: translateX(31.25em);
  }
}

.fade-out-right {
  -webkit-animation-name: fade-out-right;
  animation-name: fade-out-right;
}

@-webkit-keyframes fade-in-right-sm {
  0% {
    opacity: 0;
    -webkit-transform: translateX(6.25em);
    transform: translateX(6.25em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fade-in-right-sm {
  0% {
    opacity: 0;
    -webkit-transform: translateX(6.25em);
    transform: translateX(6.25em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.fade-in-right-sm {
  -webkit-animation-name: fade-in-right-sm;
  animation-name: fade-in-right-sm;
}

@-webkit-keyframes fade-out-right-sm {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(6.25em);
    transform: translateX(6.25em);
  }
}

@keyframes fade-out-right-sm {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(6.25em);
    transform: translateX(6.25em);
  }
}

.fade-out-right-sm {
  -webkit-animation-name: fade-out-right-sm;
  animation-name: fade-out-right-sm;
}

@-webkit-keyframes fade-in-right-lg {
  0% {
    opacity: 0;
    -webkit-transform: translateX(93.75em);
    transform: translateX(93.75em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fade-in-right-lg {
  0% {
    opacity: 0;
    -webkit-transform: translateX(93.75em);
    transform: translateX(93.75em);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.fade-in-right-lg {
  -webkit-animation-name: fade-in-right-lg;
  animation-name: fade-in-right-lg;
}

@-webkit-keyframes fade-out-right-lg {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(93.75em);
    transform: translateX(93.75em);
  }
}

@keyframes fade-out-right-lg {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(93.75em);
    transform: translateX(93.75em);
  }
}

.fade-out-right-lg {
  -webkit-animation-name: fade-out-right-lg;
  animation-name: fade-out-right-lg;
}

@-webkit-keyframes rotate-in {
  0% {
    opacity: 0;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

@keyframes rotate-in {
  0% {
    opacity: 0;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

.rotate-in {
  -webkit-animation-name: rotate-in;
  animation-name: rotate-in;
}

@-webkit-keyframes rotate-out {
  0% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 0;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

@keyframes rotate-out {
  0% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 0;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

.rotate-out {
  -webkit-animation-name: rotate-out;
  animation-name: rotate-out;
}

@-webkit-keyframes rotate-in-sm {
  0% {
    opacity: 0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

@keyframes rotate-in-sm {
  0% {
    opacity: 0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

.rotate-in-sm {
  -webkit-animation-name: rotate-in-sm;
  animation-name: rotate-in-sm;
}

@-webkit-keyframes rotate-out-sm {
  0% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

@keyframes rotate-out-sm {
  0% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

.rotate-out-sm {
  -webkit-animation-name: rotate-out-sm;
  animation-name: rotate-out-sm;
}

@-webkit-keyframes rotate-in-lg {
  0% {
    opacity: 0;
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

@keyframes rotate-in-lg {
  0% {
    opacity: 0;
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

.rotate-in-lg {
  -webkit-animation-name: rotate-in-lg;
  animation-name: rotate-in-lg;
}

@-webkit-keyframes rotate-out-lg {
  0% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 0;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

@keyframes rotate-out-lg {
  0% {
    opacity: 1;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }

  100% {
    opacity: 0;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
  }
}

.rotate-out-lg {
  -webkit-animation-name: rotate-out-lg;
  animation-name: rotate-out-lg;
}

@-webkit-keyframes flip-in-x {
  0% {
    opacity: 0;
    -webkit-transform: perspective(34.375em) rotateX(90deg);
    transform: perspective(34.375em) rotateX(90deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: perspective(34.375em) rotateX(0deg);
    transform: perspective(34.375em) rotateX(0deg);
  }
}

@keyframes flip-in-x {
  0% {
    opacity: 0;
    -webkit-transform: perspective(34.375em) rotateX(90deg);
    transform: perspective(34.375em) rotateX(90deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: perspective(34.375em) rotateX(0deg);
    transform: perspective(34.375em) rotateX(0deg);
  }
}

.flip-in-x {
  -webkit-animation-name: flip-in-x;
  animation-name: flip-in-x;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-x {
  0% {
    opacity: 1;
    -webkit-transform: perspective(34.375em) rotateX(0deg);
    transform: perspective(34.375em) rotateX(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform: perspective(34.375em) rotateX(90deg);
    transform: perspective(34.375em) rotateX(90deg);
  }
}

@keyframes flip-out-x {
  0% {
    opacity: 1;
    -webkit-transform: perspective(34.375em) rotateX(0deg);
    transform: perspective(34.375em) rotateX(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform: perspective(34.375em) rotateX(90deg);
    transform: perspective(34.375em) rotateX(90deg);
  }
}

.flip-out-x {
  -webkit-animation-name: flip-out-x;
  animation-name: flip-out-x;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-in-x-nr {
  0% {
    opacity: 0;
    -webkit-transform: perspective(6.25em) rotateX(90deg);
    transform: perspective(6.25em) rotateX(90deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: perspective(6.25em) rotateX(0deg);
    transform: perspective(6.25em) rotateX(0deg);
  }
}

@keyframes flip-in-x-nr {
  0% {
    opacity: 0;
    -webkit-transform: perspective(6.25em) rotateX(90deg);
    transform: perspective(6.25em) rotateX(90deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: perspective(6.25em) rotateX(0deg);
    transform: perspective(6.25em) rotateX(0deg);
  }
}

.flip-in-x-nr {
  -webkit-animation-name: flip-in-x-nr;
  animation-name: flip-in-x-nr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-x-nr {
  0% {
    opacity: 1;
    -webkit-transform: perspective(6.25em) rotateX(0deg);
    transform: perspective(6.25em) rotateX(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform: perspective(6.25em) rotateX(90deg);
    transform: perspective(6.25em) rotateX(90deg);
  }
}

@keyframes flip-out-x-nr {
  0% {
    opacity: 1;
    -webkit-transform: perspective(6.25em) rotateX(0deg);
    transform: perspective(6.25em) rotateX(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform: perspective(6.25em) rotateX(90deg);
    transform: perspective(6.25em) rotateX(90deg);
  }
}

.flip-out-x-nr {
  -webkit-animation-name: flip-out-x-nr;
  animation-name: flip-out-x-nr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-in-x-fr {
  0% {
    opacity: 0;
    -webkit-transform: perspective(62.5em) rotateX(90deg);
    transform: perspective(62.5em) rotateX(90deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: perspective(62.5em) rotateX(0deg);
    transform: perspective(62.5em) rotateX(0deg);
  }
}

@keyframes flip-in-x-fr {
  0% {
    opacity: 0;
    -webkit-transform: perspective(62.5em) rotateX(90deg);
    transform: perspective(62.5em) rotateX(90deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: perspective(62.5em) rotateX(0deg);
    transform: perspective(62.5em) rotateX(0deg);
  }
}

.flip-in-x-fr {
  -webkit-animation-name: flip-in-x-fr;
  animation-name: flip-in-x-fr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-x-fr {
  0% {
    opacity: 1;
    -webkit-transform: perspective(62.5em) rotateX(0deg);
    transform: perspective(62.5em) rotateX(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform: perspective(62.5em) rotateX(90deg);
    transform: perspective(62.5em) rotateX(90deg);
  }
}

@keyframes flip-out-x-fr {
  0% {
    opacity: 1;
    -webkit-transform: perspective(62.5em) rotateX(0deg);
    transform: perspective(62.5em) rotateX(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform: perspective(62.5em) rotateX(90deg);
    transform: perspective(62.5em) rotateX(90deg);
  }
}

.flip-out-x-fr {
  -webkit-animation-name: flip-out-x-fr;
  animation-name: flip-out-x-fr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-in-y {
  0% {
    -webkit-transform: perspective(34.375em) rotateY(90deg);
    transform: perspective(34.375em) rotateY(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform: perspective(34.375em) rotateY(0deg);
    transform: perspective(34.375em) rotateY(0deg);
    opacity: 1;
  }
}

@keyframes flip-in-y {
  0% {
    -webkit-transform: perspective(34.375em) rotateY(90deg);
    transform: perspective(34.375em) rotateY(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform: perspective(34.375em) rotateY(0deg);
    transform: perspective(34.375em) rotateY(0deg);
    opacity: 1;
  }
}

.flip-in-y {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flip-in-y;
  animation-name: flip-in-y;
}

@-webkit-keyframes flip-out-y {
  0% {
    -webkit-transform: perspective(34.375em) rotateY(0deg);
    transform: perspective(34.375em) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(34.375em) rotateY(90deg);
    transform: perspective(34.375em) rotateY(90deg);
    opacity: 0;
  }
}

@keyframes flip-out-y {
  0% {
    -webkit-transform: perspective(34.375em) rotateY(0deg);
    transform: perspective(34.375em) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(34.375em) rotateY(90deg);
    transform: perspective(34.375em) rotateY(90deg);
    opacity: 0;
  }
}

.flip-out-y {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flip-out-y;
  animation-name: flip-out-y;
}

@-webkit-keyframes flip-in-y-nr {
  0% {
    -webkit-transform: perspective(6.25em) rotateY(90deg);
    transform: perspective(6.25em) rotateY(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform: perspective(6.25em) rotateY(0deg);
    transform: perspective(6.25em) rotateY(0deg);
    opacity: 1;
  }
}

@keyframes flip-in-y-nr {
  0% {
    -webkit-transform: perspective(6.25em) rotateY(90deg);
    transform: perspective(6.25em) rotateY(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform: perspective(6.25em) rotateY(0deg);
    transform: perspective(6.25em) rotateY(0deg);
    opacity: 1;
  }
}

.flip-in-y-nr {
  -webkit-animation-name: flip-in-y-nr;
  animation-name: flip-in-y-nr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-y-nr {
  0% {
    -webkit-transform: perspective(6.25em) rotateY(0deg);
    transform: perspective(6.25em) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(6.25em) rotateY(90deg);
    transform: perspective(6.25em) rotateY(90deg);
    opacity: 0;
  }
}

@keyframes flip-out-y-nr {
  0% {
    -webkit-transform: perspective(6.25em) rotateY(0deg);
    transform: perspective(6.25em) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(6.25em) rotateY(90deg);
    transform: perspective(6.25em) rotateY(90deg);
    opacity: 0;
  }
}

.flip-out-y-nr {
  -webkit-animation-name: flip-out-y-nr;
  animation-name: flip-out-y-nr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-in-y-fr {
  0% {
    -webkit-transform: perspective(62.5em) rotateY(90deg);
    transform: perspective(62.5em) rotateY(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform: perspective(62.5em) rotateY(0deg);
    transform: perspective(62.5em) rotateY(0deg);
    opacity: 1;
  }
}

@keyframes flip-in-y-fr {
  0% {
    -webkit-transform: perspective(62.5em) rotateY(90deg);
    transform: perspective(62.5em) rotateY(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform: perspective(62.5em) rotateY(0deg);
    transform: perspective(62.5em) rotateY(0deg);
    opacity: 1;
  }
}

.flip-in-y-fr {
  -webkit-animation-name: flip-in-y-fr;
  animation-name: flip-in-y-fr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-y-fr {
  0% {
    -webkit-transform: perspective(62.5em) rotateY(0deg);
    transform: perspective(62.5em) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(62.5em) rotateY(90deg);
    transform: perspective(62.5em) rotateY(90deg);
    opacity: 0;
  }
}

@keyframes flip-out-y-fr {
  0% {
    -webkit-transform: perspective(62.5em) rotateY(0deg);
    transform: perspective(62.5em) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(62.5em) rotateY(90deg);
    transform: perspective(62.5em) rotateY(90deg);
    opacity: 0;
  }
}

.flip-out-y-fr {
  -webkit-animation-name: flip-out-y-fr;
  animation-name: flip-out-y-fr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes zoom-in {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }

  100% {
    opacity: 1;
  }
}

@keyframes zoom-in {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }

  100% {
    opacity: 1;
  }
}

.zoom-in {
  -webkit-animation-name: zoom-in;
  animation-name: zoom-in;
}

@-webkit-keyframes zoom-out {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  50% {
    opacity: 0;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }

  100% {
    opacity: 0;
  }
}

@keyframes zoom-out {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  50% {
    opacity: 0;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }

  100% {
    opacity: 0;
  }
}

.zoom-out {
  -webkit-animation-name: zoom-out;
  animation-name: zoom-out;
}

@-webkit-keyframes zoom-in-sm {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }

  100% {
    opacity: 1;
  }
}

@keyframes zoom-in-sm {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }

  100% {
    opacity: 1;
  }
}

.zoom-in-sm {
  -webkit-animation-name: zoom-in-sm;
  animation-name: zoom-in-sm;
}

@-webkit-keyframes zoom-out-sm {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  50% {
    opacity: 0;
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }

  100% {
    opacity: 0;
  }
}

@keyframes zoom-out-sm {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  50% {
    opacity: 0;
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }

  100% {
    opacity: 0;
  }
}

.zoom-out-sm {
  -webkit-animation-name: zoom-out-sm;
  animation-name: zoom-out-sm;
}

@-webkit-keyframes zoom-in-lg {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.4);
    transform: scale(0.4);
  }

  100% {
    opacity: 1;
  }
}

@keyframes zoom-in-lg {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.4);
    transform: scale(0.4);
  }

  100% {
    opacity: 1;
  }
}

.zoom-in-lg {
  -webkit-animation-name: zoom-in-lg;
  animation-name: zoom-in-lg;
}

@-webkit-keyframes zoom-out-lg {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  50% {
    opacity: 0;
    -webkit-transform: scale(0.4);
    transform: scale(0.4);
  }

  100% {
    opacity: 0;
  }
}

@keyframes zoom-out-lg {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  50% {
    opacity: 0;
    -webkit-transform: scale(0.4);
    transform: scale(0.4);
  }

  100% {
    opacity: 0;
  }
}

.zoom-out-lg {
  -webkit-animation-name: zoom-out-lg;
  animation-name: zoom-out-lg;
}

.blink-slow {
  -webkit-animation-name: blink-slow;
  animation-name: blink-slow;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

@-webkit-keyframes blink-slow {
  0% {
    opacity: 0.4;
  }

  50% {
    opacity: 0.7;
  }

  100% {
    opacity: 1;
  }
}

@keyframes blink-slow {
  0% {
    opacity: 0.4;
  }

  50% {
    opacity: 0.7;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes overlay-slide-in-top {
  0% {
    height: 100%;
  }

  100% {
    height: 0;
  }
}

@keyframes overlay-slide-in-top {
  0% {
    height: 100%;
  }

  100% {
    height: 0;
  }
}

.overlay-slide-in-top {
  -webkit-animation-name: overlay-slide-in-top;
  animation-name: overlay-slide-in-top;
  height: 0;
  top: 0;
}

@-webkit-keyframes overlay-slide-out-top {
  0% {
    height: 0;
  }

  100% {
    height: 100%;
  }
}

@keyframes overlay-slide-out-top {
  0% {
    height: 0;
  }

  100% {
    height: 100%;
  }
}

.overlay-slide-out-top {
  -webkit-animation-name: overlay-slide-out-top;
  animation-name: overlay-slide-out-top;
  height: 100%;
  top: 0;
}

@-webkit-keyframes overlay-slide-in-bottom {
  0% {
    height: 100%;
  }

  100% {
    height: 0;
  }
}

@keyframes overlay-slide-in-bottom {
  0% {
    height: 100%;
  }

  100% {
    height: 0;
  }
}

.overlay-slide-in-bottom {
  -webkit-animation-name: overlay-slide-in-bottom;
  animation-name: overlay-slide-in-bottom;
  height: 0;
  bottom: 0;
}

@-webkit-keyframes overlay-slide-out-bottom {
  0% {
    height: 0;
  }

  100% {
    height: 100%;
  }
}

@keyframes overlay-slide-out-bottom {
  0% {
    height: 0;
  }

  100% {
    height: 100%;
  }
}

.overlay-slide-out-bottom {
  -webkit-animation-name: overlay-slide-out-bottom;
  animation-name: overlay-slide-out-bottom;
  height: 100%;
  bottom: 0;
}

@-webkit-keyframes overlay-slide-in-left {
  0% {
    width: 100%;
  }

  100% {
    width: 0;
  }
}

@keyframes overlay-slide-in-left {
  0% {
    width: 100%;
  }

  100% {
    width: 0;
  }
}

.overlay-slide-in-left {
  -webkit-animation-name: overlay-slide-in-left;
  animation-name: overlay-slide-in-left;
  width: 0;
}

@-webkit-keyframes overlay-slide-out-left {
  0% {
    width: 0;
  }

  100% {
    width: 100%;
  }
}

@keyframes overlay-slide-out-left {
  0% {
    width: 0;
  }

  100% {
    width: 100%;
  }
}

.overlay-slide-out-left {
  -webkit-animation-name: overlay-slide-out-left;
  animation-name: overlay-slide-out-left;
  width: 100%;
  left: 0;
}

@-webkit-keyframes overlay-slide-in-right {
  0% {
    width: 100%;
  }

  100% {
    width: 0;
  }
}

@keyframes overlay-slide-in-right {
  0% {
    width: 100%;
  }

  100% {
    width: 0;
  }
}

.overlay-slide-in-right {
  -webkit-animation-name: overlay-slide-in-right;
  animation-name: overlay-slide-in-right;
  width: 0;
  right: 0;
}

@-webkit-keyframes overlay-slide-out-right {
  0% {
    width: 0;
  }

  100% {
    width: 100%;
  }
}

@keyframes overlay-slide-out-right {
  0% {
    width: 0;
  }

  100% {
    width: 100%;
  }
}

.overlay-slide-out-right {
  -webkit-animation-name: overlay-slide-out-right;
  animation-name: overlay-slide-out-right;
  width: 100%;
  right: 0;
}