* {
  font-size: 8vw;
  text-align: center;
}

html, body {
  width: 80vw;
  margin: 0;
  padding: 5vw;
  overflow-x: hidden;
}

body {
  display: flex;
  flex-direction: column;
  justify-content: start;
}
body header, body header > nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 8vh;
  z-index: 5;
  background-color: ghostwhite;
}
body header ul, body header > nav ul {
  display: flex;
  flex-direction: row;
  justify-content: space-evenly;
  list-style: none;
  margin: 0;
  padding: 0;
}
body header ul li, body header > nav ul li {
  width: 100%;
  padding: 0.3em 0;
  background-color: lightgrey;
}
body header ul li.active, body header > nav ul li.active {
  background-color: ghostwhite;
}
body main {
  margin-top: 5vh;
}
body main .hidden {
  display: none;
}
body main ul {
  position: absolute;
  top: 45vw;
  left: 0;
  width: 100vw;
  min-height: 80%;
  display: flex;
  flex-direction: column;
  justify-content: start;
  text-align: center;
  list-style: none;
  z-index: 10;
  background-color: lightgrey;
}
body main input, body main button {
  margin: 5vw 0;
  padding: 0.5em;
  border-radius: 5em;
}
body main input {
  width: 70vw;
}
