.examples {
    width: 980px;
    margin: 0 auto;
}

.demo {
    padding: 10px;
}

    .demo h3 {
        font-size: 1.4em;
        line-height: 1.4em;
    }

    .demo p {
        font-family: "Microsoft YaHei","Segoe UI", "Lucida Grande", Helvetica, Arial,sans-serif, FreeSans, Arimo;
    }

[class^='imghvr-'], [class*=' imghvr-'] {
    position: relative;
    display: inline-block;
    margin: 0px;
    max-width: 100%;
    background-color: #2266a5;
    color: #fff;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
}

    [class^='imghvr-'] > img, [class*=' imghvr-'] > img {
        vertical-align: top;
        max-width: 100%;
    }

    [class^='imghvr-'] figcaption, [class*=' imghvr-'] figcaption {
        background-color: #51a882;
        position: absolute;
        padding: 30px;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
    }

    [class^='imghvr-'] h3, [class^='imghvr-'] p, [class*=' imghvr-'] h3, [class*=' imghvr-'] p {
        color: #fff;
        padding: 0px;
        margin: 0;
    }

    [class^='imghvr-'] > a, [class*=' imghvr-'] > a {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1;
    }

    [class^='imghvr-'], [class*=' imghvr-'], [class^='imghvr-']:before,
    [class^='imghvr-']:after, [class*=' imghvr-']:before, [class*=' imghvr-']:after,
    [class^='imghvr-'] *, [class*=' imghvr-'] *, [class^='imghvr-'] *:before,
    [class^='imghvr-'] *:after, [class*=' imghvr-'] *:before, [class*=' imghvr-'] *:after {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-transition: all 0.35s ease;
        -moz-transition: all 0.35s ease;
        transition: all 0.35s ease;
    }

[class^='imghvr-fade'] figcaption, [class*=' imghvr-fade'] figcaption {
    opacity: 0;
}

[class^='imghvr-fade']:hover > img, [class*=' imghvr-fade']:hover > img {
    opacity: 0;
}

[class^='imghvr-fade']:hover figcaption, [class*=' imghvr-fade']:hover figcaption {
    opacity: 1;
}

[class^='imghvr-fade']:hover > img, [class^='imghvr-fade']:hover figcaption, [class*=' imghvr-fade']:hover > img, [class*=' imghvr-fade']:hover figcaption {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}

.imghvr-fade-in-up figcaption {
    -webkit-transform: translate(0, 15%);
    -moz-transform: translate(0, 15%);
    -ms-transform: translate(0, 15%);
    -o-transform: translate(0, 15%);
    transform: translate(0, 15%);
}

.imghvr-fade-in-down figcaption {
    -webkit-transform: translate(0, -15%);
    -moz-transform: translate(0, -15%);
    -ms-transform: translate(0, -15%);
    -o-transform: translate(0, -15%);
    transform: translate(0, -15%);
}

.imghvr-fade-in-left figcaption {
    -webkit-transform: translate(-15%, 0);
    -moz-transform: translate(-15%, 0);
    -ms-transform: translate(-15%, 0);
    -o-transform: translate(-15%, 0);
    transform: translate(-15%, 0);
}

.imghvr-fade-in-right figcaption {
    -webkit-transform: translate(15%, 0);
    -moz-transform: translate(15%, 0);
    -ms-transform: translate(15%, 0);
    -o-transform: translate(15%, 0);
    transform: translate(15%, 0);
}

[class^='imghvr-push-']:hover figcaption, [class*=' imghvr-push-']:hover figcaption {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}

.imghvr-push-up figcaption {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
}

.imghvr-push-up:hover > img {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

.imghvr-push-down figcaption {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

.imghvr-push-down:hover > img {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
}

.imghvr-push-left figcaption {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
}

.imghvr-push-left:hover > img {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
}

.imghvr-push-right figcaption {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
}

.imghvr-push-right:hover > img {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
}

[class^='imghvr-slide-']:hover figcaption, [class*=' imghvr-slide-']:hover figcaption {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}

.imghvr-slide-up figcaption {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
}

.imghvr-slide-down figcaption {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

.imghvr-slide-left figcaption {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
}

.imghvr-slide-right figcaption {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
}

.imghvr-slide-top-left figcaption {
    -webkit-transform: translate(-100%, -100%);
    -moz-transform: translate(-100%, -100%);
    -ms-transform: translate(-100%, -100%);
    -o-transform: translate(-100%, -100%);
    transform: translate(-100%, -100%);
}

.imghvr-slide-top-right figcaption {
    -webkit-transform: translate(100%, -100%);
    -moz-transform: translate(100%, -100%);
    -ms-transform: translate(100%, -100%);
    -o-transform: translate(100%, -100%);
    transform: translate(100%, -100%);
}

.imghvr-slide-bottom-left figcaption {
    -webkit-transform: translate(-100%, 100%);
    -moz-transform: translate(-100%, 100%);
    -ms-transform: translate(-100%, 100%);
    -o-transform: translate(-100%, 100%);
    transform: translate(-100%, 100%);
}

.imghvr-slide-bottom-right figcaption {
    -webkit-transform: translate(100%, 100%);
    -moz-transform: translate(100%, 100%);
    -ms-transform: translate(100%, 100%);
    -o-transform: translate(100%, 100%);
    transform: translate(100%, 100%);
}

[class^='imghvr-reveal-']:before, [class*=' imghvr-reveal-']:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    content: '';
    background-color: #51a882;
}

[class^='imghvr-reveal-'] figcaption, [class*=' imghvr-reveal-'] figcaption {
    opacity: 0;
}

[class^='imghvr-reveal-']:hover:before, [class*=' imghvr-reveal-']:hover:before {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}

[class^='imghvr-reveal-']:hover figcaption, [class*=' imghvr-reveal-']:hover figcaption {
    opacity: 1;
    -webkit-transition-delay: 0.21s;
    -moz-transition-delay: 0.21s;
    transition-delay: 0.21s;
}

.imghvr-reveal-up:before {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
}

.imghvr-reveal-down:before {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

.imghvr-reveal-left:before {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
}

.imghvr-reveal-right:before {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
}

.imghvr-reveal-top-left:before {
    -webkit-transform: translate(-100%, -100%);
    -moz-transform: translate(-100%, -100%);
    -ms-transform: translate(-100%, -100%);
    -o-transform: translate(-100%, -100%);
    transform: translate(-100%, -100%);
}

.imghvr-reveal-top-right:before {
    -webkit-transform: translate(100%, -100%);
    -moz-transform: translate(100%, -100%);
    -ms-transform: translate(100%, -100%);
    -o-transform: translate(100%, -100%);
    transform: translate(100%, -100%);
}


.imghvr-reveal-bottom-left:before {
    -webkit-transform: translate(-100%, 100%);
    -moz-transform: translate(-100%, 100%);
    -ms-transform: translate(-100%, 100%);
    -o-transform: translate(-100%, 100%);
    transform: translate(-100%, 100%);
}

.imghvr-reveal-bottom-right:before {
    -webkit-transform: translate(100%, 100%);
    -moz-transform: translate(100%, 100%);
    -ms-transform: translate(100%, 100%);
    -o-transform: translate(100%, 100%);
    transform: translate(100%, 100%);
}

[class^='imghvr-hinge-'], [class*=' imghvr-hinge-'] {
    -webkit-perspective: 50em;
    -moz-perspective: 50em;
    perspective: 50em;
}

    [class^='imghvr-hinge-'] figcaption, [class*=' imghvr-hinge-'] figcaption {
        opacity: 0;
        z-index: 1;
    }

    [class^='imghvr-hinge-']:hover img, [class*=' imghvr-hinge-']:hover img {
        opacity: 0;
    }

    [class^='imghvr-hinge-']:hover figcaption, [class*=' imghvr-hinge-']:hover figcaption {
        opacity: 1;
        -webkit-transition-delay: 0.21s;
        -moz-transition-delay: 0.21s;
        transition-delay: 0.21s;
    }

.imghvr-hinge-up img {
    -webkit-transform-origin: 50% 0%;
    -moz-transform-origin: 50% 0%;
    -ms-transform-origin: 50% 0%;
    -o-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
}

.imghvr-hinge-up figcaption {
    -webkit-transform: rotateX(90deg);
    -moz-transform: rotateX(90deg);
    -ms-transform: rotateX(90deg);
    -o-transform: rotateX(90deg);
    transform: rotateX(90deg);
    -webkit-transform-origin: 50% 100%;
    -moz-transform-origin: 50% 100%;
    -ms-transform-origin: 50% 100%;
    -o-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
}

.imghvr-hinge-up:hover > img {
    -webkit-transform: rotateX(-90deg);
    -moz-transform: rotateX(-90deg);
    -ms-transform: rotateX(-90deg);
    -o-transform: rotateX(-90deg);
    transform: rotateX(-90deg);
}

.imghvr-hinge-up:hover figcaption {
    -webkit-transform: rotateX(0);
    -moz-transform: rotateX(0);
    -ms-transform: rotateX(0);
    -o-transform: rotateX(0);
    transform: rotateX(0);
}

.imghvr-hinge-down img {
    -webkit-transform-origin: 50% 100%;
    -moz-transform-origin: 50% 100%;
    -ms-transform-origin: 50% 100%;
    -o-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
}

.imghvr-hinge-down figcaption {
    -webkit-transform: rotateX(-90deg);
    -moz-transform: rotateX(-90deg);
    -ms-transform: rotateX(-90deg);
    -o-transform: rotateX(-90deg);
    transform: rotateX(-90deg);
    -webkit-transform-origin: 50% -50%;
    -moz-transform-origin: 50% -50%;
    -ms-transform-origin: 50% -50%;
    -o-transform-origin: 50% -50%;
    transform-origin: 50% -50%;
}

.imghvr-hinge-down:hover > img {
    -webkit-transform: rotateX(90deg);
    -moz-transform: rotateX(90deg);
    -ms-transform: rotateX(90deg);
    -o-transform: rotateX(90deg);
    transform: rotateX(90deg);
    opacity: 0;
}

.imghvr-hinge-down:hover figcaption {
    -webkit-transform: rotateX(0);
    -moz-transform: rotateX(0);
    -ms-transform: rotateX(0);
    -o-transform: rotateX(0);
    transform: rotateX(0);
}

.imghvr-hinge-left img {
    -webkit-transform-origin: 0% 50%;
    -moz-transform-origin: 0% 50%;
    -ms-transform-origin: 0% 50%;
    -o-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
}

.imghvr-hinge-left figcaption {
    -webkit-transform: rotateY(-90deg);
    -moz-transform: rotateY(-90deg);
    -ms-transform: rotateY(-90deg);
    -o-transform: rotateY(-90deg);
    transform: rotateY(-90deg);
    -webkit-transform-origin: 100% 50%;
    -moz-transform-origin: 100% 50%;
    -ms-transform-origin: 100% 50%;
    -o-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
}

.imghvr-hinge-left:hover > img {
    -webkit-transform: rotateY(90deg);
    -moz-transform: rotateY(90deg);
    -ms-transform: rotateY(90deg);
    -o-transform: rotateY(90deg);
    transform: rotateY(90deg);
}

.imghvr-hinge-left:hover figcaption {
    -webkit-transform: rotateY(0);
    -moz-transform: rotateY(0);
    -ms-transform: rotateY(0);
    -o-transform: rotateY(0);
    transform: rotateY(0);
}

.imghvr-hinge-right img {
    -webkit-transform-origin: 100% 50%;
    -moz-transform-origin: 100% 50%;
    -ms-transform-origin: 100% 50%;
    -o-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
}

.imghvr-hinge-right figcaption {
    -webkit-transform: rotateY(90deg);
    -moz-transform: rotateY(90deg);
    -ms-transform: rotateY(90deg);
    -o-transform: rotateY(90deg);
    transform: rotateY(90deg);
    -webkit-transform-origin: 0 50%;
    -moz-transform-origin: 0 50%;
    -ms-transform-origin: 0 50%;
    -o-transform-origin: 0 50%;
    transform-origin: 0 50%;
}

.imghvr-hinge-right:hover > img {
    -webkit-transform: rotateY(-90deg);
    -moz-transform: rotateY(-90deg);
    -ms-transform: rotateY(-90deg);
    -o-transform: rotateY(-90deg);
    transform: rotateY(-90deg);
}

.imghvr-hinge-right:hover figcaption {
    -webkit-transform: rotateY(0);
    -moz-transform: rotateY(0);
    -ms-transform: rotateY(0);
    -o-transform: rotateY(0);
    transform: rotateY(0);
}

[class^='imghvr-flip-'], [class*=' imghvr-flip-'] {
    -webkit-perspective: 50em;
    -moz-perspective: 50em;
    perspective: 50em;
}

    [class^='imghvr-flip-'] img, [class*=' imghvr-flip-'] img {
        backface-visibility: hidden;
    }

    [class^='imghvr-flip-'] figcaption, [class*=' imghvr-flip-'] figcaption {
        opacity: 0;
    }

    [class^='imghvr-flip-']:hover > img, [class*=' imghvr-flip-']:hover > img {
        opacity: 0;
    }

    [class^='imghvr-flip-']:hover figcaption, [class*=' imghvr-flip-']:hover figcaption {
        opacity: 1;
        -webkit-transition-delay: 0.14s;
        -moz-transition-delay: 0.14s;
        transition-delay: 0.14s;
    }

.imghvr-flip-horiz figcaption {
    -webkit-transform: rotateX(90deg);
    -moz-transform: rotateX(90deg);
    -ms-transform: rotateX(90deg);
    -o-transform: rotateX(90deg);
    transform: rotateX(90deg);
    -webkit-transform-origin: 0% 50%;
    -moz-transform-origin: 0% 50%;
    -ms-transform-origin: 0% 50%;
    -o-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
}

.imghvr-flip-horiz:hover img {
    -webkit-transform: rotateX(-180deg);
    -moz-transform: rotateX(-180deg);
    -ms-transform: rotateX(-180deg);
    -o-transform: rotateX(-180deg);
    transform: rotateX(-180deg);
}

.imghvr-flip-horiz:hover figcaption {
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    -o-transform: rotateX(0deg);
    transform: rotateX(0deg);
}

.imghvr-flip-vert figcaption {
    -webkit-transform: rotateY(90deg);
    -moz-transform: rotateY(90deg);
    -ms-transform: rotateY(90deg);
    -o-transform: rotateY(90deg);
    transform: rotateY(90deg);
    -webkit-transform-origin: 50% 0%;
    -moz-transform-origin: 50% 0%;
    -ms-transform-origin: 50% 0%;
    -o-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
}

.imghvr-flip-vert:hover > img {
    -webkit-transform: rotateY(-180deg);
    -moz-transform: rotateY(-180deg);
    -ms-transform: rotateY(-180deg);
    -o-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
}

.imghvr-flip-vert:hover figcaption {
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    -o-transform: rotateY(0deg);
    transform: rotateY(0deg);
}


.imghvr-flip-diag-1 figcaption {
    -webkit-transform: rotate3d(1, -1, 0, 100deg);
    -moz-transform: rotate3d(1, -1, 0, 100deg);
    -ms-transform: rotate3d(1, -1, 0, 100deg);
    -o-transform: rotate3d(1, -1, 0, 100deg);
    transform: rotate3d(1, -1, 0, 100deg);
}

.imghvr-flip-diag-1:hover > img {
    -webkit-transform: rotate3d(-1, 1, 0, 100deg);
    -moz-transform: rotate3d(-1, 1, 0, 100deg);
    -ms-transform: rotate3d(-1, 1, 0, 100deg);
    -o-transform: rotate3d(-1, 1, 0, 100deg);
    transform: rotate3d(-1, 1, 0, 100deg);
}

.imghvr-flip-diag-1:hover figcaption {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    -moz-transform: rotate3d(0, 0, 0, 0deg);
    -ms-transform: rotate3d(0, 0, 0, 0deg);
    -o-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg);
}

.imghvr-flip-diag-2 figcaption {
    -webkit-transform: rotate3d(1, 1, 0, 100deg);
    -moz-transform: rotate3d(1, 1, 0, 100deg);
    -ms-transform: rotate3d(1, 1, 0, 100deg);
    -o-transform: rotate3d(1, 1, 0, 100deg);
    transform: rotate3d(1, 1, 0, 100deg);
}

.imghvr-flip-diag-2:hover > img {
    -webkit-transform: rotate3d(-1, -1, 0, 100deg);
    -moz-transform: rotate3d(-1, -1, 0, 100deg);
    -ms-transform: rotate3d(-1, -1, 0, 100deg);
    -o-transform: rotate3d(-1, -1, 0, 100deg);
    transform: rotate3d(-1, -1, 0, 100deg);
}

.imghvr-flip-diag-2:hover figcaption {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    -moz-transform: rotate3d(0, 0, 0, 0deg);
    -ms-transform: rotate3d(0, 0, 0, 0deg);
    -o-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg);
}


[class^='imghvr-shutter-out-']:before, [class*=' imghvr-shutter-out-']:before {
    background: #52aab6;
    position: absolute;
    content: '';
    -webkit-transition-delay: 0.105s;
    -moz-transition-delay: 0.105s;
    transition-delay: 0.105s;
}

[class^='imghvr-shutter-out-'] figcaption, [class*=' imghvr-shutter-out-'] figcaption {
    opacity: 0;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

[class^='imghvr-shutter-out-']:hover:before, [class*=' imghvr-shutter-out-']:hover:before {
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

[class^='imghvr-shutter-out-']:hover figcaption, [class*=' imghvr-shutter-out-']:hover figcaption {
    opacity: 1;
    -webkit-transition-delay: 0.105s;
    -moz-transition-delay: 0.105s;
    transition-delay: 0.105s;
}

.imghvr-shutter-out-horiz:before {
    left: 50%;
    right: 50%;
    top: 0;
    bottom: 0;
}

.imghvr-shutter-out-horiz:hover:before {
    left: 0;
    right: 0;
}

.imghvr-shutter-out-vert:before {
    top: 50%;
    bottom: 50%;
    left: 0;
    right: 0;
}

.imghvr-shutter-out-vert:hover:before {
    top: 0;
    bottom: 0;
}


.imghvr-shutter-out-diag-1:before {
    top: 50%;
    bottom: 50%;
    left: -35%;
    right: -35%;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.imghvr-shutter-out-diag-1:hover:before {
    top: -35%;
    bottom: -35%;
}

.imghvr-shutter-out-diag-2:before {
    top: 50%;
    bottom: 50%;
    left: -35%;
    right: -35%;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.imghvr-shutter-out-diag-2:hover:before {
    top: -35%;
    bottom: -35%;
}

[class^='imghvr-shutter-in-']:after, [class^='imghvr-shutter-in-']:before, [class*=' imghvr-shutter-in-']:after, [class*=' imghvr-shutter-in-']:before {
    background: #52aab6;
    position: absolute;
    content: '';
}

[class^='imghvr-shutter-in-']:after, [class*=' imghvr-shutter-in-']:after {
    top: 0;
    left: 0;
}

[class^='imghvr-shutter-in-']:before, [class*=' imghvr-shutter-in-']:before {
    right: 0;
    bottom: 0;
}

[class^='imghvr-shutter-in-'] figcaption, [class*=' imghvr-shutter-in-'] figcaption {
    opacity: 0;
    z-index: 1;
}

[class^='imghvr-shutter-in-']:hover figcaption, [class*=' imghvr-shutter-in-']:hover figcaption {
    opacity: 1;
    -webkit-transition-delay: 0.21s;
    -moz-transition-delay: 0.21s;
    transition-delay: 0.21s;
}

.imghvr-shutter-in-horiz:after, .imghvr-shutter-in-horiz:before {
    width: 0;
    height: 100%;
}

.imghvr-shutter-in-horiz:hover:after, .imghvr-shutter-in-horiz:hover:before {
    width: 50%;
}


.imghvr-shutter-in-vert:after, .imghvr-shutter-in-vert:before {
    height: 0;
    width: 100%;
}

.imghvr-shutter-in-vert:hover:after, .imghvr-shutter-in-vert:hover:before {
    height: 50%;
}

.imghvr-shutter-in-out-horiz:after, .imghvr-shutter-in-out-horiz:before {
    width: 0;
    height: 100%;
    opacity: 0.75;
}

.imghvr-shutter-in-out-horiz:hover:after, .imghvr-shutter-in-out-horiz:hover:before {
    width: 100%;
}


.imghvr-shutter-in-out-vert:after, .imghvr-shutter-in-out-vert:before {
    height: 0;
    width: 100%;
    opacity: 0.75;
}

.imghvr-shutter-in-out-vert:hover:after, .imghvr-shutter-in-out-vert:hover:before {
    height: 100%;
}


.imghvr-shutter-in-out-diag-1:after, .imghvr-shutter-in-out-diag-1:before {
    width: 200%;
    height: 200%;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    transition: all 0.6s ease;
    opacity: 0.75;
}

.imghvr-shutter-in-out-diag-1:after {
    -webkit-transform: skew(-45deg) translateX(-150%);
    -moz-transform: skew(-45deg) translateX(-150%);
    -ms-transform: skew(-45deg) translateX(-150%);
    -o-transform: skew(-45deg) translateX(-150%);
    transform: skew(-45deg) translateX(-150%);
}

.imghvr-shutter-in-out-diag-1:before {
    -webkit-transform: skew(-45deg) translateX(150%);
    -moz-transform: skew(-45deg) translateX(150%);
    -ms-transform: skew(-45deg) translateX(150%);
    -o-transform: skew(-45deg) translateX(150%);
    transform: skew(-45deg) translateX(150%);
}

.imghvr-shutter-in-out-diag-1:hover:after {
    -webkit-transform: skew(-45deg) translateX(-50%);
    -moz-transform: skew(-45deg) translateX(-50%);
    -ms-transform: skew(-45deg) translateX(-50%);
    -o-transform: skew(-45deg) translateX(-50%);
    transform: skew(-45deg) translateX(-50%);
}

.imghvr-shutter-in-out-diag-1:hover:before {
    -webkit-transform: skew(-45deg) translateX(50%);
    -moz-transform: skew(-45deg) translateX(50%);
    -ms-transform: skew(-45deg) translateX(50%);
    -o-transform: skew(-45deg) translateX(50%);
    transform: skew(-45deg) translateX(50%);
}


.imghvr-shutter-in-out-diag-2:after, .imghvr-shutter-in-out-diag-2:before {
    width: 200%;
    height: 200%;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    transition: all 0.6s ease;
    opacity: 0.75;
}

.imghvr-shutter-in-out-diag-2:after {
    -webkit-transform: skew(45deg) translateX(-100%);
    -moz-transform: skew(45deg) translateX(-100%);
    -ms-transform: skew(45deg) translateX(-100%);
    -o-transform: skew(45deg) translateX(-100%);
    transform: skew(45deg) translateX(-100%);
}

.imghvr-shutter-in-out-diag-2:before {
    -webkit-transform: skew(45deg) translateX(100%);
    -moz-transform: skew(45deg) translateX(100%);
    -ms-transform: skew(45deg) translateX(100%);
    -o-transform: skew(45deg) translateX(100%);
    transform: skew(45deg) translateX(100%);
}

.imghvr-shutter-in-out-diag-2:hover:after {
    -webkit-transform: skew(45deg) translateX(0%);
    -moz-transform: skew(45deg) translateX(0%);
    -ms-transform: skew(45deg) translateX(0%);
    -o-transform: skew(45deg) translateX(0%);
    transform: skew(45deg) translateX(0%);
}

.imghvr-shutter-in-out-diag-2:hover:before {
    -webkit-transform: skew(45deg) translateX(0%);
    -moz-transform: skew(45deg) translateX(0%);
    -ms-transform: skew(45deg) translateX(0%);
    -o-transform: skew(45deg) translateX(0%);
    transform: skew(45deg) translateX(0%);
}

[class^='imghvr-fold'], [class*=' imghvr-fold'] {
    -webkit-perspective: 50em;
    -moz-perspective: 50em;
    perspective: 50em;
}

    [class^='imghvr-fold'] img, [class*=' imghvr-fold'] img {
        -webkit-transform-origin: 50% 0%;
        -moz-transform-origin: 50% 0%;
        -ms-transform-origin: 50% 0%;
        -o-transform-origin: 50% 0%;
        transform-origin: 50% 0%;
    }

    [class^='imghvr-fold'] figcaption, [class*=' imghvr-fold'] figcaption {
        z-index: 1;
        opacity: 0;
    }

    [class^='imghvr-fold']:hover > img, [class*=' imghvr-fold']:hover > img {
        opacity: 0;
        -webkit-transition-delay: 0;
        -moz-transition-delay: 0;
        transition-delay: 0;
    }

    [class^='imghvr-fold']:hover figcaption, [class*=' imghvr-fold']:hover figcaption {
        -webkit-transform: rotateX(0) translate3d(0, 0%, 0) scale(1);
        -moz-transform: rotateX(0) translate3d(0, 0%, 0) scale(1);
        -ms-transform: rotateX(0) translate3d(0, 0%, 0) scale(1);
        -o-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;
        -moz-transition-delay: 0.21s;
        transition-delay: 0.21s;
    }


.imghvr-fold-up > img {
    -webkit-transform-origin: 50% 0%;
    -moz-transform-origin: 50% 0%;
    -ms-transform-origin: 50% 0%;
    -o-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
}

.imghvr-fold-up figcaption {
    -webkit-transform: rotateX(-90deg) translate3d(0%, -50%, 0) scale(0.6);
    -moz-transform: rotateX(-90deg) translate3d(0%, -50%, 0) scale(0.6);
    -ms-transform: rotateX(-90deg) translate3d(0%, -50%, 0) scale(0.6);
    -o-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%;
    -moz-transform-origin: 50% 100%;
    -ms-transform-origin: 50% 100%;
    -o-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
}

.imghvr-fold-up:hover > img {
    -webkit-transform: rotateX(90deg) scale(0.6) translateY(50%);
    -moz-transform: rotateX(90deg) scale(0.6) translateY(50%);
    -ms-transform: rotateX(90deg) scale(0.6) translateY(50%);
    -o-transform: rotateX(90deg) scale(0.6) translateY(50%);
    transform: rotateX(90deg) scale(0.6) translateY(50%);
}

.imghvr-fold-down > img {
    -webkit-transform-origin: 50% 100%;
    -moz-transform-origin: 50% 100%;
    -ms-transform-origin: 50% 100%;
    -o-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
}

.imghvr-fold-down figcaption {
    -webkit-transform: rotateX(90deg) translate3d(0%, 50%, 0) scale(0.6);
    -moz-transform: rotateX(90deg) translate3d(0%, 50%, 0) scale(0.6);
    -ms-transform: rotateX(90deg) translate3d(0%, 50%, 0) scale(0.6);
    -o-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%;
    -moz-transform-origin: 50% 0%;
    -ms-transform-origin: 50% 0%;
    -o-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
}

.imghvr-fold-down:hover > img {
    -webkit-transform: rotateX(-90deg) scale(0.6) translateY(-50%);
    -moz-transform: rotateX(-90deg) scale(0.6) translateY(-50%);
    -ms-transform: rotateX(-90deg) scale(0.6) translateY(-50%);
    -o-transform: rotateX(-90deg) scale(0.6) translateY(-50%);
    transform: rotateX(-90deg) scale(0.6) translateY(-50%);
}

.imghvr-fold-left > img {
    -webkit-transform-origin: 0% 50%;
    -moz-transform-origin: 0% 50%;
    -ms-transform-origin: 0% 50%;
    -o-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
}

.imghvr-fold-left figcaption {
    -webkit-transform: rotateY(90deg) translate3d(-50%, 0%, 0) scale(0.6);
    -moz-transform: rotateY(90deg) translate3d(-50%, 0%, 0) scale(0.6);
    -ms-transform: rotateY(90deg) translate3d(-50%, 0%, 0) scale(0.6);
    -o-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%;
    -moz-transform-origin: 100% 50%;
    -ms-transform-origin: 100% 50%;
    -o-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
}

.imghvr-fold-left:hover > img {
    -webkit-transform: rotateY(-90deg) scale(0.6) translateX(50%);
    -moz-transform: rotateY(-90deg) scale(0.6) translateX(50%);
    -ms-transform: rotateY(-90deg) scale(0.6) translateX(50%);
    -o-transform: rotateY(-90deg) scale(0.6) translateX(50%);
    transform: rotateY(-90deg) scale(0.6) translateX(50%);
}

.imghvr-fold-right > img {
    -webkit-transform-origin: 100% 50%;
    -moz-transform-origin: 100% 50%;
    -ms-transform-origin: 100% 50%;
    -o-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
}

.imghvr-fold-right figcaption {
    -webkit-transform: rotateY(-90deg) translate3d(50%, 0%, 0) scale(0.6);
    -moz-transform: rotateY(-90deg) translate3d(50%, 0%, 0) scale(0.6);
    -ms-transform: rotateY(-90deg) translate3d(50%, 0%, 0) scale(0.6);
    -o-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%;
    -moz-transform-origin: 0 50%;
    -ms-transform-origin: 0 50%;
    -o-transform-origin: 0 50%;
    transform-origin: 0 50%;
}

.imghvr-fold-right:hover > img {
    -webkit-transform: rotateY(90deg) scale(0.6) translateX(-50%);
    -moz-transform: rotateY(90deg) scale(0.6) translateX(-50%);
    -ms-transform: rotateY(90deg) scale(0.6) translateX(-50%);
    -o-transform: rotateY(90deg) scale(0.6) translateX(-50%);
    transform: rotateY(90deg) scale(0.6) translateX(-50%);
}

.imghvr-zoom-in figcaption {
    opacity: 0;
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}

.imghvr-zoom-in:hover figcaption {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}


[class^='imghvr-zoom-out'] figcaption, [class*=' imghvr-zoom-out'] figcaption {
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    -o-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    opacity: 0;
}

[class^='imghvr-zoom-out']:hover figcaption, [class^='imghvr-zoom-out'].hover figcaption, [class*=' imghvr-zoom-out']:hover figcaption, [class*=' imghvr-zoom-out'].hover figcaption {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    opacity: 1;
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

.imghvr-zoom-out:hover > img {
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0;
}

.imghvr-zoom-out-up:hover > img, .imghvr-zoom-out-up.hover > img {
    -webkit-animation: imghvr-zoom-out-up 0.4025s linear;
    -moz-animation: imghvr-zoom-out-up 0.4025s linear;
    animation: imghvr-zoom-out-up 0.4025s linear;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}

@-webkit-keyframes imghvr-zoom-out-up {
    50% {
        -webkit-transform: scale(0.8) translateY(0%);
        -moz-transform: scale(0.8) translateY(0%);
        -ms-transform: scale(0.8) translateY(0%);
        -o-transform: scale(0.8) translateY(0%);
        transform: scale(0.8) translateY(0%);
        opacity: 0.5;
    }

    100% {
        -webkit-transform: scale(0.8) translateY(-150%);
        -moz-transform: scale(0.8) translateY(-150%);
        -ms-transform: scale(0.8) translateY(-150%);
        -o-transform: scale(0.8) translateY(-150%);
        transform: scale(0.8) translateY(-150%);
        opacity: 0.5;
    }
}

@keyframes imghvr-zoom-out-up {
    50% {
        -webkit-transform: scale(0.8) translateY(0%);
        -moz-transform: scale(0.8) translateY(0%);
        -ms-transform: scale(0.8) translateY(0%);
        -o-transform: scale(0.8) translateY(0%);
        transform: scale(0.8) translateY(0%);
        opacity: 0.5;
    }

    100% {
        -webkit-transform: scale(0.8) translateY(-150%);
        -moz-transform: scale(0.8) translateY(-150%);
        -ms-transform: scale(0.8) translateY(-150%);
        -o-transform: scale(0.8) translateY(-150%);
        transform: scale(0.8) translateY(-150%);
        opacity: 0.5;
    }
}
.imghvr-zoom-out-down:hover > img, .imghvr-zoom-out-down.hover > img {
    -webkit-animation: imghvr-zoom-out-down 0.4025s linear;
    -moz-animation: imghvr-zoom-out-down 0.4025s linear;
    animation: imghvr-zoom-out-down 0.4025s linear;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}

@-webkit-keyframes imghvr-zoom-out-down {
    50% {
        -webkit-transform: scale(0.8) translateY(0%);
        -moz-transform: scale(0.8) translateY(0%);
        -ms-transform: scale(0.8) translateY(0%);
        -o-transform: scale(0.8) translateY(0%);
        transform: scale(0.8) translateY(0%);
        opacity: 0.5;
    }

    100% {
        -webkit-transform: scale(0.8) translateY(150%);
        -moz-transform: scale(0.8) translateY(150%);
        -ms-transform: scale(0.8) translateY(150%);
        -o-transform: scale(0.8) translateY(150%);
        transform: scale(0.8) translateY(150%);
        opacity: 0.5;
    }
}

@keyframes imghvr-zoom-out-down {
    50% {
        -webkit-transform: scale(0.8) translateY(0%);
        -moz-transform: scale(0.8) translateY(0%);
        -ms-transform: scale(0.8) translateY(0%);
        -o-transform: scale(0.8) translateY(0%);
        transform: scale(0.8) translateY(0%);
        opacity: 0.5;
    }

    100% {
        -webkit-transform: scale(0.8) translateY(150%);
        -moz-transform: scale(0.8) translateY(150%);
        -ms-transform: scale(0.8) translateY(150%);
        -o-transform: scale(0.8) translateY(150%);
        transform: scale(0.8) translateY(150%);
        opacity: 0.5;
    }
}

.imghvr-zoom-out-left:hover > img, .imghvr-zoom-out-left.hover > img {
    -webkit-animation: imghvr-zoom-out-left 0.4025s linear;
    -moz-animation: imghvr-zoom-out-left 0.4025s linear;
    animation: imghvr-zoom-out-left 0.4025s linear;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}

@-webkit-keyframes imghvr-zoom-out-left {
    50% {
        -webkit-transform: scale(0.8) translateX(0%);
        -moz-transform: scale(0.8) translateX(0%);
        -ms-transform: scale(0.8) translateX(0%);
        -o-transform: scale(0.8) translateX(0%);
        transform: scale(0.8) translateX(0%);
        opacity: 0.5;
    }

    100% {
        -webkit-transform: scale(0.8) translateX(-150%);
        -moz-transform: scale(0.8) translateX(-150%);
        -ms-transform: scale(0.8) translateX(-150%);
        -o-transform: scale(0.8) translateX(-150%);
        transform: scale(0.8) translateX(-150%);
        opacity: 0.5;
    }
}

@keyframes imghvr-zoom-out-left {
    50% {
        -webkit-transform: scale(0.8) translateX(0%);
        -moz-transform: scale(0.8) translateX(0%);
        -ms-transform: scale(0.8) translateX(0%);
        -o-transform: scale(0.8) translateX(0%);
        transform: scale(0.8) translateX(0%);
        opacity: 0.5;
    }

    100% {
        -webkit-transform: scale(0.8) translateX(-150%);
        -moz-transform: scale(0.8) translateX(-150%);
        -ms-transform: scale(0.8) translateX(-150%);
        -o-transform: scale(0.8) translateX(-150%);
        transform: scale(0.8) translateX(-150%);
        opacity: 0.5;
    }
}

.imghvr-zoom-out-right:hover > img, .imghvr-zoom-out-right.hover > img {
    -webkit-animation: imghvr-zoom-out-right 0.4025s linear;
    -moz-animation: imghvr-zoom-out-right 0.4025s linear;
    animation: imghvr-zoom-out-right 0.4025s linear;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}

@-webkit-keyframes imghvr-zoom-out-right {
    50% {
        -webkit-transform: scale(0.8) translateX(0%);
        -moz-transform: scale(0.8) translateX(0%);
        -ms-transform: scale(0.8) translateX(0%);
        -o-transform: scale(0.8) translateX(0%);
        transform: scale(0.8) translateX(0%);
        opacity: 0.5;
    }

    100% {
        -webkit-transform: scale(0.8) translateX(150%);
        -moz-transform: scale(0.8) translateX(150%);
        -ms-transform: scale(0.8) translateX(150%);
        -o-transform: scale(0.8) translateX(150%);
        transform: scale(0.8) translateX(150%);
        opacity: 0.5;
    }
}

@keyframes imghvr-zoom-out-right {
    50% {
        -webkit-transform: scale(0.8) translateX(0%);
        -moz-transform: scale(0.8) translateX(0%);
        -ms-transform: scale(0.8) translateX(0%);
        -o-transform: scale(0.8) translateX(0%);
        transform: scale(0.8) translateX(0%);
        opacity: 0.5;
    }

    100% {
        -webkit-transform: scale(0.8) translateX(150%);
        -moz-transform: scale(0.8) translateX(150%);
        -ms-transform: scale(0.8) translateX(150%);
        -o-transform: scale(0.8) translateX(150%);
        transform: scale(0.8) translateX(150%);
        opacity: 0.5;
    }
}

.imghvr-zoom-out-flip-horiz {
    -webkit-perspective: 50em;
    -moz-perspective: 50em;
    perspective: 50em;
}

    .imghvr-zoom-out-flip-horiz figcaption {
        opacity: 0;
        -webkit-transform: rotateX(90deg) translateY(-100%) scale(0.5);
        -moz-transform: rotateX(90deg) translateY(-100%) scale(0.5);
        -ms-transform: rotateX(90deg) translateY(-100%) scale(0.5);
        -o-transform: rotateX(90deg) translateY(-100%) scale(0.5);
        transform: rotateX(90deg) translateY(-100%) scale(0.5);
    }

    .imghvr-zoom-out-flip-horiz:hover > img, .imghvr-zoom-out-flip-horiz.hover > img {
        -webkit-transform: rotateX(-100deg) translateY(50%) scale(0.5);
        -moz-transform: rotateX(-100deg) translateY(50%) scale(0.5);
        -ms-transform: rotateX(-100deg) translateY(50%) scale(0.5);
        -o-transform: rotateX(-100deg) translateY(50%) scale(0.5);
        transform: rotateX(-100deg) translateY(50%) scale(0.5);
        opacity: 0;
        -webkit-transition-delay: 0;
        -moz-transition-delay: 0;
        transition-delay: 0;
    }

    .imghvr-zoom-out-flip-horiz:hover figcaption, .imghvr-zoom-out-flip-horiz.hover figcaption {
        -webkit-transform: rotateX(0) translateY(0%) scale(1);
        -moz-transform: rotateX(0) translateY(0%) scale(1);
        -ms-transform: rotateX(0) translateY(0%) scale(1);
        -o-transform: rotateX(0) translateY(0%) scale(1);
        transform: rotateX(0) translateY(0%) scale(1);
        opacity: 1;
        -webkit-transition-delay: 0.35s;
        -moz-transition-delay: 0.35s;
        transition-delay: 0.35s;
    }


.imghvr-zoom-out-flip-vert {
    -webkit-perspective: 50em;
    -moz-perspective: 50em;
    perspective: 50em;
}

    .imghvr-zoom-out-flip-vert figcaption {
        opacity: 0;
        -webkit-transform: rotateY(90deg) translate(50%, 0) scale(0.5);
        -moz-transform: rotateY(90deg) translate(50%, 0) scale(0.5);
        -ms-transform: rotateY(90deg) translate(50%, 0) scale(0.5);
        -o-transform: rotateY(90deg) translate(50%, 0) scale(0.5);
        transform: rotateY(90deg) translate(50%, 0) scale(0.5);
    }

    .imghvr-zoom-out-flip-vert:hover > img, .imghvr-zoom-out-flip-vert.hover > img {
        -webkit-transform: rotateY(-100deg) translateX(50%) scale(0.5);
        -moz-transform: rotateY(-100deg) translateX(50%) scale(0.5);
        -ms-transform: rotateY(-100deg) translateX(50%) scale(0.5);
        -o-transform: rotateY(-100deg) translateX(50%) scale(0.5);
        transform: rotateY(-100deg) translateX(50%) scale(0.5);
        opacity: 0;
        -webkit-transition-delay: 0;
        -moz-transition-delay: 0;
        transition-delay: 0;
    }

    .imghvr-zoom-out-flip-vert:hover figcaption, .imghvr-zoom-out-flip-vert.hover figcaption {
        -webkit-transform: rotateY(0) translate(0, 0) scale(1);
        -moz-transform: rotateY(0) translate(0, 0) scale(1);
        -ms-transform: rotateY(0) translate(0, 0) scale(1);
        -o-transform: rotateY(0) translate(0, 0) scale(1);
        transform: rotateY(0) translate(0, 0) scale(1);
        opacity: 1;
        -webkit-transition-delay: 0.35s;
        -moz-transition-delay: 0.35s;
        transition-delay: 0.35s;
    }


.imghvr-blur figcaption {
    opacity: 0;
}

.imghvr-blur:hover > img {
    -webkit-filter: blur(30px);
    filter: blur(30px);
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0;
}

.imghvr-blur:hover figcaption {
    opacity: 1;
    -webkit-transition-delay: 0.21s;
    -moz-transition-delay: 0.21s;
    transition-delay: 0.21s;
}

[class^='imghvr-blocks']:before, [class^='imghvr-blocks']:after, [class^='imghvr-blocks'] figcaption:before, [class^='imghvr-blocks'] figcaption:after, [class*=' imghvr-blocks']:before, [class*=' imghvr-blocks']:after, [class*=' imghvr-blocks'] figcaption:before, [class*=' imghvr-blocks'] figcaption:after {
    background-color: rgba(35, 49, 59, 0.60);
    opacity: 0;
    position: absolute;
    content: '';
    height: 50%;
    width: 50%;
}

[class^='imghvr-blocks']:before, [class^='imghvr-blocks']:after, [class*=' imghvr-blocks']:before, [class*=' imghvr-blocks']:after {
    z-index: 1;
}

[class^='imghvr-blocks']:before, [class*=' imghvr-blocks']:before {
    top: 0;
    right: 0;
}

[class^='imghvr-blocks']:after, [class*=' imghvr-blocks']:after {
    bottom: 0;
    left: 0;
}

[class^='imghvr-blocks'] figcaption, [class*=' imghvr-blocks'] figcaption {
    z-index: 3;
    background-color: transparent;
}

    [class^='imghvr-blocks'] figcaption *, [class*=' imghvr-blocks'] figcaption * {
        opacity: 0;
        -webkit-transition-delay: 0s;
        -moz-transition-delay: 0s;
        transition-delay: 0s;
    }

    [class^='imghvr-blocks'] figcaption:before, [class^='imghvr-blocks'] figcaption:after, [class*=' imghvr-blocks'] figcaption:before, [class*=' imghvr-blocks'] figcaption:after {
        z-index: -1;
    }

    [class^='imghvr-blocks'] figcaption:before, [class*=' imghvr-blocks'] figcaption:before {
        top: 0;
        left: 0;
    }

    [class^='imghvr-blocks'] figcaption:after, [class*=' imghvr-blocks'] figcaption:after {
        bottom: 0;
        right: 0;
    }

[class^='imghvr-blocks'] a, [class*=' imghvr-blocks'] a {
    z-index: 3;
}

[class^='imghvr-blocks']:hover:before, [class^='imghvr-blocks']:hover:after, [class^='imghvr-blocks']:hover figcaption:before, [class^='imghvr-blocks']:hover figcaption:after, [class*=' imghvr-blocks']:hover:before, [class*=' imghvr-blocks']:hover:after, [class*=' imghvr-blocks']:hover figcaption:before, [class*=' imghvr-blocks']:hover figcaption:after {
    -webkit-transform: translate(0, 0) scale(1);
    -moz-transform: translate(0, 0) scale(1);
    -ms-transform: translate(0, 0) scale(1);
    -o-transform: translate(0, 0) scale(1);
    transform: translate(0, 0) scale(1);
    opacity: 1;
}

[class^='imghvr-blocks']:hover figcaption *, [class*=' imghvr-blocks']:hover figcaption * {
    opacity: 1;
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

.imghvr-blocks-rotate-in-left:before {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

.imghvr-blocks-rotate-in-left:after {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
}

.imghvr-blocks-rotate-in-left figcaption:before {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
}

.imghvr-blocks-rotate-in-left figcaption:after {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
}

.imghvr-blocks-zoom-top-left:before, .imghvr-blocks-zoom-top-left:after, .imghvr-blocks-zoom-top-left figcaption:before, .imghvr-blocks-zoom-top-left figcaption:after {
    -webkit-transform: scale(0.05);
    -moz-transform: scale(0.05);
    -ms-transform: scale(0.05);
    -o-transform: scale(0.05);
    transform: scale(0.05);
}

.imghvr-blocks-zoom-top-left:hover:before {
    -webkit-transition-delay: 0.175s;
    -moz-transition-delay: 0.175s;
    transition-delay: 0.175s;
}

.imghvr-blocks-zoom-top-left:hover:after {
    -webkit-transition-delay: 0.175s;
    -moz-transition-delay: 0.175s;
    transition-delay: 0.175s;
}

.imghvr-blocks-zoom-top-left:hover figcaption:before {
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

.imghvr-blocks-zoom-top-left:hover figcaption:after {
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

.imghvr-blocks-zoom-top-left:hover figcaption * {
    -webkit-transition-delay: 0.49s;
    -moz-transition-delay: 0.49s;
    transition-delay: 0.49s;
}

[class^='imghvr-strip-shutter']:before, [class^='imghvr-strip-shutter']:after, [class^='imghvr-strip-shutter'] figcaption:before, [class^='imghvr-strip-shutter'] figcaption:after, [class*=' imghvr-strip-shutter']:before, [class*=' imghvr-strip-shutter']:after, [class*=' imghvr-strip-shutter'] figcaption:before, [class*=' imghvr-strip-shutter'] figcaption:after {
    background-color: #52aab6;
    opacity: 0;
    position: absolute;
    content: '';
}

[class^='imghvr-strip-shutter']:before, [class^='imghvr-strip-shutter']:after, [class*=' imghvr-strip-shutter']:before, [class*=' imghvr-strip-shutter']:after {
    z-index: 1;
}

[class^='imghvr-strip-shutter'] figcaption, [class*=' imghvr-strip-shutter'] figcaption {
    z-index: 3;
    background-color: transparent;
}

    [class^='imghvr-strip-shutter'] figcaption *, [class*=' imghvr-strip-shutter'] figcaption * {
        opacity: 0;
    }

    [class^='imghvr-strip-shutter'] figcaption:before, [class^='imghvr-strip-shutter'] figcaption:after, [class*=' imghvr-strip-shutter'] figcaption:before, [class*=' imghvr-strip-shutter'] figcaption:after {
        z-index: -1;
    }

[class^='imghvr-strip-shutter'] a, [class*=' imghvr-strip-shutter'] a {
    z-index: 3;
}

[class^='imghvr-strip-shutter']:hover:before, [class^='imghvr-strip-shutter']:hover:after, [class^='imghvr-strip-shutter']:hover figcaption:before, [class^='imghvr-strip-shutter']:hover figcaption:after, [class*=' imghvr-strip-shutter']:hover:before, [class*=' imghvr-strip-shutter']:hover:after, [class*=' imghvr-strip-shutter']:hover figcaption:before, [class*=' imghvr-strip-shutter']:hover figcaption:after {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}

[class^='imghvr-strip-shutter']:hover figcaption *, [class*=' imghvr-strip-shutter']:hover figcaption * {
    opacity: 1;
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

.imghvr-strip-shutter-right:before, .imghvr-strip-shutter-right:after, .imghvr-strip-shutter-right figcaption:before, .imghvr-strip-shutter-right figcaption:after {
    width: 26%;
    height: 100%;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    top: 0;
}

.imghvr-strip-shutter-right:before {
    left: 0;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

.imghvr-strip-shutter-right:after {
    left: 25%;
    -webkit-transition-delay: 0.105s;
    -moz-transition-delay: 0.105s;
    transition-delay: 0.105s;
}

.imghvr-strip-shutter-right figcaption:before {
    left: 50%;
    -webkit-transition-delay: 0.21s;
    -moz-transition-delay: 0.21s;
    transition-delay: 0.21s;
}

.imghvr-strip-shutter-right figcaption:after {
    left: 75%;
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

[class^='imghvr-throw-in'] figcaption, [class*=' imghvr-throw-in'] figcaption {
    background-color: #52aab6;
}

[class^='imghvr-throw-in']:hover figcaption, [class*=' imghvr-throw-in']:hover figcaption {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
}

.imghvr-throw-in-left figcaption {
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: 100% 0%;
    -moz-transform-origin: 100% 0%;
    -ms-transform-origin: 100% 0%;
    -o-transform-origin: 100% 0%;
    transform-origin: 100% 0%;
}

.imghvr-throw-in-left:hover figcaption {
    -webkit-transform-origin: 0% 100%;
    -moz-transform-origin: 0% 100%;
    -ms-transform-origin: 0% 100%;
    -o-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
}


[class^='imghvr-blinds']:before, [class^='imghvr-blinds']:after, [class^='imghvr-blinds'] figcaption:before, [class^='imghvr-blinds'] figcaption:after, [class*=' imghvr-blinds']:before, [class*=' imghvr-blinds']:after, [class*=' imghvr-blinds'] figcaption:before, [class*=' imghvr-blinds'] figcaption:after {
    background-color: #52aab6;
    opacity: 0;
    position: absolute;
    content: '';
}

[class^='imghvr-blinds']:before, [class^='imghvr-blinds']:after, [class*=' imghvr-blinds']:before, [class*=' imghvr-blinds']:after {
    z-index: 1;
}

[class^='imghvr-blinds']:before, [class*=' imghvr-blinds']:before {
    top: 0;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

[class^='imghvr-blinds']:after, [class*=' imghvr-blinds']:after {
    top: 25%;
    -webkit-transition-delay: 0.105s;
    -moz-transition-delay: 0.105s;
    transition-delay: 0.105s;
}

[class^='imghvr-blinds'] figcaption, [class*=' imghvr-blinds'] figcaption {
    z-index: 3;
    background-color: transparent;
}

    [class^='imghvr-blinds'] figcaption *, [class*=' imghvr-blinds'] figcaption * {
        opacity: 0;
        -webkit-transition-delay: 0s;
        -moz-transition-delay: 0s;
        transition-delay: 0s;
    }

    [class^='imghvr-blinds'] figcaption:before, [class^='imghvr-blinds'] figcaption:after, [class*=' imghvr-blinds'] figcaption:before, [class*=' imghvr-blinds'] figcaption:after {
        z-index: -1;
    }

[class^='imghvr-blinds'] a, [class*=' imghvr-blinds'] a {
    z-index: 3;
}

[class^='imghvr-blinds']:hover:before, [class^='imghvr-blinds']:hover:after, [class^='imghvr-blinds']:hover figcaption:before, [class^='imghvr-blinds']:hover figcaption:after, [class*=' imghvr-blinds']:hover:before, [class*=' imghvr-blinds']:hover:after, [class*=' imghvr-blinds']:hover figcaption:before, [class*=' imghvr-blinds']:hover figcaption:after {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}

[class^='imghvr-blinds']:hover figcaption *, [class*=' imghvr-blinds']:hover figcaption * {
    opacity: 1;
    -webkit-transition-delay: 0.4025s;
    -moz-transition-delay: 0.4025s;
    transition-delay: 0.4025s;
}

.imghvr-blinds-horiz:before, .imghvr-blinds-horiz:after, .imghvr-blinds-horiz figcaption:before, .imghvr-blinds-horiz figcaption:after {
    height: 26%;
    width: 100%;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    left: 0;
}

.imghvr-blinds-horiz:before {
    top: 0;
}

.imghvr-blinds-horiz:after {
    top: 25%;
}

.imghvr-blinds-horiz figcaption:before {
    top: 50%;
}

.imghvr-blinds-horiz figcaption:after {
    top: 75%;
}

.imghvr-blinds-horiz:hover figcaption * {
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

.imghvr-blinds-vert:before, .imghvr-blinds-vert:after, .imghvr-blinds-vert figcaption:before, .imghvr-blinds-vert figcaption:after {
    width: 26%;
    height: 100%;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    top: 0;
}

.imghvr-blinds-vert:before {
    left: 0;
}

.imghvr-blinds-vert:after {
    left: 25%;
}

.imghvr-blinds-vert figcaption:before {
    left: 50%;
}

.imghvr-blinds-vert figcaption:after {
    left: 75%;
}

.imghvr-blinds-vert:hover figcaption * {
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

.imghvr-blinds-up:before, .imghvr-blinds-up:after, .imghvr-blinds-up figcaption:before, .imghvr-blinds-up figcaption:after {
    height: 26%;
    width: 100%;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    left: 0;
}

.imghvr-blinds-up:before {
    top: 0;
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

.imghvr-blinds-up:after {
    top: 25%;
    -webkit-transition-delay: 0.21s;
    -moz-transition-delay: 0.21s;
    transition-delay: 0.21s;
}

.imghvr-blinds-up figcaption:before {
    top: 50%;
    -webkit-transition-delay: 0.105s;
    -moz-transition-delay: 0.105s;
    transition-delay: 0.105s;
}

.imghvr-blinds-up figcaption:after {
    top: 75%;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

.imghvr-blinds-down:before, .imghvr-blinds-down:after, .imghvr-blinds-down figcaption:before, .imghvr-blinds-down figcaption:after {
    height: 26%;
    width: 100%;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    left: 0;
}

.imghvr-blinds-down:before {
    top: 0;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

.imghvr-blinds-down:after {
    top: 25%;
    -webkit-transition-delay: 0.105s;
    -moz-transition-delay: 0.105s;
    transition-delay: 0.105s;
}

.imghvr-blinds-down figcaption:before {
    top: 50%;
    -webkit-transition-delay: 0.21s;
    -moz-transition-delay: 0.21s;
    transition-delay: 0.21s;
}

.imghvr-blinds-down figcaption:after {
    top: 75%;
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

.imghvr-blinds-left:before, .imghvr-blinds-left:after, .imghvr-blinds-left figcaption:before, .imghvr-blinds-left figcaption:after {
    width: 26%;
    height: 100%;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    top: 0;
}

.imghvr-blinds-left:before {
    left: 0;
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

.imghvr-blinds-left:after {
    left: 25%;
    -webkit-transition-delay: 0.21s;
    -moz-transition-delay: 0.21s;
    transition-delay: 0.21s;
}

.imghvr-blinds-left figcaption:before {
    left: 50%;
    -webkit-transition-delay: 0.105s;
    -moz-transition-delay: 0.105s;
    transition-delay: 0.105s;
}

.imghvr-blinds-left figcaption:after {
    left: 75%;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

.imghvr-blinds-right:before, .imghvr-blinds-right:after, .imghvr-blinds-right figcaption:before, .imghvr-blinds-right figcaption:after {
    width: 26%;
    height: 100%;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    top: 0;
}

.imghvr-blinds-right:before {
    left: 0;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

.imghvr-blinds-right:after {
    left: 25%;
    -webkit-transition-delay: 0.105s;
    -moz-transition-delay: 0.105s;
    transition-delay: 0.105s;
}

.imghvr-blinds-right figcaption:before {
    left: 50%;
    -webkit-transition-delay: 0.21s;
    -moz-transition-delay: 0.21s;
    transition-delay: 0.21s;
}

.imghvr-blinds-right figcaption:after {
    left: 75%;
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

[class^='imghvr-border-reveal'], [class*=' imghvr-border-reveal'] {
    background-color: #52aab6;
}

    [class^='imghvr-border-reveal']:before, [class^='imghvr-border-reveal']:after, [class^='imghvr-border-reveal'] figcaption:before, [class^='imghvr-border-reveal'] figcaption:after, [class*=' imghvr-border-reveal']:before, [class*=' imghvr-border-reveal']:after, [class*=' imghvr-border-reveal'] figcaption:before, [class*=' imghvr-border-reveal'] figcaption:after {
        background-color: #ffffff;
        position: absolute;
        content: '';
    }

    [class^='imghvr-border-reveal']:before, [class^='imghvr-border-reveal']:after, [class*=' imghvr-border-reveal']:before, [class*=' imghvr-border-reveal']:after {
        z-index: 1;
        height: 4px;
        left: 5px;
        right: 5px;
        -webkit-transform: scaleX(0);
        -moz-transform: scaleX(0);
        -ms-transform: scaleX(0);
        -o-transform: scaleX(0);
        transform: scaleX(0);
    }

    [class^='imghvr-border-reveal']:before, [class*=' imghvr-border-reveal']:before {
        top: 5px;
    }

    [class^='imghvr-border-reveal']:after, [class*=' imghvr-border-reveal']:after {
        bottom: 5px;
    }

    [class^='imghvr-border-reveal'] figcaption, [class*=' imghvr-border-reveal'] figcaption {
        z-index: 3;
        background-color: transparent;
    }

        [class^='imghvr-border-reveal'] figcaption *, [class*=' imghvr-border-reveal'] figcaption * {
            opacity: 0;
        }

        [class^='imghvr-border-reveal'] figcaption:before, [class^='imghvr-border-reveal'] figcaption:after, [class*=' imghvr-border-reveal'] figcaption:before, [class*=' imghvr-border-reveal'] figcaption:after {
            z-index: -1;
            width: 4px;
            top: 5px;
            bottom: 5px;
            -webkit-transform: scaleY(0);
            -moz-transform: scaleY(0);
            -ms-transform: scaleY(0);
            -o-transform: scaleY(0);
            transform: scaleY(0);
        }

        [class^='imghvr-border-reveal'] figcaption:before, [class*=' imghvr-border-reveal'] figcaption:before {
            left: 5px;
        }

        [class^='imghvr-border-reveal'] figcaption:after, [class*=' imghvr-border-reveal'] figcaption:after {
            right: 5px;
        }

    [class^='imghvr-border-reveal'] a, [class*=' imghvr-border-reveal'] a {
        z-index: 3;
    }

    [class^='imghvr-border-reveal']:hover > img, [class*=' imghvr-border-reveal']:hover > img {
        opacity: 0;
    }

    [class^='imghvr-border-reveal']:hover:before, [class^='imghvr-border-reveal']:hover:after, [class^='imghvr-border-reveal']:hover figcaption:before, [class^='imghvr-border-reveal']:hover figcaption:after, [class*=' imghvr-border-reveal']:hover:before, [class*=' imghvr-border-reveal']:hover:after, [class*=' imghvr-border-reveal']:hover figcaption:before, [class*=' imghvr-border-reveal']:hover figcaption:after {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }

    [class^='imghvr-border-reveal']:hover figcaption *, [class*=' imghvr-border-reveal']:hover figcaption * {
        opacity: 1;
        -webkit-transition-delay: 0.35s;
        -moz-transition-delay: 0.35s;
        transition-delay: 0.35s;
    }

.imghvr-border-reveal-top-left:before, .imghvr-border-reveal-top-left:after, .imghvr-border-reveal-top-left figcaption:before, .imghvr-border-reveal-top-left figcaption:after {
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0;
}

.imghvr-border-reveal-top-left:before {
    -webkit-transition-delay: 0.28s;
    -moz-transition-delay: 0.28s;
    transition-delay: 0.28s;
}

.imghvr-border-reveal-top-left:after {
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

.imghvr-border-reveal-top-left figcaption:before {
    -webkit-transition-delay: 0.28s;
    -moz-transition-delay: 0.28s;
    transition-delay: 0.28s;
}

.imghvr-border-reveal-top-left figcaption:after {
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

.imghvr-border-reveal-top-left:hover:before {
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

.imghvr-border-reveal-top-left:hover:after {
    -webkit-transition-delay: 0.28s;
    -moz-transition-delay: 0.28s;
    transition-delay: 0.28s;
}

.imghvr-border-reveal-top-left:hover figcaption:before {
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

.imghvr-border-reveal-top-left:hover figcaption:after {
    -webkit-transition-delay: 0.28s;
    -moz-transition-delay: 0.28s;
    transition-delay: 0.28s;
}

*[class^='imghvr-book-open-'], *[class*=' imghvr-book-open-'] {
    overflow: visible;
}

    *[class^='imghvr-book-open-'] figcaption, *[class*=' imghvr-book-open-'] figcaption {
        background-color: transparent;
        border: none;
    }

        *[class^='imghvr-book-open-'] figcaption:before, *[class^='imghvr-book-open-'] figcaption:after, *[class*=' imghvr-book-open-'] figcaption:before, *[class*=' imghvr-book-open-'] figcaption:after {
            z-index: -1;
            background-color: black;
            content: '';
            position: absolute;
            opacity: 0;
            -webkit-transition: all 0.45s ease;
            -moz-transition: all 0.45s ease;
            transition: all 0.45s ease;
        }

    *[class^='imghvr-book-open-']:hover figcaption:before, *[class^='imghvr-book-open-']:hover figcaption:after, *[class*=' imghvr-book-open-']:hover figcaption:before, *[class*=' imghvr-book-open-']:hover figcaption:after {
        opacity: 1;
        background-color: #52aab6;
        -webkit-transform: rotateY(0deg);
        -moz-transform: rotateY(0deg);
        -ms-transform: rotateY(0deg);
        -o-transform: rotateY(0deg);
        transform: rotateY(0deg);
    }

.imghvr-book-open-horiz figcaption {
    -webkit-perspective: 50em;
    -moz-perspective: 50em;
    perspective: 50em;
}

    .imghvr-book-open-horiz figcaption * {
        opacity: 0;
    }

    .imghvr-book-open-horiz figcaption:before, .imghvr-book-open-horiz figcaption:after {
        height: 100%;
        width: 50%;
        top: 0;
    }

    .imghvr-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);
        -moz-transform: rotateY(90deg);
        -ms-transform: rotateY(90deg);
        -o-transform: rotateY(90deg);
        transform: rotateY(90deg);
        -webkit-transform-origin: 100% 50%;
        -moz-transform-origin: 100% 50%;
        -ms-transform-origin: 100% 50%;
        -o-transform-origin: 100% 50%;
        transform-origin: 100% 50%;
    }

    .imghvr-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);
        -moz-transform: rotateY(-90deg);
        -ms-transform: rotateY(-90deg);
        -o-transform: rotateY(-90deg);
        transform: rotateY(-90deg);
        -webkit-transform-origin: 0% 50%;
        -moz-transform-origin: 0% 50%;
        -ms-transform-origin: 0% 50%;
        -o-transform-origin: 0% 50%;
        transform-origin: 0% 50%;
    }

.imghvr-book-open-horiz:hover figcaption * {
    opacity: 1;
    -webkit-transition-delay: 0.21s;
    -moz-transition-delay: 0.21s;
    transition-delay: 0.21s;
}

[class^='imghvr-stack-'] > img, [class^='imghvr-stack-'] figcaption, [class*=' imghvr-stack-'] > img, [class*=' imghvr-stack-'] figcaption {
    -webkit-transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
    -moz-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^='imghvr-stack-']:hover > img, [class*=' imghvr-stack-']:hover > img {
    -webkit-transform: scale(0.75);
    -moz-transform: scale(0.75);
    -ms-transform: scale(0.75);
    -o-transform: scale(0.75);
    transform: scale(0.75);
    opacity: 0.5;
}

[class^='imghvr-stack-']:hover figcaption, [class*=' imghvr-stack-']:hover figcaption {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}

.imghvr-stack-up figcaption {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
}

[class^='imghvr-cube-'], [class*=' imghvr-cube-'] {
    -webkit-perspective: 50em;
    -moz-perspective: 50em;
    perspective: 50em;
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    -o-transform-style: preserve-3d;
    transform-style: preserve-3d;
    overflow: visible;
    background-color: transparent;
}

    [class^='imghvr-cube-'] > img, [class*=' imghvr-cube-'] > img {
        -webkit-transition-delay: 0.05s;
        -moz-transition-delay: 0.05s;
        transition-delay: 0.05s;
    }

    [class^='imghvr-cube-'] figcaption, [class*=' imghvr-cube-'] figcaption {
        opacity: 0;
        -webkit-transition-delay: 0s;
        -moz-transition-delay: 0s;
        transition-delay: 0s;
        background-color: #52aab6;
    }

    [class^='imghvr-cube-']:hover > img, [class*=' imghvr-cube-']:hover > img {
        opacity: 0;
        -webkit-transition-delay: 0s;
        -moz-transition-delay: 0s;
        transition-delay: 0s;
    }

    [class^='imghvr-cube-']:hover figcaption, [class*=' imghvr-cube-']:hover figcaption {
        -webkit-transform: translateY(0%) rotateX(0deg);
        -moz-transform: translateY(0%) rotateX(0deg);
        -ms-transform: translateY(0%) rotateX(0deg);
        -o-transform: translateY(0%) rotateX(0deg);
        transform: translateY(0%) rotateX(0deg);
        opacity: 1;
        -webkit-transition-delay: 0.05s;
        -moz-transition-delay: 0.05s;
        transition-delay: 0.05s;
    }

.imghvr-cube-up figcaption {
    -webkit-transform: translateY(50%) rotateX(-90deg);
    -moz-transform: translateY(50%) rotateX(-90deg);
    -ms-transform: translateY(50%) rotateX(-90deg);
    -o-transform: translateY(50%) rotateX(-90deg);
    transform: translateY(50%) rotateX(-90deg);
}

.imghvr-cube-up:hover > img {
    -webkit-transform: translateY(-50%) rotateX(90deg);
    -moz-transform: translateY(-50%) rotateX(90deg);
    -ms-transform: translateY(-50%) rotateX(90deg);
    -o-transform: translateY(-50%) rotateX(90deg);
    transform: translateY(-50%) rotateX(90deg);
}


.imghvr-cube-down figcaption {
    -webkit-transform: translateY(-50%) rotateX(90deg);
    -moz-transform: translateY(-50%) rotateX(90deg);
    -ms-transform: translateY(-50%) rotateX(90deg);
    -o-transform: translateY(-50%) rotateX(90deg);
    transform: translateY(-50%) rotateX(90deg);
}

.imghvr-cube-down:hover > img {
    -webkit-transform: translateY(50%) rotateX(-90deg);
    -moz-transform: translateY(50%) rotateX(-90deg);
    -ms-transform: translateY(50%) rotateX(-90deg);
    -o-transform: translateY(50%) rotateX(-90deg);
    transform: translateY(50%) rotateX(-90deg);
}

.imghvr-cube-left figcaption {
    -webkit-transform: translateX(-50%) rotateY(-90deg);
    -moz-transform: translateX(-50%) rotateY(-90deg);
    -ms-transform: translateX(-50%) rotateY(-90deg);
    -o-transform: translateX(-50%) rotateY(-90deg);
    transform: translateX(-50%) rotateY(-90deg);
}

.imghvr-cube-left:hover > img {
    -webkit-transform: translateX(50%) rotateY(90deg);
    -moz-transform: translateX(50%) rotateY(90deg);
    -ms-transform: translateX(50%) rotateY(90deg);
    -o-transform: translateX(50%) rotateY(90deg);
    transform: translateX(50%) rotateY(90deg);
}

.imghvr-cube-right figcaption {
    -webkit-transform: translateX(50%) rotateY(90deg);
    -moz-transform: translateX(50%) rotateY(90deg);
    -ms-transform: translateX(50%) rotateY(90deg);
    -o-transform: translateX(50%) rotateY(90deg);
    transform: translateX(50%) rotateY(90deg);
}

.imghvr-cube-right:hover > img {
    -webkit-transform: translateX(-50%) rotateY(-90deg);
    -moz-transform: translateX(-50%) rotateY(-90deg);
    -ms-transform: translateX(-50%) rotateY(-90deg);
    -o-transform: translateX(-50%) rotateY(-90deg);
    transform: translateX(-50%) rotateY(-90deg);
}

[class^='imghvr-dive'] figcaption, [class*=' imghvr-dive'] figcaption {
    opacity: 0;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

[class^='imghvr-dive']:hover > img, [class*=' imghvr-dive']:hover > img {
    opacity: 0;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    transition-delay: 0s;
}

[class^='imghvr-dive']:hover figcaption, [class*=' imghvr-dive']:hover figcaption {
    opacity: 1;
    -webkit-transition-delay: 0.175s;
    -moz-transition-delay: 0.175s;
    transition-delay: 0.175s;
}

.imghvr-dive-cc figcaption {
    -webkit-transform: rotate(-45deg) scale(5);
    -moz-transform: rotate(-45deg) scale(5);
    -ms-transform: rotate(-45deg) scale(5);
    -o-transform: rotate(-45deg) scale(5);
    transform: rotate(-45deg) scale(5);
}

.imghvr-dive-cc:hover > img {
    -webkit-transform: rotate(45deg) scale(5);
    -moz-transform: rotate(45deg) scale(5);
    -ms-transform: rotate(45deg) scale(5);
    -o-transform: rotate(45deg) scale(5);
    transform: rotate(45deg) scale(5);
}

.imghvr-dive-cc:hover figcaption {
    -webkit-transform: rotate(0deg) scale(1);
    -moz-transform: rotate(0deg) scale(1);
    -ms-transform: rotate(0deg) scale(1);
    -o-transform: rotate(0deg) scale(1);
    transform: rotate(0deg) scale(1);
}

.imghvr-center figcaption {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
}

[class^='imghvr-']:hover .ih-delay-xs, [class*=' imghvr-']:hover .ih-delay-xs {
    -webkit-transition-delay: 0.175s;
    -moz-transition-delay: 0.175s;
    transition-delay: 0.175s;
}

[class^='imghvr-']:hover .ih-delay-sm, [class*=' imghvr-']:hover .ih-delay-sm {
    -webkit-transition-delay: 0.35s;
    -moz-transition-delay: 0.35s;
    transition-delay: 0.35s;
}

[class^='imghvr-']:hover .ih-delay-md, [class*=' imghvr-']:hover .ih-delay-md {
    -webkit-transition-delay: 0.525s;
    -moz-transition-delay: 0.525s;
    transition-delay: 0.525s;
}

[class^='imghvr-']:hover .ih-delay-lg, [class*=' imghvr-']:hover .ih-delay-lg {
    -webkit-transition-delay: 0.7s;
    -moz-transition-delay: 0.7s;
    transition-delay: 0.7s;
}

[class^='imghvr-']:hover .ih-delay-xl, [class*=' imghvr-']:hover .ih-delay-xl {
    -webkit-transition-delay: 0.875s;
    -moz-transition-delay: 0.875s;
    transition-delay: 0.875s;
}

[class^='imghvr-']:hover .ih-delay-xxl, [class*=' imghvr-']:hover .ih-delay-xxl {
    -webkit-transition-delay: 1.05s;
    -moz-transition-delay: 1.05s;
    transition-delay: 1.05s;
}

[class^='imghvr-'] [class^='ih-'], [class^='imghvr-'] [class*=' ih-'], [class*=' imghvr-'] [class^='ih-'], [class*=' imghvr-'] [class*=' ih-'] {
    opacity: 0;
}

[class^='imghvr-'] .ih-fade-up, [class*=' imghvr-'] .ih-fade-up {
    -webkit-transform: translate(0, 25px);
    -moz-transform: translate(0, 25px);
    -ms-transform: translate(0, 25px);
    -o-transform: translate(0, 25px);
    transform: translate(0, 25px);
}

[class^='imghvr-'] .ih-fade-down, [class*=' imghvr-'] .ih-fade-down {
    -webkit-transform: translate(0, -25px);
    -moz-transform: translate(0, -25px);
    -ms-transform: translate(0, -25px);
    -o-transform: translate(0, -25px);
    transform: translate(0, -25px);
}

[class^='imghvr-'] .ih-fade-left, [class*=' imghvr-'] .ih-fade-left {
    -webkit-transform: translate(25px, 0);
    -moz-transform: translate(25px, 0);
    -ms-transform: translate(25px, 0);
    -o-transform: translate(25px, 0);
    transform: translate(25px, 0);
}

[class^='imghvr-'] .ih-fade-right, [class*=' imghvr-'] .ih-fade-right {
    -webkit-transform: translate(-25px, 0);
    -moz-transform: translate(-25px, 0);
    -ms-transform: translate(-25px, 0);
    -o-transform: translate(-25px, 0);
    transform: translate(-25px, 0);
}

[class^='imghvr-'] .ih-fade-up-big, [class*=' imghvr-'] .ih-fade-up-big {
    -webkit-transform: translate(0, 300%);
    -moz-transform: translate(0, 300%);
    -ms-transform: translate(0, 300%);
    -o-transform: translate(0, 300%);
    transform: translate(0, 300%);
}

[class^='imghvr-'] .ih-fade-down-big, [class*=' imghvr-'] .ih-fade-down-big {
    -webkit-transform: translate(0, -300%);
    -moz-transform: translate(0, -300%);
    -ms-transform: translate(0, -300%);
    -o-transform: translate(0, -300%);
    transform: translate(0, -300%);
}

[class^='imghvr-'] .ih-fade-left-big, [class*=' imghvr-'] .ih-fade-left-big {
    -webkit-transform: translate(150%, 0);
    -moz-transform: translate(150%, 0);
    -ms-transform: translate(150%, 0);
    -o-transform: translate(150%, 0);
    transform: translate(150%, 0);
}

[class^='imghvr-'] .ih-fade-right-big, [class*=' imghvr-'] .ih-fade-right-big {
    -webkit-transform: translate(-150%, 0);
    -moz-transform: translate(-150%, 0);
    -ms-transform: translate(-150%, 0);
    -o-transform: translate(-150%, 0);
    transform: translate(-150%, 0);
}

[class^='imghvr-'] .ih-zoom-in, [class*=' imghvr-'] .ih-zoom-in {
    -webkit-transform: scale(0.1);
    -moz-transform: scale(0.1);
    -ms-transform: scale(0.1);
    -o-transform: scale(0.1);
    transform: scale(0.1);
}

[class^='imghvr-'] .ih-zoom-out, [class*=' imghvr-'] .ih-zoom-out {
    -webkit-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -ms-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
}

[class^='imghvr-'] .ih-flip-x, [class*=' imghvr-'] .ih-flip-x {
    -webkit-transform: rotateX(-90deg);
    -moz-transform: rotateX(-90deg);
    -ms-transform: rotateX(-90deg);
    -o-transform: rotateX(-90deg);
    transform: rotateX(-90deg);
}

[class^='imghvr-'] .ih-flip-y, [class*=' imghvr-'] .ih-flip-y {
    -webkit-transform: rotateY(90deg);
    -moz-transform: rotateY(90deg);
    -ms-transform: rotateY(90deg);
    -o-transform: rotateY(90deg);
    transform: rotateY(90deg);
}

[class^='imghvr-']:hover [class^='ih-'], [class^='imghvr-']:hover [class*=' ih-'], [class*=' imghvr-']:hover [class^='ih-'], [class*=' imghvr-']:hover [class*=' ih-'] {
    -webkit-transform: translate(0, 0) scale(1) rotate(0);
    -moz-transform: translate(0, 0) scale(1) rotate(0);
    -ms-transform: translate(0, 0) scale(1) rotate(0);
    -o-transform: translate(0, 0) scale(1) rotate(0);
    transform: translate(0, 0) scale(1) rotate(0);
    opacity: 1;
}
