body {
  background-color: lightgrey;
  font-family: Arial, sans-serif;
  margin: 0;
  padding: 0;
}

.container {
  background-color: white;
  width: 90%;
  max-width: 1200px;
  margin: 40px auto;
  padding: 20px;
  box-sizing: border-box;
}

/* Clearfix to wrap floated children */
.container::after {
  content: "";
  display: table;
  clear: both;
}

.navbar {
  padding: 10px 0;
  text-align: right;
}

.navbar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.navbar li {
  display: inline-block;
  margin-left: 15px;
}

.navbar a {
  color: grey;
  text-decoration: none;
}

.navbar a:hover,
.navbar a:active {
  color: green;
}

.content {
  background-color: white;
  width: 70%;
  float: left;
  box-sizing: border-box;
  padding-right: 10px;
  margin-bottom: 0; /* prevent space before footer */
}

.content p {
  color: grey;
}

.sidebar {
  background-color: white;
  width: 30%;
  float: right;
  box-sizing: border-box;
  padding-left: 10px;
  margin-bottom: 0; /* prevent space before footer */
}

.sidebar p {
  color: green;
  line-height: 0.5;
}

.sidebar hr {
  background-color: green;
  height: 1px;
  border: none;
  width: 50%;
  margin-left: 0;
}

.footer {
  clear: both;
  text-align: left;
  padding: 5px 10px 10px 10px; /* reduce top padding */
  margin-top: 0; /* eliminate extra space above */
  background-color: lightgrey;
  color: grey;
  font-size: 0.8em;
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

/* Responsive layout */
@media (max-width: 768px) {
  .navbar {
    text-align: center;
  }

  .navbar li {
    display: block;
    margin: 8px 0;
  }

  .content,
  .sidebar {
    width: 100%;
    float: none;
    padding: 10px 0;
    margin-bottom: 0;
  }

  .sidebar hr {
    width: 100%;
  }

  .footer {
    width: 100%;
  }
}
