.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: #fff;
  background: #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; }
  .startSplash .brand {
    margin: auto;
    position: absolute;
    text-align: center;
    left: 0;
    right: 0;
    width: 20%;
    top: 25%; }
    @media (min-width: 576px) {
      .startSplash .brand {
        width: 10%;
        top: 25%; } }
  .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: -webkit-linear-gradient(bottom, #030210, #000);
  background: -moz-linear-gradient(bottom, #030210, #000);
  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: -webkit-linear-gradient(bottom, #030210, #000);
  background: -moz-linear-gradient(bottom, #030210, #000);
  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; } }

.endSplash {
  background-image: url(../img/108-NeonHighway-lightX.jpg);
  background-size: cover;
  background-position: center center;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

footer {
  color: #fff;
  padding: 5%;
  background: #030210;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: right;
  -ms-flex-pack: right;
  justify-content: right; }
  footer .brand {
    width: 64px;
    height: 64px; }
    @media (min-width: 576px) {
      footer .brand {
        width: 80px;
        height: 80px; } }
  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; }

.folioIntroSplash, .folioEndSplash {
  color: #fff;
  background: #000; }
  .folioIntroSplash img, .folioEndSplash img {
    width: 100%; }

.folioProfile {
  color: #fff;
  background: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 5%; }
  .folioProfile .folioProfileIntro {
    width: 60%;
    padding: 32px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    .folioProfile .folioProfileIntro p {
      font-size: 1.2em;
      line-height: 1.4em; }
    .folioProfile .folioProfileIntro blockquote {
      font-size: 1.8em;
      font-weight: 300;
      border-left: 2px solid #fff;
      padding: 0px 32px; }
  .folioProfile .folioProfileImage {
    width: 40%;
    padding: 64px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    .folioProfile .folioProfileImage img {
      width: 100%; }
  .folioProfile .folioProfileContact {
    padding: 32px; }
    .folioProfile .folioProfileContact ul {
      list-style: none;
      border-left: 2px solid #fff;
      padding: 0px 32px;
      margin: 0px 40px; }
      .folioProfile .folioProfileContact ul li a {
        color: #fff;
        text-decoration: none; }

.folioProfile {
  color: #fff;
  background: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.folioSkills {
  color: #fff;
  background: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 5%; }
  .folioSkills ul {
    list-style: none; }
  .folioSkills .skills {
    width: 40%;
    height: 250px;
    margin: auto;
    position: relative; }
    .folioSkills .skills .levels li {
      display: inline-block; }
  .folioSkills .metrics {
    width: 40%;
    height: 60px;
    margin: auto;
    position: relative; }
    .folioSkills .metrics .levels li {
      display: inline-block;
      position: relative; }
  .folioSkills .lines {
    height: 100%;
    position: relative; }
  .folioSkills .line {
    height: inherit;
    width: 2px;
    position: absolute;
    background: rgba(255, 255, 255, 0.2); }
    .folioSkills .line.l-0 {
      left: 0%; }
    .folioSkills .line.l-10 {
      left: 10%; }
    .folioSkills .line.l-20 {
      left: 20%; }
    .folioSkills .line.l-30 {
      left: 30%; }
    .folioSkills .line.l-40 {
      left: 40%; }
    .folioSkills .line.l-50 {
      left: 50%; }
    .folioSkills .line.l-60 {
      left: 60%; }
    .folioSkills .line.l-70 {
      left: 70%; }
    .folioSkills .line.l-80 {
      left: 80%; }
    .folioSkills .line.l-90 {
      left: 90%; }
    .folioSkills .line.l-100 {
      left: calc(100% - 1px); }
  .folioSkills .line__label {
    display: block;
    width: 100px;
    text-align: center;
    position: absolute;
    bottom: -20px;
    right: -50px; }
    .folioSkills .line__label.title {
      text-transform: uppercase;
      font-weight: bold; }
  .folioSkills .charts {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10; }
  .folioSkills .chart {
    margin: 30px 0 0; }
    .folioSkills .chart:first-child {
      margin: 0; }
  .folioSkills .chart__title {
    display: block;
    margin: 0 0 10px;
    font-weight: bold;
    opacity: 0;
    -webkit-animation: 1s anim-lightspeed-in ease forwards;
    animation: 1s anim-lightspeed-in ease forwards; }
    .chart--prod .folioSkills .chart__title {
      -webkit-animation-delay: 3.3s;
      animation-delay: 3.3s; }
    .chart--design .folioSkills .chart__title {
      -webkit-animation-delay: 4.5s;
      animation-delay: 4.5s; }
  .folioSkills .chart--horiz {
    overflow: hidden;
    padding: 0px; }
  .folioSkills .chart__bar {
    height: 20px;
    margin-bottom: 10px;
    background: -webkit-gradient(linear, right top, left top, from(#4cb8c4), to(#3cd3ad));
    background: -webkit-linear-gradient(right, #4cb8c4, #3cd3ad);
    background: -o-linear-gradient(right, #4cb8c4, #3cd3ad);
    background: linear-gradient(to left, #4cb8c4, #3cd3ad);
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
    opacity: 0;
    -webkit-animation: 1s anim-lightspeed-in ease forwards;
    animation: 1s anim-lightspeed-in ease forwards; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(11) {
      -webkit-animation-delay: 2.7s;
      animation-delay: 2.7s; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(10) {
      -webkit-animation-delay: 2.5s;
      animation-delay: 2.5s; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(9) {
      -webkit-animation-delay: 2.3s;
      animation-delay: 2.3s; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(8) {
      -webkit-animation-delay: 2.1s;
      animation-delay: 2.1s; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(7) {
      -webkit-animation-delay: 1.9s;
      animation-delay: 1.9s; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(6) {
      -webkit-animation-delay: 1.7s;
      animation-delay: 1.7s; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(5) {
      -webkit-animation-delay: 1.5s;
      animation-delay: 1.5s; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(4) {
      -webkit-animation-delay: 1.3s;
      animation-delay: 1.3s; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(3) {
      -webkit-animation-delay: 1.1s;
      animation-delay: 1.1s; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(2) {
      -webkit-animation-delay: 0.9s;
      animation-delay: 0.9s; }
    .chart--dev .folioSkills .chart__bar:nth-of-type(1) {
      -webkit-animation-delay: 0.7s;
      animation-delay: 0.7s; }
    .chart--prod .folioSkills .chart__bar:nth-of-type(2) {
      -webkit-animation-delay: 4.2s;
      animation-delay: 4.2s; }
    .chart--prod .folioSkills .chart__bar:nth-of-type(1) {
      -webkit-animation-delay: 4s;
      animation-delay: 4s; }
    .chart--design .folioSkills .chart__bar:nth-of-type(3) {
      -webkit-animation-delay: 5.6s;
      animation-delay: 5.6s; }
    .chart--design .folioSkills .chart__bar:nth-of-type(2) {
      -webkit-animation-delay: 5.4s;
      animation-delay: 5.4s; }
    .chart--design .folioSkills .chart__bar:nth-of-type(1) {
      -webkit-animation-delay: 5.2s;
      animation-delay: 5.2s; }
  .folioSkills .chart__label {
    padding-left: 10px;
    line-height: 20px;
    color: white; }

@-webkit-keyframes anim-lightspeed-in {
  0% {
    -webkit-transform: translateX(-200%);
    transform: translateX(-200%);
    opacity: 1; }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1; } }

@keyframes anim-lightspeed-in {
  0% {
    -webkit-transform: translateX(-200%);
    transform: translateX(-200%);
    opacity: 1; }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1; } }

.folioTimeline {
  color: #fff;
  background: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.folioCaseStudy {
  color: #fff;
  background: #000;
  height: 100vh;
  padding: 5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .folioCaseStudy .gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .folioCaseStudy .gallery img {
      width: 100%; }
  .folioCaseStudy .narrative {
    display: -ms-grid;
    display: grid;
    padding: 5%;
    -ms-grid-columns: 20% 30% 50%;
    grid-template-columns: 20% 30% 50%;
    -ms-grid-rows: 12px 12px 12px;
    grid-template-rows: 12px 12px 12px; }
