/* (A) WHOLE PAGE */
* {
  box-sizing: border-box;
}
body { 
  background-color: rgb(26, 26, 26);
  color: #dddddd;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  font-size: 16px;}

h1 {
text-transform:uppercase;
letter-spacing:8px;
font-family:"Nunito Sans", sans-serif;
color:white;
font-size:30px;
font-weight: 400;
padding: 30px 38px;
}

h2 {
text-transform:uppercase;
letter-spacing:6px;
font-family:"Nunito Sans", sans-serif;
color:white;
font-size:16px;
font-weight: 400;
padding: 50px 0px 18px 10px;
max-width: 1000px;
margin: 0 auto;
}



/* (B) GALLERY WRAPPER */
.gallery {
  /* (B1) GRID LAYOUT - 3 IMAGES PER ROW */
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 20px;

  /* (B2) OPTIONAL WIDTH RESTRICT */
  max-width: 1000px;
  margin: 0 auto;
  overflow: hidden;
  padding:4px;
}

/* (C) GALLERY IMAGES */
.gallery img {
  /* (C1) DIMENSION */
  width: 100%;
  height: 280px; /* optional */
  padding: 5px;

  /* (C2) COLORS */
  border: 1px solid #ddd;
  background: #fff;

  /* (C3) IMAGE RESIZE */
  /* cover | contain | fill | scale-down */
  object-fit: cover;
}

/* (D) ON SMALL SCREENS - 2 IMAGES PER ROW */
@media only screen and (max-width: 600px) {
  .gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* (E) OPTIONAL ZOOM ON HOVER */
.gallery img:hover {
  z-index: 9;
  transform: scale(1.03);
  /* linear | ease | ease-in | ease-out | ease-in-out */
  transition: transform ease 0.3s;
}

/* (F) FULLSCREEN MODE */
.gallery img.full {
  position: fixed;
  top: 0; left: 0; z-index: 999;
  width: 100vw; height: 100vh;
  object-fit: contain;
  background: rgba(0, 0, 0, 0.7);
}
.gallery img.full:hover {
  z-index: 999;
  transform: none;
}