.product-categories .category{
    position: relative;
    float: left;
    text-align: center;
    overflow: hidden;
}
.product-categories .background{
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    transition:transform 300ms ;
    backface-visibility: hidden;
    perspective: 1000px;
}
.product-categories .category:hover .background{
    transform: scale(1.06);
}
.product-categories .overlay{
    z-index: 2;
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    right: 0;
    transition: background-color 300ms;
}

.product-categories .border-holder{
    position: absolute;
    left: 10px;
    top: 10px;
    height: calc(100% - 20px);
    width: calc(100% - 20px);
    overflow: hidden;
    z-index: 3;
}

.product-categories .border-holder .top-border,
.product-categories .border-holder .right-border,
.product-categories .border-holder .bottom-border,
.product-categories .border-holder .left-border{
    position: absolute;
    background-color: #fff;
    transition: transform 400ms;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    perspective: 1000px;
}

.product-categories .border-holder .top-border,
.product-categories .border-holder .bottom-border{
    height: 2px;
    width: 100%;
}

.product-categories .border-holder .left-border,
.product-categories .border-holder .right-border{
    height: 100%;
    width: 2px;
}

.product-categories .border-holder .top-border,
.product-categories .border-holder .left-border{
    top: 0;
    left: 0;
}

.product-categories .border-holder .bottom-border{
    bottom: 0;
    left: 0;
}

.product-categories .border-holder .right-border{
    right: 0;
    top: 0;
}

.product-categories .border-holder .top-border{
    transform: translate3d(100%, 0, 0);
}

.product-categories .border-holder .right-border{
    transform: translate3d(0,-100%, 0);
}

.product-categories .border-holder .bottom-border{
    transform: translate3d(-100%, 0, 0);
}

.product-categories .border-holder .left-border{
    transform: translate3d(0,100%, 0);
}

.product-categories .category:hover .left-border,
.product-categories .category:hover .right-border,
.product-categories .category:hover .top-border,
.product-categories .category:hover .bottom-border{
    transform: translate3d(0, 0, 0);
}

.product-categories .meta,
.product-categories .hover-text{
    position: absolute;
    width: 100%;
    z-index: 3;
}

.product-categories .meta{
    transition: opacity 200ms 200ms;
}

.product-categories .meta.center,
.product-categories .hover-text.center{
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}

.product-categories .meta.left,
.product-categories .hover-text.left{
    bottom:30px;
    left:30px;
    text-align: left;
}

.product-categories .hover-text{
    opacity: 0;
    font-size: 30px;
    line-height: 32px;
    color: #fff;
    width: 175px;
    margin: 0;
    transition: opacity 300ms 200ms;
}

.product-categories .category:hover .meta{
    opacity: 0;
}

.product-categories .category:hover .hover-text{
    opacity: 1;
}
.product-categories .meta .title{
    font-size: 30px;
    line-height: 30px;
    color: #fff;
    margin:0;
}
.product-categories .meta .subtitle{
    font-size: 14px;
    line-height: 14px;
    color: #fff;
    margin-bottom: 10px;
}