* {
  box-sizing: border-box;
}

body {
  font-family: Arial, Helvetica, sans-serif;
  width: 70%;
  margin: auto;
}

/* Style the header */
header {
  background-color: #666;
  padding: 10px;
  text-align: center;
  font-size: 35px;
  color: white;
}

/* Create two columns/boxes that floats next to each other */
nav {
  float: left;
  width: 20%;
  /*height: 300px;  only for demonstration, should be removed */
  padding: 20px;
}

/* Style the list inside the menu */
nav ul {
  list-style-type: none;
  padding: 0;
}

article {
  float: left;
  padding: 20px;
  width: 80%;
  background-color: #f1f1f1;
 /*  height: 300px; only for demonstration, should be removed */
}

/* Clear floats after the columns */
section::after {
  content: "";
  display: table;
  clear: both;
}

/* Style the footer */
footer {
  background-color: #777;
  padding: 10px;
  text-align: center;
  color: white;
  font-size: x-small;
}

/* Responsive layout - makes the two columns/boxes stack on top of each other instead of next to each other, on small screens */
@media (max-width: 600px) {
  body, nav, article {
    width: 100%;
    height: auto;
  }
}

div.gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
div.gallery-item {
  margin: 5px;
  border: 1px solid #ccc;
  width: 165px;
}
div.gallery-item:hover {
  border: 1px solid #777;
}
div.gallery-item img {
  width: 100%;
  height: auto;
}
div.gallery-item div.desc {
  padding: 15px;
  text-align: center;
}
