* {
    box-sizing: border-box;
}

.gallery-container {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background-color: #fff;
box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.3);
width: 100%;
margin: 0 auto;
padding: 10px;
}
.gallery-item {
flex-basis: 32.7%;
margin-bottom: 6px;
opacity: .85;
cursor: pointer;
}
.gallery-item:hover {
opacity: 1;
}
.gallery-item img {
width: 100%;
height: 100%;
object-fit: cover;
}
.gallery-content {
font-size: .8em;
}

.lightbox {
position: fixed;
display: none;
background-color: rgba(0, 0, 0, 0.8);
width: 100%;
height: 100%;              
overflow: auto;
top: 0;
left: 0;
}

.lightbox-content {
position: relative;
width: 70%;
height: 70%;
margin: 5% auto;
}
.lightbox-content img {
border-radius: 7px;
box-shadow: 0 0 3px 0 rgba(225, 225, 225, .25);
width: 100%;
height: 100%;
object-fit: cover;
}
.lightbox-prev,
.lightbox-next {
position: absolute;
background-color: rgba(0, 0, 0, 0.8);
color: #fff;
padding: 7px;
top: 45%;
cursor: pointer;
}
.lightbox-prev {
left: 0;
}
.lightbox-next {
right: 0;
}
.lightbox-prev:hover,
.lightbox-next:hover {
opacity: .8;
}

@media (max-width: 767px) {
.gallery-container {
    width: 100%;
}
.gallery-item {
    flex-basis: 49.80%;
    margin-bottom: 3px;
}
.lightbox-content {
    width: 80%;
    height: 60%;
    margin: 15% auto;
}
}
@media (max-width: 480px) {
.gallery-item {
    flex-basis: 100%;
    margin-bottom: 1px;
}
.lightbox-content {
    width: 90%;
    margin: 20% auto;
}
}