* {
  margin: 0;
  padding: 0; }

html body * {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden; }

body {
  background-color: #fff;
  color: #11191e;
  font-size: 18px;
  font-family: 'Sailec', 'Montserrat', 'Helvetica Neue', 'Helvetica', arial, sans-serif;
  font-weight: normal;
  padding-top: 102px;
  /*
  font-feature-settings: "liga", "kern";
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: subpixel-antialiased;
*/ }

svg.shape {
  position: absolute;
  width: 100%;
  height: 100%;
  fill: #fff;
  top: 0;
  pointer-events: none;
  display: none; }

svg.shape path {
  fill: #fff;
  transition: .8s; }

input,
textarea {
  font-family: 'Sailec', 'Montserrat', 'Helvetica Neue', 'Helvetica', arial, sans-serif;
  font-weight: normal; }

@keyframes scroll {
  0% {
    transform: translateY(0px); }
  100% {
    transform: translateY(4px); } }

@keyframes revx {
  0% {
    transform: scaleX(1); }
  100% {
    transform: scaleX(0); } }

@keyframes revslide {
  0% {
    transform: scale(1.5) translateX(10%); }
  100% {
    transform: scale(1) translateX(0%); } }

@keyframes act {
  0% {
    transform: scaleX(1);
    transform-origin: right 0; }
  50% {
    transform: scaleX(0);
    transform-origin: right 0; }
  50.1% {
    transform: scaleX(0);
    transform-origin: left 0; }
  100% {
    transform: scaleX(1);
    transform-origin: left 0; } }

a {
  transition: color .5s; }

a:hover {
  text-decoration: none;
  will-change: color; }

h1,
h2,
h3 {
  font-weight: normal;
  font-size: 60px;
  line-height: 1.2em; }

h1 b,
h2 b,
h3 b {
  font-weight: bold;
  display: block; }

h3 span {
  display: inline-block; }

#hm_slide .slides div:first-child .desc h3 span {
  display: inline; }

p {
  font-size: 22px;
  line-height: 1.8em;
  font-family: 'Assistant', arial, sans-serif; }

header:after,
#about:after {
  content: '';
  display: block;
  clear: both; }

header {
  height: 102px;
  position: fixed;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
  background-color: #fff;
  padding: 0 70px;
  box-sizing: border-box;
  transition: all .3s; }

header nav {
  margin-right: 55px;
  height: 100%; }

header nav > ul {
  list-style: none;
  height: 100%;
  display: flex;
  flex-wrap: wrap; }

header nav > ul > li {
  display: inline-flex;
  margin-right: 30px;
  flex-direction: column;
  justify-content: center;
  position: relative;
  cursor: pointer; }

header nav > ul > li > a {
  color: #000;
  text-decoration: none;
  font-size: 18px;
  font-weight: normal;
  position: relative;
  line-height: 32px; }

header nav > ul > li .subs {
  visibility: hidden;
  opacity: 0;
  padding: 60px 68px 0;
  position: absolute;
  background-color: #2de0b8;
  top: 100%;
  left: -15vw;
  min-width: 45vw;
  transition: all .5s;
  cursor: default;
  box-sizing: border-box; }

header nav > ul > li:hover .subs {
  visibility: visible;
  opacity: 1; }

header nav > ul > li .subs > div {
  display: flex;
  flex-direction: row;
  margin-bottom: 58px;
  justify-content: flex-end; }

header nav > ul > li .subs > div h5,
header nav > ul > li .subs > div ul {
  text-align: left;
  flex-basis: 50%; }

header nav > ul > li .subs > div h5 {
  color: #fff;
  font-size: 17px; }

header nav > ul > li .subs > div ul {
  list-style: none; }

header nav > ul > li .subs > div ul li {
  display: block;
  margin-bottom: 13px; }

header nav > ul > li .subs > div ul li:last-of-type {
  margin: 0; }

header nav > ul > li .subs > div ul li a {
  color: #000;
  font-size: 15px;
  position: relative;
  z-index: 0; }

header nav > ul > li a.cur {
  color: #29dfb7;
  cursor: default; }

header nav > ul > li.cur:before {
  display: none; }

header nav > ul > li.has-subs:before {
  content: '';
  display: block;
  position: absolute;
  z-index: -1;
  height: 10px;
  width: 100%;
  left: 0;
  bottom: 0;
  background-color: #2de0b8;
  opacity: 0;
  transition: opacity .5s; }

header nav > ul > li.has-subs:hover:before {
  opacity: 1; }

header a#contact {
  float: right;
  color: #29dfb7;
  font-weight: bold;
  text-decoration: none;
  font-size: 16px;
  position: relative; }

header a#contact:after {
  content: '';
  display: block;
  float: right;
  width: 26px;
  height: 21px;
  background: url(../img/env.png) no-repeat 0 0/26px 21px;
  position: absolute;
  right: 0;
  top: 6px;
  transition: transform .3s; }

header a#contact:hover:after {
  transform: translateY(-6px) scale(0.7); }

header a#contact:before {
  content: '';
  display: block;
  float: right;
  height: 26px;
  width: 48px;
  border-radius: 13px;
  background-color: #29dfb7;
  margin-top: -3px;
  margin-right: -11px;
  margin-left: 10px; }

header a#lang {
  font-family: 'Assistant', arial, sans-serif;
  float: right;
  margin: 0 0 0 40px;
  color: #000;
  font-size: 14px;
  line-height: 18px; }

header a#lang:hover {
  color: #29dfb7; }

header a#logo {
  position: absolute;
  left: 70px;
  display: block;
  width: 100px;
  height: 20px;
  background-size: contain;
  background-repeat: no-repeat; }

header.shrinked {
  height: 60px;
  background-color: rgba(255, 255, 255, 0.95); }

/*home*/
#hm_slide {
  overflow: hidden;
  position: relative;
  height: 42vw;
  background-color: #fff; }

#hm_slide #next,
#hm_slide #prev,
#slider > a {
  position: absolute;
  right: 60px;
  bottom: 0;
  opacity: .5;
  width: 60px;
  height: 60px;
  overflow: hidden;
  text-indent: 1000px;
  display: block;
  z-index: 1;
  background: rgba(0, 0, 0, 0.3) url("../img/ar.svg") no-repeat center center;
  cursor: pointer;
  transition: opacity .8s; }

#slider > a {
  background-color: transparent; }

#hm_slide #next,
#slider a#next {
  right: 0;
  transform: rotate(180deg);
  display: block;
  /*    top:100px;*/ }

#hm_slide > nav b:hover,
#slider > a:hover {
  opacity: 1 !important; }

/*
#hm_slide > div{
    position: absolute;
    overflow: hidden;
    opacity: .5;
    width: 100%;
    transform: translateX(-100%) scale(1);
    transition: transform 2s, opacity 1s;
}
#hm_slide > div.next{
    opacity: 1;
    transform: translateX(150%) scale(1.5);
    transition: transform 0s , opacity 0s;
}
#hm_slide > div.cur{
    opacity: 1;
    transform: translateX(0);
    transition: transform .8s;
    z-index: 1;
}
*/
/*
#hm_slide > div.cur > img{
    animation: slidean 5s;
}
*/
#hm_slide .slide {
  opacity: 0;
  position: absolute;
  pointer-events: none;
  transform: translate3d(0, 0, 0);
  /*    transform: translateX(100%);*/
  transition: opacity .5s; }

#hm_slide .slide--current {
  opacity: 1;
  pointer-events: auto;
  will-change: transform;
  /*    transform: translateX(0%);*/ }

#hm_slide > div:first-child:after {
  /*    content: '';*/
  display: block;
  position: absolute;
  background-color: #fff;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 10;
  transform: scaleX(0);
  transform-origin: left; }

.loaded.intro #hm_slide > div:first-child:after {
  animation: none; }

.loaded #hm_slide > div:first-child:after {
  animation: revx 1s; }

#hm_slide > div > div > .bg img {
  width: 100%;
  transform: translate(0, 0);
  backface-visibility: hidden; }

#hm_slide > div > div > .bg video {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0; }

#hm_slide .desc {
  position: absolute;
  margin: 70px;
  top: 60px;
  width: 500px;
  z-index: 1; }

#hm_slide .desc h3 {
  font-size: 60px;
  color: #fff;
  margin: 30px 0;
  font-weight: bold; }

#hm_slide .desc a {
  color: #fff;
  display: inline-block; }

.act {
  position: relative;
  z-index: 2;
  line-height: 1em;
  font-size: 20px;
  text-decoration: none; }

.act:before {
  content: '';
  display: block;
  position: absolute;
  height: 70%;
  width: 100%;
  left: 6px;
  top: 0.5em;
  z-index: -1;
  background-color: #29dfb7;
  opacity: .5;
  transition: transform .4s; }

.act:hover:before {
  animation: act .8s !important; }

#clients {
  margin-top: 6vw; }

#clients h2 {
  padding: 0 70px;
  box-sizing: border-box; }

#clients div,
#more_projects div {
  display: flex;
  flex-wrap: wrap;
  margin: 70px;
  border-top: 1px solid rgba(153, 153, 153, 0.2); }

#clients div span,
#clients div a,
#clients div span,
#more_projects div a {
  display: block;
  width: 16.6666%;
  text-align: center;
  text-decoration: none;
  position: relative;
  color: #000;
  padding: 1vw 0;
  border-bottom: 1px solid rgba(153, 153, 153, 0.2); }

#clients div a:after,
#more_projects div a:after {
  content: 'contact us';
  display: block;
  position: absolute;
  background-color: #fff;
  width: 100%;
  top: 0;
  height: 100%;
  opacity: 0;
  line-height: 100px;
  box-sizing: border-box;
  padding: 1vw 0;
  transition: opacity .5s; }

#clients div a:hover:after,
#more_projects div a:hover:after {
  opacity: 1; }

#clients div span img,
#clients div a img,
#more_projects div a img {
  height: 120px;
  display: inline-block;
  transition: transform .3s; }

#clients div a:hover img {
  transform: scale(0.8); }

#about {
  margin: 10vw 70px 0;
  position: relative;
  padding: 200px 70px 60px;
  display: flex;
  justify-content: space-between; }

#about h2 {
  position: absolute;
  top: 0;
  left: -10px; }

#about:before {
  content: '';
  display: block;
  position: absolute;
  background-color: #f9f9f9;
  top: 38px;
  left: 0;
  width: 100%;
  bottom: 0;
  z-index: -1; }

#about div {
  flex-basis: 43%; }

#about div p {
  font-size: 18px; }

#about div:first-of-type p {
  font-size: 18px; }

#ceos {
  width: 50%;
  margin: 4vw auto 0;
  display: flex;
  justify-content: space-between; }
  #ceos .ceo {
    flex-basis: 40%; }
    #ceos .ceo img {
      width: 40%;
      min-width: 250px;
      margin-bottom: 35px; }
    #ceos .ceo h4 {
      font-size: 1.5em;
      margin-bottom: 17px; }
      #ceos .ceo h4 span {
        position: absolute;
        color: #9f9f9f;
        margin-left: 10px;
        font-weight: normal; }
    #ceos .ceo p {
      font-size: 16px; }
    #ceos .ceo .linkedin img {
      width: 17px;
      margin: 0 6px;
      min-width: 0; }

#reviews {
  display: flex;
  margin-top: 10vw;
  justify-content: space-between; }

#reviews .review_item {
  display: flex;
  height: 250px;
  background-color: #f8f9fa;
  align-items: center;
  padding: 60px;
  box-sizing: border-box;
  flex-basis: 49.8%; }

#reviews .review_item img {
  height: 100%;
  margin-right: 60px; }

#reviews .review_item p {
  font-size: 18px; }

#project-samples {
  margin-top: 10vw; }

#project-samples h2 {
  margin-left: 70px; }

#project-samples .projects {
  margin-top: 4vw; }
  #project-samples .projects .slide {
    display: flex; }

#project-samples .projects .project {
  flex-basis: 50%;
  display: flex;
  justify-content: flex-end;
  height: 18vw;
  position: relative;
  overflow: hidden;
  text-decoration: none; }

#project-samples .projects .project > img {
  width: 60%;
  position: absolute;
  left: 0;
  z-index: -1; }

#project-samples .projects .project .desc {
  flex-basis: 50%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 20px;
  box-sizing: border-box; }

#project-samples .projects .project .desc h4 {
  color: #fff;
  font-size: 1.5em; }

#teams {
  margin: 10vw 70px 0; }

#teams .container {
  display: flex;
  flex-wrap: wrap;
  height: 340px;
  margin-top: 70px; }

#teams .container .item {
  width: 33.33%;
  height: 100%;
  position: relative;
  overflow: hidden;
  border-left: 1px solid rgba(153, 153, 153, 0.2);
  box-sizing: border-box; }

#teams .container .item:first-of-type {
  border: none; }

#teams .container .item > div {
  padding: 50px 50px 0;
  box-sizing: border-box; }

#teams .container .item > div p {
  line-height: 25px; }
  @media (max-width: 750px) {
    #teams .container .item > div p {
      line-height: 23px; } }

#teams .container .item .main {
  width: 100%;
  height: 100%;
  text-align: center;
  box-sizing: border-box; }

#teams .container .item .main img {
  height: 140px;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  transition: all .5s; }
  #teams .container .item .main img.white {
    opacity: 0; }

#teams .container .item:hover .main img {
  bottom: -70px;
  opacity: 0; }
  #teams .container .item:hover .main img.white {
    opacity: 1; }

#teams .container .item .main h3 {
  font-size: 28px;
  font-weight: bold;
  position: absolute;
  top: 10px;
  right: 50%;
  transform: translateX(50%);
  z-index: 1;
  transition: all .5s;
  width: 280px; }

#teams .container .item:hover .main h3 {
  color: #fff;
  right: 50px;
  transform: none; }

#teams .container .item .main .desc {
  color: #979794;
  font-size: 16px;
  opacity: 1;
  transition: opacity .5s; }

#teams .container .item:hover .main .desc {
  opacity: 0; }

#teams .container .item .hover {
  width: 100%;
  height: 100%;
  background-color: #29dfb7;
  position: absolute;
  top: 100%;
  transition: all .5s; }

#teams .container .item:hover .hover {
  top: 0; }

#teams .container .item .hover p {
  font-size: 18px;
  text-align: center; }

#numbers {
  margin: 10vw 70px 170px 0;
  display: flex; }

#numbers > div {
  width: 33.33%;
  box-sizing: border-box;
  padding-left: 70px;
  margin: 0 1px;
  position: relative; }

#numbers > div:after {
  content: '';
  position: absolute;
  display: block;
  width: 100%;
  height: 9vh;
  background-color: #f8f9fa;
  z-index: -1;
  top: calc(74% + 2px);
  right: 0; }

#numbers > div:before {
  content: '';
  display: block;
  position: absolute;
  width: 60px;
  top: 74%;
  left: 78px;
  height: 4px;
  background-color: #000; }

#numbers > div > span {
  font-family: 'Rubik', arial, sans-serif;
  font-size: 1.8vw;
  font-weight: bold;
  color: #29dfb7;
  display: inline-block; }

#numbers > div:first-child > span:nth-child(2) {
  margin-right: 10px; }

#numbers > div > span:nth-child(2) {
  margin-top: -.5vw; }

#numbers > div > span:first-child {
  font-family: 'Sailec', 'Montserrat', 'Helvetica Neue', 'Helvetica', arial, sans-serif;
  font-size: 8vw;
  letter-spacing: -.02em;
  float: left;
  line-height: 1.05em;
  margin-bottom: 0; }

#numbers > div:first-child > span:first-child {
  letter-spacing: .05em; }

#numbers > div > p {
  clear: both;
  font-weight: bold;
  position: relative;
  padding-left: 80px;
  display: block;
  min-width: 170px;
  line-height: 1.2em;
  font-size: 1.94vw;
  margin-right: 1vw; }

#numbers > div:first-child > p {
  margin-right: 0; }

#goworks {
  margin: 5vw 70px;
  position: relative;
  text-align: center;
  background-color: #29dfb7;
  padding: 40px; }

#goworks h2 {
  font-weight: bold;
  color: #468be9;
  width: 50%;
  box-sizing: border-box;
  padding: 30px 60px;
  text-align: right;
  display: none; }

#goworks h2 span {
  display: inline-block; }

#goworks a {
  display: inline-block;
  color: #000; }

#goworks a:before {
  background-color: #fff;
  opacity: 1; }

#awards {
  margin-top: 10vw; }

#awards h2 {
  width: 38%;
  float: left;
  box-sizing: border-box;
  padding: 0 70px 30px;
  background: url("../img/aw_bg.png") no-repeat 196px 0/112px;
  line-height: 1.6em; }

#awards p {
  width: 40%;
  float: left;
  position: relative;
  padding: 38px 0 120px 0;
  font-weight: bold; }

#awards div {
  display: flex;
  flex-wrap: wrap;
  clear: both;
  margin: 0 70px;
  border-top: 1px solid rgba(153, 153, 153, 0.2); }

#awards div span {
  text-align: center;
  width: 25%;
  padding: 1vw 0;
  border-bottom: 1px solid rgba(153, 153, 153, 0.2); }

#awards div span img {
  display: inline-block;
  height: 110px; }

.industries {
  margin-top: 70px; }
  .industries h2 {
    padding: 0 70px;
    box-sizing: border-box; }
  .industries .content {
    margin: 70px;
    display: flex;
    flex-wrap: wrap; }
    .industries .content .industry {
      position: relative;
      width: 12.5%;
      text-align: center; }
      .industries .content .industry .background {
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: #f8f9fa;
        z-index: -1;
        transform: scaleY(0);
        transform-origin: left bottom;
        transition: transform .3s ease-in; }
      .industries .content .industry h4 {
        font-size: 25px;
        transform: translateY(-50%); }
      .industries .content .industry .icon {
        height: 125px;
        display: flex;
        justify-content: center;
        align-items: center;
        box-sizing: border-box;
        margin-top: 10px; }
        .industries .content .industry .icon img {
          max-width: 40%;
          margin: 0 auto; }
      .industries .content .industry:not(:last-child) .icon {
        border-right: 1px solid #e8e8e8; }
      .industries .content .industry:hover .background {
        transform: scaleY(1); }

#connect {
  background-color: #29dfb7;
  margin-top: 12vw; }

#connect h2 {
  margin: 0 70px;
  display: block;
  position: relative;
  top: -.6em; }

#connect h2 b {
  color: #fff; }

#connect a#call {
  float: left;
  font-size: 24px;
  text-decoration: none;
  color: #fff;
  letter-spacing: .1em;
  font-weight: bold;
  padding: 20px 60px 0 110px;
  box-sizing: border-box;
  width: 33.33%;
  background: url("../img/phone.png") no-repeat 74px/19px 33px; }

#connect form {
  width: 66.66%;
  margin-left: 33.33%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  padding-bottom: 120px; }

.thanks {
  color: #fff;
  width: 70%;
  margin-right: 30%;
  font-weight: bold;
  font-size: 30px;
  margin-top: 18px;
  display: none; }

#contact_pop .thanks {
  line-height: 1.2em;
  width: 100%;
  color: #000; }

#connect form input,
#connect form textarea,
#contact_pop input {
  width: calc(50% - 70px);
  margin-right: 70px;
  color: #000;
  font-weight: normal;
  outline: 0;
  background-color: transparent;
  border: 0;
  border-bottom: solid 1px #000;
  border-radius: 0;
  padding: 10px 0;
  float: left;
  display: block;
  font-size: 16px;
  margin-top: 18px; }

form input.err {
  border-color: #fff !important; }

input.err::placeholder {
  color: #fff !important; }

#connect form input::placeholder,
#connect form textarea::placeholder,
#contact_pop form input::placeholder {
  color: #000; }

#connect form input:focus,
#connect form textarea:focus {
  border-bottom: 2px solid #fff;
  margin-bottom: -1px; }

#connect form textarea {
  width: 100%;
  clear: both;
  float: none;
  resize: none; }

#connect form input[type="submit"],
#contact_pop input[type="submit"] {
  border: 0 !important;
  color: #000;
  font-size: 20px;
  width: auto;
  float: right;
  padding: 0 10px;
  margin-top: 40px;
  margin-bottom: 0;
  margin-right: 0 !important; }

#connect form .act:before,
#contact_pop form .act:before {
  background-color: #fff;
  opacity: 1;
  width: 152px;
  top: 54px;
  left: 20px;
  height: 16px; }

footer {
  background-color: #080808;
  color: #626262;
  font-size: 12px;
  padding: 120px 70px 40px; }

footer a {
  color: #29dfb7; }

footer > a {
  margin: 0 10px; }

footer a:hover {
  color: #fff; }

footer > img {
  -webkit-filter: invert(1);
  filter: invert(1);
  opacity: .4;
  width: 90px;
  display: inline-block;
  margin-bottom: -2px;
  margin-right: 20px; }

footer #social {
  float: right; }

footer #social img {
  height: 20px;
  display: inline-block;
  margin-top: -10px; }

footer a#sendemail {
  float: right;
  margin-right: 20px; }

footer a.act {
  font-size: 16px;
  margin-left: 20px;
  display: inline-block; }

footer a.act:before {
  background-color: #29dfb7; }

#portfolio {
  position: relative;
  margin-bottom: 120px; }

#portfolio:before {
  content: '';
  display: block;
  position: absolute;
  background-color: #f8f9fa;
  height: 320px;
  left: 70px;
  right: 70px;
  top: 33px;
  z-index: -1; }

#portfolio h2 {
  margin: 0 70px; }

#portfolio > p {
  margin-left: 50%;
  width: 40%;
  position: relative;
  margin-top: -40px;
  max-width: 520px;
  margin-bottom: 60px; }

#portfolio > div {
  margin-left: 140px;
  position: relative;
  overflow: hidden;
  min-height: 420px;
  height: 32vw;
  opacity: 0; }

#portfolio > div:nth-of-type(2n) {
  margin-right: 140px;
  margin-left: 0; }

#portfolio > div > a > img {
  height: 120%;
  display: block;
  transition: transform 5s; }

#portfolio > div:hover > a > img {
  transform: scale(1.05); }

#portfolio > div:nth-of-type(2n) > a > img {
  margin-left: 40%; }

#portfolio > div div.desc {
  width: 40%;
  float: right;
  box-sizing: border-box;
  padding: 70px;
  height: 100%;
  position: absolute;
  right: 0;
  z-index: 1; }

#portfolio .desc img {
  transform: scale(0.8);
  transform-origin: left; }

#portfolio > div:nth-of-type(2n) div.desc {
  left: 0; }

#portfolio > div div.desc h3 {
  font-weight: bold;
  color: #fff;
  position: absolute;
  bottom: 70px;
  right: 70px;
  left: 70px;
  font-size: 30px;
  transition: transform 1s; }

#portfolio > div div.desc .act {
  color: #fff;
  position: absolute;
  left: -230px;
  bottom: 76px;
  opacity: 0;
  transform: translateY(40px);
  transition: transform .6s .3s, opacity .6s .3s; }

#portfolio > div:nth-of-type(2n) div.desc .act {
  left: auto;
  right: -210px; }

#portfolio > div:hover div.desc .act {
  transform: translateY(0px);
  opacity: 1; }

#portfolio > div:hover div.desc .act:before {
  /*    background-color: #29dfb7;*/
  animation: act .8s .5s !important; }

#portfolio > div div.desc p {
  font-family: 'Helvetica Neue', 'Helvetica', arial, sans-serif;
  font-weight: 100;
  color: #fff;
  font-size: 16px;
  letter-spacing: .4em;
  position: absolute;
  bottom: 20px;
  opacity: 0;
  transition: transform .6s, opacity .6s;
  display: none; }

#portfolio > div:hover div.desc p {
  opacity: .5;
  transform: translateY(-40px);
  transition: transform 1s, opacity 1s; }

#portfolio > div div.desc p span {
  font-family: 'Sailec', 'Montserrat', 'Helvetica Neue', 'Helvetica', arial, sans-serif;
  display: inline-block;
  letter-spacing: normal; }

#more_projects {
  margin-bottom: 120px; }

#more_projects h3 {
  margin-left: 50%;
  margin-bottom: 60px; }

#more_projects div a img {
  height: 100px; }

#more_projects div a:after {
  line-height: 5.7em; }

#more_projects div:last-of-type {
  margin-top: -60px;
  border-top: none 0; }

#more_projects > a.act {
  margin-left: 50%;
  margin-top: 30px;
  left: -70px;
  position: relative;
  display: inline-block;
  color: #000; }

#more_projects > a.act:before {
  background-color: #29dfb7;
  opacity: 1; }

#case {
  display: flex;
  height: 34vw; }

#case .desc {
  box-sizing: border-box;
  padding: 70px;
  width: 50%;
  position: relative; }

#case .desc h1 {
  font-weight: bold;
  color: #fff;
  padding: 70px 0;
  position: absolute;
  bottom: 0;
  right: 70px;
  left: 70px; }

#case .desc h1 > span {
  display: block; }

#case .desc h1 > span span {
  display: inline-block; }

#case .desc p {
  font-family: 'Helvetica Neue', 'Helvetica', arial, sans-serif;
  font-weight: 100;
  color: rgba(255, 255, 255, 0.5);
  font-size: 16px;
  letter-spacing: .4em;
  position: absolute;
  bottom: 60px;
  display: none; }

#case .desc p span {
  font-family: 'Sailec', 'Montserrat', 'Helvetica Neue', 'Helvetica', arial, sans-serif;
  display: inline-block;
  color: #fff;
  letter-spacing: normal; }

#case #slider {
  background-color: #e3e3e5;
  width: 50%;
  overflow: hidden;
  margin-left: -70px;
  position: relative; }

#case #slider:hover a {
  opacity: 1; }

#case #slider img {
  width: 100%;
  display: block;
  position: absolute;
  opacity: 0;
  transform: translateX(-10%);
  transition: opacity .3s, transform .3s; }

#case #slider img.next {
  transform: translateX(10%);
  transition: transform 0s; }

#case #slider img.cur {
  opacity: 1;
  transform: translateX(0); }

#points {
  margin: 120px 0;
  display: flex; }

#points div {
  padding-right: 70px;
  padding-left: 70px;
  box-sizing: border-box;
  width: 33.33%; }

#points h3 {
  font-weight: bold;
  font-size: 30px;
  padding-bottom: 30px; }

#points div:last-child p {
  background: url("../img/v.svg") no-repeat 0 2px/22px 17px;
  padding-left: 40px; }

#points p {
  margin-bottom: 20px;
  font-size: 16px; }

#client {
  background-color: #f8f9fa;
  margin-left: 25%;
  margin-bottom: 120px;
  padding: 60px 0; }

#client img {
  width: 120px;
  margin-left: -60px;
  float: left; }

#client blockquote {
  display: block;
  width: 70%;
  line-height: 1.8em;
  font-size: 16px;
  margin-left: 120px; }

#client blockquote b {
  opacity: .2;
  font-size: 40px;
  position: absolute;
  margin-left: -30px; }

#client blockquote b:last-child {
  margin-left: 20px;
  margin-top: 30px; }

#client p {
  margin-left: 120px;
  margin-top: 30px;
  line-height: 1.8em;
  font-size: 18px; }

#client p span {
  display: block;
  opacity: .5; }

#other_cases h2 {
  margin: 0 70px 70px; }

#other_cases > div {
  display: flex; }

#other_cases > div > div {
  width: 20%;
  overflow: hidden; }

#other_cases div div a {
  text-decoration: none; }

#other_cases div div h3 {
  font-size: 30px;
  line-height: 1.5em;
  font-weight: bold;
  text-decoration: none;
  color: #fff;
  position: absolute;
  bottom: 20px;
  right: 30px;
  left: 30px;
  transition: transform .5s; }

#other_cases div a:hover div h3 {
  transform: translateY(-10px); }

#other_cases > div > div > a > img {
  width: 100%;
  display: block;
  transition: transform 1s; }

#other_cases > div > div > a:hover > img {
  transform: scale(1.1); }

#other_cases div div .desc {
  height: auto;
  padding: 40px 30px 30px;
  min-height: 260px;
  position: relative;
  z-index: 1; }

/*careers*/
#services-page,
#careers {
  position: relative; }

#services-page h2,
#careers h2 {
  margin: 0 70px; }

#services-page p,
#careers p {
  /*margin-left: 50%;*/
  /*left: 70px;*/
  /*width: 35%;*/
  /*position: relative;*/
  /*margin-top: -49px;*/
  /*max-width: 520px;*/
  /*margin-bottom: 30px;*/
  width: calc(50% - 180px);
  float: right;
  margin-right: 130px; }

#services-page img,
#careers img {
  width: 50%;
  display: block;
  float: left;
  margin-top: 90px; }

#services-page:before,
#careers:before {
  content: '';
  display: block;
  position: absolute;
  background-color: #f8f9fa;
  height: 85%;
  left: 70px;
  right: 70px;
  top: 33px;
  z-index: -1; }

#services-page:after,
#careers:after {
  content: '';
  display: block;
  clear: both; }

.positions {
  display: flex;
  margin-top: 120px; }

.positions > div {
  width: 50%; }

.positions > div:first-child {
  padding: 0 180px 0 70px;
  box-sizing: border-box; }

.positions > div:first-child a {
  font-size: 30px;
  color: #29dfb7;
  font-weight: bold;
  display: block;
  margin-bottom: 30px;
  line-height: 1.6em; }

.positions > div:first-child a.cur {
  color: #000;
  text-decoration: none;
  position: relative; }

.positions > div:first-child a:after {
  content: '+';
  float: right;
  line-height: 50px; }

.positions > div:first-child a.cur:after {
  content: '';
  display: block;
  height: 4px;
  width: 100%;
  background-color: #000; }

.positions > div:nth-child(2) {
  margin-left: -70px; }

#pos_desc h3 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 30px;
  padding-top: 30px; }

#pos_desc p,
#pos_desc ul,
#pos_desc ul li {
  margin-bottom: 30px;
  line-height: 1.8em; }

#pos_desc ul {
  margin-left: 75px; }

#pos_desc ul li {
  margin-bottom: 20px; }

#pos_desc .act {
  color: #000;
  font-weight: bold;
  display: inline-block;
  margin-top: 30px; }

#pos_desc .act:before {
  background-color: #29dfb7;
  opacity: .5; }

/*blog*/
#blog {
  position: relative; }

#blog h2 {
  margin: 0 60px; }

#blog p {
  margin-left: 50%;
  width: 40%;
  position: relative;
  margin-top: -36px;
  max-width: 520px;
  padding-bottom: 50px; }

#blog:before {
  content: '';
  display: block;
  position: absolute;
  background-color: #f8f9fa;
  bottom: 0;
  left: 60px;
  right: 60px;
  top: 27px;
  z-index: -1; }

#blog_posts {
  margin: 120px 70px 0; }

#blog_posts div {
  margin: 0 70px; }

#blog_posts div h3 {
  margin-bottom: 30px;
  margin-left: -70px;
  line-height: 1.2em; }

#blog_posts div h3 a {
  color: #29dfb7;
  font-size: 30px;
  font-weight: bold; }

#blog_posts div p {
  width: 70%; }

#blog_posts div .act {
  float: right;
  color: #000;
  font-weight: bold;
  margin-top: -26px; }

#blog_posts div .act:before {
  background-color: #29dfb7;
  opacity: .5; }

#blog_posts div img {
  width: 100%;
  margin: 70px 0; }

.services-page-content,
#blog_post {
  margin: 0 140px; }

.services-page-content {
  margin-top: 65px !important; }

.services-page-content h1,
#blog_post h1 {
  font-weight: bold;
  margin-bottom: 20px;
  margin-left: -70px; }

.services-page-content h1 span,
#blog_post h1 span {
  display: inline-block; }

#blog_post > p:first-of-type {
  margin-left: -60px;
  font-family: 'Helvetica Neue', 'Helvetica', arial, sans-serif;
  font-weight: 100;
  letter-spacing: .4em;
  opacity: .5; }

#blog_post > p:first-of-type span {
  font-family: 'Sailec', 'Montserrat', 'Helvetica Neue', 'Helvetica', arial, sans-serif;
  display: inline-block;
  letter-spacing: normal; }

.services-page-content h2,
#blog_post h2 {
  font-size: 30px;
  margin-bottom: 30px; }

.services-page-content img,
#blog_post img:first-child {
  display: block;
  width: 100%;
  margin-bottom: 60px; }

.services-page-content p,
#blog_post p {
  width: 70%;
  font-size: 18px;
  margin-bottom: 30px; }

.services-page-content p.big,
#blog_post p.big {
  font-size: 18px;
  padding: 60px 20% 60px 60px;
  margin-left: 120px;
  background-color: #f8f9fa;
  width: 100%;
  box-sizing: border-box; }

.services-page-content a.act:last-child,
#blog_post a.act:last-child {
  color: #000;
  float: right;
  margin-right: -63px; }

.services-page-content a.act:last-child:before,
#blog_post a.act:last-child:before {
  background-color: #29dfb7;
  opacity: 1; }

.services-page-content:after,
#blog_post:after {
  content: '';
  display: block;
  clear: both; }

#contact_pop {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 400px;
  box-sizing: border-box;
  background-color: #29dfb7;
  padding: 30px 40px 40px 30px;
  color: #fff;
  z-index: 100;
  transform: translateY(200%);
  transition: transform .8s; }

#contact_pop.show {
  transform: translateY(0%); }

#contact_pop.collapsed {
  cursor: pointer; }

#contact_pop p {
  position: absolute;
  top: 30px;
  right: 30px;
  overflow: hidden;
  width: 20px;
  height: 20px;
  text-indent: 1000px;
  background: url("../img/x.svg") no-repeat center center/14px;
  cursor: pointer; }

#contact_pop h3 {
  font-size: 30px;
  font-weight: bold;
  line-height: .8em;
  margin-bottom: 30px; }

#contact_pop form {
  display: none; }

#contact_pop .act {
  color: #000;
  float: right !important; }

#contact_pop .act:before {
  background-color: #fff;
  opacity: 1; }

#contact_pop input {
  display: block;
  float: none;
  width: 100%; }

#contact_pop form .act:before {
  width: 101px;
  left: 6px;
  top: 46px;
  height: 14px; }

#contact_pop input[type="submit"] {
  padding: 0;
  margin-top: 32px;
  margin-bottom: -9px; }

#not_found {
  /*    height: 90vh;*/
  margin: 0 60px; }

#not_found h1,
#not_found h2 {
  font-weight: bold;
  display: block; }

#not_found h1 span,
#not_found h2 span {
  display: inline-block; }

#not_found h2 {
  color: #29dfb7;
  margin-bottom: 120px; }

#not_found p {
  margin-left: 25%;
  width: 50%;
  margin-bottom: 120px; }

#not_found p a {
  color: #29dfb7; }

/*cases colors*/
#moovit {
  background-color: #132533; }

#espresso_club {
  background-color: #c3171c; }

#pfizer {
  background-color: #0068b3; }

#bagira {
  background-color: #484734; }

#maariv {
  background-color: #292c31; }

#moneytime {
  background-color: #2f3448; }

#other_cases #bagira img {
  margin-top: -15px; }

#other_cases #espresso_club img {
  margin-top: -10px; }

/*reveal*/
#hm_slide .slides > div:first-child > .bg img,
#hm_slide .slides > div:nth-child(2) > .bg img,
#hm_slide .slides > div:nth-child(4) > .bg img,
#hm_slide .slides > div:nth-child(7) > .bg img {
  transform: translateX(0) !important; }

#hm_slide .slides div:first-child .desc {
  top: -65px;
  margin: 23vw 0 0 0;
  width: 100%;
  transform: translate(0, 0) !important; }

#hm_slide .slides div:first-child .desc h3 {
  color: #29dfb7;
  text-align: center;
  margin: auto;
  width: 460px; }

#clients,
#about,
#numbers,
#goworks,
#services,
#testimonials,
#awards,
#more_projects,
#other_cases,
#client {
  opacity: 0;
  transition: opacity .3s; }

#clients.show,
#about.show,
#numbers.show,
#goworks.show,
#awards.show,
#services.show,
#testimonials.show,
#more_projects.show,
#other_cases.show,
#client.show {
  opacity: 1; }

#about h2,
#about p {
  opacity: 0;
  transition: opacity .8s, transform .8s;
  transform: translateY(40px); }

#about.show h2,
#about.show p {
  transform: translateY(0);
  opacity: 1; }

#about p {
  transition-delay: .3s; }

#about h2:after {
  transform-origin: left;
  transition: transform .8s .2s;
  transform: scaleX(0); }

#about.show h2:after {
  transform: scaleX(1); }

/*loading and intro*/
#loader,
#intro {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #fff;
  z-index: 1000;
  transform: translate(0, 0);
  transition: transform .6s; }

#loader {
  transition: transform 0s .1s; }

#loader h2 span,
#loader img,
#intro h2 span,
#intro img {
  transform: translate(0, 0);
  will-change: opacity, transform; }

#loader h2,
#intro h2 {
  font-size: 50px;
  font-weight: bold;
  position: absolute;
  left: 70px;
  right: 30px;
  bottom: 90px; }

#loader h2 > span,
#intro h2 > span {
  display: block; }

#loader h2 span span,
#intro h2 span span {
  display: inline-block;
  opacity: 0;
  will-change: opacity, transform; }

#loader img:first-child,
#intro > img:first-child {
  width: 100px;
  margin-left: 60px;
  margin-top: 40px;
  position: absolute;
  opacity: 0; }

#loader img,
#intro img {
  will-change: transform, opacity; }

#intro h2 .line2 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  height: 84px; }

#intro h2 .line2 span {
  margin-right: 10px; }

#loader img:first-child {
  bottom: 40px; }

.loaded #loader {
  transform: translateX(-100%); }

#intro {
  z-index: 999;
  transform: translateY(-100%); }

.disable-scroll {
  position: fixed;
  max-width: 100%; }

.intro #intro {
  transform: translateY(0%); }

#intro h2 {
  bottom: 40vh; }

#intro h2 > span:nth-child(2),
#intro h2 b {
  color: #29dfb7; }

#intro div {
  display: flex;
  flex-wrap: wrap;
  position: absolute;
  bottom: 0;
  right: 70px;
  left: 70px; }

#intro div span {
  display: block;
  width: 16.66%;
  text-align: center;
  text-decoration: none;
  position: relative;
  color: #000;
  border-top: 1px solid rgba(153, 153, 153, 0.2);
  padding: 1vw 0; }

#intro div span img {
  height: 100px; }

#intro:before {
  content: '';
  display: block;
  position: absolute;
  background-color: #fff;
  border: solid 2px #000;
  width: 20px;
  height: 38px;
  border-radius: 12px;
  left: 50vw;
  bottom: 200px; }

#intro:after {
  content: '';
  display: block;
  position: absolute;
  background-color: #000;
  width: 2px;
  height: 8px;
  border-radius: 2px;
  left: calc(50vw + 11px);
  bottom: 222px;
  animation: scroll .3s infinite alternate; }

#services,
#testimonials {
  margin-top: 10vw; }

#services h2,
#testimonials h2 {
  padding: 0 70px;
  box-sizing: border-box; }

#services .container {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  margin: 70px;
  border-bottom: 1px solid rgba(153, 153, 153, 0.2); }

#services .container .row {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: 340px;
  border-top: 1px solid rgba(153, 153, 153, 0.2); }

#services .container .row .service {
  width: 33.33%;
  position: relative;
  overflow: hidden; }

#services .container .row .service > div {
  width: 100%;
  height: 270px;
  border-right: 1px solid rgba(153, 153, 153, 0.2);
  box-sizing: border-box;
  text-align: center;
  padding: 46px 20px 0; }

#services .container .row .service > div .hover {
  background-color: #29dfb7;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 100%;
  left: 0;
  padding: 46px;
  box-sizing: border-box;
  transition: all .5s; }

#services .container .row .service > div.multi-subs .hover {
  justify-content: flex-start; }

#services .container .row .service:hover > div .hover {
  top: 0; }

#services .container .row .service:last-of-type > div {
  border: none; }

#services .container .row .service h3 {
  font-size: 28px;
  font-weight: bold;
  position: absolute;
  top: 40px;
  left: 25%;
  width: 50%;
  z-index: 9;
  transition: all .5s; }

#services .container .row .service > div:not(.multi-subs) h3 {
  width: 100%;
  right: auto;
  left: 0; }

#services .container .row .service:hover h3 {
  color: #fff; }

#services .container .row .service:hover .multi-subs h3 {
  left: 0; }

#services .container .row .service p {
  color: #979794;
  font-size: 16px;
  line-height: 25px;
  margin: 40px 0;
  transition: opacity .5s; }

#services .container .row .service:hover p {
  opacity: 0; }

#services .container .row .service > div img {
  position: absolute;
  bottom: 68px;
  left: 50%;
  transform: translateX(-50%);
  opacity: 1;
  transition: opacity .5s;
  height: 83px; }

#services .container .row .service > div img.icon_hover,
#services .container .row .service:hover > div img.icon {
  opacity: 0; }

#services .container .row .service:hover > div img.icon_hover {
  opacity: 1; }

#services .container .row .service div .sub {
  margin: 40px auto; }

#services .container .row .service div.multi-subs .sub {
  margin-top: 0;
  margin-left: 50%; }

#services .container .row .service div .sub a {
  display: block;
  font-size: 16px;
  color: #000;
  line-height: 25px; }

#services .container .row .service .multi-subs .sub a {
  text-align: left;
  margin-bottom: 17px; }

#testimonials {
  position: relative; }

#testimonials .slider {
  margin: 70px 0; }

#testimonials .slider .slide {
  height: 360px;
  opacity: 0.5;
  background-color: #f8f9fa;
  transition: opacity 1s;
  display: flex;
  flex-flow: row-reverse;
  padding: 50px;
  box-sizing: border-box; }

#testimonials .slider .slide.slick-active {
  opacity: 1; }

#testimonials .slider .slide div {
  margin: 30px; }

#testimonials .slider .slide p {
  font-size: 16px; }

#testimonials .slider .slide .client {
  text-align: right;
  flex-shrink: 0; }

#testimonials .slider .slide .client img {
  height: 140px;
  margin-bottom: 15px;
  display: inline-block; }

#testimonials .slider .slide .client .logo {
  margin: 0 -15px 15px 0;
  display: inline-block;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background-size: 85%;
  background: #FFF no-repeat center center/120px; }
  @media (max-width: 750px) {
    #testimonials .slider .slide .client .logo {
      background-size: 70%; } }

#testimonials .slider .slide .client p.position {
  color: #979794; }

#testimonials .slider .slide .review p {
  position: relative; }

#testimonials .slider .slide .review p:before {
  content: '';
  display: block;
  position: absolute;
  left: -30px;
  top: -30px;
  width: 26px;
  height: 21px;
  background: url("../img/open_quote.png") no-repeat; }

#testimonials .slider .slide .review p:after {
  content: '';
  display: block;
  position: absolute;
  right: -20px;
  bottom: -20px;
  width: 26px;
  height: 21px;
  background: url("../img/close_quote.png") no-repeat; }

#testimonials .slidenav {
  position: absolute;
  bottom: -100px;
  right: 48px; }

#testimonials .slidenav .next,
#testimonials .slidenav .prev {
  position: absolute;
  right: 60px;
  bottom: 0;
  background: url("../img/arrow_black.png") no-repeat center center;
  width: 60px;
  height: 60px;
  overflow: hidden;
  text-indent: 1000px;
  display: block;
  z-index: 1;
  cursor: pointer;
  transform: rotate(180deg); }

#testimonials .slidenav .next {
  right: 0;
  transform: none; }

#about p,
#pos_desc p:first-child,
#services-page p,
#careers p,
#portfolio > p {
  font-weight: bold; }

/* big screens */
@media all and (min-width: 1600px) {
  h1,
  h2,
  h3 {
    font-size: 80px; }
  p {
    font-size: 26px; }
  #about:before {
    top: 50px; }
  #about h2:after {
    left: 460px; }
  #awards h2 {
    background-size: 150px;
    background-position: 238px 0; }
  #portfolio > div div.desc h3 {
    font-size: 40px; }
  #case .desc h1 {
    font-size: 60px; }
  #points p {
    font-size: 18px; }
  #portfolio:before,
  #services-page:before,
  #careers:before,
  #blog:before {
    top: 54px; }
  #portfolio:before {
    height: 380px; }
  #blog_posts div h3,
  #blog_posts div h3 a {
    font-size: 40px; }
  #services-page p,
  #careers p {
    margin-top: -62px; } }

@media all and (max-width: 1300px) {
  body {
    font-size: 16px; }
  #loader h2,
  #intro h2 {
    font-size: 50px; }
  #hm_slide .desc h3 {
    font-size: 50px; }
  #hm_slide .desc {
    top: 0;
    width: 440px; }
  #clients div span img,
  #clients div a img,
  #more_projects div a img {
    height: 100px; }
  #case .desc {
    padding: 40px 70px; }
  #case .desc p {
    bottom: 30px; }
  #case .desc h1 {
    font-size: 40px; }
  #other_cases div div h3 {
    font-size: 25px;
    line-height: normal; }
  #points div {
    padding-right: 0;
    width: 30%;
    box-sizing: border-box; }
  #hm_slide .slides div:first-child .desc {
    margin-top: 23vw; } }

@media all and (max-width: 1000px) {
  h1,
  h2,
  h3 {
    font-size: 35px; }
  #intro div span img {
    height: 70px; }
  header nav {
    position: relative;
    float: left;
    margin-left: 50%;
    right: auto;
    width: 90px; }
  #hm_slide .desc {
    width: 330px; }
  #hm_slide .slides div:first-child .desc {
    margin-top: 0;
    padding-top: 0;
    top: 0; }
  #hm_slide .slides div:first-child .desc h3 {
    width: 260px;
    margin-top: 23vw;
    font-size: 28px;
    top: -40px;
    position: relative; }
  #hm_slide .desc h3 {
    margin: 20px 0;
    font-size: 35px; }
  #clients h2 {
    float: none;
    margin-top: 60px;
    font-size: 35px; }
  #clients div {
    margin-top: 30px; }
  #clients div span img,
  #clients div a img,
  #more_projects div a img {
    height: 70px; }
  #about h2 {
    font-size: 30px; }
  #about:before {
    top: 18px; }
  #about h2:after {
    top: 74px;
    height: 6px;
    left: 236px; }
  #about p {
    padding: 60px 60px 0 120px;
    margin-left: 0;
    width: 100%;
    font-size: 18px; }
  #about p:last-child {
    padding-bottom: 60px; }
  #numbers > div {
    padding-left: 30px; }
  #numbers > div > span:first-child {
    font-size: 10vw;
    margin-bottom: 0; }
  #numbers > div > p {
    font-size: 18px;
    padding-left: 60px;
    width: auto; }
  #numbers > div > p:before {
    width: 40px; }
  #goworks:after {
    right: 60px; }
  #goworks h2 {
    text-align: left; }
  #goworks a {
    margin-top: -60px;
    margin-right: 120px; }
  #awards h2 {
    font-size: 35px;
    background-position: 140px 0;
    background-size: 68px; }
  #awards div span img {
    height: 60px; }
  #awards p {
    width: 60%;
    font-size: 16px;
    padding-bottom: 60px;
    padding-top: 12px; }
  #connect h2 {
    top: -19px; }
  #connect a#call {
    width: 100%; }
  #connect form {
    width: 100%;
    margin-left: 0;
    box-sizing: border-box;
    padding-left: 70px; }
  #portfolio > div > a > img {
    margin-left: -5%; }
  #portfolio:before {
    height: 320px;
    top: 19px; }
  #portfolio h2 {
    margin: 0 60px; }
  #portfolio > p {
    margin-top: -33px;
    width: 30%;
    font-size: 18px; }
  #portfolio > div {
    min-height: 300px; }
  #portfolio > div div.desc {
    padding: 30px; }
  #portfolio > div div.desc h3 {
    font-size: 28px !important;
    bottom: 30px;
    right: 30px;
    left: 30px; }
  #case {
    height: auto;
    display: block; }
  #case .desc {
    width: auto;
    margin-right: 70px; }
  #case .desc h1 {
    padding: 30px 0; }
  #case .desc h1,
  #case .desc p {
    position: relative;
    bottom: 0;
    left: 0; }
  #case #slider {
    width: auto;
    height: 64vw;
    margin-right: 70px;
    margin-left: 0; }
  #points {
    display: -webkit-box;
    overflow: auto; }
  #points:after {
    content: '';
    display: block;
    clear: both;
    width: 60px;
    height: 1px; }
  #points div {
    float: left;
    width: 40%; }
  #client {
    margin-left: 140px; }
  #other_cases {
    overflow: auto; }
  #other_cases > div {
    width: 150%; }
  #other_cases > div > div {
    width: 40%; }
  #services-page p,
  #careers p {
    left: 0;
    padding-bottom: 30px;
    margin-top: -36px; }
  #services-page img,
  #careers img {
    display: none; }
  .positions {
    display: block;
    margin-top: 60px; }
  #services-page:before,
  #careers:before {
    left: 30px;
    right: 30px;
    top: 19px;
    height: 100%; }
  .positions > div {
    width: auto;
    padding: 0 60px !important;
    margin: 0 0 17px !important; }
  #blog:before {
    top: 19px; }
  #blog p {
    padding-bottom: 30px; }
  .services-page-content p,
  #blog_post p {
    width: 100%; }
  .thanks {
    width: auto;
    margin: 20px 20%; } }

/* Mobile*/
@media all and (max-width: 750px) {
  header a#logo {
    left: 30px; }
  header a#contact:before,
  header a#contact:after {
    display: none; }
  header a#lang {
    position: absolute;
    right: 100px;
    width: 30px;
    height: 30px;
    overflow: hidden;
    text-align: right;
    direction: rtl;
    text-indent: 1000px; }
  header a#lang:before {
    content: '\05E2';
    display: block;
    background-color: #f2f2f2;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 28px;
    text-indent: 11px;
    text-decoration: underline;
    font-weight: bold; }
  header {
    padding: 0; }
  header nav,
  header a#contact,
  header nav:after {
    transform: translateY(-270px);
    transition: transform .3s, opacity .3s; }
  header.subs-shown a#contact {
    display: none; }
  header nav {
    background-color: #fff;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
    margin: 0;
    padding: 35px 0 60px 30px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 100;
    width: 100%;
    height: auto;
    box-sizing: border-box; }
  header nav:after {
    content: '';
    display: block;
    background: url("../img/menu.svg") no-repeat 0 0/28px 15px;
    width: 28px;
    height: 15px;
    position: absolute;
    right: 30px;
    top: 42px;
    z-index: 100;
    transform: translateY(270px); }
  header nav ul {
    flex-direction: column;
    align-items: flex-start; }
  header nav > ul > li {
    margin: 0;
    position: static; }
  header nav > ul > li.has-subs:before {
    display: none; }
  header nav > ul > li .subs {
    display: none;
    padding: 15px 30px 0 19px;
    left: 0;
    top: 70px;
    width: 100%;
    z-index: 2; }
  header nav > ul > li.show-subs .subs {
    display: block;
    visibility: visible;
    opacity: 1; }
  header nav > ul > li .subs > div {
    margin-bottom: 39px; }
  header nav > ul > li .subs > div ul li {
    margin-bottom: 16px; }
  header a#contact {
    position: absolute;
    font-size: 18px;
    z-index: 100;
    top: 206px;
    left: 30px; }
  header.shrinked.mm nav,
  header.shrinked.mm a#contact {
    transform: translateY(-19px); }
  header.shrinked:not(.mm) nav:after {
    transform: translateY(251px); }
  header.mm nav,
  header.mm a#contact,
  header.mm nav:after {
    transform: translateY(0); }
  header.mm nav:after {
    opacity: .2; }
  #hm_slide {
    height: 70vw; }
  #hm_slide > div > div > .bg img,
  #hm_slide > div > div > .bg video {
    width: 150%;
    margin-left: -25%; }
  #hm_slide > div > div > .bg video {
    display: none; }
  .bg {
    overflow: hidden; }
  #hm_slide .desc {
    margin: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.3);
    padding: 30px;
    position: absolute;
    height: 100%;
    box-sizing: border-box;
    transform: none !important; }
  #hm_slide .desc h3 {
    font-size: 6vw;
    margin: 10px 0; }
  #hm_slide .slides div:first-child .desc {
    background: transparent none;
    padding: 0; }
  #hm_slide .slides div:first-child .desc h3 {
    margin-top: 35vw;
    top: -55px;
    position: relative;
    width: 210px; }
  #hm_slide .slides div:first-child .bg img {
    margin-left: -25%; }
  #hm_slide .desc a {
    font-size: 14px; }
  #hm_slide .desc img {
    transform: scale(0.8) !important;
    transform-origin: left; }
  #clients h2 {
    padding: 30px;
    margin-top: 30px; }
  #clients div,
  #more_projects div,
  #services .container {
    margin: 30px 0 60px; }
  #clients div span,
  #clients div a,
  #more_projects div a {
    width: 33.33%; }
  #hm_slide #next,
  #hm_slide #prev {
    width: 44px;
    height: 44px;
    right: auto;
    left: 0; }
  #hm_slide #next,
  #slider a#next {
    left: 44px;
    right: auto; }
  #slider > a#next {
    right: 0;
    left: auto; }
  #about {
    margin: 10vw 30px 0;
    padding: 120px 30px 0;
    flex-direction: column; }
  #about div {
    margin-bottom: 40px; }
  #about p {
    padding: 0; }
  #clients div a:after,
  #more_projects div a:after {
    line-height: 4.8em; }
  #more_projects div.last {
    display: none; }
  #numbers {
    flex-wrap: wrap;
    margin: 120px 0 0; }
  #numbers div {
    width: 100%;
    padding: 0;
    margin: 0 0 30px 30px;
    position: relative; }
  #numbers div:after {
    content: '';
    display: block;
    position: absolute;
    background-color: #f8f9fa;
    height: 50px;
    top: calc(67% + 2px);
    z-index: -1; }
  #numbers > div:before {
    top: 67%;
    height: 3px; }
  #numbers > div:first-child {
    padding-right: 0; }
  #numbers > div > span:first-child {
    font-size: 30vw;
    margin-bottom: .6em; }
  #numbers > div > span:nth-child(2) {
    font-size: 6vw;
    margin-top: -1.5vw; }
  #numbers > div > p {
    float: right;
    margin-right: 0;
    margin-top: -21%;
    width: 55%; }
  #goworks {
    padding: 40px 0;
    margin-left: 30px;
    margin-right: 30px;
    margin-bottom: 70px; }
  #goworks h2 {
    width: 100%;
    text-align: center;
    white-space: nowrap;
    margin-bottom: 40px; }
  #goworks:after {
    left: 60px;
    height: 110px;
    top: 100px; }
  #goworks a {
    margin: auto;
    float: none; }
  #awards h2 {
    padding: 0 30px 30px;
    width: 100%;
    background-position: 110px 0; }
  #awards p {
    width: 100%;
    padding: 0 30px 30px;
    box-sizing: border-box;
    float: none;
    margin-left: 0; }
  #awards div {
    margin: auto;
    width: 100%; }
  #awards div span {
    width: 33.33%; }
  #awards div span img {
    height: 50px; }
  #connect {
    margin-top: 100px; }
  #connect h2 {
    margin: 0 30px; }
  #connect a#call {
    display: block;
    padding: 20px 0;
    background: none;
    text-align: center;
    text-decoration: underline; }
  #connect form {
    padding-left: 30px;
    padding-bottom: 60px; }
  #connect form input,
  #connect form textarea,
  #contact_pop input {
    width: 100%;
    margin-right: 30px; }
  #portfolio:before {
    left: 30px;
    right: 30px; }
  #portfolio > p {
    margin: 30px 60px;
    width: auto; }
  #portfolio > div a {
    text-decoration: none; }
  #portfolio > div {
    margin: 0 !important;
    height: auto;
    min-height: 340px; }
  #portfolio > div div.desc h3 {
    left: 0;
    right: 0;
    text-decoration: none;
    bottom: auto;
    margin: 20px 0;
    transform: none !important;
    position: relative; }
  #portfolio > div div.desc {
    float: none;
    width: 100%;
    padding: 30px;
    /* background: rgba(0,0,0,0.2); */
    margin-top: 65%;
    position: relative;
    height: auto;
    margin-bottom: 30px; }
  #portfolio > div div.desc p {
    opacity: .5;
    transform: none !important;
    position: relative;
    bottom: 0; }
  #portfolio > div > a > img {
    width: 100%;
    height: auto;
    margin-left: 0 !important;
    top: 0;
    position: absolute; }
  #case .desc,
  #case #slider {
    margin-right: 0;
    margin-left: 0; }
  #case #slider {
    height: 68vw; }
  #case .desc {
    padding: 30px; }
  #points {
    margin: 60px 0 0; }
  #points div {
    width: 80%;
    padding-left: 30px;
    padding-right: 30px; }
  #points p {
    font-size: 14px; }
  #points:after {
    width: 1px; }
  #client {
    margin-left: 70px;
    margin-bottom: 70px; }
  #client img {
    width: 60px;
    margin-left: -30px; }
  #client blockquote {
    margin-left: 70px;
    font-size: 14px;
    width: 66%; }
  #client p {
    margin-left: 70px;
    font-size: 16px; }
  #other_cases h2 {
    margin: 0 30px 30px; }
  #other_cases > div {
    width: 300%; }
  #other_cases > div > div {
    width: 70%; }
  #contact_pop {
    width: 100%;
    max-width: 400px; }
  .positions > div:first-child a {
    font-size: 28px; }
  #services-page h2,
  #careers h2 {
    margin: 0 60px; }
  #services-page p,
  #careers p {
    width: auto;
    margin: 30px 60px;
    font-size: 14pt; }
  .positions > div {
    padding: 0 30px !important; }
  #pos_desc h3 {
    padding-top: 0;
    margin-bottom: 20px; }
  #pos_desc ul {
    margin-left: 45px; }
  #pos_desc ul li {
    margin-bottom: 10px; }
  #pos_desc p,
  #pos_desc ul,
  #pos_desc ul li {
    font-size: 14px; }
  #pos_desc p:first-child {
    font-size: 16px; }
  #blog:before {
    left: 30px;
    right: 30px; }
  #blog p {
    margin: 30px 60px;
    width: auto;
    padding-bottom: 30px; }
  #blog_posts {
    margin: 60px 30px 0; }
  #blog_posts div h3 {
    line-height: 1.4em;
    font-size: 28px;
    margin: 0 0 20px; }
  #blog_posts div {
    margin: 0; }
  #blog_posts div p {
    width: 100%;
    font-size: 16px; }
  #blog_posts div img {
    margin: 30px 0; }
  .services-page-content,
  #blog_post {
    margin: 0 30px; }
  .services-page-content h1,
  #blog_post h1 {
    margin-left: 0; }
  .services-page-content p,
  #blog_post p {
    font-size: 14px; }
  #blog_post > p:first-of-type {
    margin-left: 0; }
  .services-page-content h2,
  #blog_post h2 {
    font-size: 28px; }
  .services-page-content p.big,
  #blog_post p.big {
    margin-left: 30px;
    font-size: 16px;
    padding: 30px; }
  .services-page-content a.act:last-child,
  #blog_post a.act:last-child {
    float: none;
    margin: 0;
    font-size: 16px; }
  footer {
    padding: 120px 30px 90px;
    text-align: right; }
  footer > img {
    float: left;
    margin-top: -7px; }
  footer #social {
    float: right;
    margin-top: -78px;
    margin-bottom: 60px; }
  footer a#sendemail {
    float: left;
    margin-right: 20px;
    margin-top: -78px;
    margin-left: 0; }
  #mob_call {
    display: block;
    position: fixed;
    bottom: -50px;
    left: 20px;
    background: #29dfb7 url("../img/call.png") no-repeat center center/18px;
    width: 50px;
    height: 50px;
    transition: all .3s;
    border-radius: 25px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    z-index: 10; }
  #mob_call.float {
    transform: translateY(-70px); }
  #not_found {
    margin: 0 30px; }
  #not_found h2 {
    margin-bottom: 60px; }
  #not_found p {
    margin-left: 0;
    width: 100%;
    margin-bottom: 60px; }
  #loader img:first-child,
  #intro > img:first-child {
    margin-left: 30px; }
  #loader h2 {
    left: 30px;
    font-size: 30px; }
  #intro h2 {
    left: 30px;
    font-size: 30px;
    right: 10px; }
  #intro div {
    box-sizing: border-box;
    padding: 0 0;
    margin: 0;
    left: 0;
    right: 0; }
  #intro div span {
    width: 33.33%; }
  #intro:before,
  #intro:after {
    display: none; }
  #blog_posts div {
    margin: 0; }
  #blog_posts div h3 {
    margin-left: 0; }
  #services .container {
    margin: 0 0 60px;
    border: none; }
  #services h2,
  #testimonials h2 {
    padding: 30px 0 0 30px;
    margin-top: 30px; }
  #services .container .row {
    flex-direction: column;
    flex-wrap: nowrap;
    height: auto;
    border: none; }
  #services .container .row .service {
    width: auto; }
  #services .container .row .service > div img {
    bottom: 15px; }
  #testimonials .slider .slide {
    height: 680px;
    flex-flow: column;
    padding: 20px; }
  #testimonials .slider .slide p {
    font-size: 15px; }
  #testimonials .slider .slide .client {
    margin: 0; }
  #testimonials .slider .slide .client .logo {
    width: 120px;
    height: 120px; }
  #testimonials .slider .slide .client img {
    height: 120px; }
  #testimonials .slider .slide .review {
    margin: 50px 0 0; }
  #testimonials .slider .slide .review p:before,
  #testimonials .slider .slide .review p:after {
    width: 20px;
    height: 14px;
    right: 0;
    left: auto;
    background-size: contain; }
  #testimonials .slidenav {
    display: none; }
  #ceos {
    width: auto;
    max-width: 100%;
    margin: 10vw 30px;
    position: relative; }
    #ceos .ceo {
      flex-basis: 50%;
      text-align: center;
      padding: 10px 10px 0;
      box-sizing: border-box; }
      #ceos .ceo p {
        display: none;
        position: absolute;
        width: 100%;
        left: 0;
        top: 100%;
        max-height: 295px;
        overflow-y: scroll;
        text-align: left;
        padding: 20px;
        box-sizing: border-box;
        background: #f8f9fb; }
      #ceos .ceo.active {
        border-bottom: 3px solid #5fdab5; }
        #ceos .ceo.active p {
          display: block; }
      #ceos .ceo img {
        width: 100%;
        min-width: 0;
        margin-bottom: 10%; }
      #ceos .ceo .linkedin {
        position: absolute;
        bottom: 100%;
        right: 100%; }
      #ceos .ceo h4 {
        font-size: 1.3em;
        position: relative;
        line-height: 32px;
        box-sizing: border-box;
        padding-right: 0;
        text-align: center;
        margin: 0;
        word-spacing: 100px; }
        #ceos .ceo h4 span {
          position: static;
          font-size: .6em;
          margin: 1px 0 0; }
          #ceos .ceo h4 span:after {
            left: auto;
            right: 0;
            bottom: 100%; }
  #teams {
    margin: 95vw 30px 0; }
  #teams .container {
    flex-direction: column;
    height: auto;
    margin-top: 0; }
  #teams .container .item {
    width: 100%;
    height: 290px;
    border-bottom: 1px solid rgba(153, 153, 153, 0.2) !important;
    border-left: none; }
  #teams .container .item > div {
    padding: 70px 20px 0; }
  #teams .container .item .main img {
    bottom: 30px;
    height: 100px; }
  #teams .container .item .main h3 {
    top: 30px; }
  #reviews {
    flex-direction: column;
    margin-top: 15vw; }
  #reviews .review_item {
    padding: 30px;
    height: 160px;
    margin-top: 2px; }
  #reviews .review_item img {
    margin-right: 30px; }
  #teams .container .item:hover .main img {
    bottom: -50px; }
  #reviews .review_item p {
    font-size: 13px; }
  #project-samples h2 {
    margin-left: 30px; }
  #project-samples .projects .slide {
    flex-direction: column; }
  #project-samples .projects .project {
    flex-direction: column;
    height: 70vh; }
  #project-samples .projects .project > img {
    left: 0;
    top: 0;
    height: 75%;
    width: auto; }
  #project-samples .projects .project .desc {
    flex-basis: 35%; }
  .industries {
    margin-top: 30px; }
    .industries h2 {
      padding: 30px; }
    .industries .content {
      margin: 30px 0; }
      .industries .content .industry {
        width: 50%;
        margin-bottom: 30px; }
        .industries .content .industry h4 {
          font-size: 20px; }
        .industries .content .industry .icon {
          margin: 0; }
        .industries .content .industry:not(:last-child) .icon {
          border: none; }
        .industries .content .industry:nth-child(odd) .icon {
          border-right: 1px solid #e8e8e8; } }

#hm_slide .slides .slide.clickable {
  cursor: pointer; }

.btn_accessibility {
  display: none !important; }

.post_desc {
  line-height: 35px; }

#contact_pop .phone-number {
  float: left; }

#contact_pop .phone-number a {
  font-size: 14pt !important; }
