.locations-grid-item-image img, 
.locations-grid-item-image:before{
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

.locations-grid-wrap{
	padding: 0 5vw;
}

.locations-grid-title{
	text-align: center;
}

.locations-grid-item{
	position: relative; 
	height: 0;
	padding-bottom: 100%;
	overflow: hidden;

	-webkit-border-radius: 18px;
	-moz-border-radius: 18px;
	border-radius: 18px;
}

.locations-grid-item-image, 
.locations-grid-item-image img,
.locations-grid-item-image:before{
	position: absolute;
	z-index: 10;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.locations-grid-item-image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.locations-grid-item-image:before{
	content: "";
	z-index: 20;
	background: rgba(0, 0, 0, 0.2);

	-webkit-opacity: 0;
	-moz-opacity: 0;
	opacity: 0;
}

.locations-grid-item-button{
	position: absolute;
	z-index: 20;
	bottom: 25px;
	left: 25px;
}

.locations-grid-item-button svg{
	fill: #C5262C;
}

.locations-grid-item:focus .locations-grid-item-image img,
.locations-grid-item:hover .locations-grid-item-image img{
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	transform: scale(1.05);
}

.locations-grid-item:focus .locations-grid-item-image:before,
.locations-grid-item:hover .locations-grid-item-image:before{
	-webkit-opacity: 1;
	-moz-opacity: 1;
	opacity: 1;
}

@media only screen and (max-width:  1000px) {
	.locations-grid-wrap{
		padding: 0;
	}

	.locations-grid-title{
		margin: 0 0 30px;
	}

	.locations-grid-item-button{
		bottom: 20px;
		left: 20px;
	}
}

@media only screen and (max-width:  767px) {
	.locations-grid-title{
		margin: 0 0 20px;
	}

	.locations-grid-item{
		padding-bottom: 90%;
	}

	.locations-grid-item-button{
		bottom: 15px;
		left: 15px;
	}
}

@media only screen and (max-width:  540px) {
	.locations-grid-title{
		margin: 0 0 15px;
	}
}

@media only screen and (max-width:  340px) {
	.locations-grid-wrap .container{
		padding: 0;
	}
}