.flexbin {
  display: flex;
  overflow: hidden;
  flex-wrap: wrap;
  margin: -2.5px;
}

.flexbin:after {
  content: '';
  flex-grow: 999999999;
  min-width: 210px;
  height: 0;
}

.flexbin > * {
  position: relative;
  display: block;
  height: 210px;
  margin: 2.5px;
  flex-grow: 1;
}

.flexbin > * > img {
  height: 210px !important;
  object-fit: cover;
  max-width: 100%;
  min-width: 100%;
  vertical-align: bottom;
}

.flexbin.flexbin-margin {
  margin: 2.5px;
}

@media (max-width: 980px) {
  .flexbin {
    display: flex;
    overflow: hidden;
    flex-wrap: wrap;
    margin: -2.5px;
  }
  .flexbin:after {
    content: '';
    flex-grow: 999999999;
    min-width: 180px;
    height: 0;
  }
  .flexbin > * {
    position: relative;
    display: block;
    height: 180px;
    margin: 2.5px;
    flex-grow: 1;
  }
  .flexbin > * > img {
    height: 180px !important;
    object-fit: cover;
    max-width: 100%;
    min-width: 100%;
    vertical-align: bottom;
  }
  .flexbin.flexbin-margin {
    margin: 2.5px;
  }
}

@media (max-width: 400px) {
  .flexbin {
    display: flex;
    overflow: hidden;
    flex-wrap: wrap;
    margin: -2.5px;
  }
  .flexbin:after {
    content: '';
    flex-grow: 999999999;
    min-width: 120px;
    height: 0;
  }
  .flexbin > * {
    position: relative;
    display: block;
    height: 120px;
    margin: 2.5px;
    flex-grow: 1;
  }
  .flexbin > * > img {
    height: 120px !important;
    object-fit: cover;
    max-width: 100%;
    min-width: 100%;
    vertical-align: bottom;
  }
  .flexbin.flexbin-margin {
    margin: 2.5px;
  }
}
