/* ------------------------------------------ */
/* Variables
/* ------------------------------------------ */
html, body, #main {
  height: 100%;
}

body {
  background: #24232a;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.5, #8000FF), color-stop(1, #5801A3));
  background-image: -o-linear-gradient(bottom, #8000FF 50%, #5801A3 100%);
  background-image: -moz-linear-gradient(bottom, #8000FF 50%, #5801A3 100%);
  background-image: -webkit-linear-gradient(bottom, #8000FF 50%, #5801A3 100%);
  background-image: -ms-linear-gradient(bottom, #8000FF 50%, #5801A3 100%);
  background-image: linear-gradient(to bottom, #8000FF 50%, #5801A3 100%);
  color: #EEEEEE;
  overflow: hidden;
  text-rendering: optimizeLegibility;
}

.flex-container {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}

h1.title {
  text-align: center;
  text-transform: uppercase;
}

h3.byline {
  text-align: center;
  font-size: 1.4em;
  opacity: 0.9;
  white-space: nowrap;
  letter-spacing: 0.05em;
  line-height: 1.5em;
  margin-top: 15px;
}

h4 {
  font-size: 1em;
}
h4.byline {
  text-align: center;
  font-size: 1.18em;
  opacity: 0.9;
  white-space: nowrap;
  letter-spacing: 0.05em;
  margin-top: 0px;
}

.hero-container {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.hero-container img.gravity-svg {
  opacity: 0;
}
.hero-container .gravity-svg {
  width: 320px;
  margin-top: -200px;
}
.hero-container .gravity-svg.animated {
  -moz-transition-duration: 1s;
  -o-transition-duration: 1s;
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  margin-top: -265px;
}
.hero-container .gravity-svg.animated.animate {
  margin-top: -200px;
}

.content {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.content .byline.animated {
  color: RGB(129, 0, 255);
}
.content .byline.animated.animate {
  -moz-transition: color 2.4s ease-out 0.55s;
  -o-transition: color 2.4s ease-out 0.55s;
  -webkit-transition: color 2.4s ease-out;
  -webkit-transition-delay: 0.55s;
  transition: color 2.4s ease-out 0.55s;
  color: RGBA(255, 255, 255, 0.95);
}
.content .input__label--foldie.animated-with-delay-1 {
  color: RGB(129, 0, 255);
}
.content .input__label--foldie.animated-with-delay-1.animate {
  -moz-transition: color 0.6s ease-out;
  -o-transition: color 0.6s ease-out;
  -webkit-transition: color 0.6s ease-out;
  transition: color 0.6s ease-out;
  color: RGBA(255, 255, 255, 0.95);
}

.email-form-container {
  position: absolute;
  top: 60%;
  left: 0;
  right: 0;
  width: 100%;
  text-align: center;
}

.email-form {
  display: inline-block;
}
.email-form.animated {
  opacity: 0;
}
.email-form.animated.animate {
  opacity: 1;
  -moz-transition: opacity 1.4s ease-out 1s;
  -o-transition: opacity 1.4s ease-out 1s;
  -webkit-transition: opacity 1.4s ease-out;
  -webkit-transition-delay: 1s;
  transition: opacity 1.4s ease-out 1s;
}
.email-form #mc_embed_signup form {
  padding: 0;
}
.email-form #mc_embed_signup label[for=mce-EMAIL] {
  width: 100%;
  text-align: center;
}
.email-form #mc_embed_signup input.email {
  width: 100%;
  color: RGB(25, 25, 25);
}
.email-form #mc_embed_signup #mc-embedded-subscribe {
  height: 38px;
  width: 100%;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background-color: RGB(75, 0, 149);
  color: RGBA(255, 255, 255, 0.95);
}

.footer {
  position: absolute;
  height: 50px;
  bottom: 0;
  left: 0;
  right: 0;
}
.footer .social-icons {
  position: absolute;
  bottom: 1.8em;
  left: 1.8em;
}
.footer .social-icons .btn-social-icon {
  width: 48px;
  height: 48px;
  padding: 0;
  border: 2px solid;
  border-radius: 0;
}
.footer .social-icons .btn-social-icon .fa {
  font-size: 1.6em;
  line-height: 45px;
  vertical-align: middle;
}
.footer .social-icons .btn-social-icon:first-child {
  border-right: 1.5px solid;
  border-bottom-left-radius: 6px;
  border-top-left-radius: 6px;
}
.footer .social-icons .btn-social-icon:not(:first-child) {
  border-left: 1.5px solid;
  border-bottom-right-radius: 6px;
  border-top-right-radius: 6px;
}
.footer .contact {
  font-weight: 600;
  position: absolute;
  bottom: 1.8em;
  right: 1.8em;
}
.footer .contact a.email {
  opacity: 0.75;
  text-transform: uppercase;
  font-size: 1em;
  letter-spacing: 0.25em;
}
.footer .contact a.email:hover {
  opacity: 1;
  text-decoration: none;
}

.footer.transition .btn-social-icon {
  -moz-transition: color 1.25s ease-in, border-color 1.25s ease-in;
  -o-transition: color 1.25s ease-in, border-color 1.25s ease-in;
  -webkit-transition: color 1.25s ease-in, border-color 1.25s ease-in;
  transition: color 1.25s ease-in, border-color 1.25s ease-in;
}

.content .footer .btn-social-icon {
  border-color: RGB(129, 0, 255);
  color: RGB(129, 0, 255);
}
.content .footer .btn-social-icon:hover {
  background-color: RGB(129, 0, 255);
  color: RGBA(255, 255, 255, 0.95);
}
.content .footer .btn-social-icon:first-child {
  border-right-color: RGB(129, 0, 255);
}
.content .footer .btn-social-icon:not(:first-child) {
  border-left-color: RGB(129, 0, 255);
}
.content .footer a.email {
  color: RGB(129, 0, 255);
}
.content .footer.color-in .btn-social-icon {
  border-color: RGBA(255, 255, 255, 0.95);
  color: RGBA(255, 255, 255, 0.95);
}
.content .footer.color-in .btn-social-icon:hover {
  background-color: RGBA(255, 255, 255, 0.95);
  color: RGB(129, 0, 255);
}
.content .footer.color-in .btn-social-icon:first-child {
  border-right-color: RGBA(255, 255, 255, 0.95);
}
.content .footer.color-in .btn-social-icon:not(:first-child) {
  border-left-color: RGBA(255, 255, 255, 0.95);
}
.content .footer.color-in a.email {
  color: RGBA(255, 255, 255, 0.95);
}

.footer .btn-social-icon {
  border-color: RGBA(255, 255, 255, 0.95);
  color: RGBA(255, 255, 255, 0.95);
}
.footer .btn-social-icon:hover {
  background-color: RGBA(255, 255, 255, 0.95);
  color: RGB(129, 0, 255);
}
.footer .btn-social-icon:first-child {
  border-right-color: RGBA(255, 255, 255, 0.95);
}
.footer .btn-social-icon:not(:first-child) {
  border-left-color: RGBA(255, 255, 255, 0.95);
}
.footer a.email {
  color: RGBA(255, 255, 255, 0.95);
}
.footer.color-in .btn-social-icon {
  border-color: RGB(129, 0, 255);
  color: RGB(129, 0, 255);
}
.footer.color-in .btn-social-icon:hover {
  background-color: RGB(129, 0, 255);
  color: RGBA(255, 255, 255, 0.95);
}
.footer.color-in .btn-social-icon:first-child {
  border-right-color: RGB(129, 0, 255);
}
.footer.color-in .btn-social-icon:not(:first-child) {
  border-left-color: RGB(129, 0, 255);
}
.footer.color-in a.email {
  color: RGB(129, 0, 255);
}

/* ------------------------------------------ */
/* Circle Arrows
/* ------------------------------------------ */
.circle-arrow-button {
  display: inline-block;
  vertical-align: middle;
}
.circle-arrow-button a {
  display: inline-block;
  border-radius: 50%;
}
.circle-arrow-button .right {
  display: inline-block;
  width: 26px;
  height: 26px;
  border: 2px solid RGB(39, 169, 235);
  border-radius: 50%;
}
.circle-arrow-button .right:after {
  content: '';
  display: inline-block;
  margin-top: 6px;
  margin-left: -2px;
  width: 10px;
  height: 10px;
  border-top: 2px solid RGB(39, 169, 235);
  border-right: 2px solid RGB(39, 169, 235);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* ------------------------------------------ */
/* Animations
/* ------------------------------------------ */
.shake {
  -moz-animation-duration: 400ms;
  -webkit-animation-duration: 400ms;
  animation-duration: 400ms;
  -moz-animation-fill-mode: both;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -moz-animation-timing-function: ease-in-out;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -moz-animation-name: shake;
  -webkit-animation-name: shake;
  animation-name: shake;
}

.input__label--foldie.shake::before {
  -moz-animation-duration: 400ms;
  -webkit-animation-duration: 400ms;
  animation-duration: 400ms;
  -moz-animation-fill-mode: both;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -moz-animation-timing-function: ease-in-out;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -moz-animation-name: shake;
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-moz-keyframes shake {
  0% {
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
  12.5% {
    -moz-transform: translateX(-6px) rotateY(-5deg);
    transform: translateX(-6px) rotateY(-5deg);
  }
  37.5% {
    -moz-transform: translateX(5px) rotateY(4deg);
    transform: translateX(5px) rotateY(4deg);
  }
  62.5% {
    -moz-transform: translateX(-3px) rotateY(-2deg);
    transform: translateX(-3px) rotateY(-2deg);
  }
  87.5% {
    -moz-transform: translateX(2px) rotateY(1deg);
    transform: translateX(2px) rotateY(1deg);
  }
  100% {
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes shake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  12.5% {
    -webkit-transform: translateX(-6px) rotateY(-5deg);
    transform: translateX(-6px) rotateY(-5deg);
  }
  37.5% {
    -webkit-transform: translateX(5px) rotateY(4deg);
    transform: translateX(5px) rotateY(4deg);
  }
  62.5% {
    -webkit-transform: translateX(-3px) rotateY(-2deg);
    transform: translateX(-3px) rotateY(-2deg);
  }
  87.5% {
    -webkit-transform: translateX(2px) rotateY(1deg);
    transform: translateX(2px) rotateY(1deg);
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@keyframes shake {
  0% {
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  12.5% {
    -moz-transform: translateX(-6px) rotateY(-5deg);
    -ms-transform: translateX(-6px) rotateY(-5deg);
    -webkit-transform: translateX(-6px) rotateY(-5deg);
    transform: translateX(-6px) rotateY(-5deg);
  }
  37.5% {
    -moz-transform: translateX(5px) rotateY(4deg);
    -ms-transform: translateX(5px) rotateY(4deg);
    -webkit-transform: translateX(5px) rotateY(4deg);
    transform: translateX(5px) rotateY(4deg);
  }
  62.5% {
    -moz-transform: translateX(-3px) rotateY(-2deg);
    -ms-transform: translateX(-3px) rotateY(-2deg);
    -webkit-transform: translateX(-3px) rotateY(-2deg);
    transform: translateX(-3px) rotateY(-2deg);
  }
  87.5% {
    -moz-transform: translateX(2px) rotateY(1deg);
    -ms-transform: translateX(2px) rotateY(1deg);
    -webkit-transform: translateX(2px) rotateY(1deg);
    transform: translateX(2px) rotateY(1deg);
  }
  100% {
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
/* ------------------------------------------ */
/* Media Queries
/* ------------------------------------------ */
@media only screen and (min-width: 0px) and (max-width: 568px) {
  .content svg.gravity-svg {
    width: 147.2px;
  }

  h3.byline {
    font-size: 0.8em;
    margin-top: 1em;
  }

  h4.byline {
    font-size: 0.65em;
  }

  .hero-container .gravity-svg.animated {
    -moz-transition: 1.5s, ease-out;
    -o-transition: 1.5s, ease-out;
    -webkit-transition: 1.5s, ease-out;
    transition: 1.5s, ease-out;
    margin-top: -65px;
  }
  .hero-container .gravity-svg.animated.animate {
    margin-top: -165px;
  }
  .hero-container .input__label--foldie {
    top: 50%;
  }

  .email-form-container {
    top: 50%;
  }
}
@media only screen and (min-width: 0px) and (max-width: 840px) {
  .tick-marks {
    display: none;
  }
}
