/* ------------------------------------------------------------------------------------
   Flip
*/

.flip-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 30px;
}

.front {
    background-color: #cccccc;
    background-size: cover;
    background-position: center center;
}

.back span.back-inner {
    color: white;
    padding: 8px 12px 8px 8px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    font-size: 22px;
    width: 100%;
    text-align: center;
    
}

.back {
    background-color: #484848;
}

.back .link {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    width: 32px;
    height: 32px;
    text-indent: -999em;
    background: transparent url('img/icon_linkext_white.svg') no-repeat center center;
    background-size: contain;
}

.back .link:hover {
    opacity: 0.9;
}
    
/* entire container, keeps perspective */
.flip-container {
	-webkit-perspective: 1000px;
	perspective: 1000px;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
    margin: 10px;
}
	/*  flip the pane when hovered */
	.flip-container:hover .back {
		-webkit-transform: rotateY(0deg);
		transform: rotateY(0deg);
	}
	.flip-container:hover .front {
	    -webkit-transform: rotateY(180deg);
	    transform: rotateY(180deg);
	}

.flip-container, .front, .back {
	width: 265px;
	height: 265px;
}

/* flip speed goes here */
.flipper {
	-webkit-transition: 0.6s;
	transition: 0.6s;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;

	position: relative;
}

/* hide back of pane during swap */
.front, .back {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: 0.6s;
	transition: 0.6s;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;

	position: absolute;
	top: 0;
	left: 0;
    border-radius: 50%;
}

/*  front pane, placed above back */
.front {
	z-index: 2;
	-webkit-transform: rotateY(0deg);
	transform: rotateY(0deg);
}

/* back, initially hidden pane */
.back {
	-webkit-transform: rotateY(-180deg);
	transform: rotateY(-180deg);
}

/* 
	Some vertical flip updates 
*/
.vertical.flip-container {
	position: relative;
}

.vertical .back {
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
}

.vertical.flip-container:hover .back {
    -webkit-transform: rotateX(0deg);
    transform: rotateX(0deg);
}

.vertical.flip-container:hover .front {
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
}

@media (max-width: 1200px) {
    .flip-container, .front, .back {
	width: 220px;
	height: 220px;
    }
}

@media (max-width: 992px) {
    .flip-wrap {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    
    .flip-container, .front, .back, .flipper {
	    width: 220px;
	    height: 220px;
    }
    
    .flipper {
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    
    .flip-container {
        width: 45%;
    }
    .back span.back-inner {
        font-size: 16px;
    }
    
    
}

@media (max-width: 776px) {
 
}

@media (max-width: 520px) {
     .flip-container {
        width: 45%;
    }
    

}