/* GLOBAL */

body {
  font-family: Georgia, "Times New Roman", serif;
  margin: 0;
  line-height: 1.65;
  color: #2d2a26;
  background: #faf8f5;
}

/* CONTAINER */

.container {
  max-width: 720px;
  margin: auto;
  padding: 60px 24px;
}

/* HERO */

.hero {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: auto;
  overflow: hidden;
  border-bottom: 1px solid #d8d2ca;
}

.hero::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 120px;
  background: linear-gradient(to bottom, rgba(250,248,245,0), #faf8f5);
}

.hero-banner {
  width: 100%;
  height: auto;
  display: block;
}

/* HEADINGS */

h1 {
  font-size: 2rem;
  letter-spacing: -0.02em;
  margin-bottom: 12px;
}

h2 {
  font-size: 1.4rem;
  margin-bottom: 16px;
  margin-top: 0;
}

/* TEXT */

p {
  color: #5a544e;
}

/* TAGLINES */

.tagline {
  font-size: 1.05rem;
}

.subtag {
  margin-top: 10px;
  font-size: 0.95rem;
  color: #77706a;
}

/* SECTIONS */

section {
  border-top: 1px solid #e6e1db;
  padding-top: 70px;
  padding-bottom: 70px;
}

/* LISTS */

ul {
  padding-left: 18px;
}

li {
  margin-bottom: 8px;
}

/* CONTACT */

.email a {
  font-weight: bold;
  text-decoration: none;
}

/* FOOTER */

footer {
  background: #f6f6f6;
  text-align: center;
  font-size: 0.9rem;
}

.small {
  color: #666;
}

/* MOBILE */

@media (max-width: 600px) {

  .container {
    padding: 40px 18px;
  }

  h1 {
    font-size: 1.7rem;
  }

}