/* BASE GRID
 * ------------------------------------------------ */
.container {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 0; }
  .container .column,
  .container .columns {
    float: left;
    display: inline; }
    .container .column.alpha,
    .container .columns.alpha {
      margin-left: 0; }
    .container .column.omega,
    .container .columns.omega {
      margin-right: 0; }

.row {
  margin-bottom: 20px; }

/* Overrides */
.container .column,
.container .columns {
  margin-left: 0%;
  margin-right: 0%; }

.container .one.column,
.container .one.columns {
  width: 8.33333%; }

.container .two.columns {
  width: 16.66667%; }

.container .three.columns {
  width: 25%; }

.container .four.columns {
  width: 33.33333%; }

.container .five.columns {
  width: 41.66667%; }

.container .six.columns {
  width: 50%; }

.container .seven.columns {
  width: 58.33333%; }

.container .eight.columns {
  width: 66.66667%; }

.container .nine.columns {
  width: 75%; }

.container .ten.columns {
  width: 83.33333%; }

.container .eleven.columns {
  width: 91.66667%; }

.container .twelve.columns {
  width: 100%; }

.container .columns.one-third, .container .column.one-third {
  width: 30.66667%; }

.container .columns.two-thirds, .container .column.two-third {
  width: 63.33333%; }

.container .offset-by-one {
  margin-left: 6.33333%; }

.container .offset-by-two {
  margin-left: 14.66667%; }

.container .offset-by-three {
  margin-left: 23%; }

.container .offset-by-four {
  margin-left: 31.33333%; }

.container .offset-by-five {
  margin-left: 39.66667%; }

.container .offset-by-six {
  margin-left: 48%; }

.container .offset-by-seven {
  margin-left: 56.33333%; }

.container .offset-by-eight {
  margin-left: 64.66667%; }

.container .offset-by-nine {
  margin-left: 73%; }

.container .offset-by-ten {
  margin-left: 81.33333%; }

.container .offset-by-eleven {
  margin-left: 89.66667%; }

/* CLEARING
 * ------------------------------------------------ */
.container:after {
  content: "\0020";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

.group, .clearfix, .row {
  zoom: 1; }
  .group:before, .group:after, .clearfix:before, .clearfix:after, .row:before, .row:after {
    content: "\0020";
    display: block;
    overflow: hidden;
    visibility: hidden;
    width: 0;
    height: 0; }
  .group:after, .clearfix:after, .row:after {
    clear: both; }

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0; }

.inlineBlock {
  display: inline-block; }

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-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

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

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

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

/* BASIC STYLES
 * ------------------------------------------------ */
body, html {
  width: 100%;
  height: 100%;
  padding: 0px;
  margin: 0px; }

body {
  background: #fff;
  font-size: 16px;
  font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
  line-height: 24px;
  color: #232323;
  -webkit-font-smoothing: antialiased;
  /* Fix for webkit rendering */
  -webkit-text-size-adjust: 100%; }

/* TYPOGRAPHY
 * ------------------------------------------------ */
h1, h2, h3, h4, h5, h6 {
  color: #232323;
  font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal; }
  h1.black, h2.black, h3.black, h4.black, h5.black, h6.black {
    color: #2c2c2c; }

h1 a, h2 a, h3 a,
h4 a, h5 a, h6 a {
  font-weight: inherit; }

h1 {
  font-size: 47px;
  line-height: 53px;
  margin-bottom: 13px; }

h2 {
  font-size: 41px;
  line-height: 47px;
  margin-bottom: 11px; }

h3 {
  font-size: 29px;
  line-height: 40px;
  margin-bottom: 5px; }

h4 {
  font-size: 23px;
  line-height: 32px;
  margin-bottom: 5px; }

h5 {
  font-size: 19px;
  line-height: 28px; }

h6 {
  font-size: 16px;
  line-height: 24px; }

.subheader {
  color: #777; }

p {
  margin: 0 0 20px 0; }
  p img {
    margin: 0; }
  p.lead {
    font-size: 28px;
    line-height: 36px;
    color: #777; }

em, i {
  font-style: italic; }

strong, b {
  /* font-weight: bold; */
  font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #3E5EFF; }

u {
  text-decoration: underline; }

small {
  font-size: 80%; }

/*  Blockquotes  */
blockquote, blockquote p {
  font-size: 23px;
  line-height: 32px;
  color: #777;
  font-style: italic; }

blockquote {
  margin: 0 0 20px;
  padding: 9px 20px 0 19px;
  border-left: 1px solid #ddd; }

blockquote cite {
  display: block;
  font-size: 16px;
  color: #555; }
  blockquote cite:before {
    content: "\2014 \0020"; }
  blockquote cite a, blockquote cite a:visited {
    color: #555; }

hr {
  border-style: solid;
  border-color: #ddd;
  border-width: 1px 0 0;
  clear: both;
  margin: 10px 0 30px;
  height: 0; }

/* LINKS
 * ------------------------------------------------ */
a, a:visited {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  color: #FFF;
  text-decoration: none;
  outline: 0; }

a:hover, a:focus, a:active {
  color: #3E5EFF; }
  a:hover.brand1, a:focus.brand1, a:active.brand1 {
    color: #3E5EFF; }
  a:hover.brand2, a:focus.brand2, a:active.brand2 {
    color: #a8a9ad; }
  a:hover.brand3, a:focus.brand3, a:active.brand3 {
    color: #3E5EFF; }

p a, p a:visited {
  line-height: inherit; }

/* LISTS
 * ------------------------------------------------ */
ul,
ol {
  margin-bottom: 20px;
  margin-top: 30px; }

ul {
  list-style: none outside; }

ol {
  list-style: decimal; }

ol, ul.square,
ul.circle, ul.disc {
  margin-left: 30px; }

ul.square {
  list-style: square outside; }

ul.circle {
  list-style: circle outside; }

ul.disc {
  list-style: disc outside; }

ul ul, ul ol,
ol ol, ol ul {
  margin-top: 4px;
  margin-right: 0;
  margin-bottom: 5px;
  margin-left: 30px;
  font-size: 90%; }

ul ul li, ul ol li,
ol ol li, ol ul li {
  margin-bottom: 6px; }

li {
  line-height: 18px;
  margin-bottom: 8px; }

ul.large li {
  line-height: 21px; }

li p {
  line-height: 21px; }

/* IMAGES
 * ------------------------------------------------ */
img.scale-with-grid {
  max-width: 100%;
  height: auto; }

/* BUTTONS
 * ------------------------------------------------ */
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
  border: none;
  text-decoration: none;
  cursor: pointer;
  font-size: 14px; }
  .button.full-width,
  button.full-width,
  input[type="submit"].full-width,
  input[type="reset"].full-width,
  input[type="button"].full-width {
    width: 100%;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center; }
  .button.smaller,
  button.smaller,
  input[type="submit"].smaller,
  input[type="reset"].smaller,
  input[type="button"].smaller {
    font-size: 14px;
    padding: 4px 5px; }
  .button.larger,
  button.larger,
  input[type="submit"].larger,
  input[type="reset"].larger,
  input[type="button"].larger {
    font-size: 18px;
    padding: 10px 18px; }
  .button:focus,
  button:focus,
  input[type="submit"]:focus,
  input[type="reset"]:focus,
  input[type="button"]:focus {
    outline: 0; }

/* Fix for odd Mozilla border & padding issues */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/* FORMS
 * ------------------------------------------------ */
form {
  margin-bottom: 20px; }

fieldset {
  margin-bottom: 20px; }

input[type="text"],
input[type="password"],
input[type="email"],
input[type="search"],
input[type="url"],
input[type="tel"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="number"],
textarea,
select {
  background: #fff;
  border: 1px solid #ccc;
  padding: 6px 4px;
  outline: none;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  border-radius: 2px;
  font-size: 17px;
  font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #777;
  margin: 0 0 20px;
  width: 210px;
  max-width: 100%;
  display: block; }
  input[type="text"]:hover, input[type="text"]:focus,
  input[type="password"]:hover,
  input[type="password"]:focus,
  input[type="email"]:hover,
  input[type="email"]:focus,
  input[type="search"]:hover,
  input[type="search"]:focus,
  input[type="url"]:hover,
  input[type="url"]:focus,
  input[type="tel"]:hover,
  input[type="tel"]:focus,
  input[type="date"]:hover,
  input[type="date"]:focus,
  input[type="datetime"]:hover,
  input[type="datetime"]:focus,
  input[type="datetime-local"]:hover,
  input[type="datetime-local"]:focus,
  input[type="month"]:hover,
  input[type="month"]:focus,
  input[type="week"]:hover,
  input[type="week"]:focus,
  input[type="time"]:hover,
  input[type="time"]:focus,
  input[type="number"]:hover,
  input[type="number"]:focus,
  textarea:hover,
  textarea:focus,
  select:hover,
  select:focus {
    border: 1px solid #aaa;
    color: #444;
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); }
  input[type="text"]:active,
  input[type="password"]:active,
  input[type="email"]:active,
  input[type="search"]:active,
  input[type="url"]:active,
  input[type="tel"]:active,
  input[type="date"]:active,
  input[type="datetime"]:active,
  input[type="datetime-local"]:active,
  input[type="month"]:active,
  input[type="week"]:active,
  input[type="time"]:active,
  input[type="number"]:active,
  textarea:active,
  select:active {
    border: 1px solid #919191;
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
  input[type="text"].full-width,
  input[type="password"].full-width,
  input[type="email"].full-width,
  input[type="search"].full-width,
  input[type="url"].full-width,
  input[type="tel"].full-width,
  input[type="date"].full-width,
  input[type="datetime"].full-width,
  input[type="datetime-local"].full-width,
  input[type="month"].full-width,
  input[type="week"].full-width,
  input[type="time"].full-width,
  input[type="number"].full-width,
  textarea.full-width,
  select.full-width {
    width: 100%; }

select {
  padding: 0; }

textarea {
  min-height: 60px; }

label,
legend {
  display: block;
  font-size: 16px;
  font-weight: normal;
  font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif; }

select {
  width: 220px; }

input[type="checkbox"] {
  display: inline; }

label span,
legend span {
  font-size: 17px;
  font-weight: normal;
  color: #444; }

/* MISC
 * ------------------------------------------------ */
.subtract-bottom {
  margin-bottom: -20px !important; }

.remove-bottom {
  margin-bottom: 0 !important; }

.half-bottom {
  margin-bottom: 10px !important; }

.add-bottom {
  margin-bottom: 20px !important; }

.center-horizontal-vertical {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }

.center-vertical {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }

.toRight {
  float: right; }

.toLeft {
  float: left; }

.toCenter {
  width: 100%;
  text-align: center; }

.toUpper {
  text-transform: uppercase; }

.toLower {
  text-transform: lowercase; }

.width-eightforty {
  margin: 0 auto;
  max-width: 840px; }

.thin {
  font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif; }

.thick {
  font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif; }

.greasy {
  font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif; }

p.white {
  color: white; }

p.dark {
  color: #2c2c2c; }

button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
  padding-top: 0.7em;
  padding-bottom: 0.7em; }

.button {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transition-property: color, background-color, border;
  -o-transition-property: color, background-color, border;
  transition-property: color, background-color, border;
  display: inline-block;
  margin: 0.4em 0;
  padding: 0.8em 1.2em;
  font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  color: #efefef;
  border: 2px solid #efefef; }
  .button.disabled {
    cursor: default;
    background-color: #d0d0d0; }
    .button.disabled:hover {
      background-color: #d0d0d0; }
  .button--circle {
    border-radius: 50%; }
  .button--rounded {
    border-radius: 1em; }
  .button--full {
    width: 100%; }
  .button:hover {
    background-color: #3E5EFF;
    border-color: #3E5EFF;
    color: white; }
  .button--brand1 {
    border: 2px solid #3E5EFF;
    color: #3E5EFF; }
    .button--brand1:hover {
      background-color: #3E5EFF;
      border-color: #3E5EFF;
      color: white; }
    .button--brand1.selected {
      background-color: #3E5EFF; }
  .button--brand2 {
    border: 2px solid #a8a9ad;
    color: #a8a9ad; }
    .button--brand2:hover {
      background-color: #a8a9ad;
      border-color: #a8a9ad;
      color: white; }
    .button--brand2.selected {
      background-color: #a8a9ad; }
  .button--brand3 {
    border: 2px solid #3E5EFF;
    color: #3E5EFF; }
    .button--brand3:hover {
      background-color: #3E5EFF;
      border-color: #3E5EFF;
      color: white; }
    .button--brand3.selected {
      background-color: #3E5EFF; }
  .button--outline-brand1:hover {
    background-color: #3E5EFF;
    border-color: #3E5EFF;
    color: white; }
  .button--outline-brand1.selected {
    background-color: #3E5EFF; }
  .button--outline-brand2:hover {
    background-color: #a8a9ad;
    border-color: #a8a9ad;
    color: white; }
  .button--outline-brand2.selected {
    background-color: #a8a9ad; }
  .button--outline-brand3:hover {
    background-color: #3E5EFF;
    border-color: #3E5EFF;
    color: white; }
  .button--outline-brand3.selected {
    background-color: #3E5EFF; }

.highlight {
  background-color: #ff744f; }

.brand1 {
  color: #3E5EFF; }

.brand2 {
  color: #a8a9ad; }

.brand3 {
  color: #3E5EFF; }

.white {
  color: white; }

.black {
  color: black; }

.BGbrand1 {
  background-color: #3E5EFF; }
  .BGbrand1.active:hover {
    background-color: #7189ff; }

.BGbrand2 {
  background-color: #a8a9ad; }
  .BGbrand2.active:hover {
    background-color: #c2c3c6; }

.BGbrand3 {
  background-color: #3E5EFF; }
  .BGbrand3.active:hover {
    background-color: #7189ff; }

.mobile-header-menu {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #2c2c2c;
  text-align: center;
  margin: 0;
  z-index: 500; }
  .mobile-header-menu ul {
    margin-top: 6em; }
    .mobile-header-menu ul li {
      font-size: 1.5em;
      line-height: 1.5em; }
  .mobile-header-menu .menu-lang {
    position: absolute;
    top: 20px;
    right: 75px;
    font-size: 1em; }
    .mobile-header-menu .menu-lang a {
      color: #efefef;
      border-top: none;
      padding: 0.25em 0.4em;
      background-color: #5f5f5f; }
    .mobile-header-menu .menu-lang a:hover {
      background-color: #3E5EFF; }
  .mobile-header-menu .menu-close {
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: absolute;
    top: 12px;
    right: 10px;
    color: #efefef;
    width: 40px;
    height: 40px;
    line-height: 38px;
    font-size: 25px;
    cursor: pointer;
    color: #efefef; }
  .mobile-header-menu .menu-close:hover {
    color: #3E5EFF; }

.header {
  position: relative;
  overflow: hidden;
  background-color: #fff; }
  .header nav {
    background-color: #fff;
    position: relative;
    font-size: 1.25em; }
  .header .header-menu ul {
    float: right;
    margin-right: 25px; }
  .header .header-menu .menu-dot {
    position: relative;
    top: 1px;
    font-size: 1em;
    font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif; }
  .header .header-menu .menu-link {
    -webkit-transition: 0.1s ease all;
    -o-transition: 0.1s ease all;
    transition: 0.1s ease all;
    cursor: pointer;
    font-size: 0.7em;
    font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
    text-transform: uppercase; }
  .header .header-menu .menu-link:hover {
    color: #3E5EFF; }
  .header .mobile-header-hamburger ul {
    float: left;
    margin: 12px 0 0 25px;
    cursor: pointer; }
    .header .mobile-header-hamburger ul li {
      font-size: 2em;
      line-height: 1em;
      padding: 0;
      margin: 0; }
    .header .mobile-header-hamburger ul li:hover {
      color: #3E5EFF; }
  .header .lang-menu ul {
    float: right;
    margin-right: 20px; }
  .header .lang-menu li:first-child {
    margin-right: 1em; }
  .header .lang-menu li:first-child:after {
    content: '';
    border-right: 1px solid #cecece;
    position: absolute;
    top: -8px;
    left: 50px;
    height: 40px;
    width: 1px; }
  .header .lang-menu li:first-child:before {
    content: '';
    border-left: 1px solid #cecece;
    position: absolute;
    top: -8px;
    left: -10px;
    height: 40px;
    width: 1px; }
  .header ul {
    position: relative;
    margin-bottom: 15px;
    margin-top: 20px; }
  .header li {
    display: inline-block; }
  .header a {
    color: #2c2c2c;
    padding: 0 0.4em; }
  .header a:hover {
    color: #3E5EFF; }
  .header .logo {
    vertical-align: middle;
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: 10px; }
    .header .logo img {
      max-width: 100%;
      max-height: 150px;
      -moz-user-select: none;
      -webkit-user-select: none;
      -ms-user-select: none;
      user-select: none;
      -webkit-user-drag: none;
      user-drag: none; }
  .header .title {
    text-transform: uppercase; }
    .header .title--dashboard {
      float: left;
      padding-top: 45px;
      cursor: default; }
  .header .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    margin: 0 auto;
    z-index: 0; }
    .header .bg img {
      height: 100%;
      -moz-user-select: none;
      -webkit-user-select: none;
      -ms-user-select: none;
      user-select: none;
      -webkit-user-drag: none;
      user-drag: none; }

#lang {
  text-align: center;
  font-size: 18px; }
  #lang div, #lang a {
    color: #fff;
    display: inline-block;
    cursor: pointer; }
  #lang a {
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-align: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: none;
    line-height: 30px; }
  #lang a:hover, #lang .active {
    background-color: #3E5EFF; }

#hamburgerBtn {
  position: absolute;
  left: 0;
  z-index: 101; }

nav {
  height: 100%;
  width: 280px;
  background-color: #3a3a3a;
  left: 0;
  top: 0;
  z-index: 2;
  position: fixed;
  overflow-y: auto;
  overflow-x: visible;
  -webkit-transform: translate(-280px, 0);
  -ms-transform: translate(-280px, 0);
  transform: translate(-280px, 0); }

.ssm-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.2);
  display: none;
  z-index: 1; }

.is-navOpen {
  overflow: hidden; }

.nav_bouttons {
  left: 140px;
  text-align: center;
  padding: 1em;
  margin-top: 2em; }

.nav_bouttons div {
  padding: 0.5em;
  cursor: pointer;
  font-size: 1.5em;
  margin: 2px 0; }

.logoIcon {
  position: relative;
  margin-top: 100px;
  width: 100%;
  height: 150px;
  background: url("../textures/lion_icone.png") center center no-repeat;
  background-size: contain; }

#app-version {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #7b7b7b;
  font-size: 14px;
  padding: 0px 10px; }

html,
body {
  -ms-touch-action: none;
  touch-action: none;
  margin: 0;
  height: 100%;
  overflow: hidden;
  height: 100vh;
  background-color: black; }

input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

#app {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100vh;
  /* Fallback for browsers that do not support Custom Properties */
  height: calc(var(--vh, 1vh));
  min-height: auto; }

#coverlandscape {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  color: #efefef;
  background-color: #3E5EFF;
  display: none;
  z-index: 999;
  -ms-touch-action: none;
  touch-action: none;
  pointer-events: none; }
  #coverlandscape .icon {
    text-align: center;
    margin-top: 20vh; }
    #coverlandscape .icon svg {
      fill: #efefef;
      max-width: 200px;
      text-align: center;
      display: block;
      margin: 0 auto; }
  #coverlandscape .text {
    width: 100%;
    text-align: center;
    font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1.5em; }

.unsupported-browser {
  z-index: 501;
  display: none;
  background-color: #fff;
  pointer-events: none;
  font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif; }

#loader-container, #video-textures-container, #video-sequence-container, #tutorial, #interface, #startGame, .unsupported-browser {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

#loader-container {
  z-index: 500; }

#tutorial {
  z-index: 10;
  opacity: 0; }
  #tutorial .master {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 800px; }
    #tutorial .master .cache {
      width: 100%;
      border-radius: 28px;
      overflow: hidden;
      background-color: #3E5EFF; }
      #tutorial .master .cache .left-side, #tutorial .master .cache .right-side {
        display: inline-block;
        vertical-align: top; }
      #tutorial .master .cache .left-side {
        width: 35%;
        background-color: #3E5EFF; }
        #tutorial .master .cache .left-side .title {
          font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
          font-size: 1.8em;
          line-height: 1.15em;
          color: #efefef;
          background-color: #3E5EFF;
          padding: 12px 0;
          text-transform: uppercase;
          text-align: center; }
          #tutorial .master .cache .left-side .title span {
            font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
            font-size: 0.65em; }
        #tutorial .master .cache .left-side .logo {
          padding-top: 12px;
          text-align: center; }
          #tutorial .master .cache .left-side .logo svg {
            max-width: 200px;
            fill: #efefef; }
      #tutorial .master .cache .right-side {
        width: 65%; }
        #tutorial .master .cache .right-side .desc {
          font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
          font-size: 1.1em;
          color: #efefef;
          background-color: #2c2c2c;
          padding: 20px 40px;
          margin-top: -10px; }
        #tutorial .master .cache .right-side video {
          position: relative;
          top: -2px;
          width: 101%;
          -webkit-box-shadow: 0 0 50px 10px rgba(255, 255, 255, 0.1);
          box-shadow: 0 0 50px 10px rgba(255, 255, 255, 0.1); }
    #tutorial .master #tutorial-btn-container {
      width: 100%;
      text-align: center; }
      #tutorial .master #tutorial-btn-container .btn {
        position: relative;
        display: inline-block;
        -webkit-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        transition: all 0.5s ease;
        padding: 10px 20px;
        margin-top: 50px;
        font-size: 1.5em;
        font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
        color: #efefef;
        border: 4px solid #3E5EFF;
        border-radius: 28px;
        background-color: #000; }
        #tutorial .master #tutorial-btn-container .btn:hover {
          color: #2c2c2c;
          background-color: #3E5EFF; }

#interface {
  pointer-events: none;
  opacity: 0;
  z-index: 8; }
  #interface.disabled > div, #interface.disabled .circleBtn {
    pointer-events: none; }
  #interface #hint {
    position: absolute;
    top: 75px;
    left: 0;
    width: 100%;
    text-align: center;
    opacity: 0; }
    #interface #hint .master {
      -webkit-transition: all 1s ease;
      -o-transition: all 1s ease;
      transition: all 1s ease;
      margin: 0 auto;
      display: inline-block;
      font-size: 1.5em;
      border: 4px solid #3E5EFF;
      border-radius: 28px; }
      #interface #hint .master .title {
        -webkit-transition: all 1s ease;
        -o-transition: all 1s ease;
        transition: all 1s ease;
        -webkit-transition-property: color, background-color;
        -o-transition-property: color, background-color;
        transition-property: color, background-color;
        padding: 10px 20px;
        color: #efefef;
        display: inline-block;
        font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
        background-color: #3E5EFF;
        border-top-left-radius: 20px;
        border-bottom-left-radius: 20px; }
        #interface #hint .master .title.invert {
          color: #3E5EFF;
          background-color: #efefef; }
      #interface #hint .master .desc {
        -webkit-transition: all 1s ease;
        -o-transition: all 1s ease;
        transition: all 1s ease;
        -webkit-transition-property: color, background-color;
        -o-transition-property: color, background-color;
        transition-property: color, background-color;
        color: #3E5EFF;
        display: inline-block;
        font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
        padding: 10px 20px; }
      #interface #hint .master.invert {
        border-color: #efefef; }
        #interface #hint .master.invert .title {
          color: #3E5EFF;
          background-color: #efefef; }
        #interface #hint .master.invert .desc {
          color: #efefef; }
  #interface #droppableTarget {
    position: absolute;
    bottom: 200px;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    display: none; }
    #interface #droppableTarget .master {
      position: absolute;
      top: 50%;
      left: 50%;
      right: 50%;
      bottom: 50%;
      border-radius: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      width: 250px;
      height: 250px;
      margin-top: 200px; }
      #interface #droppableTarget .master svg {
        -webkit-transition: all 0.8s ease;
        -o-transition: all 0.8s ease;
        transition: all 0.8s ease;
        -webkit-transform: scale(1.5);
        -ms-transform: scale(1.5);
        transform: scale(1.5);
        fill: #3E5EFF; }
        #interface #droppableTarget .master svg.onHover {
          -webkit-transform: scale(1.8);
          -ms-transform: scale(1.8);
          transform: scale(1.8);
          fill: #efefef; }
  #interface #draggableMaster {
    position: absolute;
    bottom: 40px;
    width: 100%;
    text-align: center; }
    #interface #draggableMaster .draggableContainer {
      position: relative;
      display: inline-block;
      width: 10%;
      max-width: 145px;
      margin: 10px;
      height: 125px; }
      #interface #draggableMaster .draggableContainer:hover .draggableButton .text {
        background-color: #2f51ff; }
      #interface #draggableMaster .draggableContainer:hover .draggableButton .image {
        background-color: #3E5EFF; }
      #interface #draggableMaster .draggableContainer .draggableButton, #interface #draggableMaster .draggableContainer .draggableBehind {
        position: absolute;
        top: 0;
        left: 0;
        display: inline-block;
        width: 100%;
        height: 150px;
        padding: 0;
        margin: 0;
        background-color: transparent; }
        #interface #draggableMaster .draggableContainer .draggableButton .text, #interface #draggableMaster .draggableContainer .draggableBehind .text {
          -webkit-transition: all 0.5s ease;
          -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
          color: white;
          width: 100%;
          padding: 0.5em;
          margin: 0;
          text-align: center;
          font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
          font-size: 1.25em;
          background-color: #3E5EFF;
          border-bottom-left-radius: 28px;
          border-bottom-right-radius: 28px; }
        #interface #draggableMaster .draggableContainer .draggableButton .image, #interface #draggableMaster .draggableContainer .draggableBehind .image {
          -webkit-transition: all 0.5s ease;
          -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
          border-top-left-radius: 28px;
          border-top-right-radius: 28px;
          background-color: #000;
          border: 4px solid #3E5EFF;
          border-bottom: none; }
          #interface #draggableMaster .draggableContainer .draggableButton .image img, #interface #draggableMaster .draggableContainer .draggableBehind .image img {
            width: 50%;
            margin: 0 auto;
            pointer-events: none; }
      #interface #draggableMaster .draggableContainer .draggableButton {
        cursor: default; }
      #interface #draggableMaster .draggableContainer .draggableBehind .text {
        color: #3E5EFF;
        background-color: #a8a9ad; }
      #interface #draggableMaster .draggableContainer .draggableBehind .image {
        border-color: #a8a9ad;
        background-image: url("../textures/Tile_hachure_sm.jpg");
        background-repeat: repeat;
        background-size: 8px 8px; }

#endGame {
  position: absolute;
  top: 0;
  right: -35%;
  width: 35%;
  min-height: 100vh;
  padding: 40px;
  display: none;
  z-index: 6;
  pointer-events: none;
  background-color: #efefef; }
  #endGame .master {
    display: table-cell;
    vertical-align: middle; }
    #endGame .master .top-container {
      margin-bottom: 3em; }
      #endGame .master .top-container .logo {
        width: 100%;
        max-width: 200px;
        text-align: center;
        margin: 0 auto; }
      #endGame .master .top-container .title, #endGame .master .top-container .desc {
        width: 100%;
        text-align: center; }
      #endGame .master .top-container .title {
        font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-size: 2em;
        margin-bottom: 0.5em;
        line-height: 1em;
        color: #3E5EFF; }
      #endGame .master .top-container .desc {
        font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-size: 1.25em;
        line-height: 1.25em;
        color: #2c2c2c; }
    #endGame .master .bottom-container {
      width: 100%; }
      #endGame .master .bottom-container .title {
        font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-size: 2em;
        color: #3E5EFF;
        margin-bottom: 1em; }
      #endGame .master .bottom-container .landing {
        font-size: 1.25em;
        color: #2c2c2c; }
        #endGame .master .bottom-container .landing a {
          -webkit-transition: all 0.4s ease;
          -o-transition: all 0.4s ease;
          transition: all 0.4s ease;
          color: #3E5EFF; }
          #endGame .master .bottom-container .landing a:hover {
            color: lighter(#3E5EFF, 10%); }
      #endGame .master .bottom-container .replay {
        -webkit-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        transition: all 0.5s ease;
        cursor: pointer;
        width: 100%;
        max-width: 60px;
        text-align: center;
        margin: 0 auto;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1); }
        #endGame .master .bottom-container .replay:hover {
          -webkit-transform: scale(1.1);
          -ms-transform: scale(1.1);
          transform: scale(1.1); }
      #endGame .master .bottom-container form {
        width: 100%; }
        #endGame .master .bottom-container form input[type=text], #endGame .master .bottom-container form input[type=submit] {
          font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
          font-size: 1.1em;
          width: 100%;
          padding: 14px;
          border-radius: 28px;
          background-color: transparent; }
        #endGame .master .bottom-container form input[type=text] {
          color: #3E5EFF;
          border: 4px solid #3E5EFF; }
        #endGame .master .bottom-container form input[type=submit] {
          -webkit-transition: all 0.5s ease;
          -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
          color: #efefef;
          background-color: #3E5EFF;
          text-align: center; }
          #endGame .master .bottom-container form input[type=submit]:hover {
            background-color: #2549ff; }
        #endGame .master .bottom-container form input[type=text]::-webkit-input-placeholder, #endGame .master .bottom-container form input[type=submit]::-webkit-input-placeholder {
          font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
          color: #3E5EFF; }
        #endGame .master .bottom-container form input[type=text]:-ms-input-placeholder, #endGame .master .bottom-container form input[type=submit]:-ms-input-placeholder {
          font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
          color: #3E5EFF; }
        #endGame .master .bottom-container form input[type=text]::-ms-input-placeholder, #endGame .master .bottom-container form input[type=submit]::-ms-input-placeholder {
          font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
          color: #3E5EFF; }
        #endGame .master .bottom-container form input[type=text]::placeholder, #endGame .master .bottom-container form input[type=submit]::placeholder {
          font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
          color: #3E5EFF; }

#startGame {
  display: none;
  opacity: 0;
  z-index: 6; }
  #startGame .master {
    display: table;
    width: 100%;
    height: 100%;
    text-align: center; }
    #startGame .master .title {
      -webkit-transition: all 4s ease;
      -o-transition: all 4s ease;
      transition: all 4s ease;
      -webkit-transform: scale(1);
      -ms-transform: scale(1);
      transform: scale(1);
      padding-bottom: 12vh;
      font-family: "RoobertLE-Bold", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
      font-size: 5em;
      color: #efefef;
      display: table-cell;
      vertical-align: middle; }
      #startGame .master .title.upscale {
        -webkit-transform: scale(1.25);
        -ms-transform: scale(1.25);
        transform: scale(1.25); }

#video-sequence-container {
  z-index: 2;
  mix-blend-mode: screen; }
  #video-sequence-container video {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 90%; }

#video-textures-container {
  z-index: 1; }
  #video-textures-container .video-master {
    width: 100%;
    height: 100%; }
    #video-textures-container .video-master video {
      min-width: 100%;
      min-height: 100%; }

#video-sequence {
  mix-blend-mode: screen; }

#loader-container svg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1; }

#app-version {
  cursor: pointer; }

#logo-lion {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 115px;
  margin-top: 90px;
  z-index: 1;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: center center; }
  #logo-lion.fr {
    background-image: url("../textures/lion_fr.png"); }
  #logo-lion.en {
    background-image: url("../textures/lion_en.png"); }
  #logo-lion.fr, #logo-lion.en {
    background-size: auto 100%; }

.popup_wrapper .popup {
  border-color: #3E5EFF;
  font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif; }

.popup_wrapper .popup .popup_title {
  display: none; }

.popup_wrapper .popup_content {
  padding: 24px;
  text-align: center;
  font-size: 1.5em; }

@font-face {
  font-family: 'RoobertLE-Bold';
  src: url("./fonts/RoobertLE-Bold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'RoobertLE-Regular';
  src: url("./fonts/RoobertLE-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal; }

body {
  font-family: "RoobertLE-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal; }

/* MEDIA QUERIES
 * ------------------------------------------------ */
@media only screen and (max-width: 1199px) {
  #interface #draggableMaster .draggableContainer {
    margin: 6px;
    width: 12%; }
  #tutorial .master .cache {
    margin: 0 auto;
    max-width: 500px;
    width: 85%; }
    #tutorial .master .cache .left-side, #tutorial .master .cache .right-side {
      width: 100%; }
    #tutorial .master .cache .left-side .logo svg {
      max-width: 150px; }
    #tutorial .master .cache .left-side .title {
      font-size: 1.7em;
      padding: 0 0 16px 0; }
  #endGame {
    width: 100%;
    right: -100%;
    min-height: 100%; }
    #endGame .master {
      display: inline-block;
      vertical-align: unset; } }

@media only screen and (max-width: 899px) {
  #interface #hint {
    padding: 0 10px;
    top: 25px; }
    #interface #hint .master {
      font-size: 1.1em; }
      #interface #hint .master .title {
        padding: 4px 8px;
        width: 100%;
        border-top-left-radius: 20px;
        border-top-right-radius: 20px;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0; }
      #interface #hint .master .desc {
        padding: 4px 8px; }
  #interface #droppableTarget .master {
    width: 175px;
    height: 175px;
    margin-top: 175px; }
  #interface #draggableMaster {
    bottom: 20px; }
    #interface #draggableMaster .draggableContainer {
      margin: 4px;
      width: 14%;
      height: 120px;
      min-width: 112px; }
      #interface #draggableMaster .draggableContainer .draggableButton, #interface #draggableMaster .draggableContainer .draggableBehind {
        height: 120px; }
        #interface #draggableMaster .draggableContainer .draggableButton .image img, #interface #draggableMaster .draggableContainer .draggableBehind .image img {
          width: 75%; }
        #interface #draggableMaster .draggableContainer .draggableButton .text, #interface #draggableMaster .draggableContainer .draggableBehind .text {
          padding: 0.45em;
          font-size: 1.1em; }
  #tutorial .master .cache {
    width: 95%; }
    #tutorial .master .cache .left-side, #tutorial .master .cache .right-side {
      width: 100%; }
    #tutorial .master .cache .left-side .logo {
      padding-top: 0px; }
      #tutorial .master .cache .left-side .logo svg {
        max-width: 100px; }
    #tutorial .master .cache .left-side .title {
      font-size: 1.5em;
      padding: 0 0 10px 0;
      margin-top: -10px; }
    #tutorial .master .cache .right-side .desc {
      font-size: 1em;
      padding: 5px 50px;
      text-align: center; }
  #tutorial .master #tutorial-btn-container .btn {
    margin-top: 10px; }
  #video-sequence-container video {
    width: 110%; }
  #startGame .master .title {
    font-size: 2em; } }

@media only screen and (max-width: 479px) {
  #interface #hint {
    padding: 0 10px;
    top: 25px; }
    #interface #hint .master {
      font-size: 1em; }
      #interface #hint .master .title {
        padding: 4px 8px; }
      #interface #hint .master .desc {
        padding: 4px 8px; }
  #interface #droppableTarget .master {
    width: 150px;
    height: 150px;
    margin-top: 175px; }
  #interface #draggableMaster {
    bottom: 20px;
    padding: 0; }
    #interface #draggableMaster .draggableContainer {
      margin: 2px;
      width: 20%;
      height: 23vw;
      min-width: unset; }
      #interface #draggableMaster .draggableContainer .draggableButton, #interface #draggableMaster .draggableContainer .draggableBehind {
        height: 23vw; }
        #interface #draggableMaster .draggableContainer .draggableButton .image img, #interface #draggableMaster .draggableContainer .draggableBehind .image img {
          width: 75%; }
        #interface #draggableMaster .draggableContainer .draggableButton .text, #interface #draggableMaster .draggableContainer .draggableBehind .text {
          padding: 0.45em;
          font-size: 1.1em; }
  #tutorial .master .cache {
    width: 95%; }
    #tutorial .master .cache .left-side, #tutorial .master .cache .right-side {
      width: 100%; }
    #tutorial .master .cache .left-side .logo {
      padding-top: 0px; }
      #tutorial .master .cache .left-side .logo svg {
        max-width: 100px; }
    #tutorial .master .cache .left-side .title {
      font-size: 1.5em;
      padding: 0 0 10px 0;
      margin-top: -10px; }
    #tutorial .master .cache .right-side .desc {
      font-size: 1em;
      padding: 5px 50px;
      text-align: center; }
  #tutorial .master #tutorial-btn-container .btn {
    margin-top: 10px; }
  #video-sequence-container video {
    width: 110%; }
  #startGame .master .title {
    font-size: 2em; } }
