@charset "UTF-8";
/*
 * ImageHover.css - http://www.imagehover.io
 * Version 1.0
 * Author: Ciarán Walsh

 * Copyright (C) Imagehover.io

 */
[class^='imgsmn-'], [class*=' imgsmn-'] {
  position: relative;
  display: inline-block;
  margin: 0px;
  max-width: 100%;
  background-color: hsl(355, 66%, 39%);
  color: #fff;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

[class^='imgsmn-'] > img, [class*=' imgsmn-'] > img {
  vertical-align: top;
  max-width: 100%;
}

[class^='imgsmn-'] figcaption, [class*=' imgsmn-'] figcaption {
  background-color: hsl(355, 78%, 33%);
  position: absolute;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  color: #ffffff !important;
}

[class^='imgsmn-'] figcaption h1, [class^='imgsmn-'] figcaption h2, [class^='imgsmn-'] figcaption h3, [class^='imgsmn-'] figcaption h4, [class^='imgsmn-'] figcaption h5, [class^='imgsmn-'] figcaption h6, [class*=' imgsmn-'] figcaption h1, [class*=' imgsmn-'] figcaption h2, [class*=' imgsmn-'] figcaption h3, [class*=' imgsmn-'] figcaption h4, [class*=' imgsmn-'] figcaption h5, [class*=' imgsmn-'] figcaption h6 {
  color: #ffffff !important;
}

[class^='imgsmn-'] a, [class*=' imgsmn-'] a {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
}

[class^='imgsmn-'], [class*=' imgsmn-'], [class^='imgsmn-']:before,
[class^='imgsmn-']:after, [class*=' imgsmn-']:before, [class*=' imgsmn-']:after,
[class^='imgsmn-'] *, [class*=' imgsmn-'] *, [class^='imgsmn-'] *:before,
[class^='imgsmn-'] *:after, [class*=' imgsmn-'] *:before, [class*=' imgsmn-'] *:after {
  box-sizing: border-box;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
}

/* imgsmn-fade-*
   ----------------------------- */
[class^='imgsmn-fade'] figcaption, [class*=' imgsmn-fade'] figcaption {
  opacity: 0;
}

[class^='imgsmn-fade'].summon > img, [class*=' imgsmn-fade'].summon > img {
  opacity: 0;
}

[class^='imgsmn-fade'].summon figcaption, [class*=' imgsmn-fade'].summon figcaption {
  opacity: 1;
}

[class^='imgsmn-fade'].summon > img, [class^='imgsmn-fade'].summon figcaption, [class*=' imgsmn-fade'].summon > img, [class*=' imgsmn-fade'].summon figcaption {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

/* imgsmn-fade
   ----------------------------- */
/* imgsmn-fade-in-up
   ----------------------------- */
.imgsmn-fade-in-up figcaption {
  -webkit-transform: translate(0, 15%);
  transform: translate(0, 15%);
}

/* imgsmn-fade-in-down
   ----------------------------- */
.imgsmn-fade-in-down figcaption {
  -webkit-transform: translate(0, -15%);
  transform: translate(0, -15%);
}

/* imgsmn-fade-in-left
   ----------------------------- */
.imgsmn-fade-in-left figcaption {
  -webkit-transform: translate(-15%, 0);
  transform: translate(-15%, 0);
}

/* imgsmn-fade-in-right
   ----------------------------- */
.imgsmn-fade-in-right figcaption {
  -webkit-transform: translate(15%, 0);
  transform: translate(15%, 0);
}

/* imgsmn-push-*
   ----------------------------- */
[class^='imgsmn-push-'].summon figcaption, [class*=' imgsmn-push-'].summon figcaption {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

/* imgsmn-push-up
   ----------------------------- */
.imgsmn-push-up figcaption {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

.imgsmn-push-up.summon > img {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

/* imgsmn-push-down
   ----------------------------- */
.imgsmn-push-down figcaption {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

.imgsmn-push-down.summon > img {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

/* imgsmn-push-left
   ----------------------------- */
.imgsmn-push-left figcaption {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.imgsmn-push-left.summon > img {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

/* imgsmn-push--right
   ----------------------------- */
.imgsmn-push-right figcaption {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

.imgsmn-push-right.summon > img {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

/* imgsmn-slide-*
   ----------------------------- */
[class^='imgsmn-slide-'].summon figcaption, [class*=' imgsmn-slide-'].summon figcaption {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

/* imgsmn-slide-up
   ----------------------------- */
.imgsmn-slide-up figcaption {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

/* imgsmn-slide-down
   ----------------------------- */
.imgsmn-slide-down figcaption {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

/* imgsmn-slide-left
   ----------------------------- */
.imgsmn-slide-left figcaption {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

/* imgsmn-slide-right
   ----------------------------- */
.imgsmn-slide-right figcaption {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

/* imgsmn-slide-top-left
   ----------------------------- */
.imgsmn-slide-top-left figcaption {
  -webkit-transform: translate(-100%, -100%);
  transform: translate(-100%, -100%);
}

/* imgsmn-slide-top-right
   ----------------------------- */
.imgsmn-slide-top-right figcaption {
  -webkit-transform: translate(100%, -100%);
  transform: translate(100%, -100%);
}

/* imgsmn-slide-bottom-left
   ----------------------------- */
.imgsmn-slide-bottom-left figcaption {
  -webkit-transform: translate(-100%, 100%);
  transform: translate(-100%, 100%);
}

/* imgsmn-slide-bottom-right
   ----------------------------- */
.imgsmn-slide-bottom-right figcaption {
  -webkit-transform: translate(100%, 100%);
  transform: translate(100%, 100%);
}

/* imgsmn-reveal-*
   ----------------------------- */
[class^='imgsmn-reveal-']:before, [class*=' imgsmn-reveal-']:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: '';
  background-color: hsl(355, 78%, 33%);
}

[class^='imgsmn-reveal-'] figcaption, [class*=' imgsmn-reveal-'] figcaption {
  opacity: 0;
}

[class^='imgsmn-reveal-'].summon:before, [class*=' imgsmn-reveal-'].summon:before {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

[class^='imgsmn-reveal-'].summon figcaption, [class*=' imgsmn-reveal-'].summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

/* imgsmn-reveal-up
   ----------------------------- */
.imgsmn-reveal-up:before {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

/* imgsmn-reveal-down
   ----------------------------- */
.imgsmn-reveal-down:before {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

/* imgsmn-reveal-left
   ----------------------------- */
.imgsmn-reveal-left:before {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

/* imgsmn-reveal-right
   ----------------------------- */
.imgsmn-reveal-right:before {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

/* imgsmn-reveal-top-left
   ----------------------------- */
.imgsmn-reveal-top-left:before {
  -webkit-transform: translate(-100%, -100%);
  transform: translate(-100%, -100%);
}

/* imgsmn-reveal-top-right
   ----------------------------- */
.imgsmn-reveal-top-right:before {
  -webkit-transform: translate(100%, -100%);
  transform: translate(100%, -100%);
}

/* imgsmn-reveal-bottom-left
   ----------------------------- */
.imgsmn-reveal-bottom-left:before {
  -webkit-transform: translate(-100%, 100%);
  transform: translate(-100%, 100%);
}

/* imgsmn-reveal-bottom-right
   ----------------------------- */
.imgsmn-reveal-bottom-right:before {
  -webkit-transform: translate(100%, 100%);
  transform: translate(100%, 100%);
}

/* imgsmn-hinge-*
   ----------------------------- */
[class^='imgsmn-hinge-'], [class*=' imgsmn-hinge-'] {
  -webkit-perspective: 50em;
  perspective: 50em;
}

[class^='imgsmn-hinge-'] figcaption, [class*=' imgsmn-hinge-'] figcaption {
  opacity: 0;
  z-index: 1;
}

[class^='imgsmn-hinge-'].summon img, [class*=' imgsmn-hinge-'].summon img {
  opacity: 0;
}

[class^='imgsmn-hinge-'].summon figcaption, [class*=' imgsmn-hinge-'].summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

/* imgsmn-hinge-up
   ----------------------------- */
.imgsmn-hinge-up img {
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
}

.imgsmn-hinge-up figcaption {
  -webkit-transform: rotateX(90deg);
  transform: rotateX(90deg);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
}

.imgsmn-hinge-up.summon > img {
  -webkit-transform: rotateX(-90deg);
  transform: rotateX(-90deg);
}

.imgsmn-hinge-up.summon figcaption {
  -webkit-transform: rotateX(0);
  transform: rotateX(0);
}

/* imgsmn-hinge-down
   ----------------------------- */
.imgsmn-hinge-down img {
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
}

.imgsmn-hinge-down figcaption {
  -webkit-transform: rotateX(-90deg);
  transform: rotateX(-90deg);
  -webkit-transform-origin: 50% -50%;
  transform-origin: 50% -50%;
}

.imgsmn-hinge-down.summon > img {
  -webkit-transform: rotateX(90deg);
  transform: rotateX(90deg);
  opacity: 0;
}

.imgsmn-hinge-down.summon figcaption {
  -webkit-transform: rotateX(0);
  transform: rotateX(0);
}

/* imgsmn-hinge-left
   ----------------------------- */
.imgsmn-hinge-left img {
  -webkit-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
}

.imgsmn-hinge-left figcaption {
  -webkit-transform: rotateY(-90deg);
  transform: rotateY(-90deg);
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}

.imgsmn-hinge-left.summon > img {
  -webkit-transform: rotateY(90deg);
  transform: rotateY(90deg);
}

.imgsmn-hinge-left.summon figcaption {
  -webkit-transform: rotateY(0);
  transform: rotateY(0);
}

/* imgsmn-hinge-right
   ----------------------------- */
.imgsmn-hinge-right img {
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}

.imgsmn-hinge-right figcaption {
  -webkit-transform: rotateY(90deg);
  transform: rotateY(90deg);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
}

.imgsmn-hinge-right.summon > img {
  -webkit-transform: rotateY(-90deg);
  transform: rotateY(-90deg);
}

.imgsmn-hinge-right.summon figcaption {
  -webkit-transform: rotateY(0);
  transform: rotateY(0);
}

/* imgsmn-flip-*
   ----------------------------- */
[class^='imgsmn-flip-'], [class*=' imgsmn-flip-'] {
  -webkit-perspective: 50em;
  perspective: 50em;
}

[class^='imgsmn-flip-'] img, [class*=' imgsmn-flip-'] img {
  backface-visibility: hidden;
}

[class^='imgsmn-flip-'] figcaption, [class*=' imgsmn-flip-'] figcaption {
  opacity: 0;
}

[class^='imgsmn-flip-'].summon > img, [class*=' imgsmn-flip-'].summon > img {
  opacity: 0;
}

[class^='imgsmn-flip-'].summon figcaption, [class*=' imgsmn-flip-'].summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.14s;
  transition-delay: 0.14s;
}

/* imgsmn-flip-horiz
   ----------------------------- */
.imgsmn-flip-horiz figcaption {
  -webkit-transform: rotateX(90deg);
  transform: rotateX(90deg);
  -webkit-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
}

.imgsmn-flip-horiz.summon img {
  -webkit-transform: rotateX(-180deg);
  transform: rotateX(-180deg);
}

.imgsmn-flip-horiz.summon figcaption {
  -webkit-transform: rotateX(0deg);
  transform: rotateX(0deg);
}

/* imgsmn-flip-vert
   ----------------------------- */
.imgsmn-flip-vert figcaption {
  -webkit-transform: rotateY(90deg);
  transform: rotateY(90deg);
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
}

.imgsmn-flip-vert.summon > img {
  -webkit-transform: rotateY(-180deg);
  transform: rotateY(-180deg);
}

.imgsmn-flip-vert.summon figcaption {
  -webkit-transform: rotateY(0deg);
  transform: rotateY(0deg);
}

/* imgsmn-flip-diag-1
   ----------------------------- */
.imgsmn-flip-diag-1 figcaption {
  -webkit-transform: rotate3d(1, -1, 0, 100deg);
  transform: rotate3d(1, -1, 0, 100deg);
}

.imgsmn-flip-diag-1.summon > img {
  -webkit-transform: rotate3d(-1, 1, 0, 100deg);
  transform: rotate3d(-1, 1, 0, 100deg);
}

.imgsmn-flip-diag-1.summon figcaption {
  -webkit-transform: rotate3d(0, 0, 0, 0deg);
  transform: rotate3d(0, 0, 0, 0deg);
}

/* imgsmn-flip-diag-2
   ----------------------------- */
.imgsmn-flip-diag-2 figcaption {
  -webkit-transform: rotate3d(1, 1, 0, 100deg);
  transform: rotate3d(1, 1, 0, 100deg);
}

.imgsmn-flip-diag-2.summon > img {
  -webkit-transform: rotate3d(-1, -1, 0, 100deg);
  transform: rotate3d(-1, -1, 0, 100deg);
}

.imgsmn-flip-diag-2.summon figcaption {
  -webkit-transform: rotate3d(0, 0, 0, 0deg);
  transform: rotate3d(0, 0, 0, 0deg);
}

/* imgsmn-shutter-out-*
   ----------------------------- */
[class^='imgsmn-shutter-out-']:before, [class*=' imgsmn-shutter-out-']:before {
  background: hsl(355, 78%, 33%);
  position: absolute;
  content: '';
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

[class^='imgsmn-shutter-out-'] figcaption, [class*=' imgsmn-shutter-out-'] figcaption {
  opacity: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

[class^='imgsmn-shutter-out-'].summon:before, [class*=' imgsmn-shutter-out-'].summon:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

[class^='imgsmn-shutter-out-'].summon figcaption, [class*=' imgsmn-shutter-out-'].summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

/* imgsmn-shutter-out-horiz
   ----------------------------- */
.imgsmn-shutter-out-horiz:before {
  left: 50%;
  right: 50%;
  top: 0;
  bottom: 0;
}

.imgsmn-shutter-out-horiz.summon:before {
  left: 0;
  right: 0;
}

/* imgsmn-shutter-out-vert
   ----------------------------- */
.imgsmn-shutter-out-vert:before {
  top: 50%;
  bottom: 50%;
  left: 0;
  right: 0;
}

.imgsmn-shutter-out-vert.summon:before {
  top: 0;
  bottom: 0;
}

/* imgsmn-shutter-out-diag-1
   ----------------------------- */
.imgsmn-shutter-out-diag-1:before {
  top: 50%;
  bottom: 50%;
  left: -35%;
  right: -35%;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.imgsmn-shutter-out-diag-1.summon:before {
  top: -35%;
  bottom: -35%;
}

/* imgsmn-shutter-out-diag-2
   ----------------------------- */
.imgsmn-shutter-out-diag-2:before {
  top: 50%;
  bottom: 50%;
  left: -35%;
  right: -35%;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.imgsmn-shutter-out-diag-2.summon:before {
  top: -35%;
  bottom: -35%;
}

/* imgsmn-shutter-in-*
   ----------------------------- */
[class^='imgsmn-shutter-in-']:after, [class^='imgsmn-shutter-in-']:before, [class*=' imgsmn-shutter-in-']:after, [class*=' imgsmn-shutter-in-']:before {
  background: hsl(355, 78%, 33%);
  position: absolute;
  content: '';
}

[class^='imgsmn-shutter-in-']:after, [class*=' imgsmn-shutter-in-']:after {
  top: 0;
  left: 0;
}

[class^='imgsmn-shutter-in-']:before, [class*=' imgsmn-shutter-in-']:before {
  right: 0;
  bottom: 0;
}

[class^='imgsmn-shutter-in-'] figcaption, [class*=' imgsmn-shutter-in-'] figcaption {
  opacity: 0;
  z-index: 1;
}

[class^='imgsmn-shutter-in-'].summon figcaption, [class*=' imgsmn-shutter-in-'].summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

/* imgsmn-shutter-in-horiz
   ----------------------------- */
.imgsmn-shutter-in-horiz:after, .imgsmn-shutter-in-horiz:before {
  width: 0;
  height: 100%;
}

.imgsmn-shutter-in-horiz.summon:after, .imgsmn-shutter-in-horiz.summon:before {
  width: 50%;
}

/* imgsmn-shutter-in-vert
   ----------------------------- */
.imgsmn-shutter-in-vert:after, .imgsmn-shutter-in-vert:before {
  height: 0;
  width: 100%;
}

.imgsmn-shutter-in-vert.summon:after, .imgsmn-shutter-in-vert.summon:before {
  height: 50%;
}

/* imgsmn-shutter-in-out-horiz
   ----------------------------- */
.imgsmn-shutter-in-out-horiz:after, .imgsmn-shutter-in-out-horiz:before {
  width: 0;
  height: 100%;
  opacity: 0.75;
}

.imgsmn-shutter-in-out-horiz.summon:after, .imgsmn-shutter-in-out-horiz.summon:before {
  width: 100%;
}

/* imgsmn-shutter-in-out-vert
   ----------------------------- */
.imgsmn-shutter-in-out-vert:after, .imgsmn-shutter-in-out-vert:before {
  height: 0;
  width: 100%;
  opacity: 0.75;
}

.imgsmn-shutter-in-out-vert.summon:after, .imgsmn-shutter-in-out-vert.summon:before {
  height: 100%;
}

/* imgsmn-shutter-in-out-diag-1
   ----------------------------- */
.imgsmn-shutter-in-out-diag-1:after, .imgsmn-shutter-in-out-diag-1:before {
  width: 200%;
  height: 200%;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
  opacity: 0.75;
}

.imgsmn-shutter-in-out-diag-1:after {
  -webkit-transform: skew(-45deg) translateX(-150%);
  transform: skew(-45deg) translateX(-150%);
}

.imgsmn-shutter-in-out-diag-1:before {
  -webkit-transform: skew(-45deg) translateX(150%);
  transform: skew(-45deg) translateX(150%);
}

.imgsmn-shutter-in-out-diag-1.summon:after {
  -webkit-transform: skew(-45deg) translateX(-50%);
  transform: skew(-45deg) translateX(-50%);
}

.imgsmn-shutter-in-out-diag-1.summon:before {
  -webkit-transform: skew(-45deg) translateX(50%);
  transform: skew(-45deg) translateX(50%);
}

/* imgsmn-shutter-in-out-diag-2
   ----------------------------- */
.imgsmn-shutter-in-out-diag-2:after, .imgsmn-shutter-in-out-diag-2:before {
  width: 200%;
  height: 200%;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
  opacity: 0.75;
}

.imgsmn-shutter-in-out-diag-2:after {
  -webkit-transform: skew(45deg) translateX(-100%);
  transform: skew(45deg) translateX(-100%);
}

.imgsmn-shutter-in-out-diag-2:before {
  -webkit-transform: skew(45deg) translateX(100%);
  transform: skew(45deg) translateX(100%);
}

.imgsmn-shutter-in-out-diag-2.summon:after {
  -webkit-transform: skew(45deg) translateX(0%);
  transform: skew(45deg) translateX(0%);
}

.imgsmn-shutter-in-out-diag-2.summon:before {
  -webkit-transform: skew(45deg) translateX(0%);
  transform: skew(45deg) translateX(0%);
}

/* imgsmn-fold*
   ----------------------------- */
[class^='imgsmn-fold'], [class*=' imgsmn-fold'] {
  -webkit-perspective: 50em;
  perspective: 50em;
}

[class^='imgsmn-fold'] img, [class*=' imgsmn-fold'] img {
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
}

[class^='imgsmn-fold'] figcaption, [class*=' imgsmn-fold'] figcaption {
  z-index: 1;
  opacity: 0;
}

[class^='imgsmn-fold'].summon > img, [class*=' imgsmn-fold'].summon > img {
  opacity: 0;
  -webkit-transition-delay: 0;
  transition-delay: 0;
}

[class^='imgsmn-fold'].summon figcaption, [class*=' imgsmn-fold'].summon figcaption {
  -webkit-transform: rotateX(0) translate3d(0, 0%, 0) scale(1);
  transform: rotateX(0) translate3d(0, 0%, 0) scale(1);
  opacity: 1;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

/* imgsmn-fold-up
   ----------------------------- */
.imgsmn-fold-up > img {
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
}

.imgsmn-fold-up figcaption {
  -webkit-transform: rotateX(-90deg) translate3d(0%, -50%, 0) scale(0.6);
  transform: rotateX(-90deg) translate3d(0%, -50%, 0) scale(0.6);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
}

.imgsmn-fold-up.summon > img {
  -webkit-transform: rotateX(90deg) scale(0.6) translateY(50%);
  transform: rotateX(90deg) scale(0.6) translateY(50%);
}

/* imgsmn-fold-down
   ----------------------------- */
.imgsmn-fold-down > img {
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
}

.imgsmn-fold-down figcaption {
  -webkit-transform: rotateX(90deg) translate3d(0%, 50%, 0) scale(0.6);
  transform: rotateX(90deg) translate3d(0%, 50%, 0) scale(0.6);
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
}

.imgsmn-fold-down.summon > img {
  -webkit-transform: rotateX(-90deg) scale(0.6) translateY(-50%);
  transform: rotateX(-90deg) scale(0.6) translateY(-50%);
}

/* imgsmn-fold-left
   ----------------------------- */
.imgsmn-fold-left > img {
  -webkit-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
}

.imgsmn-fold-left figcaption {
  -webkit-transform: rotateY(90deg) translate3d(-50%, 0%, 0) scale(0.6);
  transform: rotateY(90deg) translate3d(-50%, 0%, 0) scale(0.6);
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}

.imgsmn-fold-left.summon > img {
  -webkit-transform: rotateY(-90deg) scale(0.6) translateX(50%);
  transform: rotateY(-90deg) scale(0.6) translateX(50%);
}

/* imgsmn-fold-right
   ----------------------------- */
.imgsmn-fold-right > img {
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}

.imgsmn-fold-right figcaption {
  -webkit-transform: rotateY(-90deg) translate3d(50%, 0%, 0) scale(0.6);
  transform: rotateY(-90deg) translate3d(50%, 0%, 0) scale(0.6);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
}

.imgsmn-fold-right.summon > img {
  -webkit-transform: rotateY(90deg) scale(0.6) translateX(-50%);
  transform: rotateY(90deg) scale(0.6) translateX(-50%);
}

/* imgsmn-zoom-in
   ----------------------------- */
.imgsmn-zoom-in figcaption {
  opacity: 0;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
}

.imgsmn-zoom-in.summon figcaption {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

/* imgsmn-zoom-out*
   ----------------------------- */
[class^='imgsmn-zoom-out'] figcaption, [class*=' imgsmn-zoom-out'] figcaption {
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  opacity: 0;
}

[class^='imgsmn-zoom-out'].summon figcaption, [class^='imgsmn-zoom-out'].hover figcaption, [class*=' imgsmn-zoom-out'].summon figcaption, [class*=' imgsmn-zoom-out'].hover figcaption {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-zoom-out
   ----------------------------- */
.imgsmn-zoom-out.summon > img {
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  opacity: 0;
}

/* imgsmn-zoom-out-up
   ----------------------------- */
.imgsmn-zoom-out-up.summon > img, .imgsmn-zoom-out-up.hover > img {
  -webkit-animation: imgsmn-zoom-out-up 0.4025s linear;
  animation: imgsmn-zoom-out-up 0.4025s linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

@-webkit-keyframes imgsmn-zoom-out-up
{
  50%
{
    -webkit-transform: scale(0.8) translateY(0%);
    transform: scale(0.8) translateY(0%);
    opacity: 0.5;
  }
  100%
{
    -webkit-transform: scale(0.8) translateY(-150%);
    transform: scale(0.8) translateY(-150%);
    opacity: 0.5;
  }
}

@keyframes imgsmn-zoom-out-up
{
  50%
{
    -webkit-transform: scale(0.8) translateY(0%);
    transform: scale(0.8) translateY(0%);
    opacity: 0.5;
  }
  100%
{
    -webkit-transform: scale(0.8) translateY(-150%);
    transform: scale(0.8) translateY(-150%);
    opacity: 0.5;
  }
}

/* imgsmn-zoom-out-down
   ----------------------------- */
.imgsmn-zoom-out-down.summon > img, .imgsmn-zoom-out-down.hover > img {
  -webkit-animation: imgsmn-zoom-out-down 0.4025s linear;
  animation: imgsmn-zoom-out-down 0.4025s linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

@-webkit-keyframes imgsmn-zoom-out-down
{
  50%
{
    -webkit-transform: scale(0.8) translateY(0%);
    transform: scale(0.8) translateY(0%);
    opacity: 0.5;
  }
  100%
{
    -webkit-transform: scale(0.8) translateY(150%);
    transform: scale(0.8) translateY(150%);
    opacity: 0.5;
  }
}

@keyframes imgsmn-zoom-out-down
{
  50%
{
    -webkit-transform: scale(0.8) translateY(0%);
    transform: scale(0.8) translateY(0%);
    opacity: 0.5;
  }
  100%
{
    -webkit-transform: scale(0.8) translateY(150%);
    transform: scale(0.8) translateY(150%);
    opacity: 0.5;
  }
}

/* imgsmn-zoom-out-left
   ----------------------------- */
.imgsmn-zoom-out-left.summon > img, .imgsmn-zoom-out-left.hover > img {
  -webkit-animation: imgsmn-zoom-out-left 0.4025s linear;
  animation: imgsmn-zoom-out-left 0.4025s linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

@-webkit-keyframes imgsmn-zoom-out-left
{
  50%
{
    -webkit-transform: scale(0.8) translateX(0%);
    transform: scale(0.8) translateX(0%);
    opacity: 0.5;
  }
  100%
{
    -webkit-transform: scale(0.8) translateX(-150%);
    transform: scale(0.8) translateX(-150%);
    opacity: 0.5;
  }
}

@keyframes imgsmn-zoom-out-left
{
  50%
{
    -webkit-transform: scale(0.8) translateX(0%);
    transform: scale(0.8) translateX(0%);
    opacity: 0.5;
  }
  100%
{
    -webkit-transform: scale(0.8) translateX(-150%);
    transform: scale(0.8) translateX(-150%);
    opacity: 0.5;
  }
}

/* imgsmn-zoom-out-right
   ----------------------------- */
.imgsmn-zoom-out-right.summon > img, .imgsmn-zoom-out-right.hover > img {
  -webkit-animation: imgsmn-zoom-out-right 0.4025s linear;
  animation: imgsmn-zoom-out-right 0.4025s linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

@-webkit-keyframes imgsmn-zoom-out-right
{
  50%
{
    -webkit-transform: scale(0.8) translateX(0%);
    transform: scale(0.8) translateX(0%);
    opacity: 0.5;
  }
  100%
{
    -webkit-transform: scale(0.8) translateX(150%);
    transform: scale(0.8) translateX(150%);
    opacity: 0.5;
  }
}

@keyframes imgsmn-zoom-out-right
{
  50%
{
    -webkit-transform: scale(0.8) translateX(0%);
    transform: scale(0.8) translateX(0%);
    opacity: 0.5;
  }
  100%
{
    -webkit-transform: scale(0.8) translateX(150%);
    transform: scale(0.8) translateX(150%);
    opacity: 0.5;
  }
}

/* imgsmn-zoom-out-flip-horiz
   ----------------------------- */
.imgsmn-zoom-out-flip-horiz {
  -webkit-perspective: 50em;
  perspective: 50em;
}

.imgsmn-zoom-out-flip-horiz figcaption {
  opacity: 0;
  -webkit-transform: rotateX(90deg) translateY(-100%) scale(0.5);
  transform: rotateX(90deg) translateY(-100%) scale(0.5);
}

.imgsmn-zoom-out-flip-horiz.summon > img, .imgsmn-zoom-out-flip-horiz.hover > img {
  -webkit-transform: rotateX(-100deg) translateY(50%) scale(0.5);
  transform: rotateX(-100deg) translateY(50%) scale(0.5);
  opacity: 0;
  -webkit-transition-delay: 0;
  transition-delay: 0;
}

.imgsmn-zoom-out-flip-horiz.summon figcaption, .imgsmn-zoom-out-flip-horiz.hover figcaption {
  -webkit-transform: rotateX(0) translateY(0%) scale(1);
  transform: rotateX(0) translateY(0%) scale(1);
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-zoom-out-flip-vert
   ----------------------------- */
.imgsmn-zoom-out-flip-vert {
  -webkit-perspective: 50em;
  perspective: 50em;
}

.imgsmn-zoom-out-flip-vert figcaption {
  opacity: 0;
  -webkit-transform: rotateY(90deg) translate(50%, 0) scale(0.5);
  transform: rotateY(90deg) translate(50%, 0) scale(0.5);
}

.imgsmn-zoom-out-flip-vert.summon > img, .imgsmn-zoom-out-flip-vert.hover > img {
  -webkit-transform: rotateY(-100deg) translateX(50%) scale(0.5);
  transform: rotateY(-100deg) translateX(50%) scale(0.5);
  opacity: 0;
  -webkit-transition-delay: 0;
  transition-delay: 0;
}

.imgsmn-zoom-out-flip-vert.summon figcaption, .imgsmn-zoom-out-flip-vert.hover figcaption {
  -webkit-transform: rotateY(0) translate(0, 0) scale(1);
  transform: rotateY(0) translate(0, 0) scale(1);
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-blur
   ----------------------------- */
.imgsmn-blur figcaption {
  opacity: 0;
}

.imgsmn-blur.summon > img {
  -webkit-filter: blur(30px);
  filter: blur(30px);
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
  opacity: 0;
}

.imgsmn-blur.summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

/* imgsmn-blocks*
   ----------------------------- */
[class^='imgsmn-blocks']:before, [class^='imgsmn-blocks']:after, [class^='imgsmn-blocks'] figcaption:before, [class^='imgsmn-blocks'] figcaption:after, [class*=' imgsmn-blocks']:before, [class*=' imgsmn-blocks']:after, [class*=' imgsmn-blocks'] figcaption:before, [class*=' imgsmn-blocks'] figcaption:after {
  background-color: hsl(355, 78%, 33%);
  opacity: 0;
  position: absolute;
  content: '';
  height: 50%;
  width: 50%;
}

[class^='imgsmn-blocks']:before, [class^='imgsmn-blocks']:after, [class*=' imgsmn-blocks']:before, [class*=' imgsmn-blocks']:after {
  z-index: 1;
}

[class^='imgsmn-blocks']:before, [class*=' imgsmn-blocks']:before {
  top: 0;
  right: 0;
}

[class^='imgsmn-blocks']:after, [class*=' imgsmn-blocks']:after {
  bottom: 0;
  left: 0;
}

[class^='imgsmn-blocks'] figcaption, [class*=' imgsmn-blocks'] figcaption {
  z-index: 3;
  background-color: transparent;
}

[class^='imgsmn-blocks'] figcaption *, [class*=' imgsmn-blocks'] figcaption * {
  opacity: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

[class^='imgsmn-blocks'] figcaption:before, [class^='imgsmn-blocks'] figcaption:after, [class*=' imgsmn-blocks'] figcaption:before, [class*=' imgsmn-blocks'] figcaption:after {
  z-index: -1;
}

[class^='imgsmn-blocks'] figcaption:before, [class*=' imgsmn-blocks'] figcaption:before {
  top: 0;
  left: 0;
}

[class^='imgsmn-blocks'] figcaption:after, [class*=' imgsmn-blocks'] figcaption:after {
  bottom: 0;
  right: 0;
}

[class^='imgsmn-blocks'] a, [class*=' imgsmn-blocks'] a {
  z-index: 3;
}

[class^='imgsmn-blocks'].summon:before, [class^='imgsmn-blocks'].summon:after, [class^='imgsmn-blocks'].summon figcaption:before, [class^='imgsmn-blocks'].summon figcaption:after, [class*=' imgsmn-blocks'].summon:before, [class*=' imgsmn-blocks'].summon:after, [class*=' imgsmn-blocks'].summon figcaption:before, [class*=' imgsmn-blocks'].summon figcaption:after {
  -webkit-transform: translate(0, 0) scale(1);
  transform: translate(0, 0) scale(1);
  opacity: 1;
}

[class^='imgsmn-blocks'].summon figcaption *, [class*=' imgsmn-blocks'].summon figcaption * {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-blocks-rotate-left
   ----------------------------- */
.imgsmn-blocks-rotate-left:before {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

.imgsmn-blocks-rotate-left:after {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

.imgsmn-blocks-rotate-left figcaption:before {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.imgsmn-blocks-rotate-left figcaption:after {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

/* imgsmn-blocks-rotate-right
   ----------------------------- */
.imgsmn-blocks-rotate-right:before {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

.imgsmn-blocks-rotate-right:after {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.imgsmn-blocks-rotate-right figcaption:before {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

.imgsmn-blocks-rotate-right figcaption:after {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

/* imgsmn-blocks-rotate-in-left
   ----------------------------- */
.imgsmn-blocks-rotate-in-left:before {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

.imgsmn-blocks-rotate-in-left:after {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

.imgsmn-blocks-rotate-in-left figcaption:before {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

.imgsmn-blocks-rotate-in-left figcaption:after {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

/* imgsmn-blocks-rotate-in-right
   ----------------------------- */
.imgsmn-blocks-rotate-in-right:before {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.imgsmn-blocks-rotate-in-right:after {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

.imgsmn-blocks-rotate-in-right figcaption:before {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

.imgsmn-blocks-rotate-in-right figcaption:after {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

/* imgsmn-blocks-in
   ----------------------------- */
.imgsmn-blocks-in:before {
  -webkit-transform: translate(100%, -100%);
  transform: translate(100%, -100%);
}

.imgsmn-blocks-in:after {
  -webkit-transform: translate(-100%, 100%);
  transform: translate(-100%, 100%);
}

.imgsmn-blocks-in figcaption:before {
  -webkit-transform: translate(-100%, -100%);
  transform: translate(-100%, -100%);
}

.imgsmn-blocks-in figcaption:after {
  -webkit-transform: translate(100%, 100%);
  transform: translate(100%, 100%);
}

/* imgsmn-blocks-out
   ----------------------------- */
.imgsmn-blocks-out:before {
  -webkit-transform: translate(-100%, 100%);
  transform: translate(-100%, 100%);
}

.imgsmn-blocks-out:after {
  -webkit-transform: translate(100%, -100%);
  transform: translate(100%, -100%);
}

.imgsmn-blocks-out figcaption:before {
  -webkit-transform: translate(100%, 100%);
  transform: translate(100%, 100%);
}

.imgsmn-blocks-out figcaption:after {
  -webkit-transform: translate(-100%, -100%);
  transform: translate(-100%, -100%);
}

/* imgsmn-blocks-float-up
   ----------------------------- */
.imgsmn-blocks-float-up:before, .imgsmn-blocks-float-up:after, .imgsmn-blocks-float-up figcaption:before, .imgsmn-blocks-float-up figcaption:after {
  -webkit-transform: translate(0, 200%);
  transform: translate(0, 200%);
}

.imgsmn-blocks-float-up:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-float-up:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-float-up figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blocks-float-up figcaption:after {
  -webkit-transition-delay: 0.14s;
  transition-delay: 0.14s;
}

.imgsmn-blocks-float-up.summon:before {
  -webkit-transition-delay: 0.14s;
  transition-delay: 0.14s;
}

.imgsmn-blocks-float-up.summon:after {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blocks-float-up.summon figcaption:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-float-up.summon figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-float-up.summon figcaption * {
  -webkit-transition-delay: 0.49s;
  transition-delay: 0.49s;
}

/* imgsmn-blocks-float-down
   ----------------------------- */
.imgsmn-blocks-float-down:before, .imgsmn-blocks-float-down:after, .imgsmn-blocks-float-down figcaption:before, .imgsmn-blocks-float-down figcaption:after {
  -webkit-transform: translate(0, -200%);
  transform: translate(0, -200%);
}

.imgsmn-blocks-float-down:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-float-down:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-float-down figcaption:before {
  -webkit-transition-delay: 0.14s;
  transition-delay: 0.14s;
}

.imgsmn-blocks-float-down figcaption:after {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blocks-float-down.summon:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-float-down.summon:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-float-down.summon figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blocks-float-down.summon figcaption:after {
  -webkit-transition-delay: 0.14s;
  transition-delay: 0.14s;
}

.imgsmn-blocks-float-down.summon figcaption * {
  -webkit-transition-delay: 0.49s;
  transition-delay: 0.49s;
}

/* imgsmn-blocks-float-left
   ----------------------------- */
.imgsmn-blocks-float-left:before, .imgsmn-blocks-float-left:after, .imgsmn-blocks-float-left figcaption:before, .imgsmn-blocks-float-left figcaption:after {
  -webkit-transform: translate(200%, 0);
  transform: translate(200%, 0);
}

.imgsmn-blocks-float-left:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-float-left:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-float-left figcaption:before {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-blocks-float-left figcaption:after {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blocks-float-left.summon:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blocks-float-left.summon:after {
  -webkit-transition-delay: 0.14s;
  transition-delay: 0.14s;
}

.imgsmn-blocks-float-left.summon figcaption:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-float-left.summon figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-float-left.summon figcaption * {
  -webkit-transition-delay: 0.49s;
  transition-delay: 0.49s;
}

/* imgsmn-blocks-float-right
   ----------------------------- */
.imgsmn-blocks-float-right:before, .imgsmn-blocks-float-right:after, .imgsmn-blocks-float-right figcaption:before, .imgsmn-blocks-float-right figcaption:after {
  -webkit-transform: translate(-200%, 0);
  transform: translate(-200%, 0);
}

.imgsmn-blocks-float-right:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-float-right:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-float-right figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blocks-float-right figcaption:after {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-blocks-float-right.summon:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-float-right.summon:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-float-right.summon figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blocks-float-right.summon figcaption:after {
  -webkit-transition-delay: 0.14s;
  transition-delay: 0.14s;
}

.imgsmn-blocks-float-right.summon figcaption * {
  -webkit-transition-delay: 0.49s;
  transition-delay: 0.49s;
}

/* imgsmn-blocks-zoom-top-left
   ----------------------------- */
.imgsmn-blocks-zoom-top-left:before, .imgsmn-blocks-zoom-top-left:after, .imgsmn-blocks-zoom-top-left figcaption:before, .imgsmn-blocks-zoom-top-left figcaption:after {
  -webkit-transform: scale(0.05);
  transform: scale(0.05);
}

.imgsmn-blocks-zoom-top-left.summon:before {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-blocks-zoom-top-left.summon:after {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-blocks-zoom-top-left.summon figcaption:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-zoom-top-left.summon figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-zoom-top-left.summon figcaption * {
  -webkit-transition-delay: 0.49s;
  transition-delay: 0.49s;
}

/* imgsmn-blocks-zoom-top-right
   ----------------------------- */
.imgsmn-blocks-zoom-top-right:before, .imgsmn-blocks-zoom-top-right:after, .imgsmn-blocks-zoom-top-right figcaption:before, .imgsmn-blocks-zoom-top-right figcaption:after {
  -webkit-transform: scale(0.05);
  transform: scale(0.05);
}

.imgsmn-blocks-zoom-top-right.summon:before {
  -webkit-transition-delay: 0, 0s;
  transition-delay: 0, 0s;
}

.imgsmn-blocks-zoom-top-right.summon:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-zoom-top-right.summon figcaption:before {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-blocks-zoom-top-right.summon figcaption:after {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-blocks-zoom-top-right.summon figcaption * {
  -webkit-transition-delay: 0.49s;
  transition-delay: 0.49s;
}

/* imgsmn-blocks-zoom-bottom-left
   ----------------------------- */
.imgsmn-blocks-zoom-bottom-left:before, .imgsmn-blocks-zoom-bottom-left:after, .imgsmn-blocks-zoom-bottom-left figcaption:before, .imgsmn-blocks-zoom-bottom-left figcaption:after {
  -webkit-transform: scale(0.05);
  transform: scale(0.05);
}

.imgsmn-blocks-zoom-bottom-left.summon:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-zoom-bottom-left.summon:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-zoom-bottom-left.summon figcaption:before {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-blocks-zoom-bottom-left.summon figcaption:after {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-blocks-zoom-bottom-left.summon figcaption * {
  -webkit-transition-delay: 0.49s;
  transition-delay: 0.49s;
}

/* imgsmn-blocks-zoom-bottom-right
   ----------------------------- */
.imgsmn-blocks-zoom-bottom-right:before, .imgsmn-blocks-zoom-bottom-right:after, .imgsmn-blocks-zoom-bottom-right figcaption:before, .imgsmn-blocks-zoom-bottom-right figcaption:after {
  -webkit-transform: scale(0.05);
  transform: scale(0.05);
}

.imgsmn-blocks-zoom-bottom-right.summon:before {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-blocks-zoom-bottom-right.summon:after {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-blocks-zoom-bottom-right.summon figcaption:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blocks-zoom-bottom-right.summon figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blocks-zoom-bottom-right.summon figcaption * {
  -webkit-transition-delay: 0.49s;
  transition-delay: 0.49s;
}

/* imgsmn-strip-shutter-*
   ----------------------------- */
[class^='imgsmn-strip-shutter']:before, [class^='imgsmn-strip-shutter']:after, [class^='imgsmn-strip-shutter'] figcaption:before, [class^='imgsmn-strip-shutter'] figcaption:after, [class*=' imgsmn-strip-shutter']:before, [class*=' imgsmn-strip-shutter']:after, [class*=' imgsmn-strip-shutter'] figcaption:before, [class*=' imgsmn-strip-shutter'] figcaption:after {
  background-color: hsl(355, 78%, 33%);
  opacity: 0;
  position: absolute;
  content: '';
}

[class^='imgsmn-strip-shutter']:before, [class^='imgsmn-strip-shutter']:after, [class*=' imgsmn-strip-shutter']:before, [class*=' imgsmn-strip-shutter']:after {
  z-index: 1;
}

[class^='imgsmn-strip-shutter'] figcaption, [class*=' imgsmn-strip-shutter'] figcaption {
  z-index: 3;
  background-color: transparent;
}

[class^='imgsmn-strip-shutter'] figcaption *, [class*=' imgsmn-strip-shutter'] figcaption * {
  opacity: 0;
}

[class^='imgsmn-strip-shutter'] figcaption:before, [class^='imgsmn-strip-shutter'] figcaption:after, [class*=' imgsmn-strip-shutter'] figcaption:before, [class*=' imgsmn-strip-shutter'] figcaption:after {
  z-index: -1;
}

[class^='imgsmn-strip-shutter'] a, [class*=' imgsmn-strip-shutter'] a {
  z-index: 3;
}

[class^='imgsmn-strip-shutter'].summon:before, [class^='imgsmn-strip-shutter'].summon:after, [class^='imgsmn-strip-shutter'].summon figcaption:before, [class^='imgsmn-strip-shutter'].summon figcaption:after, [class*=' imgsmn-strip-shutter'].summon:before, [class*=' imgsmn-strip-shutter'].summon:after, [class*=' imgsmn-strip-shutter'].summon figcaption:before, [class*=' imgsmn-strip-shutter'].summon figcaption:after {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

[class^='imgsmn-strip-shutter'].summon figcaption *, [class*=' imgsmn-strip-shutter'].summon figcaption * {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-strip-shutter-up
   ----------------------------- */
.imgsmn-strip-shutter-up:before, .imgsmn-strip-shutter-up:after, .imgsmn-strip-shutter-up figcaption:before, .imgsmn-strip-shutter-up figcaption:after {
  height: 26%;
  width: 100%;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  left: 0;
}

.imgsmn-strip-shutter-up:before {
  top: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-strip-shutter-up:after {
  top: 25%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-shutter-up figcaption:before {
  top: 50%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-shutter-up figcaption:after {
  top: 75%;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-strip-shutter-down
   ----------------------------- */
.imgsmn-strip-shutter-down:before, .imgsmn-strip-shutter-down:after, .imgsmn-strip-shutter-down figcaption:before, .imgsmn-strip-shutter-down figcaption:after {
  height: 26%;
  width: 100%;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  left: 0;
}

.imgsmn-strip-shutter-down:before {
  top: 0;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-strip-shutter-down:after {
  top: 25%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-shutter-down figcaption:before {
  top: 50%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-shutter-down figcaption:after {
  top: 75%;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-strip-shutter-left
   ----------------------------- */
.imgsmn-strip-shutter-left:before, .imgsmn-strip-shutter-left:after, .imgsmn-strip-shutter-left figcaption:before, .imgsmn-strip-shutter-left figcaption:after {
  width: 26%;
  height: 100%;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  top: 0;
}

.imgsmn-strip-shutter-left:before {
  left: 0;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-strip-shutter-left:after {
  left: 25%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-shutter-left figcaption:before {
  left: 50%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-shutter-left figcaption:after {
  left: 75%;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-strip-shutter-right
   ----------------------------- */
.imgsmn-strip-shutter-right:before, .imgsmn-strip-shutter-right:after, .imgsmn-strip-shutter-right figcaption:before, .imgsmn-strip-shutter-right figcaption:after {
  width: 26%;
  height: 100%;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  top: 0;
}

.imgsmn-strip-shutter-right:before {
  left: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-strip-shutter-right:after {
  left: 25%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-shutter-right figcaption:before {
  left: 50%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-shutter-right figcaption:after {
  left: 75%;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-strip-horiz-*
   ----------------------------- */
[class^='imgsmn-strip-horiz']:before, [class^='imgsmn-strip-horiz']:after, [class^='imgsmn-strip-horiz'] figcaption:before, [class^='imgsmn-strip-horiz'] figcaption:after, [class*=' imgsmn-strip-horiz']:before, [class*=' imgsmn-strip-horiz']:after, [class*=' imgsmn-strip-horiz'] figcaption:before, [class*=' imgsmn-strip-horiz'] figcaption:after {
  background-color: hsl(355, 78%, 33%);
  opacity: 0;
  position: absolute;
  content: '';
  height: 26%;
  width: 100%;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  left: 0;
}

[class^='imgsmn-strip-horiz']:before, [class^='imgsmn-strip-horiz']:after, [class*=' imgsmn-strip-horiz']:before, [class*=' imgsmn-strip-horiz']:after {
  z-index: 1;
}

[class^='imgsmn-strip-horiz']:before, [class*=' imgsmn-strip-horiz']:before {
  top: 0;
}

[class^='imgsmn-strip-horiz']:after, [class*=' imgsmn-strip-horiz']:after {
  top: 25%;
}

[class^='imgsmn-strip-horiz'] figcaption, [class*=' imgsmn-strip-horiz'] figcaption {
  z-index: 3;
  background-color: transparent;
}

[class^='imgsmn-strip-horiz'] figcaption *, [class*=' imgsmn-strip-horiz'] figcaption * {
  opacity: 0;
}

[class^='imgsmn-strip-horiz'] figcaption:before, [class^='imgsmn-strip-horiz'] figcaption:after, [class*=' imgsmn-strip-horiz'] figcaption:before, [class*=' imgsmn-strip-horiz'] figcaption:after {
  z-index: -1;
}

[class^='imgsmn-strip-horiz'] figcaption:before, [class*=' imgsmn-strip-horiz'] figcaption:before {
  top: 50%;
}

[class^='imgsmn-strip-horiz'] figcaption:after, [class*=' imgsmn-strip-horiz'] figcaption:after {
  top: 75%;
}

[class^='imgsmn-strip-horiz'] a, [class*=' imgsmn-strip-horiz'] a {
  z-index: 3;
}

[class^='imgsmn-strip-horiz'].summon:before, [class^='imgsmn-strip-horiz'].summon:after, [class^='imgsmn-strip-horiz'].summon figcaption:before, [class^='imgsmn-strip-horiz'].summon figcaption:after, [class*=' imgsmn-strip-horiz'].summon:before, [class*=' imgsmn-strip-horiz'].summon:after, [class*=' imgsmn-strip-horiz'].summon figcaption:before, [class*=' imgsmn-strip-horiz'].summon figcaption:after {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

[class^='imgsmn-strip-horiz'].summon figcaption *, [class*=' imgsmn-strip-horiz'].summon figcaption * {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-strip-horiz-up
   ----------------------------- */
.imgsmn-strip-horiz-up:before, .imgsmn-strip-horiz-up:after, .imgsmn-strip-horiz-up figcaption:before, .imgsmn-strip-horiz-up figcaption:after {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
}

/* imgsmn-strip-horiz-down
   ----------------------------- */
.imgsmn-strip-horiz-down:before, .imgsmn-strip-horiz-down:after, .imgsmn-strip-horiz-down figcaption:before, .imgsmn-strip-horiz-down figcaption:after {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
}

/* imgsmn-strip-horiz-top-left
   ----------------------------- */
.imgsmn-strip-horiz-top-left:before, .imgsmn-strip-horiz-top-left:after, .imgsmn-strip-horiz-top-left figcaption:before, .imgsmn-strip-horiz-top-left figcaption:after {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-strip-horiz-top-left:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-strip-horiz-top-left:after {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-horiz-top-left figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-horiz-top-left figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-strip-horiz-top-right
   ----------------------------- */
.imgsmn-strip-horiz-top-right:before, .imgsmn-strip-horiz-top-right:after, .imgsmn-strip-horiz-top-right figcaption:before, .imgsmn-strip-horiz-top-right figcaption:after {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

.imgsmn-strip-horiz-top-right:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-strip-horiz-top-right:after {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-horiz-top-right figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-horiz-top-right figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-strip-horiz-bottom-left
   ----------------------------- */
.imgsmn-strip-horiz-bottom-left:before, .imgsmn-strip-horiz-bottom-left:after, .imgsmn-strip-horiz-bottom-left figcaption:before, .imgsmn-strip-horiz-bottom-left figcaption:after {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-strip-horiz-bottom-left:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-strip-horiz-bottom-left:after {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-horiz-bottom-left figcaption:before {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-horiz-bottom-left figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-strip-horiz-bottom-right
   ----------------------------- */
.imgsmn-strip-horiz-bottom-right:before, .imgsmn-strip-horiz-bottom-right:after, .imgsmn-strip-horiz-bottom-right figcaption:before, .imgsmn-strip-horiz-bottom-right figcaption:after {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

.imgsmn-strip-horiz-bottom-right:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-strip-horiz-bottom-right:after {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-horiz-bottom-right figcaption:before {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-horiz-bottom-right figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-strip-vert-*
   ----------------------------- */
[class^='imgsmn-strip-vert']:before, [class^='imgsmn-strip-vert']:after, [class^='imgsmn-strip-vert'] figcaption:before, [class^='imgsmn-strip-vert'] figcaption:after, [class*=' imgsmn-strip-vert']:before, [class*=' imgsmn-strip-vert']:after, [class*=' imgsmn-strip-vert'] figcaption:before, [class*=' imgsmn-strip-vert'] figcaption:after {
  background-color: hsl(355, 78%, 33%);
  opacity: 0;
  position: absolute;
  content: '';
  width: 26%;
  height: 100%;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  top: 0;
}

[class^='imgsmn-strip-vert']:before, [class^='imgsmn-strip-vert']:after, [class*=' imgsmn-strip-vert']:before, [class*=' imgsmn-strip-vert']:after {
  z-index: 1;
}

[class^='imgsmn-strip-vert']:before, [class*=' imgsmn-strip-vert']:before {
  left: 0;
}

[class^='imgsmn-strip-vert']:after, [class*=' imgsmn-strip-vert']:after {
  left: 25%;
}

[class^='imgsmn-strip-vert'] figcaption, [class*=' imgsmn-strip-vert'] figcaption {
  z-index: 3;
  background-color: transparent;
}

[class^='imgsmn-strip-vert'] figcaption *, [class*=' imgsmn-strip-vert'] figcaption * {
  opacity: 0;
}

[class^='imgsmn-strip-vert'] figcaption:before, [class^='imgsmn-strip-vert'] figcaption:after, [class*=' imgsmn-strip-vert'] figcaption:before, [class*=' imgsmn-strip-vert'] figcaption:after {
  z-index: -1;
}

[class^='imgsmn-strip-vert'] figcaption:before, [class*=' imgsmn-strip-vert'] figcaption:before {
  left: 50%;
}

[class^='imgsmn-strip-vert'] figcaption:after, [class*=' imgsmn-strip-vert'] figcaption:after {
  left: 75%;
}

[class^='imgsmn-strip-vert'] a, [class*=' imgsmn-strip-vert'] a {
  z-index: 3;
}

[class^='imgsmn-strip-vert'].summon:before, [class^='imgsmn-strip-vert'].summon:after, [class^='imgsmn-strip-vert'].summon figcaption:before, [class^='imgsmn-strip-vert'].summon figcaption:after, [class*=' imgsmn-strip-vert'].summon:before, [class*=' imgsmn-strip-vert'].summon:after, [class*=' imgsmn-strip-vert'].summon figcaption:before, [class*=' imgsmn-strip-vert'].summon figcaption:after {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

[class^='imgsmn-strip-vert'].summon figcaption *, [class*=' imgsmn-strip-vert'].summon figcaption * {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-strip-vert-left
   ----------------------------- */
.imgsmn-strip-vert-left:before, .imgsmn-strip-vert-left:after, .imgsmn-strip-vert-left figcaption:before, .imgsmn-strip-vert-left figcaption:after {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}

/* imgsmn-strip-vert-right
   ----------------------------- */
.imgsmn-strip-vert-right:before, .imgsmn-strip-vert-right:after, .imgsmn-strip-vert-right figcaption:before, .imgsmn-strip-vert-right figcaption:after {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
}

/* imgsmn-strip-vert-top-left
   ----------------------------- */
.imgsmn-strip-vert-top-left:before, .imgsmn-strip-vert-top-left:after, .imgsmn-strip-vert-top-left figcaption:before, .imgsmn-strip-vert-top-left figcaption:after {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-strip-vert-top-left:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-strip-vert-top-left:after {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-vert-top-left figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-vert-top-left figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-strip-vert-top-right
   ----------------------------- */
.imgsmn-strip-vert-top-right:before, .imgsmn-strip-vert-top-right:after, .imgsmn-strip-vert-top-right figcaption:before, .imgsmn-strip-vert-top-right figcaption:after {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-strip-vert-top-right:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-strip-vert-top-right:after {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-vert-top-right figcaption:before {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-vert-top-right figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-strip-vert-bottom-left
   ----------------------------- */
.imgsmn-strip-vert-bottom-left:before, .imgsmn-strip-vert-bottom-left:after, .imgsmn-strip-vert-bottom-left figcaption:before, .imgsmn-strip-vert-bottom-left figcaption:after {
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}

.imgsmn-strip-vert-bottom-left:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-strip-vert-bottom-left:after {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-vert-bottom-left figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-vert-bottom-left figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-strip-vert-bottom-right
   ----------------------------- */
.imgsmn-strip-vert-bottom-right:before, .imgsmn-strip-vert-bottom-right:after, .imgsmn-strip-vert-bottom-right figcaption:before, .imgsmn-strip-vert-bottom-right figcaption:after {
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}

.imgsmn-strip-vert-bottom-right:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-strip-vert-bottom-right:after {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-strip-vert-bottom-right figcaption:before {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-strip-vert-bottom-right figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-pixel-*
   ----------------------------- */
[class^='imgsmn-pixel']:before, [class^='imgsmn-pixel']:after, [class^='imgsmn-pixel'] figcaption:before, [class^='imgsmn-pixel'] figcaption:after, [class*=' imgsmn-pixel']:before, [class*=' imgsmn-pixel']:after, [class*=' imgsmn-pixel'] figcaption:before, [class*=' imgsmn-pixel'] figcaption:after {
  -webkit-transition: all 0.35s steps(4);
  transition: all 0.35s steps(4);
  background-color: hsl(355, 78%, 33%);
  opacity: 0;
  position: absolute;
  content: '';
  height: 26%;
  width: 100%;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  left: 0;
}

[class^='imgsmn-pixel']:before, [class^='imgsmn-pixel']:after, [class*=' imgsmn-pixel']:before, [class*=' imgsmn-pixel']:after {
  z-index: 1;
}

[class^='imgsmn-pixel']:before, [class*=' imgsmn-pixel']:before {
  top: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

[class^='imgsmn-pixel']:after, [class*=' imgsmn-pixel']:after {
  top: 25%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

[class^='imgsmn-pixel'] figcaption, [class*=' imgsmn-pixel'] figcaption {
  z-index: 3;
  background-color: transparent;
}

[class^='imgsmn-pixel'] figcaption *, [class*=' imgsmn-pixel'] figcaption * {
  opacity: 0;
}

[class^='imgsmn-pixel'] figcaption:before, [class^='imgsmn-pixel'] figcaption:after, [class*=' imgsmn-pixel'] figcaption:before, [class*=' imgsmn-pixel'] figcaption:after {
  z-index: -1;
}

[class^='imgsmn-pixel'] figcaption:before, [class*=' imgsmn-pixel'] figcaption:before {
  top: 50%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

[class^='imgsmn-pixel'] figcaption:after, [class*=' imgsmn-pixel'] figcaption:after {
  top: 75%;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

[class^='imgsmn-pixel'] a, [class*=' imgsmn-pixel'] a {
  z-index: 3;
}

[class^='imgsmn-pixel'].summon:before, [class^='imgsmn-pixel'].summon:after, [class^='imgsmn-pixel'].summon figcaption:before, [class^='imgsmn-pixel'].summon figcaption:after, [class*=' imgsmn-pixel'].summon:before, [class*=' imgsmn-pixel'].summon:after, [class*=' imgsmn-pixel'].summon figcaption:before, [class*=' imgsmn-pixel'].summon figcaption:after {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

[class^='imgsmn-pixel'].summon figcaption *, [class*=' imgsmn-pixel'].summon figcaption * {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-pixel-up
   ----------------------------- */
.imgsmn-pixel-up:before, .imgsmn-pixel-up:after, .imgsmn-pixel-up figcaption:before, .imgsmn-pixel-up figcaption:after {
  -webkit-transform-origin: 50% 0;
  transform-origin: 50% 0;
}

.imgsmn-pixel-up:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-pixel-up:after {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-pixel-up figcaption:before {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-pixel-up figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-pixel-down
   ----------------------------- */
.imgsmn-pixel-down:before, .imgsmn-pixel-down:after, .imgsmn-pixel-down figcaption:before, .imgsmn-pixel-down figcaption:after {
  -webkit-transform-origin: 50% 0;
  transform-origin: 50% 0;
}

.imgsmn-pixel-down:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-pixel-down:after {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-pixel-down figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-pixel-down figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-pixel-left
   ----------------------------- */
.imgsmn-pixel-left:before, .imgsmn-pixel-left:after, .imgsmn-pixel-left figcaption:before, .imgsmn-pixel-left figcaption:after {
  width: 25.1%;
  height: 100%;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  top: 0;
}

.imgsmn-pixel-left:before {
  left: 0;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-pixel-left:after {
  left: 25%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-pixel-left figcaption:before {
  left: 50%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-pixel-left figcaption:after {
  left: 75%;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-pixel-right
   ----------------------------- */
.imgsmn-pixel-right:before, .imgsmn-pixel-right:after, .imgsmn-pixel-right figcaption:before, .imgsmn-pixel-right figcaption:after {
  width: 25.1%;
  height: 100%;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  top: 0;
}

.imgsmn-pixel-right:before {
  left: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-pixel-right:after {
  left: 25%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-pixel-right figcaption:before {
  left: 50%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-pixel-right figcaption:after {
  left: 75%;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-pixel-top-left
   ----------------------------- */
.imgsmn-pixel-top-left:before, .imgsmn-pixel-top-left:after, .imgsmn-pixel-top-left figcaption:before, .imgsmn-pixel-top-left figcaption:after {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-pixel-top-left:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-pixel-top-left:after {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-pixel-top-left figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-pixel-top-left figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-pixel-top-right
   ----------------------------- */
.imgsmn-pixel-top-right:before, .imgsmn-pixel-top-right:after, .imgsmn-pixel-top-right figcaption:before, .imgsmn-pixel-top-right figcaption:after {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

.imgsmn-pixel-top-right:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-pixel-top-right:after {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-pixel-top-right figcaption:before {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-pixel-top-right figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-pixel-bottom-left
   ----------------------------- */
.imgsmn-pixel-bottom-left:before, .imgsmn-pixel-bottom-left:after, .imgsmn-pixel-bottom-left figcaption:before, .imgsmn-pixel-bottom-left figcaption:after {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-pixel-bottom-left:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-pixel-bottom-left:after {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-pixel-bottom-left figcaption:before {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-pixel-bottom-left figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-pixel-bottom-right
   ----------------------------- */
.imgsmn-pixel-bottom-right:before, .imgsmn-pixel-bottom-right:after, .imgsmn-pixel-bottom-right figcaption:before, .imgsmn-pixel-bottom-right figcaption:after {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

.imgsmn-pixel-bottom-right:before {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-pixel-bottom-right:after {
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-pixel-bottom-right figcaption:before {
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-pixel-bottom-right figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-pivot-in*
   ----------------------------- */
[class^='imgsmn-pivot-in'] figcaption, [class*=' imgsmn-pivot-in'] figcaption {
  background-color: hsl(355, 78%, 33%);
}

[class^='imgsmn-pivot-in'].summon figcaption, [class*=' imgsmn-pivot-in'].summon figcaption {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

/* imgsmn-pivot-in-top-left*
   ----------------------------- */
.imgsmn-pivot-in-top-left figcaption {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

/* imgsmn-pivot-in-top-right*
   ----------------------------- */
.imgsmn-pivot-in-top-right figcaption {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

/* imgsmn-pivot-in-bottom-left*
   ----------------------------- */
.imgsmn-pivot-in-bottom-left figcaption {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}

/* imgsmn-pivot-in-bottom-right*
   ----------------------------- */
.imgsmn-pivot-in-bottom-right figcaption {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

/* imgsmn-pivot-out-*
   ----------------------------- */
[class^='imgsmn-pivot-out'] > img, [class*=' imgsmn-pivot-out'] > img {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

[class^='imgsmn-pivot-out'] figcaption, [class*=' imgsmn-pivot-out'] figcaption {
  background-color: hsl(355, 78%, 33%);
  z-index: -1;
}

/* imgsmn-pivot-out-top-left*
   ----------------------------- */
.imgsmn-pivot-out-top-left > img {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-pivot-out-top-left.summon > img {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

/* imgsmn-pivot-out-top-right*
   ----------------------------- */
.imgsmn-pivot-out-top-right > img {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

.imgsmn-pivot-out-top-right.summon > img {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

/* imgsmn-pivot-out-bottom-left*
   ----------------------------- */
.imgsmn-pivot-out-bottom-left > img {
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}

.imgsmn-pivot-out-bottom-left.summon > img {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

/* imgsmn-pivot-out-bottom-right*
   ----------------------------- */
.imgsmn-pivot-out-bottom-right > img {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.imgsmn-pivot-out-bottom-right.summon > img {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

/* imgsmn-throw-in-*
   ----------------------------- */
[class^='imgsmn-throw-in'] figcaption, [class*=' imgsmn-throw-in'] figcaption {
  background-color: hsl(355, 78%, 33%);
}

[class^='imgsmn-throw-in'].summon figcaption, [class*=' imgsmn-throw-in'].summon figcaption {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

/* imgsmn-throw-in-up
   ----------------------------- */
.imgsmn-throw-in-up figcaption {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}

.imgsmn-throw-in-up.summon figcaption {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

/* imgsmn-throw-in-down
   ----------------------------- */
.imgsmn-throw-in-down figcaption {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: 100% 0%;
  transform-origin: 100% 0%;
}

.imgsmn-throw-in-down.summon figcaption {
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}

/* imgsmn-throw-in-left
   ----------------------------- */
.imgsmn-throw-in-left figcaption {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: 100% 0%;
  transform-origin: 100% 0%;
}

.imgsmn-throw-in-left.summon figcaption {
  -webkit-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
}

/* imgsmn-throw-in-right
   ----------------------------- */
.imgsmn-throw-in-right figcaption {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: 0 0%;
  transform-origin: 0 0%;
}

.imgsmn-throw-in-right.summon figcaption {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

/* imgsmn-throw-out*
   ----------------------------- */
[class^='imgsmn-throw-out'] > img, [class*=' imgsmn-throw-out'] > img {
  -webkit-transform: rotate(0);
  transform: rotate(0);
}

[class^='imgsmn-throw-out'] figcaption, [class*=' imgsmn-throw-out'] figcaption {
  background-color: hsl(355, 78%, 33%);
  z-index: -1;
}

/* imgsmn-throw-out-up
   ----------------------------- */
.imgsmn-throw-out-up > img {
  -webkit-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
}

.imgsmn-throw-out-up.summon > img {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

/* imgsmn-throw-out-down
   ----------------------------- */
.imgsmn-throw-out-down > img {
  -webkit-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
}

.imgsmn-throw-out-down.summon > img {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

/* imgsmn-throw-out-left
   ----------------------------- */
.imgsmn-throw-out-left > img {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

.imgsmn-throw-out-left.summon > img {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

/* imgsmn-throw-out-right
   ----------------------------- */
.imgsmn-throw-out-right > img {
  -webkit-transform-origin: 0% 0;
  transform-origin: 0% 0;
}

.imgsmn-throw-out-right.summon > img {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

/* imgsmn-blinds-*
   ----------------------------- */
[class^='imgsmn-blinds']:before, [class^='imgsmn-blinds']:after, [class^='imgsmn-blinds'] figcaption:before, [class^='imgsmn-blinds'] figcaption:after, [class*=' imgsmn-blinds']:before, [class*=' imgsmn-blinds']:after, [class*=' imgsmn-blinds'] figcaption:before, [class*=' imgsmn-blinds'] figcaption:after {
  background-color: hsl(355, 78%, 33%);
  opacity: 0;
  position: absolute;
  content: '';
}

[class^='imgsmn-blinds']:before, [class^='imgsmn-blinds']:after, [class*=' imgsmn-blinds']:before, [class*=' imgsmn-blinds']:after {
  z-index: 1;
}

[class^='imgsmn-blinds']:before, [class*=' imgsmn-blinds']:before {
  top: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

[class^='imgsmn-blinds']:after, [class*=' imgsmn-blinds']:after {
  top: 25%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

[class^='imgsmn-blinds'] figcaption, [class*=' imgsmn-blinds'] figcaption {
  z-index: 3;
  background-color: transparent;
}

[class^='imgsmn-blinds'] figcaption *, [class*=' imgsmn-blinds'] figcaption * {
  opacity: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

[class^='imgsmn-blinds'] figcaption:before, [class^='imgsmn-blinds'] figcaption:after, [class*=' imgsmn-blinds'] figcaption:before, [class*=' imgsmn-blinds'] figcaption:after {
  z-index: -1;
}

[class^='imgsmn-blinds'] a, [class*=' imgsmn-blinds'] a {
  z-index: 3;
}

[class^='imgsmn-blinds'].summon:before, [class^='imgsmn-blinds'].summon:after, [class^='imgsmn-blinds'].summon figcaption:before, [class^='imgsmn-blinds'].summon figcaption:after, [class*=' imgsmn-blinds'].summon:before, [class*=' imgsmn-blinds'].summon:after, [class*=' imgsmn-blinds'].summon figcaption:before, [class*=' imgsmn-blinds'].summon figcaption:after {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

[class^='imgsmn-blinds'].summon figcaption *, [class*=' imgsmn-blinds'].summon figcaption * {
  opacity: 1;
  -webkit-transition-delay: 0.4025s;
  transition-delay: 0.4025s;
}

/* imgsmn-blinds-horiz
   ----------------------------- */
.imgsmn-blinds-horiz:before, .imgsmn-blinds-horiz:after, .imgsmn-blinds-horiz figcaption:before, .imgsmn-blinds-horiz figcaption:after {
  height: 26%;
  width: 100%;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  left: 0;
}

.imgsmn-blinds-horiz:before {
  top: 0;
}

.imgsmn-blinds-horiz:after {
  top: 25%;
}

.imgsmn-blinds-horiz figcaption:before {
  top: 50%;
}

.imgsmn-blinds-horiz figcaption:after {
  top: 75%;
}

.imgsmn-blinds-horiz.summon figcaption * {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-blinds-vert
   ----------------------------- */
.imgsmn-blinds-vert:before, .imgsmn-blinds-vert:after, .imgsmn-blinds-vert figcaption:before, .imgsmn-blinds-vert figcaption:after {
  width: 26%;
  height: 100%;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  top: 0;
}

.imgsmn-blinds-vert:before {
  left: 0;
}

.imgsmn-blinds-vert:after {
  left: 25%;
}

.imgsmn-blinds-vert figcaption:before {
  left: 50%;
}

.imgsmn-blinds-vert figcaption:after {
  left: 75%;
}

.imgsmn-blinds-vert.summon figcaption * {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-blinds-up
   ----------------------------- */
.imgsmn-blinds-up:before, .imgsmn-blinds-up:after, .imgsmn-blinds-up figcaption:before, .imgsmn-blinds-up figcaption:after {
  height: 26%;
  width: 100%;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  left: 0;
}

.imgsmn-blinds-up:before {
  top: 0;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blinds-up:after {
  top: 25%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blinds-up figcaption:before {
  top: 50%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-blinds-up figcaption:after {
  top: 75%;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-blinds-down
   ----------------------------- */
.imgsmn-blinds-down:before, .imgsmn-blinds-down:after, .imgsmn-blinds-down figcaption:before, .imgsmn-blinds-down figcaption:after {
  height: 26%;
  width: 100%;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  left: 0;
}

.imgsmn-blinds-down:before {
  top: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blinds-down:after {
  top: 25%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-blinds-down figcaption:before {
  top: 50%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blinds-down figcaption:after {
  top: 75%;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-blinds-left
   ----------------------------- */
.imgsmn-blinds-left:before, .imgsmn-blinds-left:after, .imgsmn-blinds-left figcaption:before, .imgsmn-blinds-left figcaption:after {
  width: 26%;
  height: 100%;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  top: 0;
}

.imgsmn-blinds-left:before {
  left: 0;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-blinds-left:after {
  left: 25%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blinds-left figcaption:before {
  left: 50%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-blinds-left figcaption:after {
  left: 75%;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-blinds-right
   ----------------------------- */
.imgsmn-blinds-right:before, .imgsmn-blinds-right:after, .imgsmn-blinds-right figcaption:before, .imgsmn-blinds-right figcaption:after {
  width: 26%;
  height: 100%;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  top: 0;
}

.imgsmn-blinds-right:before {
  left: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-blinds-right:after {
  left: 25%;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.imgsmn-blinds-right figcaption:before {
  left: 50%;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.imgsmn-blinds-right figcaption:after {
  left: 75%;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-border-reveal-*
   ----------------------------- */
[class^='imgsmn-border-reveal'], [class*=' imgsmn-border-reveal'] {
  background-color: hsl(355, 78%, 33%);
}

[class^='imgsmn-border-reveal']:before, [class^='imgsmn-border-reveal']:after, [class^='imgsmn-border-reveal'] figcaption:before, [class^='imgsmn-border-reveal'] figcaption:after, [class*=' imgsmn-border-reveal']:before, [class*=' imgsmn-border-reveal']:after, [class*=' imgsmn-border-reveal'] figcaption:before, [class*=' imgsmn-border-reveal'] figcaption:after {
  background-color: #ffffff;
  position: absolute;
  content: '';
}

[class^='imgsmn-border-reveal']:before, [class^='imgsmn-border-reveal']:after, [class*=' imgsmn-border-reveal']:before, [class*=' imgsmn-border-reveal']:after {
  z-index: 1;
  height: 4px;
  left: 5px;
  right: 5px;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
}

[class^='imgsmn-border-reveal']:before, [class*=' imgsmn-border-reveal']:before {
  top: 5px;
}

[class^='imgsmn-border-reveal']:after, [class*=' imgsmn-border-reveal']:after {
  bottom: 5px;
}

[class^='imgsmn-border-reveal'] figcaption, [class*=' imgsmn-border-reveal'] figcaption {
  z-index: 3;
  background-color: transparent;
}

[class^='imgsmn-border-reveal'] figcaption *, [class*=' imgsmn-border-reveal'] figcaption * {
  opacity: 0;
}

[class^='imgsmn-border-reveal'] figcaption:before, [class^='imgsmn-border-reveal'] figcaption:after, [class*=' imgsmn-border-reveal'] figcaption:before, [class*=' imgsmn-border-reveal'] figcaption:after {
  z-index: -1;
  width: 4px;
  top: 5px;
  bottom: 5px;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
}

[class^='imgsmn-border-reveal'] figcaption:before, [class*=' imgsmn-border-reveal'] figcaption:before {
  left: 5px;
}

[class^='imgsmn-border-reveal'] figcaption:after, [class*=' imgsmn-border-reveal'] figcaption:after {
  right: 5px;
}

[class^='imgsmn-border-reveal'] a, [class*=' imgsmn-border-reveal'] a {
  z-index: 3;
}

[class^='imgsmn-border-reveal'].summon > img, [class*=' imgsmn-border-reveal'].summon > img {
  opacity: 0;
}

[class^='imgsmn-border-reveal'].summon:before, [class^='imgsmn-border-reveal'].summon:after, [class^='imgsmn-border-reveal'].summon figcaption:before, [class^='imgsmn-border-reveal'].summon figcaption:after, [class*=' imgsmn-border-reveal'].summon:before, [class*=' imgsmn-border-reveal'].summon:after, [class*=' imgsmn-border-reveal'].summon figcaption:before, [class*=' imgsmn-border-reveal'].summon figcaption:after {
  -webkit-transform: scale(1);
  transform: scale(1);
}

[class^='imgsmn-border-reveal'].summon figcaption *, [class*=' imgsmn-border-reveal'].summon figcaption * {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-border-reveal-vert
   ----------------------------- */
.imgsmn-border-reveal-vert:before, .imgsmn-border-reveal-vert:after {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
}

.imgsmn-border-reveal-vert.summon:before, .imgsmn-border-reveal-vert.summon:after {
  -webkit-transition-delay: 0.23333s;
  transition-delay: 0.23333s;
}

/* imgsmn-border-reveal-horiz
   ----------------------------- */
.imgsmn-border-reveal-horiz figcaption:before, .imgsmn-border-reveal-horiz figcaption:after {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
}

.imgsmn-border-reveal-horiz.summon figcaption:before, .imgsmn-border-reveal-horiz.summon figcaption:after {
  -webkit-transition-delay: 0.23333s;
  transition-delay: 0.23333s;
}

/* imgsmn-border-reveal-corners-1
   ----------------------------- */
.imgsmn-border-reveal-corners-1:before, .imgsmn-border-reveal-corners-1 figcaption:before {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-border-reveal-corners-1:after, .imgsmn-border-reveal-corners-1 figcaption:after {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

/* imgsmn-border-reveal-corners-2
   ----------------------------- */
.imgsmn-border-reveal-corners-2:before, .imgsmn-border-reveal-corners-2 figcaption:before {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.imgsmn-border-reveal-corners-2:after, .imgsmn-border-reveal-corners-2 figcaption:after {
  -webkit-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}

/* imgsmn-border-reveal-top-left
   ----------------------------- */
.imgsmn-border-reveal-top-left:before, .imgsmn-border-reveal-top-left:after, .imgsmn-border-reveal-top-left figcaption:before, .imgsmn-border-reveal-top-left figcaption:after {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-border-reveal-top-left:before {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-top-left:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-top-left figcaption:before {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-top-left figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-top-left.summon:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-top-left.summon:after {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-top-left.summon figcaption:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-top-left.summon figcaption:after {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

/* imgsmn-border-reveal-top-right
   ----------------------------- */
.imgsmn-border-reveal-top-right:before, .imgsmn-border-reveal-top-right:after, .imgsmn-border-reveal-top-right figcaption:before, .imgsmn-border-reveal-top-right figcaption:after {
  -webkit-transform-origin: 100% 0%;
  transform-origin: 100% 0%;
}

.imgsmn-border-reveal-top-right:before {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-top-right:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-top-right figcaption:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-top-right figcaption:after {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-top-right.summon:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-top-right.summon:after {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-top-right.summon figcaption:before {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-top-right.summon figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-border-reveal-bottom-left
   ----------------------------- */
.imgsmn-border-reveal-bottom-left:before, .imgsmn-border-reveal-bottom-left:after, .imgsmn-border-reveal-bottom-left figcaption:before, .imgsmn-border-reveal-bottom-left figcaption:after {
  -webkit-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
}

.imgsmn-border-reveal-bottom-left:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-bottom-left:after {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-bottom-left figcaption:before {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-bottom-left figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-bottom-left.summon:before {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-bottom-left.summon:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-bottom-left.summon figcaption:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-bottom-left.summon figcaption:after {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

/* imgsmn-border-reveal-bottom-right
   ----------------------------- */
.imgsmn-border-reveal-bottom-right:before, .imgsmn-border-reveal-bottom-right:after, .imgsmn-border-reveal-bottom-right figcaption:before, .imgsmn-border-reveal-bottom-right figcaption:after {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.imgsmn-border-reveal-bottom-right:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-bottom-right:after {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-bottom-right figcaption:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-bottom-right figcaption:after {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-bottom-right.summon:before {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-bottom-right.summon:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-bottom-right.summon figcaption:before {
  -webkit-transition-delay: 0.28s;
  transition-delay: 0.28s;
}

.imgsmn-border-reveal-bottom-right.summon figcaption:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* imgsmn-border-reveal-cc-1
   ----------------------------- */
.imgsmn-border-reveal-cc-1:before, .imgsmn-border-reveal-cc-1:after, .imgsmn-border-reveal-cc-1 figcaption:before, .imgsmn-border-reveal-cc-1 figcaption:after {
  -webkit-transition-duration: 0.23333s;
  transition-duration: 0.23333s;
}

.imgsmn-border-reveal-cc-1:before, .imgsmn-border-reveal-cc-1 figcaption:after {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-border-reveal-cc-1:after, .imgsmn-border-reveal-cc-1 figcaption:before {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.imgsmn-border-reveal-cc-1:before {
  -webkit-transition-delay: 0.525s;
  transition-delay: 0.525s;
}

.imgsmn-border-reveal-cc-1:after {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-border-reveal-cc-1 figcaption:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-cc-1 figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-border-reveal-cc-1.summon:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-cc-1.summon:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-border-reveal-cc-1.summon figcaption:before {
  -webkit-transition-delay: 0.525s;
  transition-delay: 0.525s;
}

.imgsmn-border-reveal-cc-1.summon figcaption:after {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

/* imgsmn-border-reveal-ccc-1
   ----------------------------- */
.imgsmn-border-reveal-ccc-1:before, .imgsmn-border-reveal-ccc-1:after, .imgsmn-border-reveal-ccc-1 figcaption:before, .imgsmn-border-reveal-ccc-1 figcaption:after {
  -webkit-transition-duration: 0.23333s;
  transition-duration: 0.23333s;
}

.imgsmn-border-reveal-ccc-1:before, .imgsmn-border-reveal-ccc-1 figcaption:after {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.imgsmn-border-reveal-ccc-1:after, .imgsmn-border-reveal-ccc-1 figcaption:before {
  -webkit-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}

.imgsmn-border-reveal-ccc-1:before {
  -webkit-transition-delay: 0;
  transition-delay: 0;
}

.imgsmn-border-reveal-ccc-1:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

.imgsmn-border-reveal-ccc-1 figcaption:before {
  -webkit-transition-delay: 0.525s;
  transition-delay: 0.525s;
}

.imgsmn-border-reveal-ccc-1 figcaption:after {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-border-reveal-ccc-1.summon:before {
  -webkit-transition-delay: 0.525s;
  transition-delay: 0.525s;
}

.imgsmn-border-reveal-ccc-1.summon:after {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

.imgsmn-border-reveal-ccc-1.summon figcaption:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.imgsmn-border-reveal-ccc-1.summon figcaption:after {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-border-reveal-cc-2
   ----------------------------- */
.imgsmn-border-reveal-cc-2:before, .imgsmn-border-reveal-cc-2 figcaption:after {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-border-reveal-cc-2:after, .imgsmn-border-reveal-cc-2 figcaption:before {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

/* imgsmn-border-reveal-ccc-2
   ----------------------------- */
.imgsmn-border-reveal-ccc-2:before, .imgsmn-border-reveal-ccc-2 figcaption:after {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.imgsmn-border-reveal-ccc-2:after, .imgsmn-border-reveal-ccc-2 figcaption:before {
  -webkit-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}

/* imgsmn-border-reveal-cc-3
   ----------------------------- */
.imgsmn-border-reveal-cc-3:before, .imgsmn-border-reveal-cc-3 figcaption:after {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.imgsmn-border-reveal-cc-3:after, .imgsmn-border-reveal-cc-3 figcaption:before {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.imgsmn-border-reveal-cc-3:before {
  right: 14px;
  left: 0;
}

.imgsmn-border-reveal-cc-3:after {
  left: 14px;
  right: 0;
}

.imgsmn-border-reveal-cc-3 figcaption:before {
  top: 14px;
  bottom: 0;
}

.imgsmn-border-reveal-cc-3 figcaption:after {
  bottom: 14px;
  top: 0;
}

/* imgsmn-border-reveal-ccc-3
   ----------------------------- */
.imgsmn-border-reveal-ccc-3:before, .imgsmn-border-reveal-ccc-3 figcaption:after {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.imgsmn-border-reveal-ccc-3:after, .imgsmn-border-reveal-ccc-3 figcaption:before {
  -webkit-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}

.imgsmn-border-reveal-ccc-3:before {
  left: 14px;
  right: 0;
}

.imgsmn-border-reveal-ccc-3:after {
  right: 14px;
  left: 0;
}

.imgsmn-border-reveal-ccc-3 figcaption:before {
  bottom: 14px;
  top: 0;
}

.imgsmn-border-reveal-ccc-3 figcaption:after {
  top: 14px;
  bottom: 0;
}

/* imgsmn-image-*
   ----------------------------- */
[class^='imgsmn-image-'] figcaption, [class*=' imgsmn-image-'] figcaption {
  opacity: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

[class^='imgsmn-image-'].summon figcaption, [class*=' imgsmn-image-'].summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.14s;
  transition-delay: 0.14s;
}

/* imgsmn-image-zoom-center
   ----------------------------- */
.imgsmn-image-zoom-center.summon > img {
  -webkit-transform: scale(1.25);
  transform: scale(1.25);
}

/* imgsmn-image-zoom-out
   ----------------------------- */
.imgsmn-image-zoom-out.summon > img {
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
}

/* imgsmn-image-rotate-left
   ----------------------------- */
.imgsmn-image-rotate-left.summon > img {
  -webkit-transform: scale(1.3) rotate(-15deg);
  transform: scale(1.3) rotate(-15deg);
}

/* imgsmn-image-rotate-right
   ----------------------------- */
.imgsmn-image-rotate-right.summon > img {
  -webkit-transform: scale(1.3) rotate(15deg);
  transform: scale(1.3) rotate(15deg);
}

/* imgsmn-book-open-*
   ----------------------------- */
*[class^='imgsmn-book-open-'], *[class*=' imgsmn-book-open-'] {
  overflow: visible;
}

*[class^='imgsmn-book-open-'] figcaption, *[class*=' imgsmn-book-open-'] figcaption {
  background-color: transparent;
  border: none;
}

*[class^='imgsmn-book-open-'] figcaption:before, *[class^='imgsmn-book-open-'] figcaption:after, *[class*=' imgsmn-book-open-'] figcaption:before, *[class*=' imgsmn-book-open-'] figcaption:after {
  z-index: -1;
  background-color: black;
  content: '';
  position: absolute;
  opacity: 0;
  -webkit-transition: all 0.45s ease;
  transition: all 0.45s ease;
}

*[class^='imgsmn-book-open-'].summon figcaption:before, *[class^='imgsmn-book-open-'].summon figcaption:after, *[class*=' imgsmn-book-open-'].summon figcaption:before, *[class*=' imgsmn-book-open-'].summon figcaption:after {
  opacity: 1;
  background-color: hsl(355, 78%, 33%);
  -webkit-transform: rotateY(0deg);
  transform: rotateY(0deg);
}

/* imgsmn-book-open-horiz
   ----------------------------- */
.imgsmn-book-open-horiz figcaption {
  -webkit-perspective: 50em;
  perspective: 50em;
}

.imgsmn-book-open-horiz figcaption * {
  opacity: 0;
}

.imgsmn-book-open-horiz figcaption:before, .imgsmn-book-open-horiz figcaption:after {
  height: 100%;
  width: 50%;
  top: 0;
}

.imgsmn-book-open-horiz figcaption:before {
  background-image: -webkit-linear-gradient( left , transparent 60%, rgba(0, 0, 0, 0.1) 99%, rgba(0, 0, 0, 0.15) 100%);
  background-image: linear-gradient(to right, transparent 60%, rgba(0, 0, 0, 0.1) 99%, rgba(0, 0, 0, 0.15) 100%);
  left: 0;
  -webkit-transform: rotateY(90deg);
  transform: rotateY(90deg);
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}

.imgsmn-book-open-horiz figcaption:after {
  background-image: -webkit-linear-gradient( right , transparent 60%, rgba(0, 0, 0, 0.12) 99%, rgba(0, 0, 0, 0.15) 100%);
  background-image: linear-gradient(to left, transparent 60%, rgba(0, 0, 0, 0.12) 99%, rgba(0, 0, 0, 0.15) 100%);
  right: 0;
  -webkit-transform: rotateY(-90deg);
  transform: rotateY(-90deg);
  -webkit-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
}

.imgsmn-book-open-horiz.summon figcaption * {
  opacity: 1;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

/* imgsmn-book-open-vert
   ----------------------------- */
.imgsmn-book-open-vert figcaption {
  -webkit-perspective: 50em;
  perspective: 50em;
}

.imgsmn-book-open-vert figcaption * {
  opacity: 0;
}

.imgsmn-book-open-vert figcaption:before, .imgsmn-book-open-vert figcaption:after {
  height: 50%;
  width: 100%;
  left: 0;
}

.imgsmn-book-open-vert figcaption:before {
  background-image: -webkit-linear-gradient( top , transparent 60%, rgba(0, 0, 0, 0.1) 99%, rgba(0, 0, 0, 0.15) 100%);
  background-image: linear-gradient(to bottom, transparent 60%, rgba(0, 0, 0, 0.1) 99%, rgba(0, 0, 0, 0.15) 100%);
  top: 0;
  -webkit-transform: rotateX(-90deg);
  transform: rotateX(-90deg);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
}

.imgsmn-book-open-vert figcaption:after {
  background-image: -webkit-linear-gradient( bottom , transparent 60%, rgba(0, 0, 0, 0.13) 99%, rgba(0, 0, 0, 0.15) 100%);
  background-image: linear-gradient(to top, transparent 60%, rgba(0, 0, 0, 0.13) 99%, rgba(0, 0, 0, 0.15) 100%);
  bottom: 0;
  -webkit-transform: rotateX(90deg);
  transform: rotateX(90deg);
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
}

.imgsmn-book-open-vert.summon figcaption * {
  opacity: 1;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

/* imgsmn-book-open-up
   ----------------------------- */
.imgsmn-book-open-up {
  -webkit-perspective: 50em;
  perspective: 50em;
}

.imgsmn-book-open-up > img {
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
}

.imgsmn-book-open-up figcaption {
  z-index: -1;
}

.imgsmn-book-open-up figcaption * {
  opacity: 1;
}

.imgsmn-book-open-up figcaption:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-image: -webkit-linear-gradient( bottom , transparent 80%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.3) 100%);
  background-image: linear-gradient(to top, transparent 80%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.3) 100%);
  left: 0;
}

.imgsmn-book-open-up.summon > img {
  -webkit-transform: rotateX(86deg);
  transform: rotateX(86deg);
}

/* imgsmn-book-open-down
   ----------------------------- */
.imgsmn-book-open-down {
  -webkit-perspective: 50em;
  perspective: 50em;
}

.imgsmn-book-open-down > img {
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
}

.imgsmn-book-open-down figcaption {
  z-index: -1;
}

.imgsmn-book-open-down figcaption * {
  opacity: 1;
}

.imgsmn-book-open-down figcaption:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-image: -webkit-linear-gradient( top , transparent 80%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.3) 100%);
  background-image: linear-gradient(to bottom, transparent 80%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.3) 100%);
  left: 0;
}

.imgsmn-book-open-down.summon > img {
  -webkit-transform: rotateX(-86deg);
  transform: rotateX(-86deg);
}

/* imgsmn-book-open-left
   ----------------------------- */
.imgsmn-book-open-left {
  -webkit-perspective: 50em;
  perspective: 50em;
}

.imgsmn-book-open-left > img {
  -webkit-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
}

.imgsmn-book-open-left figcaption {
  z-index: -1;
}

.imgsmn-book-open-left figcaption * {
  opacity: 1;
}

.imgsmn-book-open-left figcaption:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-image: -webkit-linear-gradient( right , transparent 80%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.3) 100%);
  background-image: linear-gradient(to left, transparent 80%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.3) 100%);
  left: 0;
}

.imgsmn-book-open-left.summon > img {
  -webkit-transform: rotateY(-86deg);
  transform: rotateY(-86deg);
}

/* imgsmn-book-open-right
   ----------------------------- */
.imgsmn-book-open-right {
  -webkit-perspective: 50em;
  perspective: 50em;
}

.imgsmn-book-open-right > img {
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}

.imgsmn-book-open-right figcaption {
  z-index: -1;
}

.imgsmn-book-open-right figcaption * {
  opacity: 1;
}

.imgsmn-book-open-right figcaption:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-image: -webkit-linear-gradient( left , transparent 80%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.3) 100%);
  background-image: linear-gradient(to right, transparent 80%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.3) 100%);
  left: 0;
}

.imgsmn-book-open-right.summon > img {
  -webkit-transform: rotateY(86deg);
  transform: rotateY(86deg);
}

/* imgsmn-circle-*
   ----------------------------- */
[class^='imgsmn-circle-']:before, [class*=' imgsmn-circle-']:before {
  position: absolute;
  top: -25%;
  bottom: -25%;
  left: -25%;
  right: -25%;
  content: '';
  background-color: hsl(355, 78%, 33%);
  border-radius: 50%;
  -webkit-transition: all 0.35s linear;
  transition: all 0.35s linear;
}

[class^='imgsmn-circle-'] figcaption, [class*=' imgsmn-circle-'] figcaption {
  opacity: 0;
  background-color: transparent;
}

[class^='imgsmn-circle-'].summon:before, [class*=' imgsmn-circle-'].summon:before {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

[class^='imgsmn-circle-'].summon figcaption, [class*=' imgsmn-circle-'].summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

/* imgsmn-circle-up
   ----------------------------- */
.imgsmn-circle-up:before {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

/* imgsmn-circle-down
   ----------------------------- */
.imgsmn-circle-down:before {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

/* imgsmn-circle-left
   ----------------------------- */
.imgsmn-circle-left:before {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

/* imgsmn-circle-right
   ----------------------------- */
.imgsmn-circle-right:before {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

/* imgsmn-circle-top-left
   ----------------------------- */
.imgsmn-circle-top-left:before {
  -webkit-transform: translate(-100%, -100%);
  transform: translate(-100%, -100%);
}

/* imgsmn-circle-top-right
   ----------------------------- */
.imgsmn-circle-top-right:before {
  -webkit-transform: translate(100%, -100%);
  transform: translate(100%, -100%);
}

/* imgsmn-circle-bottom-left
   ----------------------------- */
.imgsmn-circle-bottom-left:before {
  -webkit-transform: translate(-100%, 100%);
  transform: translate(-100%, 100%);
}

/* imgsmn-circle-bottom-right
   ----------------------------- */
.imgsmn-circle-bottom-right:before {
  -webkit-transform: translate(100%, 100%);
  transform: translate(100%, 100%);
}

/* imgsmn-shift-*
   ----------------------------- */
[class^='imgsmn-shift'], [class*=' imgsmn-shift'] {
  overflow: visible;
}

[class^='imgsmn-shift'] figcaption, [class*=' imgsmn-shift'] figcaption {
  background-color: hsl(355, 78%, 33%);
  opacity: 0;
}

/* imgsmn-shift-top-left
   ----------------------------- */
.imgsmn-shift-top-left.summon figcaption {
  opacity: 1;
  -webkit-transform: translate(-10px, -10px);
  transform: translate(-10px, -10px);
}

/* imgsmn-shift-top-right
   ----------------------------- */
.imgsmn-shift-top-right.summon figcaption {
  opacity: 1;
  -webkit-transform: translate(10px, -10px);
  transform: translate(10px, -10px);
}

/* imgsmn-shift-bottom-left
   ----------------------------- */
.imgsmn-shift-bottom-left.summon figcaption {
  opacity: 1;
  -webkit-transform: translate(-10px, 10px);
  transform: translate(-10px, 10px);
}

/* imgsmn-shift-bottom-right
   ----------------------------- */
.imgsmn-shift-bottom-right.summon figcaption {
  opacity: 1;
  -webkit-transform: translate(10px, 10px);
  transform: translate(10px, 10px);
}

/* imgsmn-bounce-*
   ----------------------------- */
[class^='imgsmn-bounce'] figcaption, [class*=' imgsmn-bounce'] figcaption {
  background-color: hsl(355, 78%, 33%);
  opacity: 1;
}

[class^='imgsmn-bounce'].summon figcaption, [class*=' imgsmn-bounce'].summon figcaption {
  -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* imgsmn-bounce-in
   ----------------------------- */
.imgsmn-bounce-in figcaption {
  opacity: 0;
}

.imgsmn-bounce-in.summon figcaption {
  -webkit-animation: imgsmn-bounce-in 0.6s ease-in forwards;
  animation: imgsmn-bounce-in 0.6s ease-in forwards;
  -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  opacity: 1;
}

@-webkit-keyframes imgsmn-bounce-in {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes imgsmn-bounce-in {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

/* imgsmn-bounce-in-up
   ----------------------------- */
.imgsmn-bounce-in-up figcaption {
  opacity: 1;
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

.imgsmn-bounce-in-up.summon figcaption {
  -webkit-animation: imgsmn-bounce-in-up 0.8s ease-in forwards;
  animation: imgsmn-bounce-in-up 0.8s ease-in forwards;
}

@-webkit-keyframes imgsmn-bounce-in-up
{
  25%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(25px);
  }
  65% {
    -webkit-transform: translateY(10px);
  }
  90% {
    -webkit-transform: translateY(2px);
  }
}

@keyframes imgsmn-bounce-in-up
{
  25%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(25px);
  }
  65% {
    transform: translateY(10px);
  }
  90% {
    transform: translateY(2px);
  }
}

/* imgsmn-bounce-in-down
   ----------------------------- */
.imgsmn-bounce-in-down figcaption {
  opacity: 1;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

.imgsmn-bounce-in-down.summon figcaption {
  -webkit-animation: imgsmn-bounce-in-down 0.8s ease-in forwards;
  animation: imgsmn-bounce-in-down 0.8s ease-in forwards;
}

@-webkit-keyframes imgsmn-bounce-in-down
{
  25%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-25px);
  }
  65% {
    -webkit-transform: translateY(-10px);
  }
  90% {
    -webkit-transform: translateY(-2px);
  }
}

@keyframes imgsmn-bounce-in-down
{
  25%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-25px);
  }
  65% {
    transform: translateY(-10px);
  }
  90% {
    transform: translateY(-2px);
  }
}

/* imgsmn-bounce-in-left
   ----------------------------- */
.imgsmn-bounce-in-left figcaption {
  opacity: 1;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.imgsmn-bounce-in-left.summon figcaption {
  -webkit-animation: imgsmn-bounce-in-left 0.8s ease-in forwards;
  animation: imgsmn-bounce-in-left 0.8s ease-in forwards;
}

@-webkit-keyframes imgsmn-bounce-in-left
{
  25%, 50%, 80%, 100% {
    -webkit-transform: translateX(0);
  }
  40% {
    -webkit-transform: translateX(25px);
  }
  65% {
    -webkit-transform: translateX(10px);
  }
  90% {
    -webkit-transform: translateX(2px);
  }
}

@keyframes imgsmn-bounce-in-left
{
  25%, 50%, 80%, 100% {
    transform: translateX(0);
  }
  40% {
    transform: translateX(25px);
  }
  65% {
    transform: translateX(10px);
  }
  90% {
    transform: translateX(2px);
  }
}

/* imgsmn-bounce-in-right
   ----------------------------- */
.imgsmn-bounce-in-right figcaption {
  opacity: 1;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

.imgsmn-bounce-in-right.summon figcaption {
  -webkit-animation: imgsmn-bounce-in-right 0.8s ease-in forwards;
  animation: imgsmn-bounce-in-right 0.8s ease-in forwards;
}

@-webkit-keyframes imgsmn-bounce-in-right
{
  25%, 50%, 80%, 100% {
    -webkit-transform: translateX(0);
  }
  40% {
    -webkit-transform: translateX(-25px);
  }
  65% {
    -webkit-transform: translateX(-10px);
  }
  90% {
    -webkit-transform: translateX(-2px);
  }
}

@keyframes imgsmn-bounce-in-right
{
  25%, 50%, 80%, 100% {
    transform: translateX(0);
  }
  40% {
    transform: translateX(-25px);
  }
  65% {
    transform: translateX(-10px);
  }
  90% {
    transform: translateX(-2px);
  }
}

/* imgsmn-bounce-out
   ----------------------------- */
.imgsmn-bounce-out figcaption {
  opacity: 0;
}

.imgsmn-bounce-out.summon > img {
  -webkit-animation: imgsmn-bounce-out 0.4025s ease-in forwards;
  animation: imgsmn-bounce-out 0.4025s ease-in forwards;
}

.imgsmn-bounce-out.summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

@-webkit-keyframes imgsmn-bounce-out {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

@keyframes imgsmn-bounce-out {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

/* imgsmn-bounce-out-up
   ----------------------------- */
.imgsmn-bounce-out-up figcaption {
  opacity: 0;
}

.imgsmn-bounce-out-up.summon > img {
  -webkit-animation: imgsmn-bounce-out-up 0.4025s ease-in forwards;
  animation: imgsmn-bounce-out-up 0.4025s ease-in forwards;
}

.imgsmn-bounce-out-up.summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

@-webkit-keyframes imgsmn-bounce-out-up {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes imgsmn-bounce-out-up {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

/* imgsmn-bounce-out-down
   ----------------------------- */
.imgsmn-bounce-out-down figcaption {
  opacity: 0;
}

.imgsmn-bounce-out-down.summon > img {
  -webkit-animation: imgsmn-bounce-out-down 0.4025s ease-in forwards;
  animation: imgsmn-bounce-out-down 0.4025s ease-in forwards;
}

.imgsmn-bounce-out-down.summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

@-webkit-keyframes imgsmn-bounce-out-down {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes imgsmn-bounce-out-down {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

/* imgsmn-bounce-out-left
   ----------------------------- */
.imgsmn-bounce-out-left figcaption {
  opacity: 0;
}

.imgsmn-bounce-out-left.summon > img {
  -webkit-animation: imgsmn-bounce-out-left 0.4025s ease-in forwards;
  animation: imgsmn-bounce-out-left 0.4025s ease-in forwards;
}

.imgsmn-bounce-out-left.summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

@-webkit-keyframes imgsmn-bounce-out-left {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(15%, 0, 0);
    transform: translate3d(15%, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes imgsmn-bounce-out-left {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(15%, 0, 0);
    transform: translate3d(15%, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

/* imgsmn-bounce-out-right
   ----------------------------- */
.imgsmn-bounce-out-right figcaption {
  opacity: 0;
}

.imgsmn-bounce-out-right.summon > img {
  -webkit-animation: imgsmn-bounce-out-right 0.4025s ease-in forwards;
  animation: imgsmn-bounce-out-right 0.4025s ease-in forwards;
}

.imgsmn-bounce-out-right.summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

@-webkit-keyframes imgsmn-bounce-out-right {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-15%, 0, 0);
    transform: translate3d(-15%, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes imgsmn-bounce-out-right {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-15%, 0, 0);
    transform: translate3d(-15%, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

/* imgsmn-fall-away-*
   ----------------------------- */
*[class^='imgsmn-fall-away-'], *[class*=' imgsmn-fall-away-'] {
  -webkit-perspective: 50em;
  perspective: 50em;
}

*[class^='imgsmn-fall-away-'] img, *[class*=' imgsmn-fall-away-'] img {
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transition: all 0.455s ease-in;
  transition: all 0.455s ease-in;
}

*[class^='imgsmn-fall-away-'] figcaption, *[class*=' imgsmn-fall-away-'] figcaption {
  opacity: 0;
  background-color: hsl(355, 78%, 33%);
}

*[class^='imgsmn-fall-away-'].summon img, *[class*=' imgsmn-fall-away-'].summon img {
  opacity: 0;
}

*[class^='imgsmn-fall-away-'].summon figcaption, *[class*=' imgsmn-fall-away-'].summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.455s;
  transition-delay: 0.455s;
}

/* imgsmn-fall-away-horiz
   ----------------------------- */
.imgsmn-fall-away-horiz.summon img {
  -webkit-transform: rotateX(-360deg) scale(0.2);
  transform: rotateX(-360deg) scale(0.2);
}

/* imgsmn-fall-away-vert
   ----------------------------- */
.imgsmn-fall-away-vert.summon img {
  -webkit-transform: rotateY(-360deg) scale(0.2);
  transform: rotateY(-360deg) scale(0.2);
}

/* imgsmn-fall-away-cc
   ----------------------------- */
.imgsmn-fall-away-cc.summon img {
  -webkit-transform: rotate(360deg) scale(0.2);
  transform: rotate(360deg) scale(0.2);
}

/* imgsmn-fall-away-ccc
   ----------------------------- */
.imgsmn-fall-away-ccc.summon img {
  -webkit-transform: rotate(-360deg) scale(0.2);
  transform: rotate(-360deg) scale(0.2);
}

/* imgsmn-modal-slide-*
   ----------------------------- */
[class^='imgsmn-modal'] figcaption, [class*=' imgsmn-modal'] figcaption {
  opacity: 1;
}

[class^='imgsmn-modal'].summon > img, [class*=' imgsmn-modal'].summon > img {
  opacity: 0.7;
}

[class^='imgsmn-modal'].summon figcaption, [class*=' imgsmn-modal'].summon figcaption {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

/* imgsmn-modal-slide-up
   ----------------------------- */
.imgsmn-modal-slide-up figcaption {
  top: auto;
  -webkit-transform: translate(0, 100%);
  transform: translate(0, 100%);
}

/* imgsmn-modal-slide-down
   ----------------------------- */
.imgsmn-modal-slide-down figcaption {
  bottom: auto;
  -webkit-transform: translate(0, -100%);
  transform: translate(0, -100%);
}

/* imgsmn-modal-slide-left
   ----------------------------- */
.imgsmn-modal-slide-left figcaption {
  left: auto;
  max-width: 70%;
  -webkit-transform: translate(100%, 0%);
  transform: translate(100%, 0%);
}

/* imgsmn-modal-slide-right
   ----------------------------- */
.imgsmn-modal-slide-right figcaption {
  right: auto;
  max-width: 70%;
  -webkit-transform: translate(-100%, 0%);
  transform: translate(-100%, 0%);
}

/* imgsmn-modal-hinge-*
   ----------------------------- */
[class^='imgsmn-modal'], [class*=' imgsmn-modal'] {
  -webkit-perspective: 50em;
  perspective: 50em;
}

[class^='imgsmn-modal'] figcaption, [class*=' imgsmn-modal'] figcaption {
  opacity: 1;
}

[class^='imgsmn-modal'].summon > img, [class*=' imgsmn-modal'].summon > img {
  opacity: 0.7;
}

[class^='imgsmn-modal'].summon figcaption, [class*=' imgsmn-modal'].summon figcaption {
  -webkit-transform: rotate(0);
  transform: rotate(0);
}

/* imgsmn-modal-hinge-up
   ----------------------------- */
.imgsmn-modal-hinge-up figcaption {
  top: auto;
  -webkit-transform: rotateX(100deg);
  transform: rotateX(100deg);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
}

/* imgsmn-modal-hinge-down
   ----------------------------- */
.imgsmn-modal-hinge-down figcaption {
  bottom: auto;
  -webkit-transform: rotateX(-100deg);
  transform: rotateX(-100deg);
  -webkit-transform-origin: 50% -50%;
  transform-origin: 50% -50%;
}

/* imgsmn-modal-hinge-left
   ----------------------------- */
.imgsmn-modal-hinge-left figcaption {
  left: auto;
  max-width: 70%;
  -webkit-transform: rotateY(-100deg);
  transform: rotateY(-100deg);
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}

/* imgsmn-modal-hinge-right
   ----------------------------- */
.imgsmn-modal-hinge-right figcaption {
  right: auto;
  max-width: 70%;
  -webkit-transform: rotateY(100deg);
  transform: rotateY(100deg);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
}

/* imgsmn-lightspeed-in-left
   ----------------------------- */
.imgsmn-lightspeed-in-left figcaption {
  -webkit-transform: translate(100%, 0);
  transform: translate(100%, 0);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  opacity: 0;
}

.imgsmn-lightspeed-in-left.summon figcaption {
  -webkit-animation: imgsmn-lightspeed-in-left 0.4025s ease-in forwards;
  animation: imgsmn-lightspeed-in-left 0.4025s ease-in forwards;
  opacity: 1;
}

@-webkit-keyframes imgsmn-lightspeed-in-left {
  from {
    -webkit-transform: translate(100%, 0) skewX(-20deg);
    transform: translate(100%, 0) skewX(-20deg);
  }
  50% {
    -webkit-transform: translate(0, 0) skewX(-20deg);
    transform: translate(0, 0) skewX(-20deg);
  }
  75% {
    -webkit-transform: translate(0, 0) skewX(10deg);
    transform: translate(0, 0) skewX(10deg);
  }
  to {
    -webkit-transform: translate(0, 0) skewX(0deg);
    transform: translate(0, 0) skewX(0deg);
  }
}

@keyframes imgsmn-lightspeed-in-left {
  from {
    -webkit-transform: translate(100%, 0) skewX(-20deg);
    transform: translate(100%, 0) skewX(-20deg);
  }
  50% {
    -webkit-transform: translate(0, 0) skewX(-20deg);
    transform: translate(0, 0) skewX(-20deg);
  }
  75% {
    -webkit-transform: translate(0, 0) skewX(10deg);
    transform: translate(0, 0) skewX(10deg);
  }
  to {
    -webkit-transform: translate(0, 0) skewX(0deg);
    transform: translate(0, 0) skewX(0deg);
  }
}

/* imgsmn-lightspeed-in-right
   ----------------------------- */
.imgsmn-lightspeed-in-right figcaption {
  -webkit-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  opacity: 0;
}

.imgsmn-lightspeed-in-right.summon figcaption {
  -webkit-animation: imgsmn-lightspeed-in-right 0.4025s ease-in forwards;
  animation: imgsmn-lightspeed-in-right 0.4025s ease-in forwards;
  opacity: 1;
}

@-webkit-keyframes imgsmn-lightspeed-in-right {
  from {
    -webkit-transform: translate(-100%, 0) skewX(20deg);
    transform: translate(-100%, 0) skewX(20deg);
  }
  50% {
    -webkit-transform: translate(0, 0) skewX(20deg);
    transform: translate(0, 0) skewX(20deg);
  }
  75% {
    -webkit-transform: translate(0, 0) skewX(-10deg);
    transform: translate(0, 0) skewX(-10deg);
  }
  to {
    -webkit-transform: translate(0, 0) skewX(0deg);
    transform: translate(0, 0) skewX(0deg);
  }
}

@keyframes imgsmn-lightspeed-in-right {
  from {
    -webkit-transform: translate(-100%, 0) skewX(20deg);
    transform: translate(-100%, 0) skewX(20deg);
  }
  50% {
    -webkit-transform: translate(0, 0) skewX(20deg);
    transform: translate(0, 0) skewX(20deg);
  }
  75% {
    -webkit-transform: translate(0, 0) skewX(-10deg);
    transform: translate(0, 0) skewX(-10deg);
  }
  to {
    -webkit-transform: translate(0, 0) skewX(0deg);
    transform: translate(0, 0) skewX(0deg);
  }
}

/* imgsmn-lightspeed-out-left
   ----------------------------- */
.imgsmn-lightspeed-out-left figcaption {
  z-index: -1;
  opacity: 1;
}

.imgsmn-lightspeed-out-left.summon > img {
  -webkit-animation: imgsmn-lightspeed-out-left 0.4025s ease-in forwards;
  animation: imgsmn-lightspeed-out-left 0.4025s ease-in forwards;
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  opacity: 1;
}

@-webkit-keyframes imgsmn-lightspeed-out-left {
  from {
    -webkit-transform: translate(0, 0) skewX(0deg);
    transform: translate(0, 0) skewX(0deg);
  }
  25% {
    -webkit-transform: translate(10%, 0) skewX(0deg);
    transform: translate(10%, 0) skewX(0deg);
  }
  50% {
    -webkit-transform: translate(0, 0) skewX(-20deg);
    transform: translate(0, 0) skewX(-20deg);
  }
  to {
    -webkit-transform: translate(-150%, 0) skewX(-20deg);
    transform: translate(-150%, 0) skewX(-20deg);
  }
}

@keyframes imgsmn-lightspeed-out-left {
  from {
    -webkit-transform: translate(0, 0) skewX(0deg);
    transform: translate(0, 0) skewX(0deg);
  }
  25% {
    -webkit-transform: translate(10%, 0) skewX(0deg);
    transform: translate(10%, 0) skewX(0deg);
  }
  50% {
    -webkit-transform: translate(0, 0) skewX(-20deg);
    transform: translate(0, 0) skewX(-20deg);
  }
  to {
    -webkit-transform: translate(-150%, 0) skewX(-20deg);
    transform: translate(-150%, 0) skewX(-20deg);
  }
}

/* imgsmn-lightspeed-out-right
   ----------------------------- */
.imgsmn-lightspeed-out-right figcaption {
  z-index: -1;
  opacity: 1;
}

.imgsmn-lightspeed-out-right.summon > img {
  -webkit-animation: imgsmn-lightspeed-out-right 0.4025s ease-in forwards;
  animation: imgsmn-lightspeed-out-right 0.4025s ease-in forwards;
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  opacity: 1;
}

@-webkit-keyframes imgsmn-lightspeed-out-right {
  from {
    -webkit-transform: translate(0, 0) skewX(0deg);
    transform: translate(0, 0) skewX(0deg);
  }
  25% {
    -webkit-transform: translate(10%, 0) skewX(0deg);
    transform: translate(10%, 0) skewX(0deg);
  }
  50% {
    -webkit-transform: translate(0, 0) skewX(-20deg);
    transform: translate(0, 0) skewX(-20deg);
  }
  to {
    -webkit-transform: translate(-150%, 0) skewX(-20deg);
    transform: translate(-150%, 0) skewX(-20deg);
  }
}

@keyframes imgsmn-lightspeed-out-right {
  from {
    -webkit-transform: translate(0, 0) skewX(0deg);
    transform: translate(0, 0) skewX(0deg);
  }
  25% {
    -webkit-transform: translate(-10%, 0) skewX(0deg);
    transform: translate(-10%, 0) skewX(0deg);
  }
  50% {
    -webkit-transform: translate(0, 0) skewX(20deg);
    transform: translate(0, 0) skewX(20deg);
  }
  to {
    -webkit-transform: translate(150%, 0) skewX(20deg);
    transform: translate(150%, 0) skewX(20deg);
  }
}

/* imgsmn-grad-*
   ----------------------------- */
[class^='imgsmn-grad-']:before, [class*=' imgsmn-grad-']:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: '';
}

[class^='imgsmn-grad-'] figcaption, [class*=' imgsmn-grad-'] figcaption {
  z-index: 1;
  opacity: 0;
  background-color: transparent;
}

[class^='imgsmn-grad-'].summon:before, [class*=' imgsmn-grad-'].summon:before {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

[class^='imgsmn-grad-'].summon figcaption, [class*=' imgsmn-grad-'].summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

/* imgsmn-grad-radial-in
   ----------------------------- */
.imgsmn-grad-radial-in:before {
  background-image: -webkit-radial-gradient(transparent 0%, hsl(355, 78%, 33%) 100%);
  background-image: radial-gradient(transparent 0%, hsl(355, 78%, 33%) 100%);
  -webkit-transform: scale(2);
  transform: scale(2);
  opacity: 0;
}

.imgsmn-grad-radial-in:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: '';
  opacity: 0;
  background-color: hsl(355, 78%, 33%);
}

.imgsmn-grad-radial-in.summon:before {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.imgsmn-grad-radial-in.summon:after {
  opacity: 0.75;
  -webkit-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

/* imgsmn-grad-radial-out
   ----------------------------- */
.imgsmn-grad-radial-out:before {
  background-image: -webkit-radial-gradient(hsl(355, 78%, 33%) 0%, transparent 100%);
  background-image: radial-gradient(hsl(355, 78%, 33%) 0%, transparent 100%);
  position: absolute;
  top: -75%;
  bottom: -75%;
  left: -75%;
  right: -75%;
  -webkit-transform: scale(0);
  transform: scale(0);
  opacity: 0;
}

.imgsmn-grad-radial-out.summon:before {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

/* imgsmn-grad-up
   ----------------------------- */
.imgsmn-grad-up:before {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
  background-image: -webkit-linear-gradient( top , transparent 0%, hsl(355, 78%, 33%) 100%);
  background-image: linear-gradient(to bottom, transparent 0%, hsl(355, 78%, 33%) 100%);
  top: -75%;
}

/* imgsmn-grad-down
   ----------------------------- */
.imgsmn-grad-down:before {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  background-image: -webkit-linear-gradient( bottom , transparent 0%, hsl(355, 78%, 33%) 100%);
  background-image: linear-gradient(to top, transparent 0%, hsl(355, 78%, 33%) 100%);
  bottom: -75%;
}

/* imgsmn-grad-left
   ----------------------------- */
.imgsmn-grad-left:before {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  background-image: -webkit-linear-gradient( left , transparent 0%, hsl(355, 78%, 33%) 100%);
  background-image: linear-gradient(to right, transparent 0%, hsl(355, 78%, 33%) 100%);
  left: -75%;
}

/* imgsmn-grad-right
   ----------------------------- */
.imgsmn-grad-right:before {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  background-image: -webkit-linear-gradient( right , transparent 0%, hsl(355, 78%, 33%) 100%);
  background-image: linear-gradient(to left, transparent 0%, hsl(355, 78%, 33%) 100%);
  right: -75%;
}

/* imgsmn-grad-top-left
   ----------------------------- */
.imgsmn-grad-top-left:before {
  background-image: -webkit-linear-gradient(-45deg, transparent 0%, hsl(355, 78%, 33%) 100%);
  background-image: linear-gradient(-45deg, transparent 0%, hsl(355, 78%, 33%) 100%);
  -webkit-transform: scale(2);
  transform: scale(2);
  opacity: 0;
  bottom: -75%;
  right: -75%;
}

.imgsmn-grad-top-left.summon:before {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

/* imgsmn-grad-top-right
   ----------------------------- */
.imgsmn-grad-top-right:before {
  background-image: -webkit-linear-gradient(-315deg, transparent 0%, hsl(355, 78%, 33%) 100%);
  background-image: linear-gradient(45deg, transparent 0%, hsl(355, 78%, 33%) 100%);
  -webkit-transform: scale(2);
  transform: scale(2);
  opacity: 0;
  bottom: -75%;
  left: -75%;
}

.imgsmn-grad-top-right.summon:before {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

/* imgsmn-grad-bottom-left
   ----------------------------- */
.imgsmn-grad-bottom-left:before {
  background-image: -webkit-linear-gradient(-135deg, transparent 0%, hsl(355, 78%, 33%) 100%);
  background-image: linear-gradient(-135deg, transparent 0%, hsl(355, 78%, 33%) 100%);
  -webkit-transform: scale(2);
  transform: scale(2);
  opacity: 0;
  top: -75%;
  right: -75%;
}

.imgsmn-grad-bottom-left.summon:before {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

/* imgsmn-grad-bottom-right
   ----------------------------- */
.imgsmn-grad-bottom-right:before {
  background-image: -webkit-linear-gradient(-405deg, transparent 0%, hsl(355, 78%, 33%) 100%);
  background-image: linear-gradient(135deg, transparent 0%, hsl(355, 78%, 33%) 100%);
  -webkit-transform: scale(2);
  transform: scale(2);
  opacity: 0;
  top: -75%;
  left: -75%;
}

.imgsmn-grad-bottom-right.summon:before {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

/* imgsmn-parallax-*
   ----------------------------- */
[class^='imgsmn-parallax-'].summon figcaption, [class*=' imgsmn-parallax-'].summon figcaption {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

/* imgsmn-parallax-up
   ----------------------------- */
.imgsmn-parallax-up figcaption {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

.imgsmn-parallax-up.summon > img {
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

/* imgsmn-parallax-down
   ----------------------------- */
.imgsmn-parallax-down figcaption {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

.imgsmn-parallax-down.summon > img {
  -webkit-transform: translateY(50%);
  transform: translateY(50%);
}

/* imgsmn-parallax-left
   ----------------------------- */
.imgsmn-parallax-left figcaption {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.imgsmn-parallax-left.summon > img {
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

/* imgsmn-parallax--right
   ----------------------------- */
.imgsmn-parallax-right figcaption {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

.imgsmn-parallax-right.summon > img {
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}

/* imgsmn-stack-*
   ----------------------------- */
[class^='imgsmn-stack-'] > img, [class^='imgsmn-stack-'] figcaption, [class*=' imgsmn-stack-'] > img, [class*=' imgsmn-stack-'] figcaption {
  -webkit-transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
  transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}

[class^='imgsmn-stack-'].summon > img, [class*=' imgsmn-stack-'].summon > img {
  -webkit-transform: scale(0.75);
  transform: scale(0.75);
  opacity: 0.5;
}

[class^='imgsmn-stack-'].summon figcaption, [class*=' imgsmn-stack-'].summon figcaption {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

/* imgsmn-stack-up
   ----------------------------- */
.imgsmn-stack-up figcaption {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

/* imgsmn-stack-down
   ----------------------------- */
.imgsmn-stack-down figcaption {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

/* imgsmn-stack-left
   ----------------------------- */
.imgsmn-stack-left figcaption {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

/* imgsmn-stack-right
   ----------------------------- */
.imgsmn-stack-right figcaption {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

/* imgsmn-stack-top-left
   ----------------------------- */
.imgsmn-stack-top-left figcaption {
  -webkit-transform: translate(-100%, -100%);
  transform: translate(-100%, -100%);
}

/* imgsmn-stack-top-right
   ----------------------------- */
.imgsmn-stack-top-right figcaption {
  -webkit-transform: translate(100%, -100%);
  transform: translate(100%, -100%);
}

/* imgsmn-stack-bottom-left
   ----------------------------- */
.imgsmn-stack-bottom-left figcaption {
  -webkit-transform: translate(-100%, 100%);
  transform: translate(-100%, 100%);
}

/* imgsmn-stack-bottom-right
   ----------------------------- */
.imgsmn-stack-bottom-right figcaption {
  -webkit-transform: translate(100%, 100%);
  transform: translate(100%, 100%);
}

/* imgsmn-cube-*
   ----------------------------- */
[class^='imgsmn-cube-'], [class*=' imgsmn-cube-'] {
  -webkit-perspective: 50em;
  perspective: 50em;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  overflow: visible;
  background-color: transparent;
}

[class^='imgsmn-cube-'] > img, [class*=' imgsmn-cube-'] > img {
  -webkit-transition-delay: 0.05s;
  transition-delay: 0.05s;
}

[class^='imgsmn-cube-'] figcaption, [class*=' imgsmn-cube-'] figcaption {
  opacity: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  background-color: hsl(355, 78%, 33%);
}

[class^='imgsmn-cube-'].summon > img, [class*=' imgsmn-cube-'].summon > img {
  opacity: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

[class^='imgsmn-cube-'].summon figcaption, [class*=' imgsmn-cube-'].summon figcaption {
  -webkit-transform: translateY(0%) rotateX(0deg);
  transform: translateY(0%) rotateX(0deg);
  opacity: 1;
  -webkit-transition-delay: 0.05s;
  transition-delay: 0.05s;
}

/* imgsmn-cube-up
   ----------------------------- */
.imgsmn-cube-up figcaption {
  -webkit-transform: translateY(50%) rotateX(-90deg);
  transform: translateY(50%) rotateX(-90deg);
}

.imgsmn-cube-up.summon > img {
  -webkit-transform: translateY(-50%) rotateX(90deg);
  transform: translateY(-50%) rotateX(90deg);
}

/* imgsmn-cube-down
   ----------------------------- */
.imgsmn-cube-down figcaption {
  -webkit-transform: translateY(-50%) rotateX(90deg);
  transform: translateY(-50%) rotateX(90deg);
}

.imgsmn-cube-down.summon > img {
  -webkit-transform: translateY(50%) rotateX(-90deg);
  transform: translateY(50%) rotateX(-90deg);
}

/* imgsmn-cube-left
   ----------------------------- */
.imgsmn-cube-left figcaption {
  -webkit-transform: translateX(-50%) rotateY(-90deg);
  transform: translateX(-50%) rotateY(-90deg);
}

.imgsmn-cube-left.summon > img {
  -webkit-transform: translateX(50%) rotateY(90deg);
  transform: translateX(50%) rotateY(90deg);
}

/* imgsmn-cube-right
   ----------------------------- */
.imgsmn-cube-right figcaption {
  -webkit-transform: translateX(50%) rotateY(90deg);
  transform: translateX(50%) rotateY(90deg);
}

.imgsmn-cube-right.summon > img {
  -webkit-transform: translateX(-50%) rotateY(-90deg);
  transform: translateX(-50%) rotateY(-90deg);
}

/* imgsmn-dive-*
   ----------------------------- */
[class^='imgsmn-dive'] figcaption, [class*=' imgsmn-dive'] figcaption {
  opacity: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

[class^='imgsmn-dive'].summon > img, [class*=' imgsmn-dive'].summon > img {
  opacity: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

[class^='imgsmn-dive'].summon figcaption, [class*=' imgsmn-dive'].summon figcaption {
  opacity: 1;
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

/* imgsmn-dive
   ----------------------------- */
.imgsmn-dive figcaption {
  -webkit-transform: scale(5);
  transform: scale(5);
}

.imgsmn-dive.summon > img {
  -webkit-transform: scale(5);
  transform: scale(5);
}

.imgsmn-dive.summon figcaption {
  -webkit-transform: scale(1);
  transform: scale(1);
}

/* imgsmn-dive-cc
   ----------------------------- */
.imgsmn-dive-cc figcaption {
  -webkit-transform: rotate(-45deg) scale(5);
  transform: rotate(-45deg) scale(5);
}

.imgsmn-dive-cc.summon > img {
  -webkit-transform: rotate(45deg) scale(5);
  transform: rotate(45deg) scale(5);
}

.imgsmn-dive-cc.summon figcaption {
  -webkit-transform: rotate(0deg) scale(1);
  transform: rotate(0deg) scale(1);
}

/* imgsmn-dive-ccc
   ----------------------------- */
.imgsmn-dive-ccc figcaption {
  -webkit-transform: rotate(45deg) scale(5);
  transform: rotate(45deg) scale(5);
}

.imgsmn-dive-ccc.summon > img {
  -webkit-transform: rotate(-45deg) scale(5);
  transform: rotate(-45deg) scale(5);
}

.imgsmn-dive-ccc.summon figcaption {
  -webkit-transform: rotate(0deg) scale(1);
  transform: rotate(0deg) scale(1);
}

/* imgsmn-switch-*
   ----------------------------- */
[class^='imgsmn-switch-'] > img, [class^='imgsmn-switch-'] figcaption, [class*=' imgsmn-switch-'] > img, [class*=' imgsmn-switch-'] figcaption {
  -webkit-transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
  transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}

[class^='imgsmn-switch-'].summon figcaption, [class*=' imgsmn-switch-'].summon figcaption {
  -webkit-transform: translate(0 0);
  transform: translate(0 0);
}

/* imgsmn-switch-up
   ----------------------------- */
.imgsmn-switch-up figcaption {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

.imgsmn-switch-up.summon > img {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

/* imgsmn-switch-down
   ----------------------------- */
.imgsmn-switch-down figcaption {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

.imgsmn-switch-down.summon > img {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

/* imgsmn-switch-left
   ----------------------------- */
.imgsmn-switch-left figcaption {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.imgsmn-switch-left.summon > img {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

/* imgsmn-switch-right
   ----------------------------- */
.imgsmn-switch-right figcaption {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

.imgsmn-switch-right.summon > img {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

/* imgsmn-flash-*
   ----------------------------- */
[class^='imgsmn-flash-']:before, [class^='imgsmn-flash-']:after, [class*=' imgsmn-flash-']:before, [class*=' imgsmn-flash-']:after {
  opacity: 0.75;
  background-color: hsl(355, 78%, 33%);
  position: absolute;
  top: -50%;
  bottom: -50%;
  left: -50%;
  right: -50%;
  content: '';
}

[class^='imgsmn-flash-']:after, [class*=' imgsmn-flash-']:after {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

[class^='imgsmn-flash-'] figcaption, [class*=' imgsmn-flash-'] figcaption {
  opacity: 0;
  z-index: 1;
}

[class^='imgsmn-flash-'].summon figcaption, [class*=' imgsmn-flash-'].summon figcaption {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
  opacity: 1;
}

/* imgsmn-flash-top-left
   ----------------------------- */
.imgsmn-flash-top-left:before, .imgsmn-flash-top-left:after {
  -webkit-transform: rotate(-45deg) translateY(-100%);
  transform: rotate(-45deg) translateY(-100%);
}

.imgsmn-flash-top-left.summon:before {
  -webkit-transform: rotate(-45deg) translateY(100%);
  transform: rotate(-45deg) translateY(100%);
}

.imgsmn-flash-top-left.summon:after {
  -webkit-transform: rotate(-45deg) translateY(0%);
  transform: rotate(-45deg) translateY(0%);
}

/* imgsmn-flash-top-right
   ----------------------------- */
.imgsmn-flash-top-right:before, .imgsmn-flash-top-right:after {
  -webkit-transform: rotate(45deg) translateY(-100%);
  transform: rotate(45deg) translateY(-100%);
}

.imgsmn-flash-top-right.summon:before {
  -webkit-transform: rotate(45deg) translateY(100%);
  transform: rotate(45deg) translateY(100%);
}

.imgsmn-flash-top-right.summon:after {
  -webkit-transform: rotate(45deg) translateY(0%);
  transform: rotate(45deg) translateY(0%);
}

/* imgsmn-flash-bottom-left
   ----------------------------- */
.imgsmn-flash-bottom-left:before, .imgsmn-flash-bottom-left:after {
  -webkit-transform: rotate(45deg) translateY(100%);
  transform: rotate(45deg) translateY(100%);
}

.imgsmn-flash-bottom-left.summon:before {
  -webkit-transform: rotate(45deg) translateY(-100%);
  transform: rotate(45deg) translateY(-100%);
}

.imgsmn-flash-bottom-left.summon:after {
  -webkit-transform: rotate(45deg) translateY(0%);
  transform: rotate(45deg) translateY(0%);
}

/* imgsmn-flash-bottom-right
   ----------------------------- */
.imgsmn-flash-bottom-right:before, .imgsmn-flash-bottom-right:after {
  -webkit-transform: rotate(-45deg) translateY(100%);
  transform: rotate(-45deg) translateY(100%);
}

.imgsmn-flash-bottom-right.summon:before {
  -webkit-transform: rotate(-45deg) translateY(-100%);
  transform: rotate(-45deg) translateY(-100%);
}

.imgsmn-flash-bottom-right.summon:after {
  -webkit-transform: rotate(-45deg) translateY(0%);
  transform: rotate(-45deg) translateY(0%);
}

.imgsmn-center figcaption {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}

[class^='imgsmn-'].summon .ih-delay-xs, [class*=' imgsmn-'].summon .ih-delay-xs {
  -webkit-transition-delay: 0.175s;
  transition-delay: 0.175s;
}

[class^='imgsmn-'].summon .ih-delay-sm, [class*=' imgsmn-'].summon .ih-delay-sm {
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}

[class^='imgsmn-'].summon .ih-delay-md, [class*=' imgsmn-'].summon .ih-delay-md {
  -webkit-transition-delay: 0.525s;
  transition-delay: 0.525s;
}

[class^='imgsmn-'].summon .ih-delay-lg, [class*=' imgsmn-'].summon .ih-delay-lg {
  -webkit-transition-delay: 0.7s;
  transition-delay: 0.7s;
}

[class^='imgsmn-'].summon .ih-delay-xl, [class*=' imgsmn-'].summon .ih-delay-xl {
  -webkit-transition-delay: 0.875s;
  transition-delay: 0.875s;
}

[class^='imgsmn-'].summon .ih-delay-xxl, [class*=' imgsmn-'].summon .ih-delay-xxl {
  -webkit-transition-delay: 1.05s;
  transition-delay: 1.05s;
}

[class^='imgsmn-'] [class^='ih-'], [class^='imgsmn-'] [class*=' ih-'], [class*=' imgsmn-'] [class^='ih-'], [class*=' imgsmn-'] [class*=' ih-'] {
  opacity: 0;
}

[class^='imgsmn-'] .ih-fade-up, [class*=' imgsmn-'] .ih-fade-up {
  -webkit-transform: translate(0, 25px);
  transform: translate(0, 25px);
}

[class^='imgsmn-'] .ih-fade-down, [class*=' imgsmn-'] .ih-fade-down {
  -webkit-transform: translate(0, -25px);
  transform: translate(0, -25px);
}

[class^='imgsmn-'] .ih-fade-left, [class*=' imgsmn-'] .ih-fade-left {
  -webkit-transform: translate(25px, 0);
  transform: translate(25px, 0);
}

[class^='imgsmn-'] .ih-fade-right, [class*=' imgsmn-'] .ih-fade-right {
  -webkit-transform: translate(-25px, 0);
  transform: translate(-25px, 0);
}

[class^='imgsmn-'] .ih-fade-up-big, [class*=' imgsmn-'] .ih-fade-up-big {
  -webkit-transform: translate(0, 300%);
  transform: translate(0, 300%);
}

[class^='imgsmn-'] .ih-fade-down-big, [class*=' imgsmn-'] .ih-fade-down-big {
  -webkit-transform: translate(0, -300%);
  transform: translate(0, -300%);
}

[class^='imgsmn-'] .ih-fade-left-big, [class*=' imgsmn-'] .ih-fade-left-big {
  -webkit-transform: translate(150%, 0);
  transform: translate(150%, 0);
}

[class^='imgsmn-'] .ih-fade-right-big, [class*=' imgsmn-'] .ih-fade-right-big {
  -webkit-transform: translate(-150%, 0);
  transform: translate(-150%, 0);
}

[class^='imgsmn-'] .ih-zoom-in, [class*=' imgsmn-'] .ih-zoom-in {
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
}

[class^='imgsmn-'] .ih-zoom-out, [class*=' imgsmn-'] .ih-zoom-out {
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
}

[class^='imgsmn-'] .ih-flip-x, [class*=' imgsmn-'] .ih-flip-x {
  -webkit-transform: rotateX(-90deg);
  transform: rotateX(-90deg);
}

[class^='imgsmn-'] .ih-flip-y, [class*=' imgsmn-'] .ih-flip-y {
  -webkit-transform: rotateY(90deg);
  transform: rotateY(90deg);
}

[class^='imgsmn-'].summon [class^='ih-'], [class^='imgsmn-'].summon [class*=' ih-'], [class*=' imgsmn-'].summon [class^='ih-'], [class*=' imgsmn-'].summon [class*=' ih-'] {
  -webkit-transform: translate(0, 0) scale(1) rotate(0);
  transform: translate(0, 0) scale(1) rotate(0);
  opacity: 1;
}
