html, body, div, h1, p, ol, ul, li, footer, header {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 12pt;
  font: inherit;
  vertical-align: baseline; }

/* Basic */
@-ms-viewport {
  width: device-width; }

body {
  -ms-overflow-style: scrollbar; }

@media screen and (max-width: 480px) {
  html, body {
    min-width: 320px; } }

html {
  box-sizing: border-box; }

*, *:before, *:after {
  box-sizing: inherit; }

html, body {
  height: 100%;
  overflow-x: hidden;
  width: 100%; }
  @media screen and (max-height: 640px) {
    html, body {
      height: auto;
      min-height: 100%; } }

body {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -moz-justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  background-color: #000;
  padding: 6em 4em 4em 4em; }
  body.is-preload *, body.is-preload *:before, body.is-preload *:after {
    -moz-animation: none !important;
    -webkit-animation: none !important;
    -ms-animation: none !important;
    animation: none !important;
    -moz-transition: none !important;
    -webkit-transition: none !important;
    -ms-transition: none !important;
    transition: none !important; }
  body > * {
    position: relative;
    z-index: 2; }
  @media screen and (max-width: 1680px) {
    body {
      padding: 6em 3.5em 1em 3.5em; } }
  @media screen and (max-width: 736px) {
    body {
      padding: 5em 2em 1em 2em; } }
  @media screen and (max-width: 360px) {
    body {
      padding: 5em 1.25em 1em 1.25em; } }

/* Type */
body {
  color: rgba(255, 255, 255, 0.75);
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  letter-spacing: 0em;
  line-height: 1.5em; }

h1, a{
  color: inherit;
  text-decoration: none; }

a {
  -moz-transition: border-bottom-color 0.2s ease, color 0.2s ease;
  -webkit-transition: border-bottom-color 0.2s ease, color 0.2s ease;
  -ms-transition: border-bottom-color 0.2s ease, color 0.2s ease;
  transition: border-bottom-color 0.2s ease, color 0.2s ease;
  border-bottom: dotted 0px rgba(255, 255, 255, 0.25);
  color: #ffffff;
  text-decoration: none; }
  a:hover {
    border-bottom-color: transparent;
    color: #ffffff !important;
    text-decoration: none; }

/* Header */
#header {
  position: fixed;
  text-align: left;
  top: 1.25em;
  left: 1.25em;
  vertical-align: top;
  width: 100%;
}

#header svg {
  height: 4em;
  margin: 0 0 4.5em 0;}

#header h1 {
  font-size: 2em;
  margin: 0 0 1em 0; }

#header p {
  font-size: 1.2em;
  margin: 0 0 0.5em 0; }

#header a {
  color: inherit; }

/* Footer */
#footer {
  -moz-transition: opacity 0.5s ease-in-out;
  -webkit-transition: opacity 0.5s ease-in-out;
  -ms-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.5em;
  opacity: 1;
  bottom: 2em;
  left: 2.5em;
  position: fixed; 
}
#footer:hover {
  opacity: 1; }

ul {
  list-style: disc;
  margin: 0 0 -0.5em 0;
  padding-left: 1em; }

  #footer .links {
    list-style: none;
    padding: 0; }
    #footer .links li {
      display:inline-block;
      line-height: 1em;
      margin: 0 0 0 0;
      border: 0 0 0 0;
      padding: 0 0 0 0.75em; }
      #footer .links li:first-child {
        border-left: 0;
        margin-left: 0;
        padding-left: 0; }
    #footer .links a {
      color: inherit; }

  #footer .copyright {
    list-style: none;
    padding: 0; }
    #footer .copyright li {
      display: inline-block;
      line-height: 0;
      margin: 0 0 0 0;
      border: 0 0 0 0 ;
      padding: 0 0 0 0.5em; }
      #footer .copyright li:first-child {
        border-left: 0;
        margin-left: 0;
        padding-left: 0; }
    #footer .copyright a {
      color: rgba(255, 255, 255, 0.5) !important;}

/* BG */
#bg {
  -moz-transition: opacity 2s ease-in-out;
  -webkit-transition: opacity 2s ease-in-out;
  -ms-transition: opacity 2s ease-in-out;
  transition: opacity 2s ease-in-out;
  height: 100%;
  left: 0;
  opacity: 0.4;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1; }
  #bg div {
    -moz-transition: opacity 3s ease;
    -webkit-transition: opacity 3s ease;
    -ms-transition: opacity 3s ease;
    transition: opacity 3s ease;
    background-size: cover;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    visibility: hidden;
    width: 150%; }
    #bg div.visible {
      -moz-animation: bg 45s linear infinite;
      -webkit-animation: bg 45s linear infinite;
      -ms-animation: bg 45s linear infinite;
      animation: bg 45s linear infinite;
      opacity: 1;
      visibility: visible;
      z-index: 1; }
      #bg div.visible.top {
        z-index: 2; }
      @media screen and (max-width: 1280px) {
        #bg div.visible {
          -moz-animation: bg 29.25s linear infinite;
          -webkit-animation: bg 29.25s linear infinite;
          -ms-animation: bg 29.25s linear infinite;
          animation: bg 29.25s linear infinite; } }
      @media screen and (max-width: 736px) {
        #bg div.visible {
          -moz-animation: bg 18s linear infinite;
          -webkit-animation: bg 18s linear infinite;
          -ms-animation: bg 18s linear infinite;
          animation: bg 18s linear infinite; } }
    #bg div:only-child {
      -moz-animation-direction: alternate !important;
      -webkit-animation-direction: alternate !important;
      -ms-animation-direction: alternate !important;
      animation-direction: alternate !important; }
  body.is-preload #bg {
    opacity: 0; }

@-moz-keyframes bg {
  0% {
    -moz-transform: translateX(0);
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }
  100% {
    -moz-transform: translateX(-25%);
    -webkit-transform: translateX(-25%);
    -ms-transform: translateX(-25%);
    transform: translateX(-25%); } }

@-webkit-keyframes bg {
  0% {
    -moz-transform: translateX(0);
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }
  100% {
    -moz-transform: translateX(-25%);
    -webkit-transform: translateX(-25%);
    -ms-transform: translateX(-25%);
    transform: translateX(-25%); } }

@-ms-keyframes bg {
  0% {
    -moz-transform: translateX(0);
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }
  100% {
    -moz-transform: translateX(-25%);
    -webkit-transform: translateX(-25%);
    -ms-transform: translateX(-25%);
    transform: translateX(-25%); } }

@keyframes bg {
  0% {
    -moz-transform: translateX(0);
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }
  100% {
    -moz-transform: translateX(-25%);
    -webkit-transform: translateX(-25%);
    -ms-transform: translateX(-25%);
    transform: translateX(-25%); } }