.featureFont {
  font-family: "Overpass", sans-serif;
}

.bodyFont {
  font-family: "Libre Franklin", sans-serif;
}

body {
  font-family: "Libre Franklin", sans-serif;
}

h1, h2, h3, h4 {
  font-family: "Overpass", sans-serif;
}

h5, h6 {
  font-family: "Libre Franklin", sans-serif;
}

p {
  font-family: "Libre Franklin", sans-serif;
}
p.hero {
  font-size: 1.6em;
  font-weight: 300;
  line-height: 1.4em;
}

button {
  font-size: 2em;
  text-align: center;
  color: #fff;
  background: transparent;
  border: 2px solid #fff;
  border-radius: 0 8px 8px 8px;
  padding: 8px;
  width: 200px;
}

body {
  font-family: "Libre Franklin", sans-serif;
  margin: 0;
}
body a[href^=tel] {
  color: inherit;
  text-decoration: none;
}

.startSplash {
  color: #000;
  background: #fff;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.startSplash .gem {
  margin: 10% auto;
  max-width: 80vw;
}
@media (min-width: 576px) {
  .startSplash .gem {
    margin: 0px auto;
    max-width: 80vh;
  }
}
@media (min-width: 992px) {
  .startSplash .gem {
    max-width: 75vh;
  }
}
@media (min-width: 1400px) {
  .startSplash .gem {
    max-width: 70vh;
  }
}
.startSplash .brand {
  margin: 0px auto;
  max-width: 80vw;
}
@media (min-width: 576px) {
  .startSplash .brand {
    max-width: 60vw;
  }
}
@media (min-width: 992px) {
  .startSplash .brand {
    max-width: 50vw;
  }
}
.startSplash h1 {
  font-size: 3em;
  text-align: center;
  margin: 30vh auto 0px;
}
@media (min-width: 576px) {
  .startSplash h1 {
    font-size: 6em;
  }
}
.startSplash h3 {
  text-align: center;
  font-size: 1.2em;
  margin: auto;
  font-weight: 400;
  text-align: center;
  position: absolute;
  left: 0;
  right: 0;
  top: 38%;
}
@media (min-width: 576px) {
  .startSplash h3 {
    font-size: 2.2em;
    top: 37%;
  }
}
.startSplash button {
  display: block;
  margin: auto;
  position: absolute;
  top: 70%;
  left: 0;
  right: 0;
}

.connect {
  color: #fff;
  background: -o-linear-gradient(bottom, #030210, #000);
  background: -webkit-gradient(linear, left bottom, left top, from(#030210), to(#000));
  background: linear-gradient(bottom, #030210, #000);
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.connect .brand {
  margin: auto;
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  width: 80%;
  top: 10%;
}
@media (min-width: 576px) {
  .connect .brand {
    width: 30%;
    top: 6%;
  }
}
.connect h2 {
  font-size: 2.5em;
  text-align: center;
  margin: 40vh auto 0px;
}
@media (min-width: 576px) {
  .connect h2 {
    font-size: 4.2em;
  }
}
.connect .socialLinks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: auto;
}
.connect .socialLinks img {
  width: 64px;
  height: 64px;
  margin: 16px;
}

.mainNarrative {
  color: #D4D4D4;
  padding: 20px 20px 100px;
  background: -o-linear-gradient(bottom, #030210, #000);
  background: -webkit-gradient(linear, left bottom, left top, from(#030210), to(#000));
  background: linear-gradient(bottom, #030210, #000);
}
@media (min-width: 576px) {
  .mainNarrative {
    padding: 5% 20%;
  }
}
.mainNarrative p.hero {
  margin: 0 0 40px 0;
}
@media (min-width: 576px) {
  .mainNarrative p.hero {
    margin: 0 0 60px 0;
  }
}
.mainNarrative h2 {
  font-size: 1.6em;
  font-family: "Libre Franklin", sans-serif;
  font-weight: 400;
  margin: 12px 20px;
}
@media (min-width: 576px) {
  .mainNarrative h2 {
    font-size: 1.4em;
    margin: 8px 4px;
  }
}
.mainNarrative h3 {
  color: #fff;
  font-size: 1.2em;
  font-family: "Libre Franklin", sans-serif;
  font-weight: 300;
  margin: 24px 8px 24px 8px;
}
@media (min-width: 576px) {
  .mainNarrative h3 {
    font-size: 1.9em;
    margin: 36px 48px 36px 48px;
  }
}
.mainNarrative button {
  margin: 216px auto;
  display: block;
}

.contact {
  color: #fff;
  background: #030210;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.contact h1 {
  font-size: 2em;
  text-align: center;
  margin: 30vh auto 0px;
}
@media (min-width: 576px) {
  .contact h1 {
    font-size: 4em;
  }
}
footer {
  color: #000;
  padding: 5%;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
footer p {
  font-size: 1.2em;
  margin: 3px 9px;
  font-style: italic;
  text-align: center;
}
@media (min-width: 576px) {
  footer p {
    font-size: 1.6em;
    margin: 6px 18%;
  }
}
@media (min-width: 992px) {
  footer p {
    font-size: 1.8em;
    margin: 9px 27%;
  }
}
footer .gem {
  margin: 10% auto;
  max-width: 80vw;
}
@media (min-width: 576px) {
  footer .gem {
    margin: 0px auto;
    max-width: 80vh;
  }
}
@media (min-width: 992px) {
  footer .gem {
    max-width: 75vh;
  }
}
@media (min-width: 1400px) {
  footer .gem {
    max-width: 70vh;
  }
}
footer .contactDetails {
  margin: 0px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: left;
      -ms-flex-align: left;
          align-items: left;
  -ms-flex-line-pack: center;
      align-content: center;
  width: 100%;
}
footer .contactDetails h4 {
  font-size: 1em;
  margin: 0px;
  text-align: right;
}
@media (min-width: 576px) {
  footer .contactDetails h4 {
    margin: 4px;
    font-size: 1.2em;
  }
}
footer .contactDetails ul {
  list-style: none;
  margin: 4px 0px;
  padding: 0px;
}
@media (min-width: 576px) {
  footer .contactDetails ul {
    margin: 4px;
    margin: 8px 0px;
  }
}
footer .contactDetails ul li {
  text-align: right;
}