body {
  /* font-family: Georgia, 'Times New Roman', Times, serif; */
  font-family: Avenir, Arial, Helvetica, sans-serif;
  color: #636363;
  display: flex;
  justify-content: space-between;
  flex-direction: row;
}


a, a:visited {
  color: #636363;
  text-decoration: none;
}


a:hover {
  color: #333333;
}


.piece {
  max-width:100%;
  height:auto;
}


#navigation {
  position: sticky;
  top: 0;
  margin-bottom: auto;
  background-color: #fff;
  padding-bottom: 0.25em;

  #name-menu, ul {
    width: 98%;
    margin: auto 1%;
  }

  h1 {
    margin-top: 0.5em;
    white-space: nowrap;
    font-size: clamp(24px, 8vw, 56px);
    font-family: Avenir, Arial, Helvetica, sans-serif;
    font-weight: 500;
    color: #636363;

    a:hover {
      text-decoration: none;
    }
  }

  #nav-toggle {
    display: none;
  }

  ul {
    list-style: none;
    padding: 0;
    white-space: nowrap;
    font-size: clamp(12px, 3vw, 36px);
    /* font-family: Georgia, 'Times New Roman', Times, serif; */
    font-family: Avenir, Arial, Helvetica, sans-serif;

    li {
      a {
        color: #848484;
        display: block;
        padding: 5px;
        border-bottom: 1px solid #fff;
      }
    }
  }
}


#main {
  width: 70%;

  .description, #content, #footer {
    width: 90%;
    margin: auto 1%;
  }

  .description, #content {
    padding-top: 2.5em;
    padding-bottom: 2em;
    border-bottom: 1px solid #848484;
  }

  .description {
    text-align: center;
  }

  #content {
    min-height: 80vh;
  }

  #content.portfolio {
    h2, p, div.artwork {
      width: 90%;
      margin-left: auto;
      margin-right: auto;
    }

    .artwork {
      margin-top: 0;
      margin-bottom: 6em;

      h3.title {
        font-size: clamp(20px, 2vw, 36px);
        font-weight: 400;
        font-style: italic;
        margin-top: 5px;
        margin-bottom: 2px;
      }

      p.metadata {
        width: 100%;
      }
    }
  }

  h2, p {
    margin-top: 2px;
    margin-bottom: 1em;
  }

  h2 {
    font-size: clamp(16px, 6vw, 40px);
  }

  #footer {
    margin-top: 1em;
    margin-bottom: 1em;

    p {
      margin: auto 0;
    }
  }
}


/* Use a media query to add a breakpoint at 800px: */
@media screen and (max-width: 800px) {
  body {
    display: contents;
  }

  #navigation, #main {
    width: 100%;
  }

  #navigation {
    #name-menu {
      width: 90%;
      margin: auto;
      display: flex;
      flex-direction: row;
      justify-content: space-between;

      h1 {
        margin: 2px auto;
        font-size: clamp(24px, 8vw, 48px);
      }

      #nav-toggle {
        display: flex;

        button {
          padding-inline: 0;
          font-size: clamp(24px, 8vw, 48px);
          color: #636363;
          border: none;
          background-color: #fff;
        }
      }
    }

    ul {
      width: 90%;
      margin: auto;
      font-size: clamp(16px, 6vw, 24px);
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.2s ease-out;
    }
  }

  #main {
    #content {
      width: 90%;
      margin: auto;
      padding-top: 1em;
      padding-bottom: 1em;
    }

    #footer {
      width: 90%;
      margin: 1em auto;

    }
  }
}
