.gallery-box .filter {
	margin: 0 -5px 30px;
}
.filter-item {
    float: left;

    margin: 0 5px 10px;
    padding: 8px 15px;
	border: 1px solid #222228;
    font-size: 0.8em;
    line-height: 1.4em;
    position: relative;
	cursor: pointer;
	-webkit-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -moz-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -ms-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -o-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
}
.filter-item:hover {
    border: 1px solid #e4d0ac;
    background-color: #e4d0ac;
    color: #fff;
}
.filter-item.active {
    border: 1px solid #d2b174;
    background-color: #d2b174;
    color: #fff;
}

.gallery-box .grid-inf,
.gallery-box .grid {
	margin: 0 -5px;
}
.gallery-box .grid-sizer,
.gallery-box .gallery-element {
	width: 25%;
}
.gallery-box .gallery-element {
	padding: 0 5px 20px;
	float: left;
}
.gallery-element .post {
	position: relative;
}
.gallery-element .post:before {
    width: 100%;
    height: 100%;
    display: block;
    content: '';
    background: #222228;
	
	-webkit-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -moz-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -ms-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -o-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);

    opacity: 0;
    position: absolute;
    top: 8px;
    right: -8px;
    z-index: 1;
}
.gallery-element .img {
	position: relative;
	z-index: 2;
	width: 100%;
    height: auto;
}
.gallery-element .txt {
    width: 100%;
    height: 100%;
    padding: 10px;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
}
.gallery-element .txt:before {
    width: 100%;
    display: block;
    content: '';
    background: #000;
	-webkit-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -moz-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -ms-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -o-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    opacity: 0.2;
    position: absolute;
    top: 0px;
    left: 0px;
	right: 0;
	bottom: 0;
    z-index: 1;
}
.gallery-element .txt ._table {
    display: table;
    width: 100%;
    height: 100%;
}
.gallery-element .txt ._middle {
    display: table-cell;
    vertical-align: middle;
    color: #fff;
    text-decoration: none;
    position: relative;
    z-index: 10;
}
.gallery-element .txt span {
    padding: 21px 0px;
    display: none;
    position: relative;
}

.gallery-element .txt span:before {
    width: 60px;
    height: 3px;
    margin-left: -30px;
    display: block;
    content: '';
    background: #fff;
	-webkit-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -moz-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -ms-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    -o-transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    transition: all 0.3s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    opacity: 0;
    position: absolute;
    bottom: 0px;
    left: 50%;
}


.gallery-element .post:hover:before {
    opacity: 1;
}
.gallery-element .post:hover .txt:before {
    background: #d2b174;
    opacity: 0.7;
}
.gallery-element .post:hover .txt ._middle {
    border: 1px solid #fff;
}
.gallery-element .post:hover .txt span {
    display: block;
}
.gallery-element .post:hover .txt span:before {
    opacity: 1;
}
.modal-gallery-new {
    padding: 20px;
    max-width: 820px;
}


@media (max-width: 1159px){
	.gallery-box .grid-sizer,
	.gallery-box .gallery-element {
		width: 33.33333333%;
	}
}

@media only screen and (max-width: 991px){
	.gallery-box .grid-sizer,
	.gallery-box .gallery-element {
		width: 50%;
	}	
}

@media only screen and (max-width: 567px){
	.gallery-box .grid-sizer,
	.gallery-box .gallery-element {
		width: 100%;
	}	
}