.gallery {
  column-count: 4;
  column-gap: 20px; }
  .gallery.flex {
    display: flex;
    flex-wrap: wrap; }
    .gallery.flex .item {
      flex: 1 0 21%; }
  .gallery.has-shadow .item img {
    box-shadow: 2px 2px 4px 0 #ccc; }
  .gallery.masonry {
    margin: 0px;
    padding: 0; }
  .gallery .item {
    margin-bottom: 20px;
    width: 100%;
    transition: 1s ease all;
    box-sizing: border-box; }
  .gallery .item a {
    display: block; }
  .gallery .item img {
    max-width: 100%; }
  @media only screen and (max-width: 320px) {
    .gallery .masonry {
      column-count: 1; } }
  @media only screen and (min-width: 321px) and (max-width: 768px) {
    .gallery .masonry {
      column-count: 2; } }
  @media only screen and (min-width: 769px) and (max-width: 1200px) {
    .gallery .masonry {
      column-count: 3; } }
  @media only screen and (min-width: 1201px) {
    .gallery .masonry {
      column-count: 4; } }
