/* GLOBAL
-------------------------------------------------- */

html, body, #Site {
  height: 100%; width: 100%; margin: 0;
  font-family: "ProximaNova-Regular", Helvetica, Arial, sans-serif;
  font-size: 1em;
  color: rgba(255, 255, 255, 0.75);
  overflow: hidden;
}
html:hover, body:hover, #Site:hover {
  /*color: rgba(0, 0, 0, .75);*/
}
#Site {
  height: 100vh; width: 100vw;
}


/* Browsers
-------------------------------------------------- */

a,
a:hover,
a:focus {
  text-decoration: none;
  outline: none;
  color: rgba(42, 42, 42, 0.93);
}
a:hover,
a:focus {
  color: rgba(42, 42, 42, 0.42);
}

/* Hide Dotted Outline on Firefox */
*:focus { outline: 0px none transparent; }
:focus { outline:none; }
::-moz-focus-inner { border:0; padding:0; }

textarea,
textarea:hover,
textarea:focus,
textarea:active {
  resize: none;
  outline: none;
  /*border: none;*/
  border: 1px solid rgba(100, 100, 100, 0.5);
  padding: 10px;
  padding-top: 18px;
  padding-bottom: 18px;
  overflow: auto;
  overflow-x: hidden; /* for Firefox (autosize) */
  /*min-height: 70px;*/
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}


/* iOS
-------------------------------------------------- */

input {
  padding: 0px;
}


/* Form-Format
-------------------------------------------------- */

.Form-Format {
  width: auto;
  font-size: 0.93em;
  letter-spacing: 0.08em;
  line-height: 1.42;
  background-color: transparent;
  background-image: none;
  /*background: rgba(255, 255, 255, .75);*/
  border: none;
  /*border: 1px solid rgba(100, 100, 100, 0.5);*/
  border-radius: 0px;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
          transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.Form-Format { /* Safari-only solution */
  (;line-height: 2.02;);
} /* Safari-only solution */
.Form-Format:hover,
.Form-Format:focus {
  border: none;
}


/* Utility
-------------------------------------------------- */

.Readonly-Text {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}


/* Site
-------------------------------------------------- */

.Site {
  height: 100%; width: 100%;
  overflow: hidden;
}
@media (max-height: 599px) and (max-width: 849px) {
} /* max-height: 599px and max-width: 849px */

#LightSpeed {
  height: 100vh; width: 100vw;
  position: fixed; top: 0;
  /*position: relative;*/
  width: 100%;
  z-index: -1;
}

#Gallactic {
  height: 100vh; width: 100vw;
  position: absolute; top: 0;
  background: url("../images/space.png") center center repeat;
  z-index: -9999;
}


/* .Contact
-------------------------------------------------- */

.Contact {
  height: 100vh; width: 100vw;
  position: relative;
  z-index: 3;
}

  .Contact-Form {
    width: 100%;
    position: relative;
    z-index: 1000;
  /* center vertically */
    position: relative; top: 44%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  }
    .Contact-Form-Field,
    .Contact-Form-Btn {
      height: 70px; width: 300px;
      margin: 0 auto;
      margin-bottom: 30px;
      border-bottom: 1px solid rgba(255, 255, 255, .35);
    }
    @media (min-width: 425px) {
      .Contact-Form-Field,
      .Contact-Form-Btn {
        height: 70px; width: 400px;
      } /* .Contact-Form-Field, .Contact-Form-Btn */
    } /* min-width: 425px */
    @media (min-width: 525px) {
      .Contact-Form-Field,
      .Contact-Form-Btn {
        height: 70px; width: 500px;
      } /* .Contact-Form-Field, .Contact-Form-Btn */
    } /* min-width: 525px */
    .Contact-Form-Btn {
      margin-top: 56px;
      border: 3px solid rgba(255, 255, 255, .5);
      cursor: pointer;
    }
    .Contact-Form-Btn:focus,
    .Contact-Form-Btn:hover {
      background: rgba(255, 255, 255, 0.1);
    }
    .Contact-Form-Btn.Deactivated,
    .Contact-Form-Btn.Deactivated:focus,
    .Contact-Form-Btn.Deactivated:hover {
      background: rgba(255, 255, 255, 0);
      border: 3px solid rgba(255, 255, 255, .25);
      cursor: none;
    }
      .Contact-Form-Field-Input,
      .Contact-Form-Btn-Text {
        height: 100%; width: calc(100% - 20px);
        padding-left: 10px;
        padding-right: 10px;
        font-family: "AvenirNext-Regular";
        font-size: 22px;
        text-align: center;
        color: rgba(255, 255, 255, 0.84);
      }
      .Contact-Form-Field-Input {
        padding-top: 12px;
      }
      .Contact-Form-Btn-Text {
        height: auto;
        margin-top: 21.5px;
        font-family: "ProximaNova-Regular";
        font-size: 25px;
        font-variant: small-caps;
        letter-spacing: 0.12em;
      }
      .Contact-Form-Btn.Deactivated > .Contact-Form-Btn-Text,
      .Contact-Form-Btn.Deactivated:focus > .Contact-Form-Btn-Text,
      .Contact-Form-Btn.Deactivated:hover > .Contact-Form-Btn-Text {
        color: rgba(255, 255, 255, 0.42);
      }
    .Contact-Notification {
      height: 30px; width: 250px;
      margin: 0 auto;
      margin-top: 30px;
      border: 1px solid rgba(255, 255, 255, .2);
    }
    @media (min-width: 425px) {
      .Contact-Notification {
        height: 30px; width: 350px;
      } /* .Contact-Notification */
    } /* min-width: 425px */
      .Contact-Notification-Text {
        margin-top: 8px;
        font-family: "ProximaNova-Regular";
        font-size: 14px;
        letter-spacing: 0.2em;
        text-align: center;
        color: rgba(255, 255, 255, 0.65);
      }


/* placeholders
-------------------------------------------------- */

::-webkit-input-placeholder {
  text-align: center;
  color: rgba(255, 255, 255, 0.7);
}
:-moz-placeholder {
  text-align: center;
  color: rgba(255, 255, 255, 0.7);
}
::-moz-placeholder {
  text-align: center;
  color: rgba(255, 255, 255, 0.7);
}
:-ms-input-placeholder {
  text-align: center;
  color: rgba(255, 255, 255, 0.7);
}


/* Typography
-------------------------------------------------- */

/* AvenirNext-Regular */
@font-face {
  font-family: "AvenirNext-Regular";
  src: url("../fonts/AvenirNext/AvenirNext-Regular.eot");
  src: local("☺"),
      url("../fonts/AvenirNext/AvenirNext-Regular.woff") format("woff"),
      url("../fonts/AvenirNext/AvenirNext-Regular.ttf") format("truetype"),
      url("../fonts/AvenirNext/AvenirNext-Regular.svg") format("svg");
}

/* ProximaNova-Regular */
@font-face {
  font-family: "ProximaNova-Regular";
  src: url("../fonts/ProximaNova/ProximaNova-Regular.eot");
  src: local("☺"),
      url("../fonts/ProximaNova/ProximaNova-Regular.woff") format("woff"),
      url("../fonts/ProximaNova/ProximaNova-Regular.ttf") format("truetype"),
      url("../fonts/ProximaNova/ProximaNova-Regular.svg") format("svg");
}


/* Animations
-------------------------------------------------- */

  /* enter
  -------------------------------------------------- */

  .enter {
    animation-name: enter;
    -webkit-animation-name: enter;

    animation-duration: 2s;
    -webkit-animation-duration: 2s;

    animation-timing-function: ease-in-out;
    -webkit-animation-timing-function: ease-in-out;

    visibility: visible !important;
  }

  @keyframes enter {
    0% {
      opacity: 0.0;
    }
    22% {
      opacity: 0.0;
    }
    100% {
      opacity: 1;
    }
  }

  @-webkit-keyframes enter {
    0% {
      opacity: 0.0;
    }
    22% {
      opacity: 0.0;
    }
    100% {
      opacity: 1;
    }
  }

  /* evolveIn
  -------------------------------------------------- */

  .evolveIn {
    animation-name: evolveIn;
    -webkit-animation-name: evolveIn;

    animation-duration: .75s;
    -webkit-animation-duration: .75s;

    animation-timing-function: ease-in-out;
    -webkit-animation-timing-function: ease-in-out;

    visibility: visible !important;
  }

  @keyframes evolveIn {
    0% {
      opacity: 0.0;
    }
    100% {
      opacity: 1;
    }
  }

  @-webkit-keyframes evolveIn {
    0% {
      opacity: 0.0;
    }
    100% {
      opacity: 1;
    }
  }

  /* shake
  -------------------------------------------------- */

  .shake {
    animation-name: shake;
    -webkit-animation-name: shake;

    animation-duration: 0.3s;
    -webkit-animation-duration: 0.3s;

    transform-origin: 50% 50%;
    -webkit-transform-origin: 50% 50%;

    animation-iteration-count: 2;
    -webkit-animation-iteration-count: 2;

    animation-timing-function: linear;
    -webkit-animation-timing-function: linear;
  }

  @keyframes shake {
    0% { 
      transform: scale(1);
    }
    50% {
      transform: scale(0.9);
    }
    100% {
      transform: scale(1);
    }
  }

  @-webkit-keyframes shake {
    0% { 
      -webkit-transform: scale(1);
    }
    50% {
      -webkit-transform: scale(0.9);
    }
    100% {
      -webkit-transform: scale(1);
    }
  }

  /* zoomIn
  -------------------------------------------------- */
  .zoomIn {
    animation-name: zoomIn;
    -webkit-animation-name: zoomIn;

    animation-duration: .55s;
    -webkit-animation-duration: .55s;

    animation-timing-function: ease-in-out;
    -webkit-animation-timing-function: ease-in-out;

    visibility: visible !important;
  }

  @keyframes zoomIn {
    0% {
      transform: scale(1);
      opacity: 1;
    }
    100% {
      transform: scale(0);
      opacity: 0.0;
    }
  }

  @-webkit-keyframes zoomIn {
    0% {
      -webkit-transform: scale(1);
      opacity: 1;
    }
    100% {
      -webkit-transform: scale(0);
      opacity: 0.0;
    }
  }