.igviewer {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background-color: RGBA(29, 31, 32, 0.9);
}
.igviewer img {
  display: block;
  margin: 1rem auto;
  height: calc(100vh - 2rem);
  width: auto;
  box-shadow: 0px 10px 40px 10px rgba(0, 0, 0, 0.8);
}
.igviewer.hidden {
  display: none;
}

.instagram {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
}

section#instagram > div.container {
  padding-left: 0;
  padding-right: 0;
} 

section#instagram h2 {
  letter-spacing: 4px;
  text-shadow: 1px 1px 0 #fff;
}

section#instagram p {
  color: #cf3279;
  padding: 20px 0;
  letter-spacing: 1px;
  font-weight: 300;
}

.instagram > div {
  width: 25%;
  padding: 15px;
}

.instagram > div > a {
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%!important;
    border-radius: 0;

    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100%;
    margin: 0;
    overflow: hidden;
    transition: all 200ms ease;
    position: relative;
    cursor: pointer;
}

.instagram .image .caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.7);
  color: #FFF;
  padding: 1em;
  font-size: 11px;

  display: none!important;
}
.instagram .image:hover {
  background-size: 110%;
}
.instagram .image:hover .caption {
  display: block;
}


@media(max-width:1200px) {
    .instagram > div:nth-child(13),
    .instagram > div:nth-child(14),
    .instagram > div:nth-child(15),
    .instagram > div:nth-child(16) {
      display: none;
    }
}

@media(max-width:767px) {
    .instagram > div {
      width: 50%;
    }
    .instagram > div:nth-child(9),
    .instagram > div:nth-child(10),
    .instagram > div:nth-child(11),
    .instagram > div:nth-child(12) {
      display: none;
    }
}

@media(max-width:580px) {
    .instagram > div {
      width: 50%;
    }
}
