#gallery { overflow:visible; vertical-align: bottom; position:relative; display: flex; flex-wrap: wrap; justify-content: center; width:100%; min-height:576px; }
#gallery div.galleryimgcontainer { box-sizing: border-box; padding: 10px; flex: 0 1 20%; min-width: 0; }
#gallery div.galleryimgcontainer img { width: 100%; max-width: 384px; height: auto; display: block; margin: 0 auto; box-shadow: 5px 5px 4px 0px rgba(22,26,30,0.6); transition: box-shadow 0.2s ease-in-out; }
#gallery div.galleryimgcontainer img:hover { box-shadow: 5px 5px 8px 2px rgba(38,47,70,0.55); }
@media only screen and (max-width:650px) { #gallery div.galleryimgcontainer { flex: 0 1 33%; } }
@media only screen and (max-width:520px) { #gallery div.galleryimgcontainer { flex: 0 1 50%; } }
@media only screen and (max-width:420px) { #gallery div.galleryimgcontainer { flex: 0 1 100%; } }