body { background-size: cover; }

img { max-width: 100vw; }
header { padding-top: 2em; }
header h1 { top: 3em; }
header audio { width: 100vw; filter: invert(100%); position: absolute; top: 0; left: 0; }

nav a {
  color: inherit;
  text-decoration: none;
  box-shadow: none;
  display: inline-block;
  padding: 1ex 2ex;
  border-left: 10px solid transparent;
}

#intro { margin-top: 33%; }

main article section {
  padding: 1em;
  margin: 1em;
  background: rgba(0,0,0,0.75);
  box-shadow: 0 0 30px black;
  border-radius: 2ex;
}
main * h2 {
  font-size: 2em;
  font-weight: 100;
  font-family: "Arcade";
  margin: 0 0 1em 0;
  color: cyan;
}
main h3 {
  font-size: 1.6em;
  font-weight: 200;
  margin: 1em 0;
}

footer {
  background: black;
  padding: 33vh 0 5em 0;
  font-size: 80%;
  font-weight: 100;
  position: relative;
  z-index: 3;
}
footer section {  padding: 1em; text-align: center; }
footer h4 {
  font-family: Arcade;
  font-weight: 100;
  font-size: 40px;
  margin: 0;
  padding: 1ex 0;
  color: darkorchid;
}

footer fieldset { border: none; margin: 0; padding: 0; }
footer form table { table-layout: fixed; width: 100%; }
footer form table td { display: block; padding: .5ex 0; }
footer [type="submit"] { font-size: 120%; color: cyan; border: 1px solid cyan; outline: none; background: black; }
footer .errors { text-align: left; font-size: 80%; color: red; }

footer a:link,
footer a:visited { color: darkorchid; font-weight: bold; }
footer a:active,
footer a:focus,
footer a:hover { color: cyan; text-decoration: none; }

#spacer { height: 33vh; }
