/****************************** RESET */
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; }

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 {
  content: "";
  content: none; }

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

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

*:focus {
  outline: none; }

/********************/
/*     MIXIN        */
/********************/
/********************/
/*     COMMONS      */
/********************/
/*
    Document   : _common$
    Created on : 13 nov. 2013, 12:27:33
    Author     : Diplomatic Cover
    Description:
    Purpose of the stylesheet follows.
*/
/*
    Document   : _common$
    Created on : 13 nov. 2013, 12:27:33
    Author     : Diplomatic Cover
    Description:
    Purpose of the stylesheet follows.
*/
/*
    Document   : _common$
    Created on : 13 nov. 2013, 12:27:33
    Author     : Diplomatic Cover
    Description:
    Purpose of the stylesheet follows.
*/
/** Declare fonts here **/
@font-face {
  font-family: 'squares_boldregular';
  src: url("../fonts/squares_bold_free-webfont.eot");
  src: url("../fonts/squares_bold_free-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/squares_bold_free-webfont.woff2") format("woff2"), url("../fonts/squares_bold_free-webfont.woff") format("woff"), url("../fonts/squares_bold_free-webfont.ttf") format("truetype"), url("../fonts/squares_bold_free-webfont.svg#squares_boldregular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'FuturaStd-Book';
  src: url("../fonts/FuturaStd-Book.eot");
  src: url("../fonts/FuturaStd-Book.woff2") format("woff2"), url("../fonts/FuturaStd-Book.woff") format("woff"), url("../fonts/FuturaStd-Book.ttf") format("truetype"), url("../fonts/FuturaStd-Book.svg#FuturaStd-Book") format("svg"), url("../fonts/FuturaStd-Book.eot?#iefix") format("embedded-opentype");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'FuturaStd-Light';
  src: url("../fonts/FuturaStd-Light.eot");
  src: url("../fonts/FuturaStd-Light.woff2") format("woff2"), url("../fonts/FuturaStd-Light.woff") format("woff"), url("../fonts/FuturaStd-Light.ttf") format("truetype"), url("../fonts/FuturaStd-Light.svg#FuturaStd-Light") format("svg"), url("../fonts/FuturaStd-Light.eot?#iefix") format("embedded-opentype");
  font-weight: normal;
  font-style: normal; }

/*
    Document   : _common$
    Created on : 13 nov. 2013, 12:27:33
    Author     : Diplomatic Cover
    Description:
    Purpose of the stylesheet follows.
*/
html, body {
  height: 100%;
  width: 100%;
  min-height: 100%; }

body {
  font-size: 14px;
  line-height: 21px;
  font-family: "Georgia";
  color: black; }

body * {
  -webkit-font-smoothing: antialiased; }

input {
  font-family: inherit;
  padding: 5px 10px; }

section {
  position: relative;
  margin-top: -1px;
  padding-top: 1px; }

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

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

li {
  list-style-type: none; }

a, a:hover, a:active {
  outline: none;
  text-decoration: none;
  color: #000; }

a img {
  border: none; }

fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

textarea {
  resize: vertical; }

/*::selection {
	background: #fff2a8;
}

::-moz-selection {
	background: #fff2a8;
}*/
/*
    Document   : _common$
    Created on : 13 nov. 2013, 12:27:33
    Author     : Diplomatic Cover
    Description:
    Purpose of the stylesheet follows.
*/
* {
  box-sizing: border-box; }

html, body {
  width: 100%;
  height: 100%;
  overflow: hidden;
  font-family: FuturaStd-Book, Helvetica, Arial, Sans-serif; }

body {
  display: -ms-flexbox;
  display: flex;
  background: url("../img/bg.jpg");
  background-size: cover;
  -ms-flex-direction: column;
      flex-direction: column; }

main {
  position: relative;
  width: 100%;
  height: calc(100% - 90px); }
  main.p404 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    color: #fff;
    text-align: center; }

.cover {
  width: 100%;
  height: 100%;
  background-color: #000; }

h2 {
  font-size: 48px;
  line-height: 48px;
  font-family: 'squares_boldregular';
  text-transform: uppercase; }

.container {
  position: absolute;
  left: 50%;
  bottom: 50%;
  width: 1920px;
  margin-left: -960px;
  height: 1080px;
  margin-bottom: -540px;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.ratio16-9 {
  position: relative;
  height: 0;
  width: 100%;
  padding-bottom: 56.25%; }
  .ratio16-9 > .content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5; }

.container a[data-modal] {
  position: absolute;
  left: 50%;
  bottom: 30px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #fff;
  font-size: 22px;
  line-height: 16px;
  font-weight: 800;
  font-family: 'squares_boldregular';
  text-transform: uppercase;
  text-decoration: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }
  .container a[data-modal]::after, .container a[data-modal]::before {
    content: '';
    display: inline-block;
    width: 36px;
    height: 36px;
    margin-left: 20px;
    background: url("../img/arrow.png") top 15px left 9px no-repeat transparent;
    transition: border-color .250s; }
  .container a[data-modal]::before {
    position: absolute;
    top: 0;
    right: 0;
    background: url("../img/tuned-square.png") center center no-repeat transparent;
    background-size: contain; }
  .container a[data-modal]:hover {
    color: #fcef51; }
    .container a[data-modal]:hover::after {
      border-color: #fcef51;
      background-image: url("../img/arrow-hover.png");
      -webkit-animation: arrowMove .500s;
              animation: arrowMove .500s; }
    .container a[data-modal]:hover::before {
      background-image: url("../img/tuned-square-hover.png"); }

@-webkit-keyframes arrowMove {
  0% {
    background-position: top 15px left 9px; }
  50% {
    background-position: top 15px left 5px; }
  100% {
    background-position: top 15px left 9px; } }

@keyframes arrowMove {
  0% {
    background-position: top 15px left 9px; }
  50% {
    background-position: top 15px left 5px; }
  100% {
    background-position: top 15px left 9px; } }

.balls, .assets {
  position: absolute;
  bottom: 0;
  left: 50%;
  overflow: visible;
  margin: 0 auto;
  width: 1px;
  height: 100%; }

.balls span {
  display: block;
  position: absolute;
  z-index: 6;
  pointer-events: none; }
  .balls span:nth-child(1) {
    width: 49px;
    height: 49px;
    background: url("../img/balls/dragonball-1.png") center center no-repeat transparent;
    -webkit-transform: translate(-698px, 65px);
            transform: translate(-698px, 65px); }
  .balls span:nth-child(2) {
    width: 46px;
    height: 46px;
    background: url("../img/balls/dragonball-2.png") center center no-repeat transparent;
    -webkit-transform: translate(-39px, 153px);
            transform: translate(-39px, 153px); }
  .balls span:nth-child(3) {
    width: 49px;
    height: 49px;
    background: url("../img/balls/dragonball-3.png") center center no-repeat transparent;
    -webkit-transform: translate(743px, 899px);
            transform: translate(743px, 899px); }
  .balls span:nth-child(4) {
    width: 69px;
    height: 69px;
    background: url("../img/balls/dragonball-5.png") center center no-repeat transparent;
    -webkit-transform: translate(478px, 108px);
            transform: translate(478px, 108px); }
  .balls span:nth-child(5) {
    width: 49px;
    height: 49px;
    background: url("../img/balls/gokusball.png") center center no-repeat transparent;
    -webkit-transform: translate(-310px, 788px);
            transform: translate(-310px, 788px); }
  .balls span:nth-child(6) {
    width: 70px;
    height: 69px;
    background: url("../img/balls/dragonball-6.png") center center no-repeat transparent;
    -webkit-transform: translate(-922px, 856px);
            transform: translate(-922px, 856px); }
  .balls span:nth-child(7) {
    width: 49px;
    height: 49px;
    background: url("../img/balls/dragonball-7.png") center center no-repeat transparent;
    -webkit-transform: translate(704px, 54px);
            transform: translate(704px, 54px); }

.counter {
  width: 971px;
  height: 928px;
  margin: 0 auto;
  background: url("../img/counter-bg.png") center center no-repeat transparent;
  color: #fff;
  font-weight: 800;
  font-family: 'squares_boldregular';
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  pointer-events: none;
  position: relative;
  z-index: 5;
  opacity: 0;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-transform: scale(0.95, 0.95);
          transform: scale(0.95, 0.95);
  transition: opacity 1s, -webkit-transform 1s;
  transition: opacity 1s, transform 1s; }
  .counter.show {
    opacity: 1;
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); }
  .counter div {
    font-size: 120px;
    line-height: 120px; }
  .counter .hours, .counter .minutes {
    display: inline-block;
    border-bottom: 15px solid #fcef51;
    padding-bottom: 20px; }
  .counter .seconds {
    margin-top: 20px;
    font-size: 77px;
    line-height: 77px; }

.assets div {
  position: absolute;
  overflow: hidden;
  transition: -webkit-transform 1s cubic-bezier(0.215, 0.61, 0.355, 1), z-index 500ms linear, opacity 1s;
  transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1), z-index 500ms linear, opacity 1s;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  z-index: 1;
  opacity: 1; }
  .assets div:hover {
    -webkit-transform: scale(1.1, 1.1);
            transform: scale(1.1, 1.1);
    z-index: 10 !important; }
  .assets div.small {
    -webkit-transform: scale(0.9, 0.9);
            transform: scale(0.9, 0.9); }
  .assets div.hidden {
    width: 0;
    height: 0;
    opacity: 0; }

.assets + .assets-hover {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: block;
  width: 0;
  height: 0;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  transition: opacity 500ms;
  z-index: 6;
  pointer-events: none; }

.assets.hover + .assets-hover {
  width: 10000px;
  height: 10000px;
  opacity: 1; }

.assets img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-100%, -50%) translateZ(0);
          transform: translate(-100%, -50%) translateZ(0);
  width: 100%;
  height: auto;
  transition: opacity 1s, -webkit-transform 1s;
  transition: opacity 1s, transform 1s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  opacity: 0; }
  .assets img.show {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%) translateZ(0);
            transform: translate(-50%, -50%) translateZ(0); }
  .assets img.go {
    opacity: 0;
    -webkit-transform: translate(0%, -50%) translateZ(0);
            transform: translate(0%, -50%) translateZ(0); }

.assets [data-type="games"]:nth-child(1) {
  width: 185px;
  height: 253px;
  left: -901px;
  top: 460px;
  z-index: 2; }

.assets [data-type="games"]:nth-child(2) {
  width: 246px;
  height: 336px;
  left: -360px;
  top: 45px; }

.assets [data-type="games"]:nth-child(3) {
  width: 185px;
  height: 253px;
  left: -232px;
  top: 679px; }

.assets [data-type="games"]:nth-child(4) {
  width: 246px;
  height: 336px;
  left: 51px;
  top: 617px; }

.assets [data-type="games"]:nth-child(5) {
  width: 228px;
  height: 312px;
  left: 353px;
  top: 753px;
  z-index: 3; }

.assets [data-type="anime"]:nth-child(6) {
  width: 321px;
  height: 439px;
  left: -858px;
  top: 155px; }

.assets [data-type="anime"]:nth-child(7) {
  width: 362px;
  height: 495px;
  left: -645px;
  top: 398px; }

.assets [data-type="anime"]:nth-child(8) {
  width: 321px;
  height: 439px;
  left: 190px;
  top: 95px; }

.assets [data-type="anime"]:nth-child(9) {
  width: 269px;
  height: 368px;
  left: 512px;
  top: 571px;
  z-index: 2; }

.assets [data-type="anime"]:nth-child(10) {
  width: 321px;
  height: 439px;
  left: 588px;
  top: 221px; }

.asset {
  text-align: center; }
  .asset .shares {
    position: absolute;
    right: 0;
    bottom: 100%;
    padding-bottom: 10px; }
    .asset .shares a {
      -webkit-transform: scale(1);
              transform: scale(1);
      color: #fff;
      font-weight: 800;
      transition: color 500ms; }
      .asset .shares a:hover {
        color: #fcef51; }

.shares {
  font-size: 12px;
  text-transform: uppercase; }
  .shares a {
    display: block;
    height: 21px;
    width: 25px;
    margin-left: 15px; }
    .shares a.tw {
      background: url("../icons/twitter.svg") center center no-repeat transparent;
      background-size: contain; }
      .shares a.tw:hover {
        background-image: url("../icons/twitter-yellow.svg"); }
    .shares a.fb {
      background: url("../icons/facebook.svg") center center no-repeat transparent;
      background-size: contain; }
      .shares a.fb:hover {
        background-image: url("../icons/facebook-yellow.svg"); }

.logos-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center; }
  .logos-list a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    margin-right: 0;
    margin-left: 15px; }
  .logos-list > img {
    margin-left: 15px; }

.lang {
  width: auto;
  text-align: center;
  text-transform: uppercase;
  cursor: pointer;
  background: black;
  padding-right: 30px; }
  .lang span {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    position: relative;
    color: #fff;
    transition: color 0.3s; }
  .lang span::before {
    position: absolute;
    right: -22px;
    top: 7px;
    content: "";
    width: 13px;
    height: 9px;
    background: url("../img/select-arrow.png"); }
  .lang ul {
    height: 0;
    line-height: 45px;
    position: absolute;
    z-index: 5;
    text-align: left;
    top: 100%;
    right: 0%;
    opacity: 0;
    margin-bottom: 30px;
    padding-left: 15px;
    transition: margin 0.5s, opacity 0.5s, -webkit-transform 0s, height 0s;
    transition: margin 0.5s, opacity 0.5s, transform 0s, height 0s; }
    .lang ul li {
      height: 0px;
      overflow: hidden; }
  .lang:hover span, .lang.open span {
    color: #fcef51; }
  .lang:hover ul, .lang.open ul {
    height: auto;
    display: block;
    margin-bottom: 0;
    opacity: 1; }
    .lang:hover ul li, .lang.open ul li {
      height: auto; }
  .lang ul li {
    background: #000;
    width: auto;
    padding: 0px 10px;
    white-space: nowrap; }
  .lang ul a {
    display: block;
    width: 100%;
    color: #fff;
    transition: color 0.3s;
    line-height: 16px;
    padding: 10px 0; }
    .lang ul a:hover {
      color: #fcef51; }

.sur-header {
  position: absolute;
  top: 0;
  z-index: 15;
  width: 100%;
  text-align: center; }
  .sur-header > img {
    margin: 15px auto 0; }

[data-hide-after] {
  transition: opacity .5s;
  opacity: 1; }

[data-hide-after].hide {
  opacity: 0; }

.skip {
  position: absolute;
  width: 100%;
  text-align: center;
  bottom: 10px;
  left: 0;
  z-index: 6; }
  .skip a {
    color: #fff;
    text-transform: uppercase;
    text-decoration: underline; }
    .skip a:hover {
      color: #fcef51; }

nav {
  position: absolute;
  top: 0;
  right: 0;
  background-color: #000;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row; }
  nav, nav a {
    color: #fff; }
  nav, nav .shares {
    font-size: 14px; }
  nav > div {
    position: relative;
    padding: 6px 20px; }
  nav > div, nav .lang > span {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center; }
  nav > div::after {
    content: '';
    height: 10px;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    border-right: 1px solid #adadad;
    opacity: 0.7; }
  nav > div:last-child::after {
    content: none; }
  nav a:hover {
    color: #fcef51; }
  nav .tuned::after {
    content: '';
    width: 24px;
    height: 15px;
    display: inline-block;
    margin-left: 20px;
    position: relative;
    top: 2px;
    background: url("../img/tuned.png") center center no-repeat transparent; }
  nav .tuned:hover::after {
    background-image: url("../img/tuned-hover.png"); }
  nav .shares a {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
    margin-left: 8px; }

/********************/
/*      LAYOUT      */
/********************/
.video-container {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  margin: 0 auto;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  .video-container::before {
    content: '';
    display: block;
    width: 100%;
    padding-bottom: 56.25%; }
  .video-container.fullscreen .bar {
    top: auto;
    bottom: 0; }
  .video-container.fullscreen .full {
    background-image: url("../img/player/full_on.svg"); }
  .video-container #player {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0; }
  .video-container .bar {
    position: absolute;
    bottom: 30px;
    height: 54px;
    line-height: 54px;
    vertical-align: middle;
    width: 100%;
    text-align: center; }
  .video-container .play {
    display: inline-block;
    width: 57px;
    height: 100%;
    background: url(../img/player/play.png) center center no-repeat transparent; }
    .video-container .play.playing {
      background-image: url(../img/player/pause.png); }
  .video-container .full {
    display: inline-block;
    margin-left: 10px;
    width: 20px;
    vertical-align: top;
    height: 100%;
    background: url(../img/player/full_off.svg) center center no-repeat transparent; }
  .video-container .time {
    color: #fff;
    vertical-align: top;
    font-size: 12px;
    padding-left: 10px; }
  .video-container .progress-bar {
    display: inline-block;
    width: 75%;
    height: 3px;
    background: gray;
    vertical-align: top;
    margin-top: 25px; }
    .video-container .progress-bar .avancement {
      width: 0px;
      height: 100%;
      background-color: #fff; }

.modal {
  position: absolute;
  bottom: 0;
  left: 0;
  overflow: hidden;
  width: 0;
  height: 0;
  opacity: 0;
  transition: opacity 500ms;
  z-index: 15;
  background-color: rgba(0, 0, 0, 0.95);
  color: #fff; }
  .modal.open {
    width: 100%;
    height: 100%;
    opacity: 1; }
  .modal.loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 50px;
    height: 50px;
    margin-left: -25px;
    margin-top: -25px;
    font-size: 50px;
    color: rgba(252, 239, 81, 0.6);
    text-indent: -9999em;
    overflow: hidden;
    border-radius: 50%;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    -webkit-animation: load6 1.7s infinite ease;
            animation: load6 1.7s infinite ease; }

@-webkit-keyframes load6 {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em; }
  5%,
  95% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em; }
  10%,
  59% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em; }
  20% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em; }
  38% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em; }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em; } }

@keyframes load6 {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em; }
  5%,
  95% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em; }
  10%,
  59% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em; }
  20% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em; }
  38% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em; }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em; } }
  .modal .close {
    display: block;
    position: absolute;
    top: 20px;
    right: 20px;
    width: 55px;
    height: 55px;
    background: url("../img/close.png") center center no-repeat transparent;
    z-index: 15; }
    .modal .close:hover {
      background-image: url("../img/close-hover.png"); }
  .modal > .content {
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat; }
  .modal .content > img {
    width: auto;
    height: auto;
    max-width: 80%; }
  .modal .content h3 {
    font-family: 'squares_boldregular';
    font-size: 16px;
    line-height: 16px;
    margin-top: 25px; }
  .modal .post-content {
    font-size: 16px;
    text-align: center;
    font-family: FuturaStd-Light; }
    .modal .post-content h2 {
      margin-bottom: 30px; }
      .modal .post-content h2::after {
        content: '';
        display: block;
        width: 60px;
        height: 1px;
        border-bottom: 1px solid #fff;
        margin: 30px auto 0; }
    .modal .post-content strong {
      font-size: 30px;
      line-height: 30px; }
  .modal .legals .logos-list {
    -ms-flex-pack: center;
        justify-content: center;
    margin-top: 50px; }
    .modal .legals .logos-list a {
      margin-left: 25px; }
      .modal .legals .logos-list a:first-child {
        margin-left: 0; }
  .modal .wrapper {
    max-height: 860px;
    height: 85%;
    position: relative; }
    .modal .wrapper > img {
      width: auto;
      height: 100%; }

.crm, .legals, .sendgrid-subscription-widget {
  width: 800px; }
  .crm.sendgrid-subscription-widget, .legals.sendgrid-subscription-widget, .sendgrid-subscription-widget.sendgrid-subscription-widget {
    width: 300px;
    margin: 0 auto; }
    .crm.sendgrid-subscription-widget input[type=email], .legals.sendgrid-subscription-widget input[type=email], .sendgrid-subscription-widget.sendgrid-subscription-widget input[type=email] {
      margin-top: 10px; }
    .crm.sendgrid-subscription-widget label, .legals.sendgrid-subscription-widget label, .sendgrid-subscription-widget.sendgrid-subscription-widget label {
      text-align: left;
      font-style: normal; }
  .crm form, .legals form, .sendgrid-subscription-widget form {
    margin-top: 30px; }
  .crm span.legend, .legals span.legend, .sendgrid-subscription-widget span.legend {
    opacity: 0.4;
    text-transform: uppercase; }
  .crm ::-webkit-input-placeholder, .legals ::-webkit-input-placeholder, .sendgrid-subscription-widget ::-webkit-input-placeholder {
    opacity: 1;
    color: #fff;
    text-transform: uppercase; }
  .crm ::-moz-placeholder, .legals ::-moz-placeholder, .sendgrid-subscription-widget ::-moz-placeholder {
    opacity: 1;
    color: #fff;
    text-transform: uppercase; }
  .crm :-ms-input-placeholder, .legals :-ms-input-placeholder, .sendgrid-subscription-widget :-ms-input-placeholder {
    opacity: 1;
    color: #fff;
    text-transform: uppercase; }
  .crm ::placeholder, .legals ::placeholder, .sendgrid-subscription-widget ::placeholder {
    opacity: 1;
    color: #fff;
    text-transform: uppercase; }
  .crm .field.error ::-webkit-input-placeholder, .legals .field.error ::-webkit-input-placeholder, .sendgrid-subscription-widget .field.error ::-webkit-input-placeholder {
    color: #bf002b; }
  .crm .field.error ::-moz-placeholder, .legals .field.error ::-moz-placeholder, .sendgrid-subscription-widget .field.error ::-moz-placeholder {
    color: #bf002b; }
  .crm .field.error :-ms-input-placeholder, .legals .field.error :-ms-input-placeholder, .sendgrid-subscription-widget .field.error :-ms-input-placeholder {
    color: #bf002b; }
  .crm .field.error ::placeholder, .legals .field.error ::placeholder, .sendgrid-subscription-widget .field.error ::placeholder {
    color: #bf002b; }
  .crm .follow, .legals .follow, .sendgrid-subscription-widget .follow {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    font-size: 30px;
    line-height: 30px;
    font-family: 'squares_boldregular';
    margin-top: 25px; }
    .crm .follow a, .legals .follow a, .sendgrid-subscription-widget .follow a {
      margin-left: 20px; }
  .crm input[type=submit], .legals input[type=submit], .sendgrid-subscription-widget input[type=submit] {
    border: 0;
    background: url("../img/bg-submit.png") center center no-repeat transparent;
    background-size: contain;
    padding: 25px 50px; }
  .crm .errors, .legals .errors, .sendgrid-subscription-widget .errors {
    display: none;
    color: #bf002b;
    text-align: center;
    margin-top: 20px;
    font-style: italic; }
    .crm .errors.visible, .legals .errors.visible, .sendgrid-subscription-widget .errors.visible {
      display: block; }
    .crm .errors p, .legals .errors p, .sendgrid-subscription-widget .errors p {
      display: none; }
      .crm .errors p.visible, .legals .errors p.visible, .sendgrid-subscription-widget .errors p.visible {
        display: block; }
  .crm .msg, .legals .msg, .sendgrid-subscription-widget .msg {
    display: none;
    margin-top: 20px;
    text-align: center;
    color: #bf002b;
    font-size: 18px;
    font-style: italic; }
    .crm .msg.visible, .legals .msg.visible, .sendgrid-subscription-widget .msg.visible {
      display: block; }

footer {
  position: relative;
  height: 90px;
  width: 100%;
  background-color: #000;
  border-top: 1px solid #282b2f;
  z-index: 10;
  padding: 0 100px;
  color: #adadad;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start; }
  footer a, footer p {
    margin-right: 15px; }
  footer p {
    font-size: 8px; }
  footer p {
    line-height: 15px; }
  footer .right {
    margin-left: auto; }
  footer .shares a {
    opacity: 0.6; }
    footer .shares a:hover {
      opacity: 1; }

/********************/
/*      PAGES       */
/********************/
/********************/
/*     ELEMENTS     */
/********************/
form {
  text-align: center;
  position: relative;
  transition: opacity 0.4s; }
  form.submit {
    opacity: 0.5; }
    form.submit::after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      z-index: 3; }
  form .field {
    position: relative;
    display: inline-block;
    width: 45%;
    min-height: 35px;
    margin: 10px 1%;
    text-align: left;
    vertical-align: top; }
    form .field.checkbox {
      display: block;
      width: 100%; }
    form .field.full {
      width: 93%; }
    form .field.hidden {
      opacity: 0; }
  form .error input, form .error select, form.error input, form.error select {
    border-color: #bf002b;
    background-size: 100% 2px;
    color: #bf002b; }
  form .error .label-checkbox, form.error .label-checkbox {
    color: #bf002b; }
  form label {
    display: block;
    margin-bottom: 10px;
    font-style: italic;
    text-transform: uppercase; }
    form label.label-checkbox {
      width: 80%;
      display: inline-block;
      font-size: 10px;
      text-transform: none; }
  form input, form textarea {
    display: block;
    background: none;
    border: none;
    border-bottom: 1px solid gray;
    width: 100%;
    color: white;
    background-size: 100% 2px;
    transition: border 0.3s, color 0.3s;
    box-sizing: border-box;
    color: white; }
  form input[type="submit"] {
    background: none;
    border: 1px solid #fff;
    color: #fff;
    text-transform: uppercase;
    display: inline-block;
    width: auto;
    margin-top: 20px;
    cursor: pointer;
    transition: -webkit-transform .5s;
    transition: transform .5s; }
    form input[type="submit"]:hover {
      -webkit-transform: scale(1.2, 1.2);
              transform: scale(1.2, 1.2); }
  form input[type="checkbox"] {
    display: inline-block;
    width: auto;
    vertical-align: top; }
  form [type="checkbox"] {
    opacity: 0;
    margin-right: 10px;
    float: left;
    z-index: 10;
    position: relative; }
  form [type="checkbox"]:checked + label::after {
    -webkit-transform: scale(1) translate3d(0%, 0%, 0);
            transform: scale(1) translate3d(0%, 0%, 0); }
  form [readonly] {
    color: rgba(255, 255, 255, 0.4); }
  form label.label-checkbox::before {
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    cursor: pointer;
    background: transparent;
    position: absolute;
    left: 0;
    top: 1px;
    border: 1px solid white;
    transition: opacity 0.3s; }
  form label.label-checkbox::after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    cursor: pointer;
    background: #bf002b;
    position: absolute;
    left: 5px;
    top: 6px;
    transition: all 0.3s;
    -webkit-transform: scale(0) translate3d(0%, 0%, 0);
            transform: scale(0) translate3d(0%, 0%, 0); }
  form .select {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    outline: none; }
    form .select::after {
      content: "";
      display: block;
      position: absolute;
      width: 13px;
      height: 9px;
      top: 13px;
      right: 5px;
      background: url("../img/select-arrow.png") center center no-repeat;
      background-size: 11px 6px; }
  form .birthday .select {
    display: inline-block;
    width: auto; }
  form .birthday .legend {
    text-transform: uppercase; }
  form select {
    width: 100%;
    -ms-flex: 1;
        flex: 1;
    border: none;
    border-bottom: 1px solid gray;
    font-size: 13px;
    color: white;
    position: relative;
    border-radius: 0;
    padding: 3px 30px 4px 10px;
    background: transparent;
    background-size: 100% 2px;
    transition: border-color 0.3s;
    position: relative;
    z-index: 1;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
    form select option {
      color: black;
      background: white; }
  form select::-ms-expand {
    display: none; }
  form .birthday select {
    margin: 0 5px 0px 0px;
    float: left;
    width: auto;
    font-size: 18px;
    line-height: 18px; }
  form .legend {
    margin: 0;
    font-size: 10px;
    line-height: 10px;
    position: absolute; }
  form a.submit, form input.submit, form div.submit {
    margin: 20px auto 0; }

/********************/
/*    ANIMATIONS    */
/********************/
/********************/
/*     LANGUAGES    */
/********************/
