* {
  box-sizing:border-box;
}
.container1 {
  max-width:800px;
  margin-right: auto;
  margin-left: auto;
}
.gallery {
  display:flex;
  flex-wrap:wrap;
}
.column {
  width:25%;
  flex: 0 0 auto;
  padding:10px;
}
@media (max-width:500px){
  .column {
    width:50%;
  }
}
.column-image {
  width:100%;
  vertical-align:middle;
}
.column-title {
  font-size:0.7em;
  padding:0.2rem 0.5rem;
}

.lightbox {
  position:fixed;
  height:100%;
  width:100%;
  top:0;
  left:0;
  background-color:rgba(0,0,0,0.8);
}
.lightbox-image {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  max-width:calc(100% - 30px);
  max-height:calc(100% - 30px);
}