html,
body {
  height: 100%;
}

body {
  font-family: "Arial";
  background: black;
  margin: 0;
  overflow-y: hidden;
}

.grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: center;
  overflow: hidden;
  height: 100vh;
  opacity: 0;
  -webkit-transition: opacity 1s ease-in-out;
  -moz-transition: opacity 1s ease-in-out;
  -o-transition: opacity 1s ease-in-out;
  transition: opacity 1s ease-in-out;
}

.grid.visible {
  opacity: 1;
}

h3 {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  margin: 0;
  color: white;
}

img {
  width: 23vmax;
  min-width: 300px;
  object-fit: cover;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  -moz-transition: opacity 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}

.invisible {
  display: none;
}

.active {
  opacity: 1;
}
