html, body {
  /* from SO */
  height: 100%;
  padding: 0;
  margin: 0;
  width: 100%;
}

body {
  color: white;
  background: black;

  /* from SO */
  display: flex;
  flex-direction: column;
}

#main-content {
  background-color: hsl(198, 23%, 18%);
  padding: 20px 30px;
  box-sizing: border-box;
  max-width: 800px;
  width: 800px;

  /* from SO */
  flex-grow: 1;

  margin: 20px auto 0px;
}

h1 {
  font-family: courier, monospace;
  text-align: center;
  margin: 0;
}

h2 {
  font-family: courier, monospace;
  text-align: center;
  margin: 0;
}

/* Add block background color to top navigation */
.topnav {
  background-color: #333;
  overflow: hidden;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

/* Style links inside navigation bar */
.topnav a {
  float: left;
  color: #f2f2f2;
  text-align: center;
  padding: 14px 30px;
  text-decoration: none;
  font-size: 17px;
}

.topnav a:hover {
  background-color: #ddd;
  color: black;
}

.topnav a.active {
  background-color: #04AA6D;
  color: white;
}

#main-header h1, #main-header h2 {
  color: green;
}

#title-text {
  padding: 50px 0 30px;
}
