* {
  margin: 0;
  padding: 0;
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
  color: #666;
}

a:link {
  color: #000;
}

a:visited {
  text-decoration: none;
  color: #000;
}

h4 {
  color: #000;
}

p {
  font-family: 'Nunito', sans-serif;
  font-size: 0.9em;
  color: #666;
}

.grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas:
    "header"
    "body"
    "footer";
  font-family: 'Nunito', sans-serif;
  font-size: 0.9em;
  color: #000;
}

.header {
  grid-area: header;
  display: block;
  text-align: center;
  position: fixed;
  width: 100%;
  height: auto;
  background-color: rgba(255, 255, 255, 0.9);
}

.logo {
  grid-area: logo;
  margin: 10px;
}

.name {
  grid-area: name;
  margin: 10px;
}

.about {
  grid-area: about;
  justify-self: right;
  margin: 5px;
}

.contact {
  grid-area: contact;
  justify-self: right;
  margin: 5px;
}

.body {
  grid-area: body;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 30px;
  margin-top: 150px;
}

.work-main {
  grid-area: body;
  display: block;
  margin-top: 150px;
}

.work-image-1 {
  grid-area: work-image-1;
}

.work-description {
  grid-area: work-description;
}

.work {
  height: 250px;
}

.work img {
  object-fit: cover;
  width: 100%;
  max-height: 100%;
}

.work:hover {
  opacity: 0.5;
}

.footer {
  grid-area: footer;
  background-color: rgba(255, 255, 255, 0.75);
  text-align: center;
  margin: 50px auto 50px auto;
}

@media screen and (min-width: 500px) {
  .grid {
    display: grid;
    grid-template-columns: 1fr 1000px 1fr;
    grid-template-areas:
      ". header ."
      ". body ."
      ". footer .";
    font-family: 'Nunito', sans-serif;
    font-size: 0.9em;
    color: #000;
  }

  .header {
    grid-area: header;
    display: grid;
    grid-template-columns: 1fr 200px 600px 100px 100px 1fr;
    grid-template-areas:
      ". logo name about contact .";
    position: fixed;
    width: 100%;
    height: 100px;
    background-color: rgba(255, 255, 255, 0.75);
  }

  .body {
    grid-area: body;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 60px;
    margin-top: 120px;
  }

  .logo {
    grid-area: logo;
    margin: auto;
  }

  .name {
    grid-area: name;
    margin: auto;
  }

  .about {
    grid-area: about;
    justify-self: right;
    margin: auto;
  }

  .contact {
    grid-area: contact;
    justify-self: right;
    margin: auto;
  }

  .work-main {
    grid-area: body;
    display: grid;
    grid-template-columns: 3fr 1fr;
    grid-template-areas:
      "work-image-1 work-description"
      "work-image-2 work-description"
      "work-image-3 work-description"
      "work-image-4 work-description"
      "work-image-5 work-description"
      "work-image-6 work-description"
      "work-image-7 work-description"
      "work-image-8 work-description"
      "work-image-9 work-description"
      "work-image-10 work-description";
    grid-gap: 30px;
    margin-top: 120px;
  }
}
