.demo{
    padding: 1em 0;
}
.box{
    position: relative;

}
.box .box-img{
background: #394452;
}
.box:hover .box-img{
    transform: rotateY(-90deg);
}
.box .box-img img{
    width: 30%; display:block; margin:20px auto;
    height: auto; padding-top:60px;
}
.box .box-img  b{ display:block; text-align:center; margin-top:15px; color:#fff; font-size:18px;}
.box .box-img em{ display:block; text-align:center; font-style:normal; line-height:28px;  color:#666; font-size:16px; padding-bottom:50px; width:55%; margin:0 auto;margin-top:20px;}
.box .box-content{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding: 60px 20px;
    text-align: center;
    background: rgba(0,0,0,0.7);
    transform: rotateY(90deg);
    transition: all 0.50s ease-in-out 0s;
}
.box:hover .box-content{
    transform: rotateY(0);
}
.box .title01{
    font-size: 20px;
    color: #fff;
    text-transform: uppercase; font-weight:bold;
}
.box .description{
    font-size: 17px;
    line-height:28px;
    color: #fff;font-weight:bold;
}
.box .title01:after,
.box .description:after{
    content: "";
    width: 80%;
    display: block;
    margin: 15px auto;
}
.box .box-content a{ display:block; padding:10px; color:#fff; font-size:14px; font-weight: bold; background:#000; border-radius:10px; margin:0 auto;margin-top:10px;}
.box .social-links{
    margin: 0;
    padding: 0;
    list-style: none;
}
.box .social-links li{
    display: inline-block;
    margin: 0 10px;
}
.box .social-links li a{
    font-size: 20px;
    color: #a6a6a6;
}
.box .social-links li a:hover{
    text-decoration: none;
    color: #fff;
}
@media only screen and (max-width: 990px) {
    .box{  margin-bottom:20px; }
}
@media only screen and (max-width: 479px) {
    .box .box-content{ padding: 20px; }
}