html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

body, html {
  margin: 0px;
  padding: 0px;
  height: 100%;
  min-height: 100%;
  background-color: #000;
  font-family: Rubik, Arial, Helvetica, Sans-Serif;
  font-weight: 300;
  font-size: 14px;
  line-height: 16px;
  letter-spacing: 0.5px;
}

body {
  position: relative;
}

strong {
  font-weight: 500;
}

* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
}

::-webkit-selection {
  background: black;
  color: #fff;
  text-shadow: none;
}

::-moz-selection {
  background: black;
  color: #fff;
  text-shadow: none;
}

::selection {
  background: black;
  color: #fff;
  text-shadow: none;
}

.hidden {
  display: none;
}

#world {
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

#instructions {
  position: absolute;
  z-index: 100;
  bottom: 0px;
  right: 0px;
}

.icon_infos {
  display: inline-block;
  position: absolute;
  bottom: 20px;
  right: 20px;
  border-radius: 16px;
  background-color: rgba(0, 22, 29, 0.75);
  -webkit-transition: opacity ease-out;
  -webkit-transition-delay: 0.2s;
  -moz-transition: opacity ease-out 0.2s;
  -o-transition: opacity ease-out 0.2s;
  transition: opacity ease-out 0.2s;
}
.icon_infos img {
  vertical-align: text-bottom;
}
.icon_infos:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
  opacity: 0.5;
  background-color: transparent;
}
.icon_infos:focus {
  outline: 0px;
}

.instruction {
  position: relative;
  pointer-events: none;
  display: block;
  height: 0px;
  width: 0px;
  font-size: 0px;
  overflow: hidden;
  padding: 0px;
  margin-bottom: 20px;
  margin-right: 20px;
  background-color: rgba(0, 22, 29, 0.75);
  color: #1493b8;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity ease-out;
  -webkit-transition-delay: 0.5s;
  -moz-transition: opacity ease-out 0.5s;
  -o-transition: opacity ease-out 0.5s;
  transition: opacity ease-out 0.5s;
}

.open-instructions {
  margin-bottom: 72px;
}

#instructions.active .instruction {
  width: auto;
  height: auto;
  overflow: auto;
  padding: 10px;
  font-size: inherit;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}
