a {
  color: #000;
  text-decoration: none;
}

.hero {
  background-image: url('../images/bg-terrace.jpg');
  background-position: 50% 20%;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: scroll;
  justify-content: center;
  align-items: center;
  height: 75vh;
  display: flex;
}

.image {
  flex: 0 auto;
  width: 30vw;
}

.section {
  flex-flow: column;
  align-items: center;
  padding-top: 20px;
  padding-bottom: 20px;
  display: flex;
}

.content {
  text-align: center;
  width: 50vw;
  font-family: Open Sans, sans-serif;
  font-size: 16px;
  line-height: 30px;
}

.heading {
  text-align: center;
  padding-bottom: 10px;
  font-family: DM Serif Text, sans-serif;
  line-height: 30px;
}

.button {
  text-align: center;
  border: 6px solid #000;
  width: 400px;
  height: 55px;
  margin-top: 16px;
  margin-bottom: 16px;
  padding-top: 12px;
  padding-bottom: 12px;
  font-family: DM Serif Text, sans-serif;
  font-size: 22px;
}

.spacer {
  min-height: 100px;
}

@media screen and (max-width: 991px) {
  .hero {
    height: 55vh;
  }

  .image {
    width: 55vw;
  }

  .content {
    width: 75vw;
  }
}

@media screen and (max-width: 767px) {
  .button {
    width: 300px;
  }
}

@media screen and (max-width: 479px) {
  .hero {
    height: 35vh;
  }

  .image {
    width: 75vw;
  }

  .section {
    padding-left: 28px;
    padding-right: 28px;
  }

  .heading {
    font-size: 26px;
  }

  .button {
    width: 80vw;
  }
}


