/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
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; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

.clearfix {
  *zoom: 1; }
  .clearfix:before, .clearfix:after {
    display: table;
    clear: both;
    content: "";
    line-height: 0; }

.noselect {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: default; }

.title--header1 {
  font-size: 9.2em;
  color: #23252D;
  line-height: 1.24em;
  font-family: 'Roboto', sans-serif;
  font-weight: 100; }
  @media screen and (min-width: 1280px) and (max-width: 1439px) {
    .title--header1 {
      font-size: 6.2em; } }
  @media screen and (min-width: 768px) and (max-width: 1279px) {
    .title--header1 {
      font-size: 5.2em; } }
  @media screen and (min-width: 0) and (max-width: 767px) {
    .title--header1 {
      font-size: 4.2em; } }
  .title--header1.white {
    color: #fff; }
  .title--header1 .block-revealer__element {
    top: 5px;
    height: calc(100% - 10px); }

.title--header2 {
  font-size: 5.8em;
  color: #23252D;
  line-height: 1.3em;
  font-family: 'Roboto', sans-serif;
  font-weight: 300; }
  @media screen and (min-width: 1280px) and (max-width: 1439px) {
    .title--header2 {
      font-size: 4.2em; } }
  @media screen and (min-width: 768px) and (max-width: 1279px) {
    .title--header2 {
      font-size: 3.6em; } }
  @media screen and (min-width: 0) and (max-width: 767px) {
    .title--header2 {
      font-size: 3.0em; } }
  .title--header2.white {
    color: #fff; }
  .title--header2 .block-revealer__element {
    top: 5px;
    height: calc(100% + 10px); }

.title--header3 {
  font-size: 2.4em;
  color: #23252D;
  line-height: 1.54em;
  font-family: 'Roboto', sans-serif;
  font-weight: 400; }
  @media screen and (min-width: 0) and (max-width: 1279px) {
    .title--header3 {
      font-size: 1.8em; } }
  .title--header3.white {
    color: #fff; }

.title--header4 {
  font-size: 3.6em;
  color: #23252D;
  line-height: 1.1em;
  font-family: 'Roboto', sans-serif;
  font-weight: 300; }
  @media screen and (min-width: 0) and (max-width: 1279px) {
    .title--header4 {
      font-size: 2.8em; } }
  .title--header4.white {
    color: #fff; }

.title--tag {
  font-size: 1.1em;
  color: #23252D;
  line-height: 1.1em;
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  letter-spacing: 0.3em;
  text-transform: uppercase; }
  @media screen and (min-width: 0) and (max-width: 1279px) {
    .title--tag {
      font-size: 1em;
      letter-spacing: 0.3em; } }
  .title--tag.white {
    color: #fff; }

.title--button {
  font-size: 1.1em;
  line-height: 1.1em;
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase; }
  @media screen and (min-width: 0) and (max-width: 1279px) {
    .title--button {
      font-size: 1em;
      letter-spacing: 0.1em; } }
  .title--button.white {
    color: #fff; }

.txt--p1 p, .txt--p1 ul {
  font-size: 2.0em;
  color: #23252D;
  line-height: 1.6em;
  font-family: 'Roboto', sans-serif;
  font-weight: 300; }
  @media screen and (min-width: 0) and (max-width: 1279px) {
    .txt--p1 p, .txt--p1 ul {
      font-size: 1.6em; } }
.txt--p1.white p {
  color: #fff; }

.txt--p2 p, .txt--p2 ul {
  font-size: 2.4em;
  color: #23252D;
  line-height: 1.58em;
  font-family: 'Roboto', sans-serif;
  font-weight: 300; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    .txt--p2 p, .txt--p2 ul {
      font-size: 2.0em; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    .txt--p2 p, .txt--p2 ul {
      font-size: 1.8em; } }
.txt--p2.white p {
  color: #fff; }

html,
body {
  height: 100%;
  width: 100%;
  position: relative; }
  html.is-open,
  body.is-open {
    overflow: hidden;
    position: fixed; }

body {
  height: auto; }

*,
*:after,
*:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

*,
div,
li,
p,
h1,
h2,
h3,
h4,
h5,
a,
span,
html,
img {
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: geometricPrecision; }

body {
  font-size: 100%;
  font-family: 'Roboto';
  font-weight: 400;
  position: relative;
  font-size: 10px;
  background: #fff; }

#main {
  overflow: hidden; }

.container {
  width: 100%;
  position: relative; }
  .container.maxwidth {
    max-width: 1546px;
    margin: 0 auto;
    padding: 0 63px; }
    @media screen and (min-width: 992px) and (max-width: 1545px) {
      .container.maxwidth {
        padding: 0 63px; } }
    @media screen and (min-width: 768px) and (max-width: 991px) {
      .container.maxwidth {
        padding: 0 30px; } }
    @media screen and (min-width: 0) and (max-width: 767px) {
      .container.maxwidth {
        padding: 0 20px; } }
  .container.maxwidth2 {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px; }
    @media screen and (min-width: 992px) and (max-width: 1419px) {
      .container.maxwidth2 {
        padding: 0 40px; } }
    @media screen and (min-width: 768px) and (max-width: 991px) {
      .container.maxwidth2 {
        padding: 0 30px; } }
    @media screen and (min-width: 0) and (max-width: 767px) {
      .container.maxwidth2 {
        padding: 0 20px; } }

.stripe,
.stripe-loaded {
  background: #000 !important; }

.cover-1 {
  position: fixed;
  left: 0;
  top: 100%;
  width: 100%;
  height: 100%;
  z-index: 999; }
  .cover-1 > div {
    position: relative;
    width: 100%;
    height: 45%; }
    .cover-1 > div:nth-child(1) {
      background: #3C3ACD; }
    .cover-1 > div:nth-child(2) {
      background: #2B2996; }

.cover-2 {
  z-index: 1000;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  display: none;
  opacity: 0; }

.button {
  display: inline-block;
  margin-top: 50px; }
  .button a.readMore {
    display: block;
    font-size: 1.1em;
    font-family: 'Poppins', sans-serif;
    color: #494444;
    text-decoration: none;
    text-transform: uppercase;
    position: relative;
    font-weight: 700;
    letter-spacing: 0.1em;
    padding-bottom: 12px;
    -webkit-transition: padding 300ms ease-in-out;
    -moz-transition: padding 300ms ease-in-out;
    -ms-transition: padding 300ms ease-in-out;
    transition: padding 300ms ease-in-out; }
    .button a.readMore:before {
      content: '';
      position: absolute;
      bottom: 0px;
      width: 100%;
      left: -12px;
      height: 2px;
      background: #3C39CD;
      -webkit-transition: left 250ms ease-in-out;
      -moz-transition: left 250ms ease-in-out;
      -ms-transition: left 250ms ease-in-out;
      transition: left 250ms ease-in-out; }
    .button a.readMore:hover {
      padding-left: 5px; }
      .button a.readMore:hover:before {
        left: 18px; }
    .button a.readMore.white {
      color: #fff; }
      .button a.readMore.white:before {
        background: #96BAFF; }
    @media screen and (min-width: 1280px) and (max-width: 1439px) {
      .button a.readMore {
        font-size: 1.0em; } }

/********************************************* --ICONOS --**************************/
html.smil {
  /* --icon desarrollo de software --*/
  /* --icon cross platform --*/
  /* --icon aplicaciones desktop --*/
  /* --icon desarrollo de apis --*/
  /* --consulting services --*/
  /* --icon agile grande --*/
  /* --icon optimizacion --*/
  /* --icon tecnologia --*/
  /* --icon personas --*/
  /* --icon 6 Web aplications --*/
  /* --icon 7 Cross platform--*/
  /* --icon 8 desktop applications--*/
  /* --icon 9 apis--*/
  /* --icon 10 consulting--*/
  /********************************************* --KEYFRAME --**********************/ }
  @media screen and (min-width: 0) and (max-width: 991px) {
    html.smil svg.icon {
      -webkit-transition: none !important;
      -moz-transition: none !important;
      -ms-transition: none !important;
      transition: none !important; } }
  html.smil svg.icon path {
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-iteration-count: 1;
    -moz-animation-fill-mode: forwards;
    -moz-animation-iteration-count: 1;
    -ms-animation-fill-mode: forwards;
    -ms-animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-iteration-count: 1;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    -ms-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
    @media screen and (min-width: 0) and (max-width: 991px) {
      html.smil svg.icon path {
        -webkit-animation-duration: 0s !important;
        -moz-animation-duration: 0s !important;
        -ms-animation-duration: 0s !important;
        animation-duration: 0s !important;
        stroke-dasharray: 0 !important;
        stroke-dashoffset: 0 !important; } }
  html.smil svg .i1_cuadro {
    stroke-dasharray: 232.43234252929688;
    stroke-dashoffset: 232.43234252929688;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i1_dcha {
    stroke-dasharray: 20.853771209716797;
    stroke-dashoffset: 20.853771209716797;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i1_izq {
    stroke-dasharray: 20.853778839111328;
    stroke-dashoffset: 20.853778839111328;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i1_barra {
    stroke-dasharray: 15.818621635437012;
    stroke-dashoffset: 15.818621635437012;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i1_linea {
    stroke-dasharray: 48.70058059692383;
    stroke-dashoffset: 48.70058059692383;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i2_mob_home {
    stroke-dasharray: 20.101362228393555;
    stroke-dashoffset: 20.101362228393555;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i2_mob_ver {
    stroke-dasharray: 104.76856994628906;
    stroke-dashoffset: 104.76856994628906;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i2_mob_ver_2 {
    stroke-dasharray: 173.37979125976562;
    stroke-dashoffset: 173.37979125976562;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i2_mob_hor_linea {
    stroke-dasharray: 30.5;
    stroke-dashoffset: 30.5;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i2_mob_horizontal {
    stroke-dasharray: 232.43234252929688;
    stroke-dashoffset: 232.43234252929688;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i2_camara {
    stroke-dasharray: 8.624999046325684;
    stroke-dashoffset: 8.624999046325684;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i2_linea {
    stroke-dasharray: 232.43234252929688;
    stroke-dashoffset: 232.43234252929688;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .st0 {
    fill: #2B2996; }
  html.smil svg .i2_mob_home {
    fill: none;
    stroke: #F2F7FF;
    stroke-width: 2;
    stroke-linecap: round; }
  html.smil svg .i2_mob_ver_2 {
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 2;
    stroke-linecap: round; }
  html.smil svg .i2_mob_hor_linea {
    fill: none;
    stroke: #96BAFF;
    stroke-width: 2;
    stroke-linecap: round; }
  html.smil svg .i2_mob_horizontal {
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 2;
    stroke-linecap: round; }
  html.smil svg .i2_camara {
    fill: #96BAFF; }
  html.smil svg .i2_linea {
    fill: none;
    stroke: #96BAFF;
    stroke-width: 2;
    stroke-linecap: round; }
  html.smil svg .i3_estructura_2 {
    stroke-dasharray: 71.93671417236328;
    stroke-dashoffset: 71.93671417236328;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i3_base {
    stroke-dasharray: 42.19181823730469;
    stroke-dashoffset: 42.19181823730469;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i3_linea_derecha {
    stroke-dasharray: 26.786937713623047;
    stroke-dashoffset: 26.786937713623047;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i3_linea_izquierda {
    stroke-dasharray: 27.139066696166992;
    stroke-dashoffset: 27.139066696166992;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i3_circulo {
    stroke-dasharray: 15.094518661499023;
    stroke-dashoffset: 15.094518661499023;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i3_estructura_1 {
    stroke-dasharray: 138.52369689941406;
    stroke-dashoffset: 138.52369689941406;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i3_linea {
    stroke-dasharray: 52.191314697265625;
    stroke-dashoffset: 52.191314697265625;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i4_enchufe_1 {
    stroke-dasharray: 60.473716735839844;
    stroke-dashoffset: 60.473716735839844;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i4_enchufe-base {
    stroke-dasharray: 38.36746597290039;
    stroke-dashoffset: 38.36746597290039;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i4_enchufe {
    stroke-dasharray: 4.30000114440918;
    stroke-dashoffset: 4.30000114440918;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i4_enchufe_2_1_ {
    stroke-dasharray: 4.30000114440918;
    stroke-dashoffset: 4.30000114440918;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i4_estructura {
    stroke-dasharray: 224.63778686523438;
    stroke-dashoffset: 224.63778686523438;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i4_linea {
    stroke-dasharray: 49.20000076293945;
    stroke-dashoffset: 49.20000076293945;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil .st0 {
    fill: #2B2996; }
  html.smil .i4_enchufe_1 {
    fill: none;
    stroke: #96BAFF;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round; }
  html.smil .i4_enchufe-base {
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 2;
    stroke-linecap: round; }
  html.smil .i4_enchufe {
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round; }
  html.smil .i4_enchufe_2_1_ {
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round; }
  html.smil .i4_estructura {
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 2;
    stroke-linecap: round; }
  html.smil .i4_Shape_5_ {
    fill: #96BAFF; }
  html.smil .i4_Shape_6_ {
    fill: #FFFFFF; }
  html.smil .i4_linea {
    fill: none;
    stroke: #96BAFF;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round; }
  html.smil svg .nube_2 {
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 2; }
  html.smil svg .nube_1 {
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 2;
    stroke-linecap: round; }
  html.smil svg .plus {
    fill: none;
    stroke: #96BAFF;
    stroke-width: 2;
    stroke-linecap: round; }
  html.smil svg .linea {
    fill: none;
    stroke: #96BAFF;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round; }
  html.smil svg .nube_2 {
    stroke-dasharray: 182.78370666503906;
    stroke-dashoffset: 182.78370666503906;
    animation-duration: 1s; }
  html.smil svg .nube_1 {
    stroke-dasharray: 114.84365844726562;
    stroke-dashoffset: 114.84365844726562;
    animation-duration: 1s; }
  html.smil svg .plus {
    stroke-dasharray: 5;
    stroke-dashoffset: 5;
    animation-duration: 1s; }
  html.smil svg .linea {
    stroke-dasharray: 48.899993896484375;
    stroke-dashoffset: 48.899993896484375;
    animation-duration: 1s; }
  html.smil svg .i5_curva {
    stroke-dasharray: 484.7140197753906;
    stroke-dashoffset: 484.7140197753906;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i5_redonda {
    stroke-dasharray: 301.3134765625;
    stroke-dashoffset: 301.3134765625;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i5_lupa1 {
    stroke-dasharray: 20.50737190246582;
    stroke-dashoffset: 20.50737190246582;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i5_linea4 {
    stroke-dasharray: 56.494354248046875;
    stroke-dashoffset: 56.494354248046875;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i5_linea3 {
    stroke-dasharray: 11.42232894897461;
    stroke-dashoffset: 11.42232894897461;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i5_linea2 {
    stroke-dasharray: 18.076492309570312;
    stroke-dashoffset: 18.076492309570312;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i5_red1 {
    stroke-dasharray: 230.83673095703125;
    stroke-dashoffset: 230.83673095703125;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i5_linea1 {
    stroke-dasharray: 89.39593505859375;
    stroke-dashoffset: 89.39593505859375;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i5_dcha {
    stroke-dasharray: 33.21904754638672;
    stroke-dashoffset: 33.21904754638672;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i5_izq {
    stroke-dasharray: 33.219024658203125;
    stroke-dashoffset: 33.219024658203125;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i5_izq {
    stroke-dasharray: 77.39845275878906;
    stroke-dashoffset: 77.39845275878906;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_redonda_reloj2 {
    stroke-dasharray: 84.04947662353516;
    stroke-dashoffset: 84.04947662353516;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_redonda_reloj1 {
    stroke-dasharray: 18.967987060546875;
    stroke-dashoffset: 18.967987060546875;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_reloj3 {
    stroke-dasharray: 5.961455345153809;
    stroke-dashoffset: 5.961455345153809;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_reloj2 {
    stroke-dasharray: 3.321229934692383;
    stroke-dashoffset: 3.321229934692383;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_reloj1 {
    stroke-dasharray: 5.253833770751953;
    stroke-dashoffset: 5.253833770751953;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_flecha_dcha {
    stroke-dasharray: 22.54467010498047;
    stroke-dashoffset: 22.54467010498047;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_dcha {
    stroke-dasharray: 10.99010944366455;
    stroke-dashoffset: 10.99010944366455;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_izq2 {
    stroke-dasharray: 5.1991095542907715;
    stroke-dashoffset: 5.1991095542907715;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_izq1 {
    stroke-dasharray: 5.1991095542907715;
    stroke-dashoffset: 5.1991095542907715;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_redonda2 {
    stroke-dasharray: 143.0419921875;
    stroke-dashoffset: 143.0419921875;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i10_redonda1 {
    stroke-dasharray: 67.110107421875;
    stroke-dashoffset: 67.110107421875;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i11_cuadro {
    stroke-dasharray: 234.11915588378906;
    stroke-dashoffset: 234.11915588378906;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i11_linea {
    stroke-dasharray: 60.730648040771484;
    stroke-dashoffset: 60.730648040771484;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i11_rueda2 {
    stroke-dasharray: 106.5697021484375;
    stroke-dashoffset: 106.5697021484375;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i11_rueda1 {
    stroke-dasharray: 18.322021484375;
    stroke-dashoffset: 18.322021484375;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i12_linea {
    stroke-dasharray: 23.6336669921875;
    stroke-dashoffset: 23.6336669921875;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i12_pers2 {
    stroke-dasharray: 173.62548828125;
    stroke-dashoffset: 173.62548828125;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i12_pers1 {
    stroke-dasharray: 105.09532165527344;
    stroke-dashoffset: 105.09532165527344;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i12_bombi3 {
    stroke-dasharray: 55.12656021118164;
    stroke-dashoffset: 55.12656021118164;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i12_bombi2 {
    stroke-dasharray: 6.0623321533203125;
    stroke-dashoffset: 6.0623321533203125;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i12_bombi1 {
    stroke-dasharray: 17.002113342285156;
    stroke-dashoffset: 17.002113342285156;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i6_cuadrado {
    stroke-dasharray: 771.4904174804688;
    stroke-dashoffset: 771.4904174804688;
    animation-duration: 2s; }
  html.smil svg .i6_barra {
    stroke-dasharray: 52.69624710083008;
    stroke-dashoffset: 52.69624710083008;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i6_linea2 {
    stroke-dasharray: 135.00186157226562;
    stroke-dashoffset: 135.00186157226562;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i6_linea1 {
    stroke-dasharray: 38.001853942871094;
    stroke-dashoffset: 38.001853942871094;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i6_derecha {
    stroke-dasharray: 69.2555160522461;
    stroke-dashoffset: 69.2555160522461;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i6_izquierda {
    stroke-dasharray: 69.25550079345703;
    stroke-dashoffset: 69.25550079345703;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i7_mvl_redonda {
    stroke-dasharray: 67.98397827148438;
    stroke-dashoffset: 67.98397827148438;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i7_mvl_izq1 {
    stroke-dasharray: 349.62359619140625;
    stroke-dashoffset: 349.62359619140625;
    animation-duration: 2s; }
  html.smil svg .i7_mvl_izq2 {
    stroke-dasharray: 227.23074340820312;
    stroke-dashoffset: 227.23074340820312;
    animation-duration: 2s; }
  html.smil svg .i7_linea2 {
    stroke-dasharray: 101.55172729492188;
    stroke-dashoffset: 101.55172729492188;
    animation-duration: 2s; }
  html.smil svg .i7_linea1 {
    stroke-dasharray: 128.3333740234375;
    stroke-dashoffset: 128.3333740234375;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i7_mvl_dcha {
    stroke-dasharray: 283.70538330078125;
    stroke-dashoffset: 283.70538330078125;
    animation-duration: 2s; }
  html.smil svg .i8_base {
    stroke-dasharray: 143.8201141357422;
    stroke-dashoffset: 143.8201141357422;
    animation-duration: 2s; }
  html.smil svg .i8_linea_gris2 {
    stroke-dasharray: 18.687713623046875;
    stroke-dashoffset: 18.687713623046875;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i8_redonda_gris {
    stroke-dasharray: 51.39762496948242;
    stroke-dashoffset: 51.39762496948242;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i8_linea_gris1 {
    stroke-dasharray: 92.9053955078125;
    stroke-dashoffset: 92.9053955078125;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i8_pantalla_azul {
    stroke-dasharray: 238.0164794921875;
    stroke-dashoffset: 238.0164794921875;
    animation-duration: 2s; }
  html.smil svg .i8_linea_azul {
    stroke-dasharray: 52.25152587890625;
    stroke-dashoffset: 52.25152587890625;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i8_pantalla_blanca {
    stroke-dasharray: 472.57476806640625;
    stroke-dashoffset: 472.57476806640625;
    animation-duration: 2s; }
  html.smil svg .i8_line_blanca {
    stroke-dasharray: 178.66697692871094;
    stroke-dashoffset: 178.66697692871094;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i9_cuadro_blanco {
    stroke-dasharray: 404.8291015625;
    stroke-dashoffset: 404.8291015625;
    animation-duration: 2s; }
  html.smil svg .i9_cuadro_gris {
    stroke-dasharray: 414.000244140625;
    stroke-dashoffset: 414.000244140625;
    animation-duration: 2s; }
  html.smil svg .i9_ench_lingris {
    stroke-dasharray: 91.64137268066406;
    stroke-dashoffset: 91.64137268066406;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i9_ench_curva {
    stroke-dasharray: 127.27940368652344;
    stroke-dashoffset: 127.27940368652344;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i9_ench {
    stroke-dasharray: 144.2373046875;
    stroke-dashoffset: 144.2373046875;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i9_ench_lin2 {
    stroke-dasharray: 16.195327758789062;
    stroke-dashoffset: 16.195327758789062;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i9_ench_lin1 {
    stroke-dasharray: 16.195327758789062;
    stroke-dashoffset: 16.195327758789062;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i9_linea_blanca {
    stroke-dasharray: 173.5749969482422;
    stroke-dashoffset: 173.5749969482422;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    animation-duration: 1s; }
  html.smil svg .i9_linea_azul {
    stroke-dasharray: 48.17974853515625;
    stroke-dashoffset: 48.17974853515625;
    animation-duration: 2s; }
  html.smil svg .nube_10_azul {
    stroke-dasharray: 238.56369018554688;
    stroke-dashoffset: 238.56369018554688;
    animation-duration: 1s; }
  html.smil svg .nube_10 {
    stroke-dasharray: 416.5829162597656;
    stroke-dashoffset: 416.5829162597656;
    animation-duration: 1s; }
  html.smil svg .nube_10_blanco {
    stroke-dasharray: 447.66815185546875;
    stroke-dashoffset: 447.66815185546875;
    animation-duration: 1s; }
  html.smil svg .plus10 {
    stroke-dasharray: 14.699996948242188;
    stroke-dashoffset: 14.699996948242188;
    animation-duration: 1s; }
  html.smil svg .linea10 {
    stroke-dasharray: 96.0999984741211;
    stroke-dashoffset: 96.0999984741211;
    animation-duration: 2s; }
  html.smil svg .nube_10 {
    fill: none;
    stroke: #96BAFF;
    stroke-width: 3;
    stroke-linecap: round; }
  html.smil svg .nube_10_azul {
    fill: none;
    stroke: #3C39CD;
    stroke-width: 3px;
    stroke-linecap: round; }
  html.smil svg .nube_10_blanco {
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 3;
    stroke-linecap: round; }
  html.smil svg .plus10 {
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 3;
    stroke-linecap: round; }
  html.smil svg .linea10 {
    fill: none;
    stroke: #96BAFF;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round; }
@-webkit-keyframes draw {
  to {
    stroke-dashoffset: 0; } }
@keyframes draw {
  to {
    stroke-dashoffset: 0; } }
.lines-group {
  z-index: 5;
  width: 100%; }
  @media screen and (min-width: 0) and (max-width: 991px) {
    .lines-group {
      display: none; } }
  .lines-group > div {
    width: 100%;
    position: relative; }
    .lines-group > div .line {
      position: absolute; }
      .lines-group > div .line > div {
        -webkit-transform: scaleX(0);
        -moz-transform: scaleX(0);
        -ms-transform: scaleX(0);
        transform: scaleX(0); }

.nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #15144E;
  z-index: -100;
  opacity: 0;
  -webkit-transition: opacity 400ms ease-in-out 100ms, z-index 400ms linear 1250ms;
  -moz-transition: opacity 400ms ease-in-out 100ms, z-index 400ms linear 1250ms;
  -ms-transition: opacity 400ms ease-in-out 100ms, z-index 400ms linear 1250ms;
  transition: opacity 400ms ease-in-out 100ms, z-index 400ms linear 1250ms; }
  .nav .nav-content {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    height: 100%;
    position: relative;
    display: table;
    padding: 0 40px; }
    @media screen and (min-width: 321px) and (max-width: 479px) {
      .nav .nav-content {
        display: block;
        padding-top: 22%; } }
    @media screen and (min-width: 0) and (max-width: 320px) {
      .nav .nav-content {
        display: block;
        padding-top: 18%; } }
    .nav .nav-content > div {
      display: table-cell;
      *zoom: 1;
      vertical-align: middle; }
      .nav .nav-content > div:before, .nav .nav-content > div:after {
        display: table;
        clear: both;
        content: "";
        line-height: 0; }
      @media screen and (min-width: 0) and (max-width: 479px) {
        .nav .nav-content > div {
          display: block; } }
      .nav .nav-content > div .navigation {
        float: left;
        width: 70%; }
        @media screen and (min-width: 768px) and (max-width: 991px) {
          .nav .nav-content > div .navigation {
            width: 60%; } }
        @media screen and (min-width: 480px) and (max-width: 767px) {
          .nav .nav-content > div .navigation {
            width: 50%;
            padding-top: 4%; } }
        @media screen and (min-width: 0) and (max-width: 479px) {
          .nav .nav-content > div .navigation {
            width: 100%;
            float: none; } }
        .nav .nav-content > div .navigation ul li {
          -webkit-transition: all 400ms ease-in-out;
          -moz-transition: all 400ms ease-in-out;
          -ms-transition: all 400ms ease-in-out;
          transition: all 400ms ease-in-out;
          opacity: 0;
          -webkit-transform: translate3d(0, 40px, 0);
          -moz-transform: translate3d(0, 40px, 0);
          -ms-transform: translate3d(0, 40px, 0);
          transform: translate3d(0, 40px, 0); }
          .nav .nav-content > div .navigation ul li:nth-child(1) {
            -webkit-transition-delay: 250ms;
            -moz-transition-delay: 250ms;
            -ms-transition-delay: 250ms;
            transition-delay: 250ms; }
          .nav .nav-content > div .navigation ul li:nth-child(2) {
            -webkit-transition-delay: 200ms;
            -moz-transition-delay: 200ms;
            -ms-transition-delay: 200ms;
            transition-delay: 200ms; }
          .nav .nav-content > div .navigation ul li:nth-child(3) {
            -webkit-transition-delay: 150ms;
            -moz-transition-delay: 150ms;
            -ms-transition-delay: 150ms;
            transition-delay: 150ms; }
          .nav .nav-content > div .navigation ul li:nth-child(4) {
            -webkit-transition-delay: 100ms;
            -moz-transition-delay: 100ms;
            -ms-transition-delay: 100ms;
            transition-delay: 100ms; }
          .nav .nav-content > div .navigation ul li:nth-child(5) {
            -webkit-transition-delay: 50ms;
            -moz-transition-delay: 50ms;
            -ms-transition-delay: 50ms;
            transition-delay: 50ms; }
          .nav .nav-content > div .navigation ul li a {
            text-decoration: none;
            color: #3C39CD;
            font-weight: 100;
            font-size: 9.2em;
            text-decoration: none;
            padding: 0.05em 0;
            display: inline-block;
            -webkit-transition: color 400ms ease-in-out;
            -moz-transition: color 400ms ease-in-out;
            -ms-transition: color 400ms ease-in-out;
            transition: color 400ms ease-in-out; }
            @media screen and (min-width: 321px) and (max-width: 767px) {
              .nav .nav-content > div .navigation ul li a {
                font-size: 4.6em;
                padding: 0.25em 0; } }
            @media screen and (min-width: 0) and (max-width: 320px) {
              .nav .nav-content > div .navigation ul li a {
                font-size: 4.6em;
                padding: 0.15em 0; } }
            .nav .nav-content > div .navigation ul li a:hover {
              color: #fff; }
          .nav .nav-content > div .navigation ul li.is-current a {
            color: #fff; }
      .nav .nav-content > div .social {
        float: right;
        width: 30%;
        padding-top: 60px;
        -webkit-transform: translate3d(0, -30px, 0);
        -moz-transform: translate3d(0, -30px, 0);
        -ms-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0);
        -webkit-transition: -webkit-transform 400ms ease-in-out;
        -moz-transition: -moz-transform 400ms ease-in-out;
        -ms-transition: -ms-transform 400ms ease-in-out;
        transition: transform 400ms ease-in-out;
        text-align: left; }
        @media screen and (min-width: 768px) and (max-width: 991px) {
          .nav .nav-content > div .social {
            width: 35%; } }
        @media screen and (min-width: 480px) and (max-width: 767px) {
          .nav .nav-content > div .social {
            width: 50%;
            padding-top: 8%; } }
        @media screen and (min-width: 0) and (max-width: 479px) {
          .nav .nav-content > div .social {
            float: none;
            width: 100%;
            position: fixed;
            bottom: 8%; } }
        .nav .nav-content > div .social > div {
          display: inline-block;
          text-align: left; }
          .nav .nav-content > div .social > div p {
            letter-spacing: 0.025em;
            font-size: 1.3em;
            color: #fff;
            margin: 60px 0;
            line-height: 1.5em; }
            @media screen and (min-width: 480px) and (max-width: 767px) {
              .nav .nav-content > div .social > div p {
                margin: 10% 0; } }
            .nav .nav-content > div .social > div p span {
              padding-left: 34px; }
          @media screen and (min-width: 0) and (max-width: 479px) {
            .nav .nav-content > div .social > div .top {
              display: none; } }
          .nav .nav-content > div .social > div .bottom ul li {
            display: inline-block;
            margin-right: 15px; }
            .nav .nav-content > div .social > div .bottom ul li a {
              width: 37px;
              height: 37px;
              background-repeat: no-repeat;
              background-position: 0 0;
              display: block; }
              .nav .nav-content > div .social > div .bottom ul li a:hover {
                background-position: 0 bottom; }
              .nav .nav-content > div .social > div .bottom ul li a.twitter {
                background-image: url("../images/icon-twitter.svg"); }
              .nav .nav-content > div .social > div .bottom ul li a.linkedin {
                background-image: url("../images/icon-linkedin.svg"); }
              .nav .nav-content > div .social > div .bottom ul li a.github {
                background-image: url("../images/icon-github.svg"); }
              .nav .nav-content > div .social > div .bottom ul li a.npm {
                background-image: url("../images/icon-npm.svg"); }
          .nav .nav-content > div .social > div .lang {
            margin-top: 60px; }
            @media screen and (min-width: 0) and (max-width: 767px) {
              .nav .nav-content > div .social > div .lang {
                margin-top: 40px; } }
            .nav .nav-content > div .social > div .lang ul li {
              display: inline-block;
              margin-right: 25px; }
              .nav .nav-content > div .social > div .lang ul li a {
                -webkit-transition: color 400ms ease-in-out;
                -moz-transition: color 400ms ease-in-out;
                -ms-transition: color 400ms ease-in-out;
                transition: color 400ms ease-in-out;
                font-size: 1.1em;
                font-weight: 900;
                text-decoration: none;
                font-family: 'Poppins', sans-serif;
                text-transform: uppercase;
                color: #3C39CD;
                display: block; }
                .nav .nav-content > div .social > div .lang ul li a:hover, .nav .nav-content > div .social > div .lang ul li a.is-current {
                  color: #fff; }
  .nav .lines {
    display: none;
    width: 620px;
    position: absolute;
    bottom: 20%;
    right: 30px;
    height: 104px;
    -webkit-transition: opacity 400ms ease-in-out;
    -moz-transition: opacity 400ms ease-in-out;
    -ms-transition: opacity 400ms ease-in-out;
    transition: opacity 400ms ease-in-out;
    opacity: 0; }
    .nav .lines > div {
      position: relative;
      height: 100%;
      width: 100%; }
    .nav .lines .line {
      position: absolute; }
      .nav .lines .line.line-1 {
        width: 208px;
        height: 6px;
        background: #3C3ACD;
        right: 0;
        top: 0px; }
      .nav .lines .line.line-2 {
        width: 208px;
        height: 9px;
        background: #4092FF;
        left: 300px;
        bottom: 28px; }
      .nav .lines .line.line-3 {
        width: 221px;
        height: 2px;
        background: #4A00AF;
        left: 190px;
        bottom: 55px; }
      .nav .lines .line.line-4 {
        width: 80px;
        height: 1px;
        background: #514DEA;
        left: 111px;
        bottom: 39px; }
      .nav .lines .line.line-5 {
        left: 0;
        bottom: 0;
        width: 31px;
        height: 1px;
        background: #96BAFF; }
  .nav.is-open {
    z-index: 100;
    opacity: 1;
    -webkit-transition: opacity 400ms ease-in-out;
    -moz-transition: opacity 400ms ease-in-out;
    -ms-transition: opacity 400ms ease-in-out;
    transition: opacity 400ms ease-in-out; }
    .nav.is-open .lines {
      opacity: 1; }
    .nav.is-open .nav-content .social {
      -webkit-transform: translate3d(0, 0, 0);
      -moz-transform: translate3d(0, 0, 0);
      -ms-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0); }
    .nav.is-open .nav-content .navigation ul li {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
      -moz-transform: translate3d(0, 0, 0);
      -ms-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0); }

/* Logo  */
.bg-nav {
  position: fixed;
  z-index: 10; }
  @media screen and (min-width: 0) and (max-width: 991px) {
    .bg-nav {
      height: 60px;
      width: 100%;
      display: block;
      -webkit-transition: background 400ms ease-in-out;
      -moz-transition: background 400ms ease-in-out;
      -ms-transition: background 400ms ease-in-out;
      transition: background 400ms ease-in-out; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    .bg-nav.is-fixed {
      background: #2B2996; } }
  .bg-nav .logo {
    position: fixed;
    top: 73px;
    left: 100px; }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      .bg-nav .logo {
        left: 70px;
        top: 54px; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      .bg-nav .logo {
        top: 32px;
        left: 25px;
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        transform: translateY(-50%); } }
    .bg-nav .logo img {
      -webkit-transition: display 400ms ease-in-out;
      -moz-transition: display 400ms ease-in-out;
      -ms-transition: display 400ms ease-in-out;
      transition: display 400ms ease-in-out;
      display: block; }
      .bg-nav .logo img.white {
        display: block; }
      .bg-nav .logo img.black {
        display: none; }

.toggle {
  z-index: 101;
  position: fixed;
  top: 49px;
  right: 80px;
  margin: 18px 24px 20px 24px;
  padding: 0px;
  height: 24px;
  width: 27px;
  cursor: pointer;
  -webkit-transition: right 400ms ease-in-out, top 400ms ease-in-out;
  -moz-transition: right 400ms ease-in-out, top 400ms ease-in-out;
  -ms-transition: right 400ms ease-in-out, top 400ms ease-in-out;
  transition: right 400ms ease-in-out, top 400ms ease-in-out; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    .toggle {
      right: 55px;
      top: 30px; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    .toggle {
      top: 5px;
      right: 4px; } }
  .toggle > div {
    height: 14px;
    width: 27px; }
    .toggle > div > div {
      width: 100%;
      height: 2px;
      margin: 0 0 5px 0;
      background-color: #fff;
      transition-duration: .3s;
      transition-delay: 0s, 0s, 0s, 0s; }
      .toggle > div > div:nth-child(2) {
        transform: translateX(5px); }
  .toggle:hover > div > div:nth-child(2) {
    transform: translateX(8px); }
  .toggle:hover > div > div:nth-child(3) {
    transform: translateX(-5px); }
  .toggle.is-open {
    background: none; }
    .toggle.is-open > div {
      position: relative;
      height: 24px;
      width: 24px; }
      .toggle.is-open > div > div {
        background-color: #fff !important; }
        .toggle.is-open > div > div:nth-child(1) {
          -webkit-transform: translateY(7px) rotate(45deg);
          -moz-transform: translateY(7px) rotate(45deg);
          -ms-transform: translateY(7px) rotate(45deg);
          transform: translateY(7px) rotate(45deg); }
        .toggle.is-open > div > div:nth-child(2) {
          opacity: 0; }
        .toggle.is-open > div > div:nth-child(3) {
          width: 100%;
          -webkit-transform: translateX(0) translateY(-7px) rotate(-45deg);
          -moz-transform: translateX(0) translateY(-7px) rotate(-45deg);
          -ms-transform: translateX(0) translateY(-7px) rotate(-45deg);
          transform: translateX(0) translateY(-7px) rotate(-45deg); }
  .toggle.black > div > div {
    background-color: #000; }

body.is-open {
  overflow: hidden; }
body.contact .toggle > div > div, body.case-study-detail .toggle > div > div, body.legal .toggle > div > div {
  background-color: #23252D; }
@media screen and (min-width: 0) and (max-width: 991px) {
  body.contact .toggle > div > div, body.case-study-detail .toggle > div > div, body.legal .toggle > div > div {
    background-color: #23252D; }
  body.contact .toggle.is-fixed > div > div, body.case-study-detail .toggle.is-fixed > div > div, body.legal .toggle.is-fixed > div > div {
    background-color: #fff; }
  body.contact .bg-nav .logo img.white, body.case-study-detail .bg-nav .logo img.white, body.legal .bg-nav .logo img.white {
    display: none; }
  body.contact .bg-nav .logo img.black, body.case-study-detail .bg-nav .logo img.black, body.legal .bg-nav .logo img.black {
    display: block; }
  body.contact .bg-nav.is-fixed .logo img.white, body.case-study-detail .bg-nav.is-fixed .logo img.white, body.legal .bg-nav.is-fixed .logo img.white {
    display: block; }
  body.contact .bg-nav.is-fixed .logo img.black, body.case-study-detail .bg-nav.is-fixed .logo img.black, body.legal .bg-nav.is-fixed .logo img.black {
    display: none; } }

@media screen and (min-width: 992px) {
  html.nav-black .toggle > div > div {
    background-color: #23252D; }
  html.logo-black .bg-nav .logo img.white {
    display: none; }
  html.logo-black .bg-nav .logo img.black {
    display: block; } }
body.home #main > div {
  overflow: hidden; }
body.home #main > .header {
  overflow: visible;
  position: relative; }
  body.home #main > .header > .header-wrap {
    overflow: hidden;
    position: relative;
    height: 100vh;
    width: 100%; }
    @media screen and (min-width: 768px) and (max-width: 990px) {
      body.home #main > .header > .header-wrap {
        height: 50vh; } }
    @media screen and (min-width: 0px) and (max-width: 767px) {
      body.home #main > .header > .header-wrap {
        height: 100vh; } }
    body.home #main > .header > .header-wrap .video-wrap {
      height: 100% !important;
      width: 100%; }
      body.home #main > .header > .header-wrap .video-wrap video {
        width: 100%;
        height: 100%;
        display: inline-block;
        vertical-align: baseline; }
      body.home #main > .header > .header-wrap .video-wrap.no-video {
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center; }
        body.home #main > .header > .header-wrap .video-wrap.no-video video {
          display: none; }
    body.home #main > .header > .header-wrap .content {
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      display: table;
      z-index: 6; }
      @media screen and (min-width: 0px) and (max-width: 991px) {
        body.home #main > .header > .header-wrap .content {
          display: block;
          left: auto;
          height: auto;
          position: absolute;
          top: 50%;
          -webkit-transform: translateY(-50%);
          -moz-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          -o-transform: translateY(-50%);
          transform: translateY(-50%);
          padding: 0 30px; } }
      @media screen and (min-width: 480px) and (max-width: 991px) {
        body.home #main > .header > .header-wrap .content {
          top: 55%; } }
      body.home #main > .header > .header-wrap .content > div {
        display: table-cell;
        vertical-align: middle;
        color: #fff;
        text-align: center; }
        @media screen and (min-width: 0px) and (max-width: 991px) {
          body.home #main > .header > .header-wrap .content > div {
            display: block;
            text-align: left; } }
        body.home #main > .header > .header-wrap .content > div h1 > div:nth-of-type(1) {
          margin-right: 2.1em; }
          @media screen and (min-width: 0px) and (max-width: 991px) {
            body.home #main > .header > .header-wrap .content > div h1 > div:nth-of-type(1) {
              margin-right: auto; } }
        body.home #main > .header > .header-wrap .content > div h1 > div:nth-of-type(2) {
          margin-left: 2.1em; }
          @media screen and (min-width: 0px) and (max-width: 991px) {
            body.home #main > .header > .header-wrap .content > div h1 > div:nth-of-type(2) {
              margin-left: auto; } }
        body.home #main > .header > .header-wrap .content > div h2 {
          width: 100%;
          max-width: 736px;
          text-align: left;
          margin: 0 auto;
          margin-bottom: 60px;
          position: relative; }
          body.home #main > .header > .header-wrap .content > div h2:after {
            content: '';
            width: 126px;
            height: 2px;
            background: #008DFF;
            position: absolute;
            bottom: -37px;
            left: -63px;
            opacity: 0;
            -webkit-transition: all 800ms ease-in-out;
            -moz-transition: all 800ms ease-in-out;
            -ms-transition: all 800ms ease-in-out;
            transition: all 800ms ease-in-out;
            -webkit-transform: translateX(-250px);
            -moz-transform: translateX(-250px);
            -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
            @media screen and (min-width: 0px) and (max-width: 991px) {
              body.home #main > .header > .header-wrap .content > div h2:after {
                width: 60px;
                bottom: -30px;
                left: -20px;
                opacity: 1;
                -webkit-transform: translateX(0px);
                -moz-transform: translateX(0px);
                -ms-transform: translateX(0px);
                transform: translateX(0px); } }
          body.home #main > .header > .header-wrap .content > div h2.is-visible:after {
            opacity: 1;
            -webkit-transform: translateX(0px);
            -moz-transform: translateX(0px);
            -ms-transform: translateX(0px);
            transform: translateX(0px); }
          @media screen and (min-width: 992px) and (max-width: 1279px) {
            body.home #main > .header > .header-wrap .content > div h2 {
              max-width: 600px; } }
          @media screen and (min-width: 0px) and (max-width: 991px) {
            body.home #main > .header > .header-wrap .content > div h2 {
              margin-bottom: 55px; } }
  body.home #main > .header .lines-group1 {
    position: absolute;
    top: 170px;
    left: 0; }
  body.home #main > .header .lines-group2 {
    position: absolute;
    bottom: 15vh;
    right: 0; }
  body.home #main > .header .lines-group3 {
    position: absolute;
    bottom: 52px;
    left: 5%; }
body.home #main > .team {
  padding: 330px 0 0px 0; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    body.home #main > .team {
      padding: 200px 0 85px 0; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.home #main > .team {
      padding: 75px 0 25px 0; } }
  body.home #main > .team > div {
    position: relative;
    width: 100%;
    height: 100%; }
    body.home #main > .team > div .bg {
      position: absolute;
      top: 22%;
      left: 0;
      height: 65%;
      background: #F3F7FF;
      width: calc(630px + ((100% - 1500px)/2));
      -webkit-transform: scaleX(0);
      -moz-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0);
      -webkit-transform-origin: left center;
      -moz-transform-origin: left center;
      -ms-transform-origin: left center;
      transform-origin: left center;
      -webkit-transition: -webkit-transform 600ms ease-in-out;
      -moz-transition: -webkit-transform 600ms ease-in-out;
      -ms-transition: -webkit-transform 600ms ease-in-out;
      transition: -webkit-transform 600ms ease-in-out; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.home #main > .team > div .bg {
          -webkit-transform: scaleX(1);
          -moz-transform: scaleX(1);
          -ms-transform: scaleX(1);
          transform: scaleX(1); } }
      body.home #main > .team > div .bg.is-visible {
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
      @media screen and (min-width: 992px) and (max-width: 1279px) {
        body.home #main > .team > div .bg {
          height: 260px; } }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.home #main > .team > div .bg {
          display: none;
          bottom: -25px;
          top: auto;
          width: calc(100% - 25px);
          height: auto; }
          body.home #main > .team > div .bg:after {
            content: "";
            display: block;
            padding-bottom: 67%; } }
    body.home #main > .team > div .container {
      *zoom: 1;
      display: table; }
      body.home #main > .team > div .container:before, body.home #main > .team > div .container:after {
        display: table;
        clear: both;
        content: "";
        line-height: 0; }
      body.home #main > .team > div .container .img {
        float: left;
        width: 48%;
        max-width: 660px; }
        body.home #main > .team > div .container .img .block-revealer__content {
          position: relative;
          overflow: hidden; }
          body.home #main > .team > div .container .img .block-revealer__content:after {
            content: '';
            display: block;
            padding-bottom: 67%; }
          body.home #main > .team > div .container .img .block-revealer__content img {
            width: 100%;
            display: block;
            position: absolute;
            top: 0;
            left: 0; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.home #main > .team > div .container .img {
            margin-top: 75px;
            max-width: none;
            float: none;
            text-align: right;
            width: calc(100% - 25px);
            display: table-caption;
            caption-side: bottom;
            -webkit-transform: translateX(25px);
            -moz-transform: translateX(25px);
            -ms-transform: translateX(25px);
            transform: translateX(25px);
            -webkit-box-shadow: -25px 25px 0 0 #F3F7FF;
            -moz-box-shadow: -25px 25px 0 0 #F3F7FF;
            -ms-box-shadow: -25px 25px 0 0 #F3F7FF;
            box-shadow: -25px 25px 0 0 #F3F7FF; } }
      body.home #main > .team > div .container .txt {
        padding-top: 15%;
        margin-left: 10%;
        float: left;
        width: 35%; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.home #main > .team > div .container .txt {
            float: none;
            width: 100%;
            margin-left: 0;
            padding-top: 0; } }
        body.home #main > .team > div .container .txt .txt--p1 {
          margin-top: 53px;
          -webkit-transition: opacity 600ms ease-in-out, -webkit-transform 600ms ease-in-out;
          -moz-transition: opacity 600ms ease-in-out, -moz-transform 600ms ease-in-out;
          -ms-transition: opacity 600ms ease-in-out, -ms-transform 600ms ease-in-out;
          transition: opacity 600ms ease-in-out, transform 600ms ease-in-out; }
          @media screen and (min-width: 992px) {
            body.home #main > .team > div .container .txt .txt--p1 {
              opacity: 0;
              -webkit-transform: translateY(90px);
              -moz-transform: translateY(90px);
              -ms-transform: translateY(90px);
              transform: translateY(90px); } }
          body.home #main > .team > div .container .txt .txt--p1.is-visible {
            opacity: 1;
            -webkit-transform: translateY(0px);
            -moz-transform: translateY(0px);
            -ms-transform: translateY(0px);
            transform: translateY(0px); }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.home #main > .team > div .container .txt {
            *zoom: 1; }
            body.home #main > .team > div .container .txt:before, body.home #main > .team > div .container .txt:after {
              display: table;
              clear: both;
              content: "";
              line-height: 0; }
            body.home #main > .team > div .container .txt .button {
              padding-right: 25px;
              float: right; } }
    body.home #main > .team > div .lines-group4 {
      position: absolute;
      top: -130px;
      right: 0; }
      @media screen and (min-width: 992px) and (max-width: 1279px) {
        body.home #main > .team > div .lines-group4 {
          top: -70px; } }
body.home #main > .solutions {
  position: relative;
  *zoom: 1;
  padding: 115px 0 0px 0; }
  body.home #main > .solutions:before, body.home #main > .solutions:after {
    display: table;
    clear: both;
    content: "";
    line-height: 0; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    body.home #main > .solutions {
      padding: 85px 0 85px 0; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.home #main > .solutions {
      padding: 75px 0 0px 0; } }
  body.home #main > .solutions .left {
    float: left;
    width: 50%;
    padding-left: calc((50% - (1420px/2)) + 76px); }
    @media screen and (min-width: 1280px) and (max-width: 1545px) {
      body.home #main > .solutions .left {
        padding-left: 93px;
        width: 48%; } }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.home #main > .solutions .left {
        padding-left: 93px; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.home #main > .solutions .left {
        padding-left: 25px;
        float: none;
        width: 100%;
        padding-right: 25px; } }
    body.home #main > .solutions .left .txt {
      padding-top: 15%;
      float: left;
      width: 100%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.home #main > .solutions .left .txt {
          float: none;
          padding-top: 0; } }
      body.home #main > .solutions .left .txt .txt--p1 {
        max-width: 468px;
        padding-left: 76px;
        margin-top: 53px;
        -webkit-transition: all 600ms ease-in-out;
        -moz-transition: all 600ms ease-in-out;
        -ms-transition: all 600ms ease-in-out;
        transition: all 600ms ease-in-out; }
        @media screen and (min-width: 992px) {
          body.home #main > .solutions .left .txt .txt--p1 {
            opacity: 0;
            -webkit-transform: translateY(90px);
            -moz-transform: translateY(90px);
            -ms-transform: translateY(90px);
            transform: translateY(90px); } }
        @media screen and (min-width: 992px) and (max-width: 1279px) {
          body.home #main > .solutions .left .txt .txt--p1 {
            padding-left: 66px; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.home #main > .solutions .left .txt .txt--p1 {
            padding-left: 0;
            max-width: none; } }
        body.home #main > .solutions .left .txt .txt--p1.is-visible {
          opacity: 1;
          -webkit-transform: translateY(0px);
          -moz-transform: translateY(0px);
          -ms-transform: translateY(0px);
          transform: translateY(0px); }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.home #main > .solutions .left .txt {
          *zoom: 1; }
          body.home #main > .solutions .left .txt:before, body.home #main > .solutions .left .txt:after {
            display: table;
            clear: both;
            content: "";
            line-height: 0; }
          body.home #main > .solutions .left .txt .button {
            padding-right: 25px;
            float: right; } }
  body.home #main > .solutions .right {
    position: relative;
    width: 46%;
    float: right;
    background: #2B2996;
    padding: 70px 40px 60px 110px;
    margin-top: 260px;
    color: #fff;
    -webkit-transition: -webkit-transform 600ms ease-in-out;
    -moz-transition: -moz-transform 600ms ease-in-out;
    -ms-transition: -ms-transform 600ms ease-in-out;
    transition: transform 600ms ease-in-out; }
    @media screen and (min-width: 992px) {
      body.home #main > .solutions .right {
        -webkit-transform: translateX(100%);
        -moz-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%); } }
    @media screen and (min-width: 1280px) and (max-width: 1439px) {
      body.home #main > .solutions .right {
        padding: 70px 40px 40px 90px;
        margin-top: 200px; } }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.home #main > .solutions .right {
        padding: 60px 20px 20px 60px;
        margin-top: 180px; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.home #main > .solutions .right {
        float: none;
        width: 100%;
        top: auto;
        padding: 45px 25px 35px 25px;
        margin-top: 80px;
        box-shadow: 25px -25px 0 0 #F3F7FF; } }
    body.home #main > .solutions .right h4 {
      margin-bottom: 65px;
      opacity: 0;
      -webkit-transition: opacity 400ms ease-in-out 600ms;
      -moz-transition: opacity 400ms ease-in-out 600ms;
      -ms-transition: opacity 400ms ease-in-out 600ms;
      transition: opacity 400ms ease-in-out 600ms; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.home #main > .solutions .right h4 {
          opacity: 1;
          margin-bottom: 40px; } }
    body.home #main > .solutions .right ul li {
      *zoom: 1;
      padding: 14px 0;
      display: table; }
      body.home #main > .solutions .right ul li:before, body.home #main > .solutions .right ul li:after {
        display: table;
        clear: both;
        content: "";
        line-height: 0; }
      @media screen and (min-width: 1280px) and (max-width: 1439px) {
        body.home #main > .solutions .right ul li {
          padding: 10px 0; } }
      body.home #main > .solutions .right ul li .img {
        text-align: center;
        display: table-cell;
        width: 85px; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.home #main > .solutions .right ul li .img {
            width: 55px; } }
        @media screen and (min-width: 992px) {
          body.home #main > .solutions .right ul li .img svg {
            -webkit-transition: all 100ms ease-in-out;
            -moz-transition: all 100ms ease-in-out;
            -ms-transition: all 100ms ease-in-out;
            transition: all 100ms ease-in-out;
            opacity: 0; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.home #main > .solutions .right ul li .img svg {
            width: 55px !important;
            height: auto !important;
            opacity: 1; } }
      body.home #main > .solutions .right ul li .txt {
        display: table-cell;
        vertical-align: middle;
        padding-left: 50px; }
        @media screen and (min-width: 992px) and (max-width: 1279px) {
          body.home #main > .solutions .right ul li .txt {
            padding-left: 30px; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.home #main > .solutions .right ul li .txt {
            padding-left: 20px; } }
        body.home #main > .solutions .right ul li .txt p {
          line-height: 1.25em;
          -webkit-transition: all 400ms ease-in-out;
          -moz-transition: all 400ms ease-in-out;
          -ms-transition: all 400ms ease-in-out;
          transition: all 400ms ease-in-out; }
          @media screen and (min-width: 992px) {
            body.home #main > .solutions .right ul li .txt p {
              -webkit-transform: translateY(40px);
              -moz-transform: translateY(40px);
              -ms-transform: translateY(40px);
              transform: translateY(40px);
              opacity: 0; } }
      body.home #main > .solutions .right ul li:first-child .img svg {
        -webkit-transition-delay: 400ms;
        -moz-transition-delay: 400ms;
        -ms-transition-delay: 400ms;
        transition-delay: 400ms; }
        @media screen and (min-width: 992px) {
          body.home #main > .solutions .right ul li:first-child .img svg path {
            -webkit-animation-delay: 400ms;
            -moz-animation-delay: 400ms;
            -ms-animation-delay: 400ms;
            animation-delay: 400ms; } }
      body.home #main > .solutions .right ul li:first-child .txt p {
        -webkit-transition-delay: 400ms;
        -moz-transition-delay: 400ms;
        -ms-transition-delay: 400ms;
        transition-delay: 400ms; }
      body.home #main > .solutions .right ul li:nth-child(2) .img svg {
        -webkit-transition-delay: 800ms;
        -moz-transition-delay: 800ms;
        -ms-transition-delay: 800ms;
        transition-delay: 800ms; }
        @media screen and (min-width: 992px) {
          body.home #main > .solutions .right ul li:nth-child(2) .img svg path {
            -webkit-animation-delay: 800ms;
            -moz-animation-delay: 800ms;
            -ms-animation-delay: 800ms;
            animation-delay: 800ms; } }
      body.home #main > .solutions .right ul li:nth-child(2) .txt p {
        -webkit-transition-delay: 800ms;
        -moz-transition-delay: 800ms;
        -ms-transition-delay: 800ms;
        transition-delay: 800ms; }
      body.home #main > .solutions .right ul li:nth-child(3) .img svg {
        -webkit-transition-delay: 1200ms;
        -moz-transition-delay: 1200ms;
        -ms-transition-delay: 1200ms;
        transition-delay: 1200ms; }
        @media screen and (min-width: 992px) {
          body.home #main > .solutions .right ul li:nth-child(3) .img svg path {
            -webkit-animation-delay: 1200ms;
            -moz-animation-delay: 1200ms;
            -ms-animation-delay: 1200ms;
            animation-delay: 1200ms; } }
      body.home #main > .solutions .right ul li:nth-child(3) .txt p {
        -webkit-transition-delay: 1200ms;
        -moz-transition-delay: 1200ms;
        -ms-transition-delay: 1200ms;
        transition-delay: 1200ms; }
      body.home #main > .solutions .right ul li:nth-child(4) .img svg {
        -webkit-transition-delay: 1600ms;
        -moz-transition-delay: 1600ms;
        -ms-transition-delay: 1600ms;
        transition-delay: 1600ms; }
        @media screen and (min-width: 992px) {
          body.home #main > .solutions .right ul li:nth-child(4) .img svg path {
            -webkit-animation-delay: 1600ms;
            -moz-animation-delay: 1600ms;
            -ms-animation-delay: 1600ms;
            animation-delay: 1600ms; } }
      body.home #main > .solutions .right ul li:nth-child(4) .txt p {
        -webkit-transition-delay: 1600ms;
        -moz-transition-delay: 1600ms;
        -ms-transition-delay: 1600ms;
        transition-delay: 1600ms; }
      body.home #main > .solutions .right ul li:nth-child(5) .img svg {
        -webkit-transition-delay: 2000ms;
        -moz-transition-delay: 2000ms;
        -ms-transition-delay: 2000ms;
        transition-delay: 2000ms; }
        @media screen and (min-width: 992px) {
          body.home #main > .solutions .right ul li:nth-child(5) .img svg path {
            -webkit-animation-delay: 2000ms;
            -moz-animation-delay: 2000ms;
            -ms-animation-delay: 2000ms;
            animation-delay: 2000ms; } }
      body.home #main > .solutions .right ul li:nth-child(5) .txt p {
        -webkit-transition-delay: 2000ms;
        -moz-transition-delay: 2000ms;
        -ms-transition-delay: 2000ms;
        transition-delay: 2000ms; }
    body.home #main > .solutions .right.is-visible {
      -webkit-transform: translateX(0px);
      -moz-transform: translateX(0px);
      -ms-transform: translateX(0px);
      transform: translateX(0px); }
      body.home #main > .solutions .right.is-visible h4 {
        opacity: 1; }
      body.home #main > .solutions .right.is-visible ul li .txt p {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
        opacity: 1; }
      body.home #main > .solutions .right.is-visible ul li .img svg {
        opacity: 1; }
        body.home #main > .solutions .right.is-visible ul li .img svg path {
          -webkit-animation-name: draw;
          -moz-animation-name: draw;
          -ms-animation-name: draw;
          animation-name: draw; }
  body.home #main > .solutions .bg {
    position: absolute;
    width: 100%;
    max-width: 805px;
    left: calc((50% - (1340px/2)) + 594px - 76px);
    top: 320px;
    background: #F3F7FF;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right center;
    -moz-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
    -webkit-transition: -webkit-transform 600ms ease-in-out;
    -moz-transition: -webkit-transform 600ms ease-in-out;
    -ms-transition: -webkit-transform 600ms ease-in-out;
    transition: -webkit-transform 600ms ease-in-out; }
    body.home #main > .solutions .bg:after {
      content: '';
      display: block;
      padding-bottom: 48%; }
    body.home #main > .solutions .bg.is-visible {
      -webkit-transform: scaleX(1);
      -moz-transform: scaleX(1);
      -ms-transform: scaleX(1);
      transform: scaleX(1); }
    @media screen and (min-width: 1280px) and (max-width: 1439px) {
      body.home #main > .solutions .bg {
        top: 260px; } }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.home #main > .solutions .bg {
        top: 220px; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.home #main > .solutions .bg {
        display: none; } }
  body.home #main > .solutions .lines-group5 {
    position: absolute;
    top: 340px;
    right: 0; }
    @media screen and (min-width: 1280px) and (max-width: 1439px) {
      body.home #main > .solutions .lines-group5 {
        top: 280px; } }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.home #main > .solutions .lines-group5 {
        top: 240px; } }
  body.home #main > .solutions .lines-group6 {
    position: absolute;
    bottom: 12%;
    left: 0; }
body.home #main > .method {
  padding: 115px 0 200px 0; }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.home #main > .method {
      padding: 75px 0 75px 0; } }
  body.home #main > .method > div {
    position: relative;
    width: 100%;
    height: 100%; }
    body.home #main > .method > div > .bg {
      position: absolute;
      top: 0px;
      left: 0;
      max-height: 576px;
      background: #F3F7FF;
      width: 28%;
      -webkit-transform: scaleX(0);
      -moz-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0);
      -webkit-transform-origin: left center;
      -moz-transform-origin: left center;
      -ms-transform-origin: left center;
      transform-origin: left center;
      -webkit-transition: -webkit-transform 600ms ease-in-out;
      -moz-transition: -webkit-transform 600ms ease-in-out;
      -ms-transition: -webkit-transform 600ms ease-in-out;
      transition: -webkit-transform 600ms ease-in-out; }
      body.home #main > .method > div > .bg:after {
        content: '';
        display: block;
        padding-bottom: 120%; }
      body.home #main > .method > div > .bg.is-visible {
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.home #main > .method > div > .bg {
          display: none; } }
    body.home #main > .method > div .container {
      *zoom: 1;
      padding-top: 90px; }
      body.home #main > .method > div .container:before, body.home #main > .method > div .container:after {
        display: table;
        clear: both;
        content: "";
        line-height: 0; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.home #main > .method > div .container {
          padding-top: 0; } }
      body.home #main > .method > div .container .bg {
        position: relative;
        float: left;
        width: 50%;
        max-width: 506px; }
        body.home #main > .method > div .container .bg:after {
          content: '';
          display: block;
          padding-bottom: 117%; }
        body.home #main > .method > div .container .bg div {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background: #2B2996;
          -webkit-transform: scaleX(0);
          -moz-transform: scaleX(0);
          -ms-transform: scaleX(0);
          transform: scaleX(0);
          -webkit-transform-origin: left center;
          -moz-transform-origin: left center;
          -ms-transform-origin: left center;
          transform-origin: left center;
          -webkit-transition: -webkit-transform 600ms ease-in-out;
          -moz-transition: -webkit-transform 600ms ease-in-out;
          -ms-transition: -webkit-transform 600ms ease-in-out;
          transition: -webkit-transform 600ms ease-in-out; }
        body.home #main > .method > div .container .bg p {
          font-family: 'Poppins';
          font-weight: 600;
          color: #96BAFF;
          font-size: 1.1em;
          position: absolute;
          color: #fff;
          text-align: right;
          letter-spacing: 0.3em;
          -webkit-transform: translateX(-100%) rotate(-90deg);
          /* Safari */
          -moz-transform: translateX(-100%) rotate(-90deg);
          /* Firefox 3.6 Firefox 4 */
          -ms-transform: translateX(-100%) rotate(-90deg);
          /* IE9 */
          -o-transform: translateX(-100%) rotate(-90deg);
          /* Opera */
          transform: translateX(-100%) rotate(-90deg);
          /* W3C */
          -webkit-transform-origin: top right;
          -moz-transform-origin: top right;
          -ms-transform-origin: top right;
          -o-transform-origin: top right;
          transform-origin: top right;
          left: 30px;
          top: 30px; }
        body.home #main > .method > div .container .bg svg {
          position: absolute;
          bottom: 60px;
          right: -67px;
          -webkit-transition: opacity 100ms ease-in-out 600ms;
          -moz-transition: opacity 100ms ease-in-out 600ms;
          -ms-transition: opacity 100ms ease-in-out 600ms;
          transition: opacity 100ms ease-in-out 600ms;
          opacity: 0; }
          body.home #main > .method > div .container .bg svg path {
            -webkit-animation-delay: 600ms;
            -moz-animation-delay: 600ms;
            -ms-animation-delay: 600ms;
            animation-delay: 600ms; }
        body.home #main > .method > div .container .bg.is-visible div {
          -webkit-transform: scaleX(1);
          -moz-transform: scaleX(1);
          -ms-transform: scaleX(1);
          transform: scaleX(1); }
        body.home #main > .method > div .container .bg.is-visible svg {
          opacity: 1; }
          body.home #main > .method > div .container .bg.is-visible svg path {
            -webkit-animation-name: draw;
            -moz-animation-name: draw;
            -ms-animation-name: draw;
            animation-name: draw; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.home #main > .method > div .container .bg {
            display: none; } }
      body.home #main > .method > div .container .txt {
        padding-top: 12%;
        margin-right: 5%;
        float: right;
        width: 35%; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.home #main > .method > div .container .txt {
            float: none;
            width: 100%;
            margin-right: 0;
            padding-top: 0; } }
        body.home #main > .method > div .container .txt .txt--p1 {
          margin-top: 53px;
          -webkit-transition: opacity 600ms ease-in-out, -webkit-transform 600ms ease-in-out;
          -moz-transition: opacity 600ms ease-in-out, -moz-transform 600ms ease-in-out;
          -ms-transition: opacity 600ms ease-in-out, -ms-transform 600ms ease-in-out;
          transition: opacity 600ms ease-in-out, transform 600ms ease-in-out; }
          @media screen and (min-width: 992px) {
            body.home #main > .method > div .container .txt .txt--p1 {
              opacity: 0;
              -webkit-transform: translateY(90px);
              -moz-transform: translateY(90px);
              -ms-transform: translateY(90px);
              transform: translateY(90px); } }
          body.home #main > .method > div .container .txt .txt--p1.is-visible {
            opacity: 1;
            -webkit-transform: translateY(0px);
            -moz-transform: translateY(0px);
            -ms-transform: translateY(0px);
            transform: translateY(0px); }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.home #main > .method > div .container .txt {
            *zoom: 1; }
            body.home #main > .method > div .container .txt:before, body.home #main > .method > div .container .txt:after {
              display: table;
              clear: both;
              content: "";
              line-height: 0; }
            body.home #main > .method > div .container .txt .button {
              padding-right: 25px;
              float: right; } }
body.home #main > .case-study {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 758px;
  padding: 140px 0; }
  @media screen and (min-width: 480px) and (max-width: 991px) {
    body.home #main > .case-study {
      height: 50vh;
      min-height: inherit;
      padding: 50px 0; } }
  @media screen and (min-width: 0) and (max-width: 479px) {
    body.home #main > .case-study {
      height: 100vw;
      min-height: inherit;
      display: table;
      width: 100%;
      padding: 0; }
      body.home #main > .case-study .container {
        padding: 40px 25px 45px 25px;
        display: table-cell;
        vertical-align: middle;
        height: 100%; } }
  body.home #main > .case-study h3 {
    margin: 160px 0 0 0; }
    @media screen and (min-width: 0) and (max-width: 479px) {
      body.home #main > .case-study h3 {
        margin: 26% 0 0 0; } }
  body.home #main > .case-study h4 {
    font-weight: 300;
    margin-bottom: 90px;
    padding-left: 290px; }
    @media screen and (min-width: 1280px) and (max-width: 1439px) {
      body.home #main > .case-study h4 {
        padding-left: 150px; } }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.home #main > .case-study h4 {
        padding-left: 100px; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.home #main > .case-study h4 {
        padding-left: 0;
        margin-bottom: 22%; } }
  body.home #main > .case-study h5 {
    position: relative; }
    body.home #main > .case-study h5:before {
      content: '';
      position: absolute;
      bottom: -12px;
      left: -20px;
      height: 2px;
      width: 71px;
      background: #3C39CD; }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.home #main > .case-study .container {
      *zoom: 1;
      height: 100%; }
      body.home #main > .case-study .container:before, body.home #main > .case-study .container:after {
        display: table;
        clear: both;
        content: "";
        line-height: 0; }
    body.home #main > .case-study .button {
      position: absolute;
      right: 25px;
      bottom: 0px; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.home #main > .case-study .button {
      bottom: 25px; } }
@media screen and (min-width: 0) and (max-width: 991px) {
  body.home #main h3.title--header2 {
    position: relative; }
    body.home #main h3.title--header2 br {
      display: none; }
    body.home #main h3.title--header2:after {
      position: absolute;
      content: '';
      bottom: -25px;
      height: 2px;
      width: 45px;
      left: 0;
      background: #96BAFF; } }
body.home #main h3.title--header2 .reveal:nth-of-type(2) {
  margin-left: 75px; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    body.home #main h3.title--header2 .reveal:nth-of-type(2) {
      margin-left: 55px; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.home #main h3.title--header2 .reveal:nth-of-type(2) {
      margin-left: 0; } }
  body.home #main h3.title--header2 .reveal:nth-of-type(2):before {
    content: '';
    width: 84px;
    height: 2px;
    background: #96BAFF;
    left: -105px;
    position: absolute;
    top: 50%;
    -webkit-transition: opacity 400ms ease-in-out, -webkit-transform 400ms ease-in-out;
    -moz-transition: opacity 400ms ease-in-out, -moz-transform 400ms ease-in-out;
    -ms-transition: opacity 400ms ease-in-out, -ms-transform 400ms ease-in-out;
    transition: opacity 400ms ease-in-out, transform 400ms ease-in-out; }
    @media screen and (min-width: 992px) {
      body.home #main h3.title--header2 .reveal:nth-of-type(2):before {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px); } }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.home #main h3.title--header2 .reveal:nth-of-type(2):before {
        width: 70px;
        left: -85px; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.home #main h3.title--header2 .reveal:nth-of-type(2):before {
        display: none; } }
  body.home #main h3.title--header2 .reveal:nth-of-type(2).is-visible:before {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px); }
body.about #main > div, body.services #main > div {
  overflow: hidden; }
body.about #main > .header, body.services #main > .header {
  position: relative;
  overflow: visible; }
  body.about #main > .header > .header-wrap, body.services #main > .header > .header-wrap {
    position: relative;
    overflow: hidden;
    height: calc(50vh + 60px);
    min-height: 727px;
    position: relative;
    width: calc(100% - 224px);
    opacity: 0;
    -webkit-transition: opacity 600ms ease-in-out, -webkit-transform 600ms ease-in-out;
    -moz-transition: opacity 600ms ease-in-out, -moz-transform 600ms ease-in-out;
    -ms-transition: opacity 600ms ease-in-out, -ms-transform 600ms ease-in-out;
    transition: opacity 600ms ease-in-out, transform 600ms ease-in-out;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
    @media screen and (min-width: 0px) and (max-width: 991px) {
      body.about #main > .header > .header-wrap, body.services #main > .header > .header-wrap {
        opacity: 1;
        -webkit-transform: translateY(0) !important;
        -moz-transform: translateY(0) !important;
        -ms-transform: translateY(0) !important;
        transform: translateY(0) !important; } }
    body.about #main > .header > .header-wrap.is-visible, body.services #main > .header > .header-wrap.is-visible {
      opacity: 1;
      -webkit-transform: translateY(-60px);
      -moz-transform: translateY(-60px);
      -ms-transform: translateY(-60px);
      transform: translateY(-60px); }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.about #main > .header > .header-wrap, body.services #main > .header > .header-wrap {
        width: calc(100% - 176px);
        min-height: 575px; } }
    @media screen and (min-width: 768px) and (max-width: 991px) {
      body.about #main > .header > .header-wrap, body.services #main > .header > .header-wrap {
        width: 100%;
        min-height: inherit; } }
    @media screen and (min-width: 480px) and (max-width: 767px) {
      body.about #main > .header > .header-wrap, body.services #main > .header > .header-wrap {
        height: 100vh;
        width: 100%;
        min-height: inherit; } }
    @media screen and (min-width: 0) and (max-width: 479px) {
      body.about #main > .header > .header-wrap, body.services #main > .header > .header-wrap {
        height: auto;
        width: 100%;
        min-height: inherit; } }
    body.about #main > .header > .header-wrap .bg, body.services #main > .header > .header-wrap .bg {
      position: absolute;
      height: 100%;
      width: 100%;
      background: #2B2996; }
    body.about #main > .header > .header-wrap .content, body.services #main > .header > .header-wrap .content {
      position: relative;
      display: table;
      width: 100%;
      height: 100%;
      max-width: 1546px;
      margin: 0 auto; }
      body.about #main > .header > .header-wrap .content > div, body.services #main > .header > .header-wrap .content > div {
        display: table-cell;
        vertical-align: bottom;
        padding: 0 100px;
        padding-bottom: 100px; }
        @media screen and (min-width: 768px) and (max-width: 991px) {
          body.about #main > .header > .header-wrap .content > div, body.services #main > .header > .header-wrap .content > div {
            padding: 0 25px;
            padding-bottom: 150px; } }
        @media screen and (min-width: 0) and (max-width: 767px) {
          body.about #main > .header > .header-wrap .content > div, body.services #main > .header > .header-wrap .content > div {
            padding: 0 25px;
            padding-bottom: 50px; } }
        @media screen and (min-width: 0) and (max-width: 479px) {
          body.about #main > .header > .header-wrap .content > div, body.services #main > .header > .header-wrap .content > div {
            padding-top: 190px; } }
        body.about #main > .header > .header-wrap .content > div h2, body.services #main > .header > .header-wrap .content > div h2 {
          margin-bottom: 60px;
          position: relative; }
          @media screen and (min-width: 0) and (max-width: 767px) {
            body.about #main > .header > .header-wrap .content > div h2, body.services #main > .header > .header-wrap .content > div h2 {
              margin-bottom: 30px; } }
          body.about #main > .header > .header-wrap .content > div h2:after, body.services #main > .header > .header-wrap .content > div h2:after {
            content: '';
            width: 126px;
            height: 1px;
            background: #008DFF;
            position: absolute;
            bottom: -37px;
            left: -63px;
            opacity: 0;
            -webkit-transition: opacity 800ms ease-in-out, -webkit-transform 800ms ease-in-out;
            -moz-transition: opacity 800ms ease-in-out, -moz-transform 800ms ease-in-out;
            -ms-transition: opacity 800ms ease-in-out, -ms-transform 800ms ease-in-out;
            transition: opacity 800ms ease-in-out, transform 800ms ease-in-out;
            -webkit-transform: translateX(-250px);
            -moz-transform: translateX(-250px);
            -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
            @media screen and (min-width: 0px) and (max-width: 991px) {
              body.about #main > .header > .header-wrap .content > div h2:after, body.services #main > .header > .header-wrap .content > div h2:after {
                width: 60px;
                bottom: -20px;
                left: -10px;
                opacity: 1;
                -webkit-transform: translateX(0px);
                -moz-transform: translateX(0px);
                -ms-transform: translateX(0px);
                transform: translateX(0px); } }
          body.about #main > .header > .header-wrap .content > div h2.is-visible:after, body.services #main > .header > .header-wrap .content > div h2.is-visible:after {
            opacity: 1;
            -webkit-transform: translateX(0px);
            -moz-transform: translateX(0px);
            -ms-transform: translateX(0px);
            transform: translateX(0px); }
  body.about #main > .header .lines-group3, body.services #main > .header .lines-group3 {
    position: absolute;
    bottom: 72px;
    left: 10%; }
body.about #main > .intro {
  position: relative;
  padding: 230px 0 450px 0; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    body.about #main > .intro {
      padding: 180px 0 350px 0; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.about #main > .intro {
      padding: 120px 0 100px 0; } }
  body.about #main > .intro .txt {
    margin-top: 130px;
    padding-left: 170px;
    padding-right: 3%;
    position: relative;
    opacity: 0;
    -webkit-transition: opacity 1000ms ease-in-out;
    -moz-transition: opacity 1000ms ease-in-out;
    -ms-transition: opacity 1000ms ease-in-out;
    transition: opacity 1000ms ease-in-out; }
    @media screen and (min-width: 992px) and (max-width: 1546px) {
      body.about #main > .intro .txt {
        padding-right: 10%; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.about #main > .intro .txt {
        margin-top: 0px;
        padding-left: 0px;
        padding-right: 0px;
        padding-top: 53px;
        opacity: 1; } }
    body.about #main > .intro .txt.is-visible {
      opacity: 1; }
    body.about #main > .intro .txt:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 15px;
      width: 99px;
      height: 2px;
      background: #96BAFF; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.about #main > .intro .txt:before {
          width: 45px;
          top: 25px; } }
  body.about #main > .intro .lines-group8 {
    position: absolute;
    bottom: 200px;
    left: 0; }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.about #main > .intro .lines-group8 {
        bottom: 140px; } }
body.about #main > .values {
  overflow: visible;
  position: relative;
  padding: 115px 0 150px 0;
  background: #2B2996; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    body.about #main > .values {
      padding: 100px 0 100px 0; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.about #main > .values {
      padding: 0; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.about #main > .values .container {
      padding: 0; } }
  body.about #main > .values .container > .img {
    max-width: 614px;
    width: 36.5%;
    position: absolute;
    right: 3%;
    top: -10%;
    -webkit-box-shadow: 48px 91px 74px 0 #1F2470;
    -moz-box-shadow: 48px 91px 74px 0 #1F2470;
    -ms-box-shadow: 48px 91px 74px 0 #1F2470;
    box-shadow: 48px 91px 74px 0 #1F2470;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom; }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.about #main > .values .container > .img {
        right: 25px;
        width: 40%; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.about #main > .values .container > .img {
        position: static;
        width: 100%;
        max-width: none;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        -ms-box-shadow: none;
        box-shadow: none; } }
    body.about #main > .values .container > .img > div {
      overflow: hidden;
      position: relative; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.about #main > .values .container > .img > div {
          height: 100vw; } }
      body.about #main > .values .container > .img > div:after {
        content: '';
        display: block;
        padding-bottom: 139.4%; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.about #main > .values .container > .img > div:after {
            display: none; } }
    body.about #main > .values .container > .img img {
      position: absolute;
      top: -10%;
      left: 0;
      width: 100%;
      display: block; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.about #main > .values .container > .img img {
          top: auto;
          bottom: 0; } }
  body.about #main > .values .container > .content {
    margin-left: 10%;
    width: 45%; }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.about #main > .values .container > .content {
        margin-left: 0;
        width: 50%; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.about #main > .values .container > .content {
        padding: 60px 25px 80px 25px;
        width: 100%;
        margin-left: 0; } }
    body.about #main > .values .container > .content h3 {
      padding-bottom: 40px;
      position: relative; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.about #main > .values .container > .content h3 {
          padding-bottom: 0; } }
      body.about #main > .values .container > .content h3:before {
        content: '';
        display: block;
        position: absolute;
        left: -50px;
        bottom: 10px;
        width: 99px;
        height: 2px;
        background: #96BAFF; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.about #main > .values .container > .content h3:before {
            display: none; } }
    body.about #main > .values .container > .content ul li {
      *zoom: 1;
      margin-top: 90px; }
      body.about #main > .values .container > .content ul li:before, body.about #main > .values .container > .content ul li:after {
        display: table;
        clear: both;
        content: "";
        line-height: 0; }
      @media screen and (min-width: 992px) and (max-width: 1279px) {
        body.about #main > .values .container > .content ul li {
          margin-top: 60px; } }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.about #main > .values .container > .content ul li {
          margin-top: 60px; } }
      body.about #main > .values .container > .content ul li .img {
        width: 90px;
        float: left; }
        body.about #main > .values .container > .content ul li .img svg {
          -webkit-transition: all 100ms ease-in-out;
          -moz-transition: all 100ms ease-in-out;
          -ms-transition: all 100ms ease-in-out;
          transition: all 100ms ease-in-out;
          opacity: 0;
          -webkit-transform: translateY(-5px);
          -moz-transform: translateY(-5px);
          -ms-transform: translateY(-5px);
          transform: translateY(-5px); }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.about #main > .values .container > .content ul li .img {
            float: none;
            width: 100%;
            margin-bottom: 10px;
            -webkit-transform: translateY(0);
            -moz-transform: translateY(0);
            -ms-transform: translateY(0);
            transform: translateY(0); }
            body.about #main > .values .container > .content ul li .img svg {
              opacity: 1;
              display: block;
              width: 55px;
              height: auto;
              -webkit-transition-delay: 0s !important;
              -moz-transition-delay: 0s !important;
              -ms-transition-delay: 0s !important;
              transition-delay: 0s !important; }
              body.about #main > .values .container > .content ul li .img svg path {
                -webkit-animation-delay: 0s !important;
                -moz-animation-delay: 0s !important;
                -ms-animation-delay: 0s !important;
                animation-delay: 0s !important; } }
      body.about #main > .values .container > .content ul li .txt {
        width: calc(100% - 90px);
        float: left;
        padding-left: 40px; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.about #main > .values .container > .content ul li .txt {
            float: none;
            width: 100%;
            padding: 0; } }
        body.about #main > .values .container > .content ul li .txt h4 {
          margin-bottom: 0.5em;
          -webkit-transition: -webkit-transform 400ms ease-in-out;
          -moz-transition: -moz-transform 400ms ease-in-out;
          -ms-transition: -ms-transform 400ms ease-in-out;
          transition: transform 400ms ease-in-out; }
          @media screen and (min-width: 992px) {
            body.about #main > .values .container > .content ul li .txt h4 {
              -webkit-transform: translateY(40px);
              -moz-transform: translateY(40px);
              -ms-transform: translateY(40px);
              transform: translateY(40px);
              opacity: 0; } }
        body.about #main > .values .container > .content ul li .txt p {
          -webkit-transition: -webkit-transform 400ms ease-in-out;
          -moz-transition: -moz-transform 400ms ease-in-out;
          -ms-transition: -ms-transform 400ms ease-in-out;
          transition: transform 400ms ease-in-out; }
          @media screen and (min-width: 992px) {
            body.about #main > .values .container > .content ul li .txt p {
              -webkit-transform: translateY(40px);
              -moz-transform: translateY(40px);
              -ms-transform: translateY(40px);
              transform: translateY(40px);
              opacity: 0; } }
      body.about #main > .values .container > .content ul li:first-child p {
        -webkit-transition-delay: 200ms;
        -moz-transition-delay: 200ms;
        -ms-transition-delay: 200ms;
        transition-delay: 200ms; }
      body.about #main > .values .container > .content ul li:nth-child(2) p {
        -webkit-transition-delay: 700ms;
        -moz-transition-delay: 700ms;
        -ms-transition-delay: 700ms;
        transition-delay: 700ms; }
      body.about #main > .values .container > .content ul li:nth-child(2) h4, body.about #main > .values .container > .content ul li:nth-child(2) .img svg {
        -webkit-transition-delay: 500ms;
        -moz-transition-delay: 500ms;
        -ms-transition-delay: 500ms;
        transition-delay: 500ms; }
      body.about #main > .values .container > .content ul li:nth-child(2) .img svg path {
        -webkit-animation-delay: 500ms;
        -moz-animation-delay: 500ms;
        -ms-animation-delay: 500ms;
        animation-delay: 500ms; }
      body.about #main > .values .container > .content ul li:nth-child(3) p {
        -webkit-transition-delay: 1200ms;
        -moz-transition-delay: 1200ms;
        -ms-transition-delay: 1200ms;
        transition-delay: 1200ms; }
      body.about #main > .values .container > .content ul li:nth-child(3) h4, body.about #main > .values .container > .content ul li:nth-child(3) .img svg {
        -webkit-transition-delay: 1000ms;
        -moz-transition-delay: 1000ms;
        -ms-transition-delay: 1000ms;
        transition-delay: 1000ms; }
      body.about #main > .values .container > .content ul li:nth-child(3) .img svg path {
        -webkit-animation-delay: 1000ms;
        -moz-animation-delay: 1000ms;
        -ms-animation-delay: 1000ms;
        animation-delay: 1000ms; }
      body.about #main > .values .container > .content ul li:nth-child(4) p {
        -webkit-transition-delay: 1900ms;
        -moz-transition-delay: 1900ms;
        -ms-transition-delay: 1900ms;
        transition-delay: 1900ms; }
      body.about #main > .values .container > .content ul li:nth-child(4) h4, body.about #main > .values .container > .content ul li:nth-child(4) .img svg {
        -webkit-transition-delay: 1700ms;
        -moz-transition-delay: 1700ms;
        -ms-transition-delay: 1700ms;
        transition-delay: 1700ms; }
      body.about #main > .values .container > .content ul li:nth-child(4) .img svg path {
        -webkit-animation-delay: 1700ms;
        -moz-animation-delay: 1700ms;
        -ms-animation-delay: 1700ms;
        animation-delay: 1700ms; }
    body.about #main > .values .container > .content.is-visible ul li .txt p, body.about #main > .values .container > .content.is-visible ul li .txt h4 {
      -webkit-transform: translateY(0);
      -moz-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0);
      opacity: 1; }
    body.about #main > .values .container > .content.is-visible ul li .img svg {
      opacity: 1; }
      body.about #main > .values .container > .content.is-visible ul li .img svg path {
        -webkit-animation-name: draw;
        -moz-animation-name: draw;
        -ms-animation-name: draw;
        animation-name: draw; }
  body.about #main > .values .lines-group9 {
    position: absolute;
    bottom: 24px;
    right: 0; }
body.about #main > .team {
  padding: 220px 0 170px;
  position: relative; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    body.about #main > .team {
      padding: 170px 0; } }
  @media screen and (min-width: 768px) and (max-width: 991px) {
    body.about #main > .team {
      padding: 100px 0; } }
  @media screen and (min-width: 0) and (max-width: 767px) {
    body.about #main > .team {
      padding: 65px 0; } }
  body.about #main > .team > .bg {
    position: absolute;
    width: 40%;
    height: 35%;
    top: 55%;
    background: #F3F7FF; }
    @media screen and (min-width: 992px) {
      body.about #main > .team > .bg {
        -webkit-transition: -webkit-transform 600ms ease-in-out;
        -moz-transition: -moz-transform 600ms ease-in-out;
        -ms-transition: -ms-transform 600ms ease-in-out;
        transition: transform 600ms ease-in-out;
        -webkit-transform-origin: left top;
        -moz-transform-origin: left top;
        -ms-transform-origin: left top;
        transform-origin: left top;
        -webkit-transform: scaleX(0);
        -transform-transform: scaleX(0);
        -moz-transform: scaleX(0);
        transform: scaleX(0); }
        body.about #main > .team > .bg.is-visible {
          -webkit-transform: scaleX(1);
          -transform-transform: scaleX(1);
          -moz-transform: scaleX(1);
          transform: scaleX(1); } }
  @media screen and (min-width: 0) and (max-width: 479px) {
    body.about #main > .team .container {
      padding: 0; } }
  body.about #main > .team .container h2 {
    text-align: center; }
  body.about #main > .team .container > .line {
    display: block;
    margin: 0 auto;
    margin-top: 30px;
    width: 84px;
    height: 2px;
    background: #96BAFF; }
    @media screen and (min-width: 0) and (max-width: 767px) {
      body.about #main > .team .container > .line {
        margin-top: 20px; } }
  body.about #main > .team .container .list {
    padding-top: 100px; }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.about #main > .team .container .list {
        padding-top: 75px; } }
    @media screen and (min-width: 768px) and (max-width: 991px) {
      body.about #main > .team .container .list {
        padding-top: 55px; } }
    @media screen and (min-width: 0) and (max-width: 767px) {
      body.about #main > .team .container .list {
        padding-top: 45px; } }
    @media screen and (min-width: 0) and (max-width: 479px) {
      body.about #main > .team .container .list {
        overflow: hidden; } }
    @media screen and (min-width: 0) and (max-width: 479px) {
      body.about #main > .team .container .list > ul {
        width: 2000px;
        -webkit-transition: all 400ms ease-in-out;
        -moz-transition: all 400ms ease-in-out;
        -ms-transition: all 400ms ease-in-out;
        transition: all 400ms ease-in-out; } }
    body.about #main > .team .container .list > ul > li {
      float: left;
      width: 25%;
      padding: 0 20px;
      position: relative; }
      @media screen and (min-width: 992px) and (max-width: 1279px) {
        body.about #main > .team .container .list > ul > li {
          padding: 0 15px; } }
      @media screen and (min-width: 480px) and (max-width: 991px) {
        body.about #main > .team .container .list > ul > li {
          padding: 0 10px; } }
      @media screen and (min-width: 0) and (max-width: 479px) {
        body.about #main > .team .container .list > ul > li {
          padding: 0 15px; } }
      body.about #main > .team .container .list > ul > li > div {
        position: relative;
        width: 100%;
        height: 100%; }
      body.about #main > .team .container .list > ul > li .cover {
        z-index: 2;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: #fff;
        -webkit-transition: all 400ms ease-in-out;
        -moz-transition: all 400ms ease-in-out;
        -ms-transition: all 400ms ease-in-out;
        transition: all 400ms ease-in-out;
        -webkit-transform-origin: center right;
        -moz-transform-origin: center right;
        -ms-transform-origin: center right;
        transform-origin: center right; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.about #main > .team .container .list > ul > li .cover {
            display: none; } }
      body.about #main > .team .container .list > ul > li .content {
        position: relative; }
        body.about #main > .team .container .list > ul > li .content > img {
          display: block;
          width: 100%; }
        body.about #main > .team .container .list > ul > li .content .bg {
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          position: absolute;
          background: #2B2996;
          opacity: 0.9;
          -webkit-transition: all 300ms ease-in-out;
          -moz-transition: all 300ms ease-in-out;
          -ms-transition: all 300ms ease-in-out;
          transition: all 300ms ease-in-out;
          -webkit-transform-origin: center left;
          -moz-transform-origin: center left;
          -ms-transform-origin: center left;
          transform-origin: center left;
          -webkit-transform: scaleX(0);
          -moz-transform: scaleX(0);
          -ms-transform: scaleX(0);
          transform: scaleX(0); }
        body.about #main > .team .container .list > ul > li .content .info {
          padding: 32px 25px;
          position: absolute; }
          @media screen and (min-width: 768px) and (max-width: 991px) {
            body.about #main > .team .container .list > ul > li .content .info {
              padding: 25px 20px; } }
          body.about #main > .team .container .list > ul > li .content .info h3 {
            opacity: 0;
            -webkit-transition: all 300ms ease-in-out;
            -moz-transition: all 300ms ease-in-out;
            -ms-transition: all 300ms ease-in-out;
            transition: all 300ms ease-in-out;
            -webkit-transform: translateY(30px);
            -moz-transform: translateY(30px);
            -ms-transform: translateY(30px);
            transform: translateY(30px); }
            @media screen and (min-width: 0) and (max-width: 767px) {
              body.about #main > .team .container .list > ul > li .content .info h3 {
                font-size: 2.4em; } }
          body.about #main > .team .container .list > ul > li .content .info p {
            margin-top: 0.5em;
            opacity: 0;
            -webkit-transition: all 300ms ease-in-out;
            -moz-transition: all 300ms ease-in-out;
            -ms-transition: all 300ms ease-in-out;
            transition: all 300ms ease-in-out;
            -webkit-ransition-delay: 100ms;
            -moz-transition-delay: 100ms;
            -ms-transition-delay: 100ms;
            transition-delay: 100ms;
            -webkit-transform: translateY(30px);
            -moz-transform: translateY(30px);
            -ms-transform: translateY(30px);
            transform: translateY(30px); }
            @media screen and (min-width: 0) and (max-width: 767px) {
              body.about #main > .team .container .list > ul > li .content .info p {
                font-size: 1.1em; } }
        body.about #main > .team .container .list > ul > li .content .social {
          opacity: 0;
          padding: 32px 25px;
          position: absolute;
          bottom: 0;
          left: 0;
          -webkit-transition: all 300ms ease-in-out;
          -moz-transition: all 300ms ease-in-out;
          -ms-transition: all 300ms ease-in-out;
          transition: all 300ms ease-in-out; }
          body.about #main > .team .container .list > ul > li .content .social .line {
            height: 2px;
            width: 104px;
            background: #00A8FF;
            margin-bottom: 20px;
            -webkit-transition: all 300ms ease-in-out;
            -moz-transition: all 300ms ease-in-out;
            -ms-transition: all 300ms ease-in-out;
            transition: all 300ms ease-in-out;
            -webkit-transform-origin: center left;
            -moz-transform-origin: center left;
            -ms-transform-origin: center left;
            transform-origin: center left;
            -webkit-transform: scaleX(0);
            -moz-transform: scaleX(0);
            -ms-transform: scaleX(0);
            transform: scaleX(0); }
          body.about #main > .team .container .list > ul > li .content .social ul li {
            margin-right: 30px;
            display: inline-block; }
            body.about #main > .team .container .list > ul > li .content .social ul li a {
              display: block; }
      body.about #main > .team .container .list > ul > li:nth-child(2n+2) {
        padding-top: 87px; }
        @media screen and (min-width: 768px) and (max-width: 1279px) {
          body.about #main > .team .container .list > ul > li:nth-child(2n+2) {
            padding-top: 71px; } }
        body.about #main > .team .container .list > ul > li:nth-child(2n+2) .cover {
          -webkit-transition-delay: 200ms;
          -moz-transition-delay: 200ms;
          -ms-transition-delay: 200ms;
          transition-delay: 200ms; }
      body.about #main > .team .container .list > ul > li:hover .content .bg {
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
      body.about #main > .team .container .list > ul > li:hover .content .info h3, body.about #main > .team .container .list > ul > li:hover .content .info p {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0); }
      body.about #main > .team .container .list > ul > li:hover .content .social {
        opacity: 1; }
        body.about #main > .team .container .list > ul > li:hover .content .social .line {
          -webkit-transform: scaleX(1);
          -moz-transform: scaleX(1);
          -ms-transform: scaleX(1);
          transform: scaleX(1); }
      body.about #main > .team .container .list > ul > li.is-visible .cover {
        -webkit-transform: scaleX(0);
        -moz-transform: scaleX(0);
        -ms-transform: scaleX(0);
        transform: scaleX(0); }
  body.about #main > .team .lines-group6 {
    position: absolute;
    top: 260px;
    left: 0; }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.about #main > .team .lines-group6 {
        top: 180px;
        -webkit-transform-origin: left top;
        -moz-transform-origin: left top;
        -ms-transform-origin: left top;
        transform-origin: left top;
        -webkit-transform: scaleX(0.8);
        -moz-transform: scaleX(0.8);
        -ms-transform: scaleX(0.8);
        transform: scaleX(0.8); } }
body.services #main > .intro {
  overflow: visible;
  position: relative;
  padding: 230px 0 340px 0; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    body.services #main > .intro {
      padding: 180px 0 280px 0; } }
  @media screen and (min-width: 768px) and (max-width: 991px) {
    body.services #main > .intro {
      padding: 100px 0 100px 0; } }
  @media screen and (min-width: 0) and (max-width: 767px) {
    body.services #main > .intro {
      padding: 70px 0 100px 0; } }
  body.services #main > .intro .txt {
    margin-top: 130px;
    padding-left: 170px;
    padding-right: 3%;
    position: relative;
    opacity: 0;
    -webkit-transition: all 1000ms ease-in-out;
    -moz-transition: all 1000ms ease-in-out;
    -ms-transition: all 1000ms ease-in-out;
    transition: all 1000ms ease-in-out; }
    @media screen and (min-width: 992px) and (max-width: 1546px) {
      body.services #main > .intro .txt {
        padding-right: 10%; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.services #main > .intro .txt {
        margin-top: 0px;
        padding-left: 0px;
        padding-right: 0px;
        padding-top: 53px;
        opacity: 1; } }
    body.services #main > .intro .txt.is-visible {
      opacity: 1; }
    body.services #main > .intro .txt:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 15px;
      width: 99px;
      height: 2px;
      background: #96BAFF; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .intro .txt:before {
          width: 45px;
          top: 25px; } }
  body.services #main > .intro .lines-group4 {
    position: absolute;
    bottom: 140px;
    right: 0; }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.services #main > .intro .lines-group4 {
        bottom: 70px; } }
body.services #main > .blocks {
  overflow: visible; }
  body.services #main > .blocks .block {
    position: relative;
    margin: 0 0 320px 0; }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.services #main > .blocks .block {
        margin: 0 0 230px 0; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.services #main > .blocks .block {
        margin: 0 0 130px 0; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.services #main > .blocks .block > .bg {
        display: none; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.services #main > .blocks .block .container {
        padding: 0; } }
    body.services #main > .blocks .block .container > .bg {
      position: relative;
      width: 40%;
      max-width: 506px; }
      body.services #main > .blocks .block .container > .bg:after {
        content: '';
        display: block;
        padding-bottom: 117%; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.services #main > .blocks .block .container > .bg:after {
            padding-bottom: 50%; } }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block .container > .bg {
          width: 79%;
          max-width: none; } }
      body.services #main > .blocks .block .container > .bg div {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
        @media screen and (min-width: 992px) {
          body.services #main > .blocks .block .container > .bg div {
            -webkit-transform: scaleX(0);
            -moz-transform: scaleX(0);
            -ms-transform: scaleX(0);
            transform: scaleX(0);
            -webkit-transition: -webkit-transform 600ms ease-in-out;
            -moz-transition: -webkit-transform 600ms ease-in-out;
            -ms-transition: -webkit-transform 600ms ease-in-out;
            transition: -webkit-transform 600ms ease-in-out; } }
      body.services #main > .blocks .block .container > .bg svg {
        position: absolute;
        max-width: 350px;
        height: auto;
        width: 69.16996047%;
        -webkit-transition: opacity 100ms ease-in-out 600ms;
        -moz-transition: opacity 100ms ease-in-out 600ms;
        -ms-transition: opacity 100ms ease-in-out 600ms;
        transition: opacity 100ms ease-in-out 600ms; }
        @media screen and (min-width: 992px) {
          body.services #main > .blocks .block .container > .bg svg {
            opacity: 0; }
            body.services #main > .blocks .block .container > .bg svg path {
              -webkit-animation-delay: 600ms;
              -moz-animation-delay: 600ms;
              -ms-animation-delay: 600ms;
              animation-delay: 600ms; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.services #main > .blocks .block .container > .bg svg {
            width: auto;
            max-height: 220px;
            max-width: none;
            height: 53%;
            top: 24% !important;
            bottom: auto !important;
            -webkit-transition: none;
            -moz-transition: none;
            -ms-transition: none;
            transition: none; }
            body.services #main > .blocks .block .container > .bg svg path {
              -webkit-animation-name: draw;
              -moz-animation-name: draw;
              -ms-animation-name: draw;
              animation-name: draw; } }
      body.services #main > .blocks .block .container > .bg p {
        font-family: 'Poppins';
        font-weight: 600;
        color: #96BAFF;
        font-size: 1.1em;
        position: absolute;
        letter-spacing: 0.2em;
        text-align: right; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.services #main > .blocks .block .container > .bg p span {
            display: none; } }
      body.services #main > .blocks .block .container > .bg.is-visible div {
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
      body.services #main > .blocks .block .container > .bg.is-visible svg {
        opacity: 1; }
        body.services #main > .blocks .block .container > .bg.is-visible svg path {
          -webkit-animation-name: draw;
          -moz-animation-name: draw;
          -ms-animation-name: draw;
          animation-name: draw; }
    body.services #main > .blocks .block .container > .txt {
      width: 50%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block .container > .txt {
          float: none;
          width: 100%;
          padding-left: 25px !important;
          padding-right: 25px !important;
          padding-top: 25px !important; } }
      body.services #main > .blocks .block .container > .txt .title--tag {
        color: #96BAFF;
        font-weight: 600;
        margin-bottom: 0.5em;
        padding-left: 5px; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.services #main > .blocks .block .container > .txt .title--tag {
            display: none; } }
      body.services #main > .blocks .block .container > .txt .txt--p1 {
        margin-top: 53px;
        width: 100%;
        max-width: 460px;
        -webkit-transition: opacity 600ms ease-in-out, -webkit-transform 600ms ease-in-out;
        -moz-transition: opacity 600ms ease-in-out, -moz-transform 600ms ease-in-out;
        -ms-transition: opacity 600ms ease-in-out, -ms-transform 600ms ease-in-out;
        transition: opacity 600ms ease-in-out, transform 600ms ease-in-out; }
        @media screen and (min-width: 992px) {
          body.services #main > .blocks .block .container > .txt .txt--p1 {
            opacity: 0;
            -webkit-transform: translateY(90px);
            -moz-transform: translateY(90px);
            -ms-transform: translateY(90px);
            transform: translateY(90px); } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.services #main > .blocks .block .container > .txt .txt--p1 {
            max-width: none;
            margin-top: 23px; } }
        body.services #main > .blocks .block .container > .txt .txt--p1.is-visible {
          opacity: 1;
          -webkit-transform: translateY(0px);
          -moz-transform: translateY(0px);
          -ms-transform: translateY(0px);
          transform: translateY(0px); }
    body.services #main > .blocks .block:nth-child(2n+1) > .bg {
      position: absolute;
      left: 0;
      top: -12%;
      background: #F3F7FF;
      width: 34%;
      height: 100%;
      -webkit-transform-origin: left center;
      -moz-transform-origin: left center;
      -ms-transform-origin: left center;
      transform-origin: left center;
      -webkit-transform: scaleX(0);
      -moz-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0); }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block:nth-child(2n+1) > .bg {
          display: none; } }
      body.services #main > .blocks .block:nth-child(2n+1) > .bg.is-visible {
        -webkit-transition: -webkit-transform 600ms ease-in-out;
        -moz-transition: -webkit-transform 600ms ease-in-out;
        -ms-transition: -webkit-transform 600ms ease-in-out;
        transition: -webkit-transform 600ms ease-in-out;
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
    body.services #main > .blocks .block:nth-child(2n+1) .container {
      *zoom: 1; }
      body.services #main > .blocks .block:nth-child(2n+1) .container:before, body.services #main > .blocks .block:nth-child(2n+1) .container:after {
        display: table;
        clear: both;
        content: "";
        line-height: 0; }
      body.services #main > .blocks .block:nth-child(2n+1) .container > .bg {
        float: left; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.services #main > .blocks .block:nth-child(2n+1) .container > .bg {
            margin-right: 21%; } }
        body.services #main > .blocks .block:nth-child(2n+1) .container > .bg div {
          background: #2B2996;
          -webkit-transform-origin: left center;
          -moz-transform-origin: left center;
          -ms-transform-origin: left center;
          transform-origin: left center; }
        body.services #main > .blocks .block:nth-child(2n+1) .container > .bg p {
          top: 50px;
          /*Border Size*/
          left: 30px;
          /*Border Size*/ }
          @media screen and (min-width: 991px) {
            body.services #main > .blocks .block:nth-child(2n+1) .container > .bg p {
              -webkit-transform: translateX(-100%) rotate(-90deg);
              /* Safari */
              -moz-transform: translateX(-100%) rotate(-90deg);
              /* Firefox 3.6 Firefox 4 */
              -ms-transform: translateX(-100%) rotate(-90deg);
              /* IE9 */
              -o-transform: translateX(-100%) rotate(-90deg);
              /* Opera */
              transform: translateX(-100%) rotate(-90deg);
              /* W3C */
              -webkit-transform-origin: top right;
              -moz-transform-origin: top right;
              -ms-transform-origin: top right;
              -o-transform-origin: top right;
              transform-origin: top right; } }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.services #main > .blocks .block:nth-child(2n+1) .container > .bg p {
              top: auto;
              bottom: 30px; } }
        body.services #main > .blocks .block:nth-child(2n+1) .container > .bg svg {
          bottom: 60px; }
      body.services #main > .blocks .block:nth-child(2n+1) .container > .txt {
        float: right;
        padding-top: 10%;
        padding-left: 10%; }
        @media screen and (min-width: 992px) and (max-width: 1279px) {
          body.services #main > .blocks .block:nth-child(2n+1) .container > .txt {
            padding-top: 0; } }
    body.services #main > .blocks .block:nth-child(2n+2) .container {
      *zoom: 1; }
      body.services #main > .blocks .block:nth-child(2n+2) .container:before, body.services #main > .blocks .block:nth-child(2n+2) .container:after {
        display: table;
        clear: both;
        content: "";
        line-height: 0; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block:nth-child(2n+2) .container {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: flex;
          -webkit-flex-flow: row wrap;
          -moz-flex-flow: row wrap;
          -ms-flex-flow: row wrap;
          flex-flow: row wrap; } }
      body.services #main > .blocks .block:nth-child(2n+2) .container > .bg {
        float: right; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.services #main > .blocks .block:nth-child(2n+2) .container > .bg {
            -webkit-order: 1;
            -moz-order: 1;
            -ms-order: 1;
            order: 1;
            margin-left: 21%; } }
        body.services #main > .blocks .block:nth-child(2n+2) .container > .bg div {
          background: #3C39CD;
          -webkit-transform-origin: right center;
          -moz-transform-origin: right center;
          -ms-transform-origin: right center;
          transform-origin: right center; }
        body.services #main > .blocks .block:nth-child(2n+2) .container > .bg p {
          bottom: 50px;
          right: 35px; }
          @media screen and (min-width: 991px) {
            body.services #main > .blocks .block:nth-child(2n+2) .container > .bg p {
              -webkit-transform-origin: 100% 100%;
              -moz-transform-origin: 100% 100%;
              -ms-transform-origin: 100% 100%;
              transform-origin: 100% 100%;
              -webkit-transform: rotate(270deg) translateX(100%);
              -moz-transform: rotate(270deg) translateX(100%);
              -ms-transform: rotate(270deg) translateX(100%);
              transform: rotate(270deg) translateX(100%); } }
        body.services #main > .blocks .block:nth-child(2n+2) .container > .bg svg {
          top: 60px; }
      body.services #main > .blocks .block:nth-child(2n+2) .container > .txt {
        float: left;
        padding-top: 10%;
        padding-right: 10%;
        padding-left: 5%; }
        @media screen and (min-width: 992px) and (max-width: 1279px) {
          body.services #main > .blocks .block:nth-child(2n+2) .container > .txt {
            padding-top: 16%; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.services #main > .blocks .block:nth-child(2n+2) .container > .txt {
            order: 2; } }
    body.services #main > .blocks .block:last-child {
      margin: 0 0 150px 0; }
      @media screen and (min-width: 768px) and (max-width: 991px) {
        body.services #main > .blocks .block:last-child {
          margin: 0 0 60px 0; } }
      @media screen and (min-width: 0) and (max-width: 767px) {
        body.services #main > .blocks .block:last-child {
          margin: 0 0 0px 0; } }
    body.services #main > .blocks .block.block1 .container > .bg svg {
      right: -36%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block.block1 .container > .bg svg {
          right: -21.5%; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.services #main > .blocks .block.block1 .container > .bg p:after {
        content: attr(data-number); } }
    body.services #main > .blocks .block.block1 .lines-group6 {
      position: absolute;
      bottom: -170px;
      left: 0; }
      @media screen and (min-width: 992px) and (max-width: 1279px) {
        body.services #main > .blocks .block.block1 .lines-group6 {
          bottom: -125px; } }
    body.services #main > .blocks .block.block2 .container > .bg svg {
      left: -34%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block.block2 .container > .bg svg {
          left: -21%; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.services #main > .blocks .block.block2 .container > .bg p:after {
        content: attr(data-number); } }
    body.services #main > .blocks .block.block2 .container > .bg > span {
      -webkit-transform-origin: right center;
      -moz-transform-origin: right center;
      -ms-transform-origin: right center;
      transform-origin: right center;
      -webkit-transform: scaleX(0);
      -moz-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0);
      position: absolute;
      top: -6%;
      right: -7%;
      width: 35%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block.block2 .container > .bg > span {
          display: none; } }
      body.services #main > .blocks .block.block2 .container > .bg > span:after {
        content: '';
        padding-bottom: 100%;
        display: block;
        background: #F3F7FF; }
    body.services #main > .blocks .block.block2 .container > .bg.is-visible > span {
      -webkit-transition: -webkit-transform 600ms ease-in-out;
      -moz-transition: -webkit-transform 600ms ease-in-out;
      -ms-transition: -webkit-transform 600ms ease-in-out;
      transition: -webkit-transform 600ms ease-in-out;
      -webkit-transform: scaleX(1);
      -moz-transform: scaleX(1);
      -ms-transform: scaleX(1);
      transform: scaleX(1); }
    body.services #main > .blocks .block.block2 .lines-group4 {
      position: absolute;
      bottom: -170px;
      right: 0; }
      @media screen and (min-width: 992px) and (max-width: 1279px) {
        body.services #main > .blocks .block.block2 .lines-group4 {
          bottom: -125px; } }
    body.services #main > .blocks .block.block3 .container > .bg svg {
      right: -16%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block.block3 .container > .bg svg {
          right: -9.5%; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.services #main > .blocks .block.block3 .container > .bg p:after {
        content: attr(data-number); } }
    body.services #main > .blocks .block.block4 > .bg {
      position: absolute;
      right: 0;
      top: -38%;
      background: #F3F7FF;
      width: 28%;
      height: 120%;
      -webkit-transform-origin: right center;
      -moz-transform-origin: right center;
      -ms-transform-origin: right center;
      transform-origin: right center;
      -webkit-transform: scaleX(0);
      -moz-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0); }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block.block4 > .bg {
          display: none; } }
      body.services #main > .blocks .block.block4 > .bg.is-visible {
        -webkit-transition: -webkit-transform 700ms ease-in-out;
        -moz-transition: -webkit-transform 700ms ease-in-out;
        -ms-transition: -webkit-transform 700ms ease-in-out;
        transition: -webkit-transform 700ms ease-in-out;
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
    body.services #main > .blocks .block.block4 .container > .bg svg {
      left: -40%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block.block4 .container > .bg svg {
          left: -25%; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.services #main > .blocks .block.block4 .container > .bg p:after {
        content: attr(data-number); } }
    body.services #main > .blocks .block.block4 .lines-group8 {
      position: absolute;
      bottom: -170px;
      left: 0; }
      @media screen and (min-width: 992px) and (max-width: 1279px) {
        body.services #main > .blocks .block.block4 .lines-group8 {
          bottom: -125px; } }
    body.services #main > .blocks .block.block5 .container > .bg svg {
      right: -26%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.services #main > .blocks .block.block5 .container > .bg svg {
          right: -14%; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.services #main > .blocks .block.block5 .container > .bg p:after {
        content: attr(data-number); } }
@media screen and (min-width: 0) and (max-width: 991px) {
  body.services #main h3.title--header2 {
    position: relative; }
    body.services #main h3.title--header2 br {
      display: none; }
    body.services #main h3.title--header2:after {
      margin-top: 23px;
      display: block;
      content: '';
      height: 2px;
      width: 45px;
      background: #96BAFF; } }
body.services #main h3.title--header2 .reveal:nth-of-type(2) {
  margin-left: 75px; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    body.services #main h3.title--header2 .reveal:nth-of-type(2) {
      margin-left: 55px; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.services #main h3.title--header2 .reveal:nth-of-type(2) {
      margin-left: 0; } }
  body.services #main h3.title--header2 .reveal:nth-of-type(2):before {
    content: '';
    width: 84px;
    height: 2px;
    background: #96BAFF;
    left: -105px;
    position: absolute;
    top: 50%;
    -webkit-transition: opacity 400ms ease-in-out, -webkit-transform 400ms ease-in-out;
    -moz-transition: opacity 400ms ease-in-out, -moz-transform 400ms ease-in-out;
    -ms-transition: opacity 400ms ease-in-out, -ms-transform 400ms ease-in-out;
    transition: opacity 400ms ease-in-out, transform 400ms ease-in-out; }
    @media screen and (min-width: 992px) {
      body.services #main h3.title--header2 .reveal:nth-of-type(2):before {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px); } }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      body.services #main h3.title--header2 .reveal:nth-of-type(2):before {
        width: 70px;
        left: -85px; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.services #main h3.title--header2 .reveal:nth-of-type(2):before {
        display: none; } }
  body.services #main h3.title--header2 .reveal:nth-of-type(2).is-visible:before {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px); }
body.contact #main {
  overflow: visible; }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.contact #main .container {
      padding: 0; } }
  body.contact #main > .intro {
    overflow: hidden;
    position: relative;
    *zoom: 1;
    padding-top: 300px; }
    body.contact #main > .intro:before, body.contact #main > .intro:after {
      display: table;
      clear: both;
      content: "";
      line-height: 0; }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.contact #main > .intro {
        padding-top: 120px; } }
    body.contact #main > .intro .left {
      position: relative;
      width: 46%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.contact #main > .intro .left {
          width: 100%; } }
      body.contact #main > .intro .left > .txt {
        padding-left: 40px;
        padding-bottom: 360px; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.contact #main > .intro .left > .txt {
            padding: 0px 25px 150px 25px; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.contact #main > .intro .left > .txt h1.title--header2 {
            position: relative; }
            body.contact #main > .intro .left > .txt h1.title--header2 br {
              display: none; }
            body.contact #main > .intro .left > .txt h1.title--header2:after {
              margin-top: 23px;
              display: block;
              content: '';
              height: 2px;
              width: 45px;
              background: #96BAFF; } }
        body.contact #main > .intro .left > .txt h1.title--header2 .reveal:nth-of-type(2) {
          margin-left: 75px; }
          @media screen and (min-width: 992px) and (max-width: 1279px) {
            body.contact #main > .intro .left > .txt h1.title--header2 .reveal:nth-of-type(2) {
              margin-left: 55px; } }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.contact #main > .intro .left > .txt h1.title--header2 .reveal:nth-of-type(2) {
              margin-left: 0; } }
          body.contact #main > .intro .left > .txt h1.title--header2 .reveal:nth-of-type(2):before {
            content: '';
            width: 84px;
            height: 2px;
            background: #96BAFF;
            left: -105px;
            position: absolute;
            top: 50%;
            -webkit-transition: opacity 400ms ease-in-out, -webkit-transform 400ms ease-in-out;
            -moz-transition: opacity 400ms ease-in-out, -moz-transform 400ms ease-in-out;
            -ms-transition: opacity 400ms ease-in-out, -ms-transform 400ms ease-in-out;
            transition: opacity 400ms ease-in-out, transform 400ms ease-in-out; }
            @media screen and (min-width: 992px) {
              body.contact #main > .intro .left > .txt h1.title--header2 .reveal:nth-of-type(2):before {
                opacity: 0;
                -webkit-transform: translateY(20px);
                -moz-transform: translateY(20px);
                -ms-transform: translateY(20px);
                transform: translateY(20px); } }
            @media screen and (min-width: 992px) and (max-width: 1279px) {
              body.contact #main > .intro .left > .txt h1.title--header2 .reveal:nth-of-type(2):before {
                width: 70px;
                left: -85px; } }
            @media screen and (min-width: 0) and (max-width: 991px) {
              body.contact #main > .intro .left > .txt h1.title--header2 .reveal:nth-of-type(2):before {
                display: none; } }
          body.contact #main > .intro .left > .txt h1.title--header2 .reveal:nth-of-type(2).is-visible:before {
            opacity: 1;
            -webkit-transform: translateY(0px);
            -moz-transform: translateY(0px);
            -ms-transform: translateY(0px);
            transform: translateY(0px); }
        body.contact #main > .intro .left > .txt .txt--p1 {
          margin-top: 53px;
          width: 100%;
          max-width: 365px;
          -webkit-transition: opacity 600ms ease-in-out, -webkit-transform 600ms ease-in-out;
          -moz-transition: opacity 600ms ease-in-out, -moz-transform 600ms ease-in-out;
          -ms-transition: opacity 600ms ease-in-out, -ms-transform 600ms ease-in-out;
          transition: opacity 600ms ease-in-out, transform 600ms ease-in-out; }
          @media screen and (min-width: 992px) {
            body.contact #main > .intro .left > .txt .txt--p1 {
              opacity: 0;
              -webkit-transform: translateY(90px);
              -moz-transform: translateY(90px);
              -ms-transform: translateY(90px);
              transform: translateY(90px); } }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.contact #main > .intro .left > .txt .txt--p1 {
              max-width: none;
              margin-top: 23px; } }
          body.contact #main > .intro .left > .txt .txt--p1.is-visible {
            opacity: 1;
            -webkit-transform: translateY(0px);
            -moz-transform: translateY(0px);
            -ms-transform: translateY(0px);
            transform: translateY(0px); }
    body.contact #main > .intro .info {
      width: 72%;
      position: relative;
      margin-bottom: 50px;
      color: #2B2996; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.contact #main > .intro .info {
          width: 100%;
          margin-bottom: 0; } }
      body.contact #main > .intro .info .txt {
        padding: 110px; }
        @media screen and (min-width: 992px) and (max-width: 1279px) {
          body.contact #main > .intro .info .txt {
            padding: 85px; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.contact #main > .intro .info .txt {
            padding: 80px 25px 70px 25px; } }
        body.contact #main > .intro .info .txt h2 {
          color: #2B2996;
          margin-bottom: 68px; }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.contact #main > .intro .info .txt h2 {
              margin-bottom: 48px; } }
          body.contact #main > .intro .info .txt h2:after {
            position: relative;
            display: block;
            content: '';
            width: 51px;
            height: 2px;
            background: #008DFF;
            margin-top: 30px; }
            @media screen and (min-width: 0) and (max-width: 991px) {
              body.contact #main > .intro .info .txt h2:after {
                left: -20px; } }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.contact #main > .intro .info .txt h2 {
              margin-left: 20px; } }
        body.contact #main > .intro .info .txt p {
          font-size: 1.6em;
          font-weight: 400;
          line-height: 2.75em;
          margin-bottom: 75px; }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.contact #main > .intro .info .txt p {
              margin-bottom: 55px; } }
        body.contact #main > .intro .info .txt ul li {
          display: inline-block;
          margin-right: 15px; }
          body.contact #main > .intro .info .txt ul li a {
            width: 37px;
            height: 37px;
            background-repeat: no-repeat;
            background-position: 0 0;
            display: block; }
            body.contact #main > .intro .info .txt ul li a:hover {
              background-position: 0 bottom; }
            body.contact #main > .intro .info .txt ul li a.twitter {
              background-image: url("../images/icon-twitter.svg"); }
            body.contact #main > .intro .info .txt ul li a.linkedin {
              background-image: url("../images/icon-linkedin.svg"); }
            body.contact #main > .intro .info .txt ul li a.github {
              background-image: url("../images/icon-github.svg"); }
            body.contact #main > .intro .info .txt ul li a.npm {
              background-image: url("../images/icon-npm.svg"); }
        @media screen and (min-width: 992px) {
          body.contact #main > .intro .info .txt {
            opacity: 0;
            -webkit-transform: translateY(60px);
            -moz-transform: translateY(60px);
            -ms-transform: translateY(60px);
            transform: translateY(60px);
            -webkit-transition-delay: 400ms;
            -moz-transition-delay: 400ms;
            -ms-transition-delay: 400ms;
            transition-delay: 400ms;
            -webkit-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
            -moz-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
            -ms-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
            transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out; } }
      body.contact #main > .intro .info > .bg {
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -ms-transform-origin: left center;
        transform-origin: left center;
        background: #F3F7FF;
        position: absolute;
        z-index: 0;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%; }
        @media screen and (min-width: 992px) {
          body.contact #main > .intro .info > .bg {
            -webkit-transform: scaleX(0);
            -moz-transform: scaleX(0);
            -ms-transform: scaleX(0);
            transform: scaleX(0);
            -webkit-transition: -webkit-transform 600ms ease-in-out;
            -moz-transition: -webkit-transform 600ms ease-in-out;
            -ms-transition: -webkit-transform 600ms ease-in-out;
            transition: -webkit-transform 600ms ease-in-out; } }
      body.contact #main > .intro .info.is-visible .txt {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0); }
      body.contact #main > .intro .info.is-visible > .bg {
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
    body.contact #main > .intro .right {
      z-index: 2;
      position: absolute;
      right: 0;
      top: 204px;
      width: 54%; }
      @media screen and (min-width: 992px) and (max-width: 1279px) {
        body.contact #main > .intro .right {
          right: 40px; } }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.contact #main > .intro .right {
          width: 100%;
          position: relative;
          top: auto;
          right: auto; } }
      body.contact #main > .intro .right .form {
        position: relative;
        padding: 12.87% 17.5%; }
        @media screen and (min-width: 992px) and (max-width: 1279px) {
          body.contact #main > .intro .right .form {
            padding: 12% 16% 11% 16%; } }
        @media screen and (min-width: 992px) {
          body.contact #main > .intro .right .form {
            opacity: 0;
            -webkit-transform: translateY(60px);
            -moz-transform: translateY(60px);
            -ms-transform: translateY(60px);
            transform: translateY(60px);
            -webkit-transition-delay: 400ms;
            -moz-transition-delay: 400ms;
            -ms-transition-delay: 400ms;
            transition-delay: 400ms;
            -webkit-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
            -moz-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
            -ms-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
            transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.contact #main > .intro .right .form {
            padding: 70px 25px 85px 25px; } }
        body.contact #main > .intro .right .form h2 {
          color: #fff;
          margin-bottom: 68px; }
          body.contact #main > .intro .right .form h2:after {
            left: -30px;
            position: relative;
            display: block;
            content: '';
            width: 73px;
            height: 2px;
            background: #008DFF;
            margin-top: 30px; }
            @media screen and (min-width: 0) and (max-width: 991px) {
              body.contact #main > .intro .right .form h2:after {
                left: -20px; } }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.contact #main > .intro .right .form h2 {
              margin-left: 20px;
              margin-bottom: 48px; } }
        body.contact #main > .intro .right .form form input[type="text"],
        body.contact #main > .intro .right .form form input[type="email"],
        body.contact #main > .intro .right .form form .select,
        body.contact #main > .intro .right .form form textarea {
          font-family: 'Roboto', sans-serif;
          outline: none;
          width: 100%;
          background: #25237C;
          border: 1px solid #4240B6;
          color: #9593F3;
          font-size: 1.4em;
          padding: 18px; }
          body.contact #main > .intro .right .form form input[type="text"]::-webkit-input-placeholder,
          body.contact #main > .intro .right .form form input[type="email"]::-webkit-input-placeholder,
          body.contact #main > .intro .right .form form .select::-webkit-input-placeholder,
          body.contact #main > .intro .right .form form textarea::-webkit-input-placeholder {
            /* Chrome/Opera/Safari */
            color: #9593F3; }
          body.contact #main > .intro .right .form form input[type="text"]::-moz-placeholder,
          body.contact #main > .intro .right .form form input[type="email"]::-moz-placeholder,
          body.contact #main > .intro .right .form form .select::-moz-placeholder,
          body.contact #main > .intro .right .form form textarea::-moz-placeholder {
            /* Firefox 19+ */
            color: #9593F3; }
          body.contact #main > .intro .right .form form input[type="text"]:-ms-input-placeholder,
          body.contact #main > .intro .right .form form input[type="email"]:-ms-input-placeholder,
          body.contact #main > .intro .right .form form .select:-ms-input-placeholder,
          body.contact #main > .intro .right .form form textarea:-ms-input-placeholder {
            /* IE 10+ */
            color: #9593F3; }
          body.contact #main > .intro .right .form form input[type="text"]:-moz-placeholder,
          body.contact #main > .intro .right .form form input[type="email"]:-moz-placeholder,
          body.contact #main > .intro .right .form form .select:-moz-placeholder,
          body.contact #main > .intro .right .form form textarea:-moz-placeholder {
            /* Firefox 18- */
            color: #9593F3; }
        body.contact #main > .intro .right .form form textarea {
          resize: none; }
        body.contact #main > .intro .right .form form .form-group {
          margin-bottom: 25px;
          *zoom: 1; }
          body.contact #main > .intro .right .form form .form-group:before, body.contact #main > .intro .right .form form .form-group:after {
            display: table;
            clear: both;
            content: "";
            line-height: 0; }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.contact #main > .intro .right .form form .form-group:last-child {
              padding-top: 0px; } }
          body.contact #main > .intro .right .form form .form-group.error .select,
          body.contact #main > .intro .right .form form .form-group.error input[type="text"],
          body.contact #main > .intro .right .form form .form-group.error input[type="email"],
          body.contact #main > .intro .right .form form .form-group.error textarea {
            border-color: #FF6C9B;
            color: #FF6C9B;
            font-weight: 700; }
            body.contact #main > .intro .right .form form .form-group.error .select::-webkit-input-placeholder,
            body.contact #main > .intro .right .form form .form-group.error input[type="text"]::-webkit-input-placeholder,
            body.contact #main > .intro .right .form form .form-group.error input[type="email"]::-webkit-input-placeholder,
            body.contact #main > .intro .right .form form .form-group.error textarea::-webkit-input-placeholder {
              /* Chrome/Opera/Safari */
              color: #FF6C9B;
              font-weight: 700; }
            body.contact #main > .intro .right .form form .form-group.error .select::-moz-placeholder,
            body.contact #main > .intro .right .form form .form-group.error input[type="text"]::-moz-placeholder,
            body.contact #main > .intro .right .form form .form-group.error input[type="email"]::-moz-placeholder,
            body.contact #main > .intro .right .form form .form-group.error textarea::-moz-placeholder {
              /* Firefox 19+ */
              color: #FF6C9B;
              font-weight: 700; }
            body.contact #main > .intro .right .form form .form-group.error .select:-ms-input-placeholder,
            body.contact #main > .intro .right .form form .form-group.error input[type="text"]:-ms-input-placeholder,
            body.contact #main > .intro .right .form form .form-group.error input[type="email"]:-ms-input-placeholder,
            body.contact #main > .intro .right .form form .form-group.error textarea:-ms-input-placeholder {
              /* IE 10+ */
              color: #FF6C9B;
              font-weight: 700; }
            body.contact #main > .intro .right .form form .form-group.error .select:-moz-placeholder,
            body.contact #main > .intro .right .form form .form-group.error input[type="text"]:-moz-placeholder,
            body.contact #main > .intro .right .form form .form-group.error input[type="email"]:-moz-placeholder,
            body.contact #main > .intro .right .form form .form-group.error textarea:-moz-placeholder {
              /* Firefox 18- */
              color: #FF6C9B;
              font-weight: 700; }
          body.contact #main > .intro .right .form form .form-group.error select {
            font-family: 'Roboto', sans-serif;
            font-weight: 700;
            color: #FF6C9B; }
        body.contact #main > .intro .right .form form div.select {
          display: block;
          overflow: hidden;
          background-image: url("../images/select.svg");
          background-repeat: no-repeat;
          background-position: right 25px center;
          padding: 0; }
          body.contact #main > .intro .right .form form div.select select {
            padding: 18px;
            font-size: 1em;
            color: #9593F3;
            width: 100%;
            border: none;
            -webkit-box-shadow: none;
            -moz-box-shadow: none;
            -ms-box-shadow: none;
            box-shadow: none;
            background-color: transparent;
            background-image: none;
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none; }
            body.contact #main > .intro .right .form form div.select select:focus {
              outline: none; }
        body.contact #main > .intro .right .form form #checkbox {
          margin-bottom: 40px;
          font-size: 1.2em;
          color: #fff; }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.contact #main > .intro .right .form form #checkbox {
              font-size: 1.2em;
              margin-bottom: 25px; } }
          body.contact #main > .intro .right .form form #checkbox a {
            text-decoration: none;
            color: #fff;
            border-bottom: 1px solid #4240B5;
            padding-bottom: 2px; }
          body.contact #main > .intro .right .form form #checkbox .error-msg {
            display: inline;
            color: #FF6C9B;
            margin-left: 10px; }
            @media screen and (min-width: 0) and (max-width: 767px) {
              body.contact #main > .intro .right .form form #checkbox .error-msg {
                display: block;
                margin-left: 0;
                margin-top: 10px; } }
          body.contact #main > .intro .right .form form #checkbox .checkbox {
            width: 17px;
            position: relative;
            display: inline-block;
            margin-right: 5px; }
            body.contact #main > .intro .right .form form #checkbox .checkbox label {
              width: 17px;
              height: 17px;
              cursor: pointer;
              position: absolute;
              top: 0;
              left: 0;
              border-radius: 0px;
              background: #25237C;
              border: 1px solid #4240B6; }
              body.contact #main > .intro .right .form form #checkbox .checkbox label:after {
                content: '';
                width: 9px;
                height: 5px;
                position: absolute;
                top: 3px;
                left: 3px;
                border: 1px solid #fff;
                border-top: none;
                border-right: none;
                opacity: 0;
                transform: rotate(-45deg); }
              body.contact #main > .intro .right .form form #checkbox .checkbox label:hover::after {
                opacity: 0.5; }
            body.contact #main > .intro .right .form form #checkbox .checkbox input[type=checkbox] {
              visibility: hidden; }
              body.contact #main > .intro .right .form form #checkbox .checkbox input[type=checkbox]:checked + label:after {
                opacity: 1; }
        body.contact #main > .intro .right .form form .button-contact {
          text-align: right; }
          body.contact #main > .intro .right .form form .button-contact button {
            display: inline-block;
            position: relative;
            height: 55px;
            padding: 0 35px;
            background: #3C39CD;
            border: none;
            outline: none;
            cursor: pointer; }
            @media screen and (min-width: 0) and (max-width: 991px) {
              body.contact #main > .intro .right .form form .button-contact button {
                width: 100%;
                height: 65px; } }
            body.contact #main > .intro .right .form form .button-contact button:disabled {
              opacity: 0.3; }
              body.contact #main > .intro .right .form form .button-contact button:disabled:hover {
                -webkit-transform: scaleX(0);
                -moz-transform: scaleX(0);
                -ms-transform: scaleX(0);
                transform: scaleX(0);
                opacity: 0; }
            body.contact #main > .intro .right .form form .button-contact button div {
              top: 0;
              left: 0;
              position: absolute;
              height: 100%;
              width: 100%;
              background: #fff;
              opacity: 0.1;
              -webkit-transform-origin: left center;
              -moz-transform-origin: left center;
              -ms-transform-origin: left center;
              transform-origin: left center;
              -webkit-transform: scaleX(0);
              -moz-transform: scaleX(0);
              -ms-transform: scaleX(0);
              transform: scaleX(0);
              -webkit-transition: -webkit-transform 300ms ease-in-out;
              -moz-transition: -webkit-transform 300ms ease-in-out;
              -ms-transition: -webkit-transform 300ms ease-in-out;
              transition: -webkit-transform 300ms ease-in-out; }
            body.contact #main > .intro .right .form form .button-contact button:hover div {
              -webkit-transform: scaleX(1);
              -moz-transform: scaleX(1);
              -ms-transform: scaleX(1);
              transform: scaleX(1); }
        body.contact #main > .intro .right .form form .required {
          display: none;
          color: #9593F3;
          font-size: 1.2em;
          float: right;
          line-height: 55px; }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.contact #main > .intro .right .form form .required {
              float: none;
              line-height: normal;
              margin-bottom: 30px; } }
        body.contact #main > .intro .right .form .form-ok {
          display: none; }
          body.contact #main > .intro .right .form .form-ok h2 {
            margin-bottom: 50px; }
          body.contact #main > .intro .right .form .form-ok img {
            display: block;
            margin-bottom: 40px; }
      body.contact #main > .intro .right > .bg {
        -webkit-transform-origin: right center;
        -moz-transform-origin: right center;
        -ms-transform-origin: right center;
        transform-origin: right center;
        background: #2B2996;
        position: absolute;
        z-index: 0;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%; }
        @media screen and (min-width: 992px) {
          body.contact #main > .intro .right > .bg {
            -webkit-transform: scaleX(0);
            -moz-transform: scaleX(0);
            -ms-transform: scaleX(0);
            transform: scaleX(0);
            -webkit-transition: -webkit-transform 600ms ease-in-out;
            -moz-transition: -webkit-transform 600ms ease-in-out;
            -ms-transition: -webkit-transform 600ms ease-in-out;
            transition: -webkit-transform 600ms ease-in-out; } }
      body.contact #main > .intro .right.is-visible > .bg {
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
      body.contact #main > .intro .right.is-visible .form {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0); }
    body.contact #main > .intro .lines-group7 {
      position: absolute;
      top: 230px;
      right: 0; }
  body.contact #main > .maps {
    position: relative;
    bottom: -120px; }
    @media screen and (min-width: 992px) {
      body.contact #main > .maps {
        opacity: 0;
        -webkit-transform: translateY(60px);
        -moz-transform: translateY(60px);
        -ms-transform: translateY(60px);
        transform: translateY(60px);
        -webkit-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
        -moz-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
        -ms-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
        transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out; } }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.contact #main > .maps {
        bottom: 0; } }
    body.contact #main > .maps .map {
      height: 560px; }
      @media screen and (min-width: 768px) and (max-width: 991px) {
        body.contact #main > .maps .map {
          height: 40vh;
          max-height: 560px; } }
      @media screen and (min-width: 768px) and (max-width: 991px) {
        body.contact #main > .maps .map {
          height: 80vh;
          max-height: 560px; } }
    body.contact #main > .maps.is-visible {
      opacity: 1;
      -webkit-transform: translateY(0);
      -moz-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0); }
body.contact.contact-ok #main > .intro .left h1,
body.contact.contact-ok #main > .intro .left .txt--p1 {
  display: none; }
body.contact.contact-ok #main > .intro .left .txt {
  padding-bottom: 130px; }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.contact.contact-ok #main > .intro .left .txt {
      padding: 0px 25px 150px 25px; } }
body.contact.contact-ok #main > .intro .right {
  top: 0; }
  body.contact.contact-ok #main > .intro .right .form form,
  body.contact.contact-ok #main > .intro .right .form > h2 {
    display: none; }
  body.contact.contact-ok #main > .intro .right .form .form-ok {
    display: block; }
body.case-study-detail #main > .header .container {
  height: 85vh;
  min-height: 750px;
  width: 100%;
  display: table; }
  @media screen and (min-width: 0px) and (max-width: 991px) {
    body.case-study-detail #main > .header .container {
      height: auto;
      min-height: inherit;
      padding-top: 120px;
      padding-bottom: 50px;
      display: block; } }
  body.case-study-detail #main > .header .container .txt {
    display: table-cell;
    vertical-align: middle; }
    body.case-study-detail #main > .header .container .txt h2 {
      position: relative; }
      @media screen and (min-width: 992px) {
        body.case-study-detail #main > .header .container .txt h2 {
          -webkit-transition: opacity 600ms ease-in-out, -webkit-transform 600ms ease-in-out;
          -moz-transition: opacity 600ms ease-in-out, -moz-transform 600ms ease-in-out;
          -ms-transition: opacity 600ms ease-in-out, -ms-transform 600ms ease-in-out;
          transition: opacity 600ms ease-in-out, transform 600ms ease-in-out;
          opacity: 0;
          -webkit-transform: translateY(80px);
          -moz-transform: translateY(80px);
          -ms-transform: translateY(80px);
          transform: translateY(80px); } }
      body.case-study-detail #main > .header .container .txt h2:after {
        display: block;
        content: '';
        width: 126px;
        height: 1px;
        background: #008DFF;
        position: relative;
        margin: 37px 0;
        left: -63px;
        opacity: 0;
        -webkit-transition: opacity 800ms ease-in-out 100ms, -webkit-transform 800ms ease-in-out 100ms;
        -moz-transition: opacity 800ms ease-in-out 100ms, -moz-transform 800ms ease-in-out 100ms;
        -ms-transition: opacity 800ms ease-in-out 100ms, -ms-transform 800ms ease-in-out 100ms;
        transition: opacity 800ms ease-in-out 100ms, transform 800ms ease-in-out 100ms;
        -webkit-transform: translateX(-250px);
        -moz-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
        transform: translateX(-250px); }
        @media screen and (min-width: 0px) and (max-width: 991px) {
          body.case-study-detail #main > .header .container .txt h2:after {
            width: 60px;
            bottom: 0;
            left: -10px;
            opacity: 1;
            margin: 17px 0;
            -webkit-transform: translateX(0px);
            -moz-transform: translateX(0px);
            -ms-transform: translateX(0px);
            transform: translateX(0px); } }
    @media screen and (min-width: 992px) {
      body.case-study-detail #main > .header .container .txt h1 {
        -webkit-transition: opacity 600ms ease-in-out 700ms, -webkit-transform 600ms ease-in-out 700ms;
        -moz-transition: opacity 600ms ease-in-out 700ms, -moz-transform 600ms ease-in-out 700ms;
        -ms-transition: opacity 600ms ease-in-out 700ms, -ms-transform 600ms ease-in-out 700ms;
        transition: opacity 600ms ease-in-out 700ms, transform 600ms ease-in-out 700ms;
        opacity: 0;
        -webkit-transform: translateY(150px);
        -moz-transform: translateY(150px);
        -ms-transform: translateY(150px);
        transform: translateY(150px); } }
    @media screen and (min-width: 0px) and (max-width: 991px) {
      body.case-study-detail #main > .header .container .txt h1 br {
        display: none; } }
body.case-study-detail #main > .header.is-visible .container .txt h1 {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1; }
body.case-study-detail #main > .header.is-visible .container .txt h2 {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1; }
  body.case-study-detail #main > .header.is-visible .container .txt h2:after {
    opacity: 1;
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }
body.case-study-detail #main > .header-image {
  position: relative;
  *zoom: 1; }
  body.case-study-detail #main > .header-image:before, body.case-study-detail #main > .header-image:after {
    display: table;
    clear: both;
    content: "";
    line-height: 0; }
  body.case-study-detail #main > .header-image .bg {
    position: absolute;
    left: 0;
    top: 16%;
    height: 72%;
    max-height: 611px;
    width: 81.5%;
    background: #2B2996; }
    @media screen and (min-width: 992px) {
      body.case-study-detail #main > .header-image .bg {
        -webkit-transition: -webkit-transform 800ms ease-in-out;
        -moz-transition: -moz-transform 800ms ease-in-out;
        -ms-transition: -ms-transform 800ms ease-in-out;
        transition: transform 800ms ease-in-out;
        -webkit-transform-origin: left 0;
        -moz-transform-origin: left 0;
        -ms-transform-origin: left 0;
        transform-origin: left 0;
        -webkit-transform: scaleX(0);
        -moz-transform: scaleX(0);
        -ms-transform: scaleX(0);
        transform: scaleX(0); } }
  body.case-study-detail #main > .header-image .images {
    position: relative;
    float: right;
    width: 100%;
    max-width: 1138px;
    *zoom: 1; }
    body.case-study-detail #main > .header-image .images:before, body.case-study-detail #main > .header-image .images:after {
      display: table;
      clear: both;
      content: "";
      line-height: 0; }
    body.case-study-detail #main > .header-image .images > img {
      position: absolute; }
      @media screen and (min-width: 992px) {
        body.case-study-detail #main > .header-image .images > img {
          opacity: 0;
          -webkit-transition: opacity 800ms ease-in-out, -webkit-transform 800ms ease-in-out;
          -moz-transition: opacity 800ms ease-in-out, -moz-transform 800ms ease-in-out;
          -ms-transition: opacity 800ms ease-in-out, -ms-transform 800ms ease-in-out;
          transition: opacity 800ms ease-in-out, transform 800ms ease-in-out;
          -webkit-transform: translateY(100px);
          -moz-transform: translateY(100px);
          -ms-transform: translateY(100px);
          transform: translateY(100px); } }
      body.case-study-detail #main > .header-image .images > img.macbook {
        position: relative;
        float: right;
        margin-top: 7%;
        width: 75%;
        max-width: 812px;
        z-index: 1;
        -webkit-transition-delay: 500ms, 0ms;
        -moz-transition-delay: 500ms, 0ms;
        -ms-transition-delay: 500ms, 0ms;
        transition-delay: 500ms, 0ms; }
      body.case-study-detail #main > .header-image .images > img.iphone {
        position: absolute;
        right: 74%;
        top: 40%;
        width: 27.5%;
        max-width: 298px;
        z-index: 1;
        -webkit-transition-delay: 600ms, 0ms;
        -moz-transition-delay: 600ms, 0ms;
        -ms-transition-delay: 600ms, 0ms;
        transition-delay: 600ms, 0ms; }
      body.case-study-detail #main > .header-image .images > img.ipad {
        position: absolute;
        right: 42.5%;
        top: -2.5%;
        width: 58.30%;
        max-width: 632px;
        -webkit-transition-delay: 400ms, 0ms;
        -moz-transition-delay: 400ms, 0ms;
        -ms-transition-delay: 400ms, 0ms;
        transition-delay: 400ms, 0ms; }
  body.case-study-detail #main > .header-image.is-visible .bg {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1); }
  body.case-study-detail #main > .header-image.is-visible .images > img {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
  body.case-study-detail #main > .header-image .lines-group10 {
    position: absolute;
    bottom: 14%;
    left: 0; }
body.case-study-detail #main > .header-txt {
  position: relative;
  padding: 92px 0 322px 0; }
  @media screen and (min-width: 0px) and (max-width: 991px) {
    body.case-study-detail #main > .header-txt {
      padding: 30px 0; } }
  body.case-study-detail #main > .header-txt .txt--p2 {
    position: relative;
    padding-left: 144px;
    padding-right: 150px; }
    @media screen and (min-width: 0px) and (max-width: 991px) {
      body.case-study-detail #main > .header-txt .txt--p2 {
        padding: 0; } }
    @media screen and (min-width: 992px) {
      body.case-study-detail #main > .header-txt .txt--p2 p {
        -webkit-transition: opacity 600ms ease-in-out, -webkit-transform 600ms ease-in-out;
        -moz-transition: opacity 600ms ease-in-out, -moz-transform 600ms ease-in-out;
        -ms-transition: opacity 600ms ease-in-out, -ms-transform 600ms ease-in-out;
        transition: opacity 600ms ease-in-out, transform 600ms ease-in-out;
        opacity: 0;
        -webkit-transform: translateY(150px);
        -moz-transform: translateY(150px);
        -ms-transform: translateY(150px);
        transform: translateY(150px); } }
    body.case-study-detail #main > .header-txt .txt--p2:before {
      content: '';
      display: block;
      height: 2px;
      width: 84px;
      background: #96BAFF; }
      @media screen and (min-width: 992px) {
        body.case-study-detail #main > .header-txt .txt--p2:before {
          position: absolute;
          left: 0px;
          top: 15px;
          -webkit-transition: -webkit-transform 400ms ease-in-out 300ms;
          -moz-transition: -moz-transform 400ms ease-in-out 300ms;
          -ms-transition: -ms-transform 400ms ease-in-out 300ms;
          transition: transform 400ms ease-in-out 300ms;
          -webkit-transform-origin: left top;
          -moz-transform-origin: left top;
          -ms-transform-origin: left top;
          transform-origin: left top;
          -webkit-transform: scaleX(0);
          -moz-transform: scaleX(0);
          -ms-transform: scaleX(0);
          transform: scaleX(0); } }
      @media screen and (min-width: 0px) and (max-width: 991px) {
        body.case-study-detail #main > .header-txt .txt--p2:before {
          position: relative;
          margin-bottom: 35px;
          width: 45px; } }
  body.case-study-detail #main > .header-txt.is-visible .txt--p2 p {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
  body.case-study-detail #main > .header-txt.is-visible .txt--p2:before {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1); }
  body.case-study-detail #main > .header-txt .lines-group4 {
    right: 0;
    bottom: 150px;
    position: absolute; }
body.case-study-detail #main > .blocks {
 /*
h3.title--header2{
    &:after{
        position: relative;
        margin-top:23px;
        margin-bottom:43px;
        display: block;
        content:'';
        height:2px;
        width:84px;
        left:-42px;
        background:$blue_lines;
    }
}
*/ }
  @media screen and (min-width: 0px) and (max-width: 991px) {
    body.case-study-detail #main > .blocks {
      padding-top: 50px; } }
  body.case-study-detail #main > .blocks .block {
    width: 100%;
    display: inline-block; }
    body.case-study-detail #main > .blocks .block > div .container .txt .txt--p1 {
      -webkit-transition: opacity 600ms ease-in-out, -webkit-transform 600ms ease-in-out;
      -moz-transition: opacity 600ms ease-in-out, -moz-transform 600ms ease-in-out;
      -ms-transition: opacity 600ms ease-in-out, -ms-transform 600ms ease-in-out;
      transition: opacity 600ms ease-in-out, transform 600ms ease-in-out; }
      body.case-study-detail #main > .blocks .block > div .container .txt .txt--p1 p {
        margin-bottom: 1.6em; }
        body.case-study-detail #main > .blocks .block > div .container .txt .txt--p1 p span {
          font-weight: 400; }
      @media screen and (min-width: 992px) {
        body.case-study-detail #main > .blocks .block > div .container .txt .txt--p1 {
          opacity: 0;
          -webkit-transform: translateY(90px);
          -moz-transform: translateY(90px);
          -ms-transform: translateY(90px);
          transform: translateY(90px); } }
      body.case-study-detail #main > .blocks .block > div .container .txt .txt--p1.is-visible {
        opacity: 1;
        -webkit-transform: translateY(0px);
        -moz-transform: translateY(0px);
        -ms-transform: translateY(0px);
        transform: translateY(0px); }
      body.case-study-detail #main > .blocks .block > div .container .txt .txt--p1:before {
        position: relative;
        margin-top: 23px;
        margin-bottom: 43px;
        display: block;
        content: '';
        height: 2px;
        width: 84px;
        left: -42px;
        background: #96BAFF; }
        @media screen and (min-width: 0px) and (max-width: 991px) {
          body.case-study-detail #main > .blocks .block > div .container .txt .txt--p1:before {
            left: 0;
            width: 45px;
            left: auto;
            margin-bottom: 23px; } }
    @media screen and (min-width: 0px) and (max-width: 991px) {
      body.case-study-detail #main > .blocks .block > div .container h3 br {
        display: none; } }
  body.case-study-detail #main > .blocks > .block1 {
    padding: 0px 0 100px 0; }
    body.case-study-detail #main > .blocks > .block1 > div {
      position: relative;
      width: 100%;
      height: 100%; }
      body.case-study-detail #main > .blocks > .block1 > div .bg {
        position: absolute;
        top: 28%;
        left: 0;
        height: 45%;
        max-height: 360px;
        background: #F3F7FF;
        width: calc(630px + ((100% - 1500px)/2));
        -webkit-transform: scaleX(0);
        -moz-transform: scaleX(0);
        -ms-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -ms-transform-origin: left center;
        transform-origin: left center;
        -webkit-transition: -webkit-transform 600ms ease-in-out;
        -moz-transition: -webkit-transform 600ms ease-in-out;
        -ms-transition: -webkit-transform 600ms ease-in-out;
        transition: -webkit-transform 600ms ease-in-out; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.case-study-detail #main > .blocks > .block1 > div .bg {
            -webkit-transform: scaleX(1);
            -moz-transform: scaleX(1);
            -ms-transform: scaleX(1);
            transform: scaleX(1); } }
        body.case-study-detail #main > .blocks > .block1 > div .bg.is-visible {
          -webkit-transform: scaleX(1);
          -moz-transform: scaleX(1);
          -ms-transform: scaleX(1);
          transform: scaleX(1); }
        @media screen and (min-width: 992px) and (max-width: 1279px) {
          body.case-study-detail #main > .blocks > .block1 > div .bg {
            height: 260px; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.case-study-detail #main > .blocks > .block1 > div .bg {
            display: none;
            bottom: -25px;
            top: auto;
            width: calc(100% - 25px);
            height: auto; }
            body.case-study-detail #main > .blocks > .block1 > div .bg:after {
              content: "";
              display: block;
              padding-bottom: 67%; } }
      body.case-study-detail #main > .blocks > .block1 > div .container {
        *zoom: 1;
        display: table; }
        body.case-study-detail #main > .blocks > .block1 > div .container:before, body.case-study-detail #main > .blocks > .block1 > div .container:after {
          display: table;
          clear: both;
          content: "";
          line-height: 0; }
        body.case-study-detail #main > .blocks > .block1 > div .container .img {
          float: left;
          width: 48%;
          max-width: 660px; }
          body.case-study-detail #main > .blocks > .block1 > div .container .img .block-revealer__content {
            position: relative;
            overflow: hidden; }
            body.case-study-detail #main > .blocks > .block1 > div .container .img .block-revealer__content:after {
              content: '';
              display: block;
              padding-bottom: 67%; }
            body.case-study-detail #main > .blocks > .block1 > div .container .img .block-revealer__content img {
              width: 100%;
              display: block;
              position: absolute;
              top: 0;
              left: 0; }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.case-study-detail #main > .blocks > .block1 > div .container .img {
              margin-top: 15px;
              max-width: none;
              float: none;
              text-align: right;
              width: calc(100% - 20px);
              display: table-caption;
              caption-side: bottom;
              -webkit-transform: translateX(20px);
              -moz-transform: translateX(20px);
              -ms-transform: translateX(20px);
              transform: translateX(20px);
              -webkit-box-shadow: -20px 20px 0 0 #F3F7FF;
              -moz-box-shadow: -20px 20px 0 0 #F3F7FF;
              -ms-box-shadow: -20px 20px 0 0 #F3F7FF;
              box-shadow: -20px 20px 0 0 #F3F7FF; } }
        body.case-study-detail #main > .blocks > .block1 > div .container .txt {
          padding-top: 55px;
          margin-left: 10%;
          float: left;
          width: 35%; }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.case-study-detail #main > .blocks > .block1 > div .container .txt {
              float: none;
              width: 100%;
              margin-left: 0;
              padding-top: 0; } }
  body.case-study-detail #main > .blocks > .block2 {
    margin: 100px 0 100px 0; }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.case-study-detail #main > .blocks > .block2 {
        margin: 0px 0 100px 0; } }
    body.case-study-detail #main > .blocks > .block2 > div {
      background: #fff;
      position: relative; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.case-study-detail #main > .blocks > .block2 > div {
          *zoom: 1; }
          body.case-study-detail #main > .blocks > .block2 > div:before, body.case-study-detail #main > .blocks > .block2 > div:after {
            display: table;
            clear: both;
            content: "";
            line-height: 0; } }
      body.case-study-detail #main > .blocks > .block2 > div .images {
        position: absolute;
        top: 15%;
        right: 0;
        width: 51%;
        max-width: 860px; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.case-study-detail #main > .blocks > .block2 > div .images {
            position: static;
            width: 100%;
            max-width: none;
            float: right;
            width: calc(100% - 20px);
            padding-top: 50px; } }
        body.case-study-detail #main > .blocks > .block2 > div .images > div {
          position: relative;
          height: 100%;
          width: 100%; }
          body.case-study-detail #main > .blocks > .block2 > div .images > div:after {
            content: '';
            display: block;
            padding-bottom: 66%; }
          body.case-study-detail #main > .blocks > .block2 > div .images > div > img {
            position: absolute;
            top: -15.8%;
            left: -4%;
            display: block;
            z-index: 3;
            width: 75%; }
            @media screen and (min-width: 992px) {
              body.case-study-detail #main > .blocks > .block2 > div .images > div > img {
                opacity: 0;
                -webkit-transition: opacity 600ms ease-in-out 300ms;
                -moz-transition: opacity 600ms ease-in-out 300ms;
                -ms-transition: opacity 600ms ease-in-out 300ms;
                transition: opacity 600ms ease-in-out 300ms; }
                body.case-study-detail #main > .blocks > .block2 > div .images > div > img.is-visible {
                  opacity: 1; } }
          body.case-study-detail #main > .blocks > .block2 > div .images > div .img {
            height: 100%;
            overflow: hidden;
            position: absolute;
            right: 0;
            top: 10%; }
            body.case-study-detail #main > .blocks > .block2 > div .images > div .img img {
              width: 100%;
              display: block; }
              @media screen and (min-width: 0) and (max-width: 991px) {
                body.case-study-detail #main > .blocks > .block2 > div .images > div .img img {
                  top: auto;
                  bottom: 50px;
                  position: relative; } }
      body.case-study-detail #main > .blocks > .block2 > div .container {
        *zoom: 1; }
        body.case-study-detail #main > .blocks > .block2 > div .container:before, body.case-study-detail #main > .blocks > .block2 > div .container:after {
          display: table;
          clear: both;
          content: "";
          line-height: 0; }
        body.case-study-detail #main > .blocks > .block2 > div .container .txt {
          margin-left: 5%;
          float: left;
          width: 35%; }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.case-study-detail #main > .blocks > .block2 > div .container .txt {
              float: none;
              width: 100%;
              margin-left: 0;
              padding-top: 0; } }
  body.case-study-detail #main > .blocks > .block3 {
    margin: 100px 0 100px 0; }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.case-study-detail #main > .blocks > .block3 {
        margin: 0 0 0 0px; } }
    body.case-study-detail #main > .blocks > .block3 > div {
      position: relative;
      width: 100%;
      height: 100%; }
      body.case-study-detail #main > .blocks > .block3 > div .bg {
        position: absolute;
        top: 20%;
        left: 0;
        height: 55%;
        background: #F3F7FF;
        width: calc(630px + ((100% - 1500px)/2));
        -webkit-transform: scaleX(0);
        -moz-transform: scaleX(0);
        -ms-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -ms-transform-origin: left center;
        transform-origin: left center;
        -webkit-transition: -webkit-transform 600ms ease-in-out;
        -moz-transition: -webkit-transform 600ms ease-in-out;
        -ms-transition: -webkit-transform 600ms ease-in-out;
        transition: -webkit-transform 600ms ease-in-out; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.case-study-detail #main > .blocks > .block3 > div .bg {
            -webkit-transform: scaleX(1);
            -moz-transform: scaleX(1);
            -ms-transform: scaleX(1);
            transform: scaleX(1); } }
        body.case-study-detail #main > .blocks > .block3 > div .bg.is-visible {
          -webkit-transform: scaleX(1);
          -moz-transform: scaleX(1);
          -ms-transform: scaleX(1);
          transform: scaleX(1); }
        @media screen and (min-width: 992px) and (max-width: 1279px) {
          body.case-study-detail #main > .blocks > .block3 > div .bg {
            height: 260px; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.case-study-detail #main > .blocks > .block3 > div .bg {
            display: none;
            bottom: -25px;
            top: auto;
            width: calc(100% - 25px);
            height: auto; }
            body.case-study-detail #main > .blocks > .block3 > div .bg:after {
              content: "";
              display: block;
              padding-bottom: 67%; } }
      body.case-study-detail #main > .blocks > .block3 > div .container {
        *zoom: 1; }
        body.case-study-detail #main > .blocks > .block3 > div .container:before, body.case-study-detail #main > .blocks > .block3 > div .container:after {
          display: table;
          clear: both;
          content: "";
          line-height: 0; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.case-study-detail #main > .blocks > .block3 > div .container {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: flex;
            -webkit-flex-flow: row wrap;
            -moz-flex-flow: row wrap;
            -ms-flex-flow: row wrap;
            flex-flow: row wrap; } }
        body.case-study-detail #main > .blocks > .block3 > div .container .img {
          float: left;
          width: 48%;
          *zoom: 1;
          position: relative; }
          body.case-study-detail #main > .blocks > .block3 > div .container .img:before, body.case-study-detail #main > .blocks > .block3 > div .container .img:after {
            display: table;
            clear: both;
            content: "";
            line-height: 0; }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.case-study-detail #main > .blocks > .block3 > div .container .img {
              order: 2;
              width: 100%;
              float: none; } }
          body.case-study-detail #main > .blocks > .block3 > div .container .img img {
            display: block; }
            body.case-study-detail #main > .blocks > .block3 > div .container .img img:nth-child(1) {
              width: 50%;
              max-width: 350px; }
              @media screen and (min-width: 0) and (max-width: 991px) {
                body.case-study-detail #main > .blocks > .block3 > div .container .img img:nth-child(1) {
                  width: 58%;
                  position: relative;
                  left: -4%; } }
            body.case-study-detail #main > .blocks > .block3 > div .container .img img:nth-child(2) {
              position: absolute;
              top: 10%;
              right: 2%;
              width: 58%;
              max-width: 406px; }
              @media screen and (min-width: 0) and (max-width: 991px) {
                body.case-study-detail #main > .blocks > .block3 > div .container .img img:nth-child(2) {
                  width: 65%;
                  right: -8%; } }
        body.case-study-detail #main > .blocks > .block3 > div .container .txt {
          padding-top: 10%;
          padding-right: 7%;
          float: right;
          width: 48%; }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.case-study-detail #main > .blocks > .block3 > div .container .txt {
              float: none;
              width: 100%;
              margin-left: 0;
              padding-top: 0;
              order: 1; } }
body.case-study-detail #main > .tools {
  display: inline-block;
  width: 100%;
  margin: 100px 0px;
  position: relative; }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.case-study-detail #main > .tools {
      margin: 50px 0 0 0; } }
  body.case-study-detail #main > .tools .bg {
    right: 0;
    height: 100%;
    top: 12%;
    width: 66%;
    position: absolute;
    background: #F3F7FF; }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.case-study-detail #main > .tools .bg {
        display: none; } }
  body.case-study-detail #main > .tools > div {
    position: relative;
    margin: 0 80px;
    background: #2B2996; }
    @media screen and (min-width: 0) and (max-width: 1279px) {
      body.case-study-detail #main > .tools > div {
        margin: 0; } }
  body.case-study-detail #main > .tools .container {
    background: #2B2996;
    padding: 140px 120px;
    *zoom: 1; }
    body.case-study-detail #main > .tools .container:before, body.case-study-detail #main > .tools .container:after {
      display: table;
      clear: both;
      content: "";
      line-height: 0; }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.case-study-detail #main > .tools .container {
        padding: 50px 20px; } }
    @media screen and (min-width: 992px) {
      body.case-study-detail #main > .tools .container > div {
        -webkit-transform: translateY(80px);
        -moz-transform: translateY(80px);
        -ms-transform: translateY(80px);
        transform: translateY(80px);
        -webkit-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
        -moz-transition: -moz-transform 600ms ease-in-out, opacity 600ms ease-in-out;
        -ms-transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
        transition: -webkit-transform 600ms ease-in-out, opacity 600ms ease-in-out;
        opacity: 0; } }
    body.case-study-detail #main > .tools .container > div.is-visible {
      opacity: 1;
      -webkit-transform: translateY(0);
      -moz-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0); }
    body.case-study-detail #main > .tools .container .left {
      float: left;
      width: 50%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.case-study-detail #main > .tools .container .left {
          float: none;
          width: 100%; } }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.case-study-detail #main > .tools .container .left h3 {
          position: relative; }
          body.case-study-detail #main > .tools .container .left h3 br {
            display: none; }
          body.case-study-detail #main > .tools .container .left h3:after {
            position: relative;
            display: block;
            content: '';
            height: 2px;
            width: 45px;
            left: 0;
            margin-top: 25px;
            margin-bottom: 25px;
            background: #96BAFF; } }
      body.case-study-detail #main > .tools .container .left h3 .reveal:nth-of-type(2) {
        margin-left: 75px; }
        @media screen and (min-width: 992px) and (max-width: 1279px) {
          body.case-study-detail #main > .tools .container .left h3 .reveal:nth-of-type(2) {
            margin-left: 55px; } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.case-study-detail #main > .tools .container .left h3 .reveal:nth-of-type(2) {
            margin-left: 0; } }
        body.case-study-detail #main > .tools .container .left h3 .reveal:nth-of-type(2):before {
          content: '';
          width: 84px;
          height: 2px;
          background: #96BAFF;
          left: -105px;
          position: absolute;
          top: 50%;
          -webkit-transition: opacity 400ms ease-in-out, -webkit-transform 400ms ease-in-out;
          -moz-transition: opacity 400ms ease-in-out, -moz-transform 400ms ease-in-out;
          -ms-transition: opacity 400ms ease-in-out, -ms-transform 400ms ease-in-out;
          transition: opacity 400ms ease-in-out, transform 400ms ease-in-out; }
          @media screen and (min-width: 992px) {
            body.case-study-detail #main > .tools .container .left h3 .reveal:nth-of-type(2):before {
              opacity: 0;
              -webkit-transform: translateY(20px);
              -moz-transform: translateY(20px);
              -ms-transform: translateY(20px);
              transform: translateY(20px); } }
          @media screen and (min-width: 992px) and (max-width: 1279px) {
            body.case-study-detail #main > .tools .container .left h3 .reveal:nth-of-type(2):before {
              width: 70px;
              left: -85px; } }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.case-study-detail #main > .tools .container .left h3 .reveal:nth-of-type(2):before {
              display: none; } }
        body.case-study-detail #main > .tools .container .left h3 .reveal:nth-of-type(2).is-visible:before {
          opacity: 1;
          -webkit-transform: translateY(0px);
          -moz-transform: translateY(0px);
          -ms-transform: translateY(0px);
          transform: translateY(0px); }
    body.case-study-detail #main > .tools .container .right {
      float: right;
      width: 40%; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.case-study-detail #main > .tools .container .right {
          float: none;
          width: 100%; } }
      body.case-study-detail #main > .tools .container .right ul li {
        margin-top: 60px; }
        body.case-study-detail #main > .tools .container .right ul li a {
          color: #fff;
          text-decoration: none; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.case-study-detail #main > .tools .container .right ul li {
            margin-top: 30px; } }
        body.case-study-detail #main > .tools .container .right ul li:first-child {
          margin-top: 0; }
        body.case-study-detail #main > .tools .container .right ul li h3 {
          margin-bottom: 25px; }
@media screen and (min-width: 0) and (max-width: 991px) {
  body.legal #main .container {
    padding: 0; } }
body.legal #main > .intro {
  position: relative;
  *zoom: 1;
  padding-top: 300px; }
  body.legal #main > .intro:before, body.legal #main > .intro:after {
    display: table;
    clear: both;
    content: "";
    line-height: 0; }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.legal #main > .intro {
      padding-top: 120px; } }
  body.legal #main > .intro .left {
    position: relative; }
    body.legal #main > .intro .left > .txt {
      padding-bottom: 360px; }
      @media screen and (min-width: 0) and (max-width: 991px) {
        body.legal #main > .intro .left > .txt {
          padding: 0px 25px 150px 25px; } }
      body.legal #main > .intro .left > .txt h1.title--header1 {
        padding-left: 63px; }
        body.legal #main > .intro .left > .txt h1.title--header1:after {
          position: relative;
          left: -63px;
          margin-top: 23px;
          display: block;
          content: '';
          height: 1px;
          width: 126px;
          background: #008DFF;
          -webkit-transform: translateX(-100px);
          -moz-transform: translateX(-100px);
          -ms-transform: translateX(-100px);
          transform: translateX(-100px);
          opacity: 0;
          -webkit-transition: opacity 600ms ease-in-out, -webkit-transform 600ms ease-in-out;
          -moz-transition: opacity 600ms ease-in-out, -moz-transform 600ms ease-in-out;
          -ms-transition: opacity 600ms ease-in-out, -ms-transform 600ms ease-in-out;
          transition: opacity 600ms ease-in-out, transform 600ms ease-in-out; }
        body.legal #main > .intro .left > .txt h1.title--header1.is-visible:after {
          opacity: 1;
          -webkit-transform: translateX(0px);
          -moz-transform: translateX(0px);
          -ms-transform: translateX(0px);
          transform: translateX(0px); }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.legal #main > .intro .left > .txt h1.title--header1 {
            padding-left: 0px; }
            body.legal #main > .intro .left > .txt h1.title--header1:after {
              left: 0;
              width: 45px;
              opacity: 1;
              -webkit-transform: translateX(0px);
              -moz-transform: translateX(0px);
              -ms-transform: translateX(0px);
              transform: translateX(0px); } }
        body.legal #main > .intro .left > .txt h1.title--header1 .reveal:nth-of-type(2) {
          margin-left: 75px; }
          @media screen and (min-width: 992px) and (max-width: 1279px) {
            body.legal #main > .intro .left > .txt h1.title--header1 .reveal:nth-of-type(2) {
              margin-left: 55px; } }
          @media screen and (min-width: 0) and (max-width: 991px) {
            body.legal #main > .intro .left > .txt h1.title--header1 .reveal:nth-of-type(2) {
              margin-left: 0; } }
          body.legal #main > .intro .left > .txt h1.title--header1 .reveal:nth-of-type(2):before {
            content: '';
            width: 84px;
            height: 2px;
            background: #96BAFF;
            left: -105px;
            position: absolute;
            top: 50%;
            -webkit-transition: opacity 400ms ease-in-out, -webkit-transform 400ms ease-in-out;
            -moz-transition: opacity 400ms ease-in-out, -moz-transform 400ms ease-in-out;
            -ms-transition: opacity 400ms ease-in-out, -ms-transform 400ms ease-in-out;
            transition: opacity 400ms ease-in-out, transform 400ms ease-in-out; }
            @media screen and (min-width: 992px) {
              body.legal #main > .intro .left > .txt h1.title--header1 .reveal:nth-of-type(2):before {
                opacity: 0;
                -webkit-transform: translateY(20px);
                -moz-transform: translateY(20px);
                -ms-transform: translateY(20px);
                transform: translateY(20px); } }
            @media screen and (min-width: 992px) and (max-width: 1279px) {
              body.legal #main > .intro .left > .txt h1.title--header1 .reveal:nth-of-type(2):before {
                width: 70px;
                left: -85px; } }
            @media screen and (min-width: 0) and (max-width: 991px) {
              body.legal #main > .intro .left > .txt h1.title--header1 .reveal:nth-of-type(2):before {
                display: none; } }
          body.legal #main > .intro .left > .txt h1.title--header1 .reveal:nth-of-type(2).is-visible:before {
            opacity: 1;
            -webkit-transform: translateY(0px);
            -moz-transform: translateY(0px);
            -ms-transform: translateY(0px);
            transform: translateY(0px); }
      body.legal #main > .intro .left > .txt .txt--p1 {
        margin: 0 auto;
        margin-top: 90px;
        width: 100%;
        max-width: 960px;
        -webkit-transition: opacity 600ms ease-in-out, -webkit-transform 600ms ease-in-out;
        -moz-transition: opacity 600ms ease-in-out, -moz-transform 600ms ease-in-out;
        -ms-transition: opacity 600ms ease-in-out, -ms-transform 600ms ease-in-out;
        transition: opacity 600ms ease-in-out, transform 600ms ease-in-out; }
        body.legal #main > .intro .left > .txt .txt--p1 ul {
          list-style-type: disc;
          font-weight: 400;
          padding-left: 20px; }
          body.legal #main > .intro .left > .txt .txt--p1 ul li {
            margin: 1.0em 0; }
        @media screen and (min-width: 992px) {
          body.legal #main > .intro .left > .txt .txt--p1 {
            opacity: 0;
            -webkit-transform: translateY(90px);
            -moz-transform: translateY(90px);
            -ms-transform: translateY(90px);
            transform: translateY(90px); } }
        @media screen and (min-width: 0) and (max-width: 991px) {
          body.legal #main > .intro .left > .txt .txt--p1 {
            max-width: none;
            margin-top: 53px; }
            body.legal #main > .intro .left > .txt .txt--p1 ul {
              margin-left: 15px; } }
        body.legal #main > .intro .left > .txt .txt--p1.is-visible {
          opacity: 1;
          -webkit-transform: translateY(0px);
          -moz-transform: translateY(0px);
          -ms-transform: translateY(0px);
          transform: translateY(0px); }

.block-revealer__element {
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  pointer-events: none;
  opacity: 0; }
  @media screen and (min-width: 0px) and (max-width: 991px) {
    .block-revealer__element {
      display: none; } }

@media screen and (min-width: 0px) and (max-width: 991px) {
  .block-revealer__content {
    opacity: 1 !important;
    word-wrap: break-word;
    white-space: normal; } }

.content__title__inner {
  flex: none;
  display: inline-block;
  white-space: nowrap;
  position: relative; }
  .content__title__inner:nth-of-type(2) {
    z-index: 1; }
  @media screen and (min-width: 0px) and (max-width: 991px) {
    .content__title__inner {
      white-space: normal;
      opacity: 1; } }

.content__image {
  display: block;
  width: 100%; }

.prefooter {
  position: relative;
  padding: 260px 0 220px 0; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    .prefooter {
      padding: 200px 0 120px 0; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    .prefooter {
      padding: 90px 0 90px 0; } }
  .prefooter > .container {
    position: relative; }
    @media screen and (min-width: 768px) and (max-width: 991px) {
      .prefooter > .container {
        *zoom: 1;
        padding-left: 55px;
        padding-right: 55px; }
        .prefooter > .container:before, .prefooter > .container:after {
          display: table;
          clear: both;
          content: "";
          line-height: 0; } }
    @media screen and (min-width: 0) and (max-width: 767px) {
      .prefooter > .container {
        *zoom: 1;
        padding-left: 0;
        padding-right: 0; }
        .prefooter > .container:before, .prefooter > .container:after {
          display: table;
          clear: both;
          content: "";
          line-height: 0; } }
    .prefooter > .container a {
      position: absolute;
      width: 57%;
      display: block;
      color: #fff;
      text-decoration: none; }
      @media screen and (min-width: 768px) and (max-width: 991px) {
        .prefooter > .container a {
          position: static;
          width: 67%;
          float: left; } }
      @media screen and (min-width: 0) and (max-width: 767px) {
        .prefooter > .container a {
          position: static;
          width: calc(100% - 35px);
          float: left; } }
      .prefooter > .container a:nth-of-type(1) {
        left: 0;
        top: -10%; }
        @media screen and (min-width: 768px) and (max-width: 991px) {
          .prefooter > .container a:nth-of-type(1) {
            -webkit-transform: translateY(10px);
            -moz-transform: translateY(10px);
            -ms-transform: translateY(10px);
            transform: translateY(10px); } }
        @media screen and (min-width: 0) and (max-width: 767px) {
          .prefooter > .container a:nth-of-type(1) {
            text-align: right; } }
        .prefooter > .container a:nth-of-type(1) .bg {
          background: #3C39CD;
          -webkit-transform-origin: left center;
          -moz-transform-origin: left center;
          -ms-transform-origin: left center;
          transform-origin: left center; }
      .prefooter > .container a:nth-of-type(2) {
        right: 0;
        top: 27%;
        text-align: right; }
        @media screen and (min-width: 768px) and (max-width: 991px) {
          .prefooter > .container a:nth-of-type(2) {
            float: right;
            -webkit-transform: translateY(-10px);
            -moz-transform: translateY(-10px);
            -ms-transform: translateY(-10px);
            transform: translateY(-10px); } }
        @media screen and (min-width: 0) and (max-width: 767px) {
          .prefooter > .container a:nth-of-type(2) {
            float: right;
            text-align: left; } }
        .prefooter > .container a:nth-of-type(2) .bg {
          background: #2B2996;
          -webkit-transform-origin: right center;
          -moz-transform-origin: right center;
          -ms-transform-origin: right center;
          transform-origin: right center; }
      .prefooter > .container a p {
        margin-bottom: 1.3em;
        font-size: 1.1em;
        font-family: 'Poppins', sans-serif;
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: 0.1em; }
        @media screen and (min-width: 0) and (max-width: 991px) {
          .prefooter > .container a p {
            margin-bottom: 0.5em; } }
      .prefooter > .container a > div {
        position: relative;
        width: 100%;
        height: 100%; }
        .prefooter > .container a > div > div.bg {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          -webkit-transform: scaleX(0);
          -moz-transform: scaleX(0);
          -ms-transform: scaleX(0);
          transform: scaleX(0);
          -webkit-transition: -webkit-transform 400ms ease-in-out;
          -moz-transition: -webkit-transform 400ms ease-in-out;
          -ms-transition: -webkit-transform 400ms ease-in-out;
          transition: -webkit-transform 400ms ease-in-out; }
          @media screen and (max-width: 992px) {
            .prefooter > .container a > div > div.bg {
              -webkit-transform: scaleX(1);
              -moz-transform: scaleX(1);
              -ms-transform: scaleX(1);
              transform: scaleX(1); } }
          .prefooter > .container a > div > div.bg.is-visible {
            -webkit-transform: scaleX(1);
            -moz-transform: scaleX(1);
            -ms-transform: scaleX(1);
            transform: scaleX(1); }
        .prefooter > .container a > div > div.bg-hover {
          background: rgba(255, 255, 255, 0.1);
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          -webkit-transform-origin: left center;
          -moz-transform-origin: left center;
          -ms-transform-origin: left center;
          transform-origin: left center;
          -webkit-transform: scaleX(0);
          -moz-transform: scaleX(0);
          -ms-transform: scaleX(0);
          transform: scaleX(0);
          -webkit-transition: -webkit-transform 400ms ease-in-out;
          -moz-transition: -webkit-transform 400ms ease-in-out;
          -ms-transition: -webkit-transform 400ms ease-in-out;
          transition: -webkit-transform 400ms ease-in-out; }
        .prefooter > .container a > div > div:nth-child(3) {
          padding: 85px;
          position: relative; }
          @media screen and (min-width: 768px) and (max-width: 991px) {
            .prefooter > .container a > div > div:nth-child(3) {
              padding: 55px 85px 50px 85px; } }
          @media screen and (min-width: 0) and (max-width: 767px) {
            .prefooter > .container a > div > div:nth-child(3) {
              padding: 35px; } }
      .prefooter > .container a:hover > div > div.bg-hover {
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
      .prefooter > .container a.is-visible .bg {
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
    .prefooter > .container > div {
      width: 36%;
      max-width: 465px;
      margin: 0 auto;
      background: #F3F7FF;
      -webkit-transform: scaleX(0);
      -moz-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0);
      -webkit-transform-origin: right center;
      -moz-transform-origin: right center;
      -ms-transform-origin: right center;
      transform-origin: right center;
      -webkit-transition: -webkit-transform 600ms ease-in-out;
      -moz-transition: -webkit-transform 600ms ease-in-out;
      -ms-transition: -webkit-transform 600ms ease-in-out;
      transition: -webkit-transform 600ms ease-in-out; }
      @media screen and (max-width: 992px) {
        .prefooter > .container > div {
          -webkit-transform: scaleX(1);
          -moz-transform: scaleX(1);
          -ms-transform: scaleX(1);
          transform: scaleX(1); } }
      @media screen and (min-width: 0) and (max-width: 991px) {
        .prefooter > .container > div {
          display: none; } }
      .prefooter > .container > div:after {
        content: "";
        display: block;
        padding-bottom: 100%; }
      .prefooter > .container > div.is-visible {
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1); }
  .prefooter .lines-group7 {
    position: absolute;
    top: 8%;
    right: 0; }

body.about .prefooter .lines-group {
  top: 24%; }
body.services .prefooter .lines-group {
  display: none; }

.footer {
  background: #14134E;
  padding: 92px 0 80px 0;
  font-family: 'Roboto';
  font-weight: 400;
  color: #96BAFF;
  font-size: 1.4em; }
  @media screen and (min-width: 992px) and (max-width: 1279px) {
    .footer {
      padding: 72px 0 60px 0; } }
  @media screen and (min-width: 768px) and (max-width: 991px) {
    .footer {
      padding: 42px 0 40px 0; } }
  @media screen and (min-width: 0) and (max-width: 767px) {
    .footer {
      padding: 50px 0 30px 0; } }
  .footer .container .top {
    *zoom: 1;
    margin-bottom: 130px;
    line-height: 1.9em; }
    .footer .container .top:before, .footer .container .top:after {
      display: table;
      clear: both;
      content: "";
      line-height: 0; }
    @media screen and (min-width: 992px) and (max-width: 1279px) {
      .footer .container .top {
        margin-bottom: 90px; } }
    @media screen and (min-width: 768px) and (max-width: 991px) {
      .footer .container .top {
        margin-bottom: 40px; } }
    @media screen and (min-width: 0) and (max-width: 767px) {
      .footer .container .top {
        margin-bottom: 0; } }
    .footer .container .top > div {
      float: left; }
      @media screen and (min-width: 0) and (max-width: 767px) {
        .footer .container .top > div {
          float: none;
          padding-bottom: 20px; } }
      .footer .container .top > div:nth-child(2) {
        width: 240px;
        float: right; }
        @media screen and (min-width: 0) and (max-width: 767px) {
          .footer .container .top > div:nth-child(2) {
            float: none;
            width: 100%; } }
  .footer .container .bottom {
    *zoom: 1;
    line-height: 37px; }
    .footer .container .bottom:before, .footer .container .bottom:after {
      display: table;
      clear: both;
      content: "";
      line-height: 0; }
    @media screen and (min-width: 0) and (max-width: 767px) {
      .footer .container .bottom {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-box;
        display: box;
        -webkit-box-orient: vertical;
        -moz-box-orient: vertical;
        -ms-box-orient: vertical;
        box-orient: vertical; } }
    .footer .container .bottom > div {
      float: left;
      color: #96BAFF; }
      @media screen and (min-width: 0) and (max-width: 767px) {
        .footer .container .bottom > div {
          float: none;
          -webkit-box-ordinal-group: 2;
          -moz-box-ordinal-group: 2;
          -ms-box-ordinal-group: 2;
          box-ordinal-group: 2;
          font-size: 12px;
          margin-top: 10px; } }
      .footer .container .bottom > div:nth-child(2) {
        float: right;
        width: 240px; }
        @media screen and (min-width: 0) and (max-width: 767px) {
          .footer .container .bottom > div:nth-child(2) {
            float: none;
            width: 100%;
            -webkit-box-ordinal-group: 1;
            -moz-box-ordinal-group: 1;
            -ms-box-ordinal-group: 1;
            box-ordinal-group: 1;
            margin-top: 50px; } }
        .footer .container .bottom > div:nth-child(2) ul li {
          display: inline-block;
          margin-right: 15px; }
          @media screen and (min-width: 0) and (max-width: 767px) {
            .footer .container .bottom > div:nth-child(2) ul li {
              margin-right: 30px; } }
          .footer .container .bottom > div:nth-child(2) ul li a {
            width: 37px;
            height: 37px;
            background-repeat: no-repeat;
            background-position: 0 0;
            display: block; }
            .footer .container .bottom > div:nth-child(2) ul li a:hover {
              background-position: 0 bottom; }
            .footer .container .bottom > div:nth-child(2) ul li a.twitter {
              background-image: url("../images/icon-twitter.svg"); }
            .footer .container .bottom > div:nth-child(2) ul li a.linkedin {
              background-image: url("../images/icon-linkedin.svg"); }
            .footer .container .bottom > div:nth-child(2) ul li a.github {
              background-image: url("../images/icon-github.svg"); }
            .footer .container .bottom > div:nth-child(2) ul li a.npm {
              background-image: url("../images/icon-npm.svg"); }

body.contact .footer {
  padding-top: 200px; }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.contact .footer {
      background: none;
      padding: 0;
      position: absolute;
      bottom: 25px;
      left: 0;
      width: 100%; } }
  body.contact .footer .container .top {
    display: none; }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.contact .footer .container .bottom {
      line-height: normal; } }
  @media screen and (min-width: 0) and (max-width: 991px) {
    body.contact .footer .container .bottom > div:nth-child(1) {
      text-align: center; } }
  body.contact .footer .container .bottom > div:nth-child(2) {
    width: auto; }
    @media screen and (min-width: 0) and (max-width: 991px) {
      body.contact .footer .container .bottom > div:nth-child(2) {
        display: none; } }
    body.contact .footer .container .bottom > div:nth-child(2) ul li {
      margin-right: 0;
      margin-left: 15px; }

/*# sourceMappingURL=styles.css.map */

a:link {
    color: white;
}

/* visited link */
a:visited {
    color: white;
}

/* mouse over link */
a:hover {
    color: white;
}

/* selected link */
a:active {
    color: white;
}
