div.gbvsc-container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

div.gbvsc-container div.gbvsc {
  flex-grow: 1;
  height: 300px;
  background: var(--bg);
  background-size: cover;
  border: 1px solid white;
  margin: 5px;
  transition-duration: .3s;
  background-position: center;
}

div.gbvsc-container div.gbvsc:hover {
  flex-grow: 1.5;
  box-shadow: 0 0 10px 0 white;
}

@media (min-width: 979px) {
  /* Large desktop */
  div.gbvsc-container {
    margin: 0 20%;
  }
}

@media (min-width: 768px) and (max-width: 979px) {
  /* Portrait tablet to landscape and desktop */
  div.gbvsc-container {
    margin: 0 15%;
  }
}

@media (max-width: 767px) {
  /* Landscape phone to portrait tablet */
  div.gbvsc-container {
    margin: 0 5%;
  }
}