html, body {
  margin: 0;
  padding: 0;
  font-size: 16px;
  overflow-x: hidden;
}

div.container {
  margin: 0 auto;
  max-width: 900px;
  width: 100%;
}

div.grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
    "header-img header-img"
    "services	service-areas"
    "contact	contact"
    "footer-img	footer-img"
  ;
}

header.header {
  font-size: 1.5em;
  font-weight: bold;
  background-color: black;
  padding: 6px;
  color: white;
}

#header-img {
  width: 100%;
  max-width: 900px;
  grid-area: header-img;
}

#footer-img {
  width: 100%;
  max-width: 900px;
  grid-area: footer-img
}

#services {
  grid-area: services;
}

#service-areas {
  grid-area: service-areas;
}

#contact-section {
  grid-area: contact;
  display: flex;
  flex-direction: row;
}

div.contact-info {
  flex: 1;
}

div.yelp-badge {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 1rem;
}

div.header {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "title number";
}

div.title {
  grid-area: title;
  text-align: left;
}

div.number {
  grid-area: number;
  text-align: right;
}

a.number {
  text-decoration: none;
  color: white;
}

section {
  padding: 0 5px;
}

@media screen and (max-width: 700px) {
  div.header {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
    grid-template-areas:
      "title"
      "number";
  }

  div.title, div.number {
    text-align: center;
  }

  section#contact-section {
    flex-direction: column;
  }
}

@media screen and (max-width: 900px) {
  body {
    width: 100%;
  }
}
