@-webkit-keyframes fluidboxLoading {
    0% {
        -webkit-transform: translate(-50%, -50%) rotateX(0) rotateY(0)
    }
    50% {
        -webkit-transform: translate(-50%, -50%) rotateX(-180deg) rotateY(0)
    }
    100% {
        -webkit-transform: translate(-50%, -50%) rotateX(-180deg) rotateY(-180deg)
    }
}

@keyframes fluidboxLoading {
    0% {
        transform: translate(-50%, -50%) rotateX(0) rotateY(0)
    }
    50% {
        transform: translate(-50%, -50%) rotateX(-180deg) rotateY(0)
    }
    100% {
        transform: translate(-50%, -50%) rotateX(-180deg) rotateY(-180deg)
    }
}

.fluidbox {
    outline: 0
}

.fluidbox-overlay {
    background-color: rgba(255, 255, 255, .85);
    cursor: pointer;
    cursor: -webkit-zoom-out;
    cursor: -moz-zoom-out;
    cursor: zoom-out;
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    transition: all .125s ease-in-out .125s
}

.fluidbox-wrap {
    background-position: center center;
    background-size: cover;
    margin: 0 auto;
    position: relative;
    transition: all .25s ease-in-out
}

.fluidbox-closed .fluidbox-wrap img {
    transition: opacity 0s ease-in-out .25s
}

.fluidbox-ghost {
    background-size: 100% 100%;
    background-position: center center;
    position: absolute;
    -webkit-transition-property: opacity, -webkit-transform;
    -moz-transition-property: opacity, -moz-transform;
    -o-transition-property: opacity, -o-transform;
    transition-property: opacity, transform;
    transition-duration: 0s, .25s;
    transition-delay: .25s, 0s
}

.fluidbox-opened .fluidbox-ghost {
    transition-delay: 0s, 0s
}

.fluidbox-loader {
    perspective: 200px;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0
}

.fluidbox-loader::before {
    background-color: rgba(255, 255, 255, .85);
    content: '';
    transform-style: preserve-3d;
    transition: all .25s ease-in-out;
    opacity: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20%;
    padding-bottom: 20%
}

.fluidbox-loading .fluidbox-loader::before {
    -webkit-animation: fluidboxLoading 1s 0s infinite ease-in-out forwards;
    animation: fluidboxLoading 1s 0s infinite ease-in-out forwards;
    opacity: 1
}