:root {
  --grid-gap: 12px;
  --grid-columns: 1;
  --grid-col-width: 240px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.image-grid {
  column-count: var(--grid-columns);
  column-gap: var(--grid-gap);

  max-width: calc(
    var(--grid-columns) * var(--grid-col-width) +
    (var(--grid-columns) - 1) * var(--grid-gap)
  );
  
  margin: 20px auto;
  padding: 0 10px;
}

.image-grid img {
  width: 100%;
  display: block;
  margin: 0 0 var(--grid-gap);
  break-inside: avoid;
  background: #ddd;
}