/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
html,
button,
input,
select,
textarea {
  color: #222;
}
body {
  font-size: 1em;
  line-height: 1.4;
}
/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}
::selection {
  background: #b3d4fc;
  text-shadow: none;
}
/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}
/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */
audio,
canvas,
img,
video {
  vertical-align: middle;
}
/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}
/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical;
}
/* ==========================================================================
   Author's custom styles
   ========================================================================== */
html,
body {
  position: relative;
  height: 100%;
}
body {
  background: #eba123;
  font-family: Helvetica Neue, Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 300;
  min-width: 960px;
  line-height: 1.4;
}
.transition {
  -webkit-transition: 300ms;
  -moz-transition: 300ms;
  -ms-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
}
nav {
  min-width: 960px;
  position: fixed;
  left: 0;
  width: 100%;
  height: 50px;
  background: rgba(0, 0, 0, 0.9);
  border-bottom: 1px solid #000;
  box-shadow: 0px -1px 0px rgba(255, 255, 255, 0.3) inset;
  z-index: 1000;
  top: -51px;
}
nav ul {
  margin: 0 0px 0px 50px;
  padding: 0;
  float: left;
}
nav .tel {
  float: right;
  color: #fff;
  margin-right: 50px;
  line-height: 50px;
  font-size: 18px;
}
nav li {
  line-height: 49px;
  float: left;
  color: #fff;
  font-size: 15px;
  padding: 0 20px;
  margin: 0;
  border-right: 1px solid #000;
  box-shadow: 1px 0px 0px rgba(255, 255, 255, 0.2) inset;
  -webkit-transition: 300ms;
  -moz-transition: 300ms;
  -ms-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
  cursor: pointer;
}
nav li:last-child {
  box-shadow: 1px 0px 0px rgba(255, 255, 255, 0.2) inset, 1px 0px 0px rgba(255, 255, 255, 0.2);
}
nav li:hover {
  background: #000;
}
.height {
  height: 3000px;
  position: absolute;
  width: 10px;
  top: 0;
}
.intro-screen {
  width: 100%;
  height: 100%;
  z-index: 5000;
  position: absolute;
  left: 0;
  top: 0;
}
.intro-screen.loaded {
  position: relative;
  z-index: auto;
}
.intro-screen .logo-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: url(../i/bg-logo.jpg) no-repeat center center;
}
.intro-screen .ero-us {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: url(../i/ero-us.png) no-repeat center center;
}
.intro-screen .front-clouds {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  left: 50%;
  background: url(../i/front-clouds.png) no-repeat 0px center;
  width: 1277px;
  height: 667px;
  margin-top: -250px;
  margin-left: -900px;
  top: 50%;
}
.intro-screen .i {
  position: absolute;
  background: url(../i/i.png);
  left: 50%;
  top: 50%;
  width: 162px;
  height: 194px;
  z-index: 5;
  margin-top: -115px;
  margin-left: -355px;
}
.intro-screen .slogan {
  color: #fefa61;
  text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
  font-size: 32px;
  position: absolute;
  z-index: 6;
  left: 50%;
  top: 50%;
  margin-top: 70px;
  margin-left: 30px;
  text-align: right;
}
.intro-screen .slogan span {
  display: block;
  font-size: 24px;
  position: relative;
}
.folio-screen {
  min-height: 500px;
  border-bottom: 2px solid #fff;
  border-top: 2px solid #fff;
  width: auto;
  height: auto;
  z-index: 50;
  overflow: hidden;
  position: relative;
}
.folio-screen h2 {
  font-size: 52px;
  line-height: 72px;
  margin: 0px 0 0px;
  font-weight: 100;
  color: #4f0a04;
  color: #fff;
  text-shadow: 0px 2px 10px rgba(0, 0, 0, 0.5);
  text-transform: uppercase;
  font-family: 'PT Sans Narrow', sans-serif;
  text-align: right;
  z-index: 2;
  position: absolute;
  right: 30px;
  top: 60px;
}
.folio-screen h2 span {
  display: inline-block;
  margin-left: -30px;
  background: #000;
  background: rgba(0, 0, 0, 0.8);
  padding: 0 30px;
}
.folio-screen h3 {
  font-size: 45px;
  font-weight: 100;
  color: #000;
  position: relative;
  font-family: 'PT Sans Narrow', sans-serif;
  margin: -10px 0 50px;
  z-index: 3;
  line-height: 63px;
}
.folio-screen h3 span {
  display: inline-block;
  background: #fff;
  margin-left: -20px;
  background: rgba(255, 255, 255, 0.6);
  padding: 0 20px;
}
.folio-screen .swiper-container {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  /*background: #000;*/
}
.folio-screen .swiper-slide {
  width: 100%;
  height: 100%;
  position: relative;
}
.folio-screen .swiper-slide .link {
  color: #000;
  font-weight: bold;
  display: inline-block;
  font-size: 13px;
  text-decoration: none;
}
.folio-screen .swiper-slide .link:hover {
  text-decoration: underline;
}
.folio-screen .swiper-slide .next-work,
.folio-screen .swiper-slide .prev-work {
  display: inline-block;
  background: #333;
  padding: 5px 10px;
  font-size: 13px;
  cursor: pointer;
  color: #fff;
}
.folio-screen .swiper-slide .inner {
  margin: 0 auto;
  position: absolute;
  left: 20px;
  bottom: 20px;
  /*width: 30%;*/
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.6);
  background: rgba(255, 255, 255, 0.9);
  /*height: 100%;*/
  color: #000;
  padding: 20px;
  max-width: 300px;
}
.folio-screen .swiper-slide .title {
  /*background: rgba(0,0,0,0.8);*/
  /*background: rgba(255,255,255,0.2);*/
  /*border-bottom: 1px solid #aaa;*/
  /*text-shadow:0px 1px 3px #000;*/
  /*padding: 20px;*/
  /*padding-top: 70px;*/
  font-size: 35px;
  font-family: 'PT Sans Narrow', sans-serif;
  position: relative;
}
.folio-screen .swiper-slide .text {
  text-align: left;
  position: relative;
  font-weight: normal;
  line-height: 1.2;
}
.folio-screen .bg {
  position: absolute;
  width: 100%;
  left: 0%;
  height: 100%;
}
.work-1 {
  background: #791600;
}
.work-1 .bg {
  background: #791600 url(../i/folio-sl/starborn.jpg) no-repeat center top;
  -webkit-background-size: cover;
  background-size: cover;
}
.work-1 .inner {
  color: #fff;
}
.work-2 {
  background: #344960;
}
.work-2 .bg {
  background: #344960 url(../i/folio-sl/sokol.jpg) no-repeat center;
  -webkit-background-size: cover;
  background-size: cover;
}
.work-3 {
  background: #3a5898;
}
.work-3 .bg {
  background: #3a5898 url(../i/folio-sl/italy.jpg) no-repeat center;
  -webkit-background-size: cover;
  background-size: cover;
}
.work-4 {
  background: #ed8e00;
}
.work-4 .bg {
  background: #ed8e00 url(../i/folio-sl/ddm.jpg) no-repeat center;
  -webkit-background-size: cover;
  background-size: cover;
}
.work-5 {
  background: #fff;
}
.work-5 .bg {
  background: #ffffff url(../i/folio-sl/advance.jpg) no-repeat center;
  -webkit-background-size: cover;
  background-size: cover;
}
.work-6 .bg {
  background: #ccc2c0 url(../i/folio-sl/chrysler.jpg) no-repeat center;
  -webkit-background-size: cover;
  background-size: cover;
}
.folio-screen .swiper-slide.work-all {
  background: rgba(0, 0, 0, 0.7);
}
.folio-screen .swiper-slide.work-all .inner {
  position: static !important;
  margin: 0;
  background: none;
  box-shadow: none;
  padding: 40px;
  max-width: none;
}
.folio-screen .swiper-slide.work-all .title {
  color: #fff;
  margin-top: 30px;
  margin-bottom: 20px;
}
.folio-screen .swiper-slide.work-all a {
  color: #fff;
}
.folio-screen .swiper-slide.work-all ul {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 80%;
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
}
.folio-screen .swiper-slide.work-all li {
  margin-bottom: 15px;
}
.services-screen {
  padding: 100px 50px 100px 50px;
  z-index: 40;
  position: relative;
  overflow: hidden;
  background: url(../i/office.jpg) no-repeat center top;
  -webkit-background-size: cover;
  background-size: cover;
  color: #333;
  border-bottom: 1px solid #fff;
}
.services-screen .services-content {
  max-width: 1200px;
  margin: 0 auto;
}
.services-screen h2 {
  font-size: 92px;
  line-height: 112px;
  margin: 0px 0 0px;
  font-weight: 100;
  position: relative;
  text-transform: uppercase;
  font-family: 'PT Sans Narrow', sans-serif;
  z-index: 2;
  color: #000;
}
.services-screen h2 span {
  display: inline-block;
  margin-left: -30px;
  background: rgba(255, 255, 255, 0.3);
  padding: 0 30px;
}
.services-screen .col {
  float: left;
  width: 33%;
}
.services-screen h3 {
  font-size: 45px;
  font-weight: 100;
  color: #000;
  position: relative;
  font-family: 'PT Sans Narrow', sans-serif;
  margin: -10px 0 20px 60px;
  z-index: 3;
  line-height: 63px;
}
.services-screen h3.right-heading {
  text-align: right;
}
.services-screen h3 span {
  display: inline-block;
  background: #fff;
  margin-left: -20px;
  background: rgba(255, 255, 255, 0.6);
  padding: 0 20px 0 30px;
  position: relative;
}
.services-screen h3 b {
  color: #fff;
  background: #000;
  display: inline-block;
  width: 75px;
  text-align: center;
  border-radius: 50px;
  height: 75px;
  line-height: 75px;
  top: -6px;
  position: absolute;
  left: -55px;
}
.services-screen .inner {
  margin-right: 40px;
}
.services-screen .imac {
  background: url(../i/s-imac.png);
  width: 508px;
  height: 411px;
  position: relative;
  float: left;
  margin-bottom: 60px;
}
.services-screen .imac .light {
  background: url(../i/s-imac-light.png);
  width: 302px;
  height: 350px;
  right: 0;
  top: 0;
  position: absolute;
  z-index: 10;
}
.services-screen .imac .screen {
  width: 470px;
  height: 266px;
  position: absolute;
  left: 20px;
  top: 20px;
  z-index: 5;
  background: #fff;
  overflow: hidden;
}
.services-screen .imac .screen-bg {
  background: url(../i/imac-screen.jpg);
  width: 800px;
  height: 500px;
  position: absolute;
  left: 50%;
  margin-left: -400px;
  top: 0;
}
.services-screen .imac .browser {
  background: url(../i/borwser.png);
  width: 350px;
  position: absolute;
  left: 50%;
  margin-left: -175px;
  top: 100%;
  height: 266px;
}
.services-screen .website-text {
  margin-bottom: 60px;
  margin-left: 540px;
  font-size: 18px;
  font-weight: normal;
}
.services-screen .iphone {
  background: url(../i/iphone.png);
  width: 380px;
  height: 643px;
  position: relative;
  margin-bottom: 60px;
  float: left;
}
.services-screen .iphone iframe {
  width: 320px;
  height: 380px;
  position: absolute;
  left: 32px;
  top: 133px;
}
.services-screen .mobile-text {
  margin-bottom: 60px;
  margin-top: 60px;
  margin-left: 420px;
  font-size: 18px;
  font-weight: normal;
}
.services-screen .social {
  width: 200px;
  height: 200px;
  float: left;
  position: relative;
  margin-bottom: 50px;
}
.services-screen .social img {
  opacity: 0;
  position: relative;
  -webkit-transition: 300ms;
  -moz-transition: 300ms;
  -ms-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
  -webkit-trasnform: translate3d(0, 0, 0);
  -moz-trasnform: translate3d(0, 0, 0);
  -ms-trasnform: translate3d(0, 0, 0);
  -o-trasnform: translate3d(0, 0, 0);
  trasnform: translate3d(0, 0, 0);
}
.services-screen .social .visible {
  opacity: 1;
}
.services-screen .social .vk {
  z-index: 10;
  position: absolute;
  left: 100px;
  top: 100px;
  -webkit-transition-delay: 150ms;
  -moz-transition-delay: 150ms;
  -ms-transition-delay: 150ms;
  -o-transition-delay: 150ms;
  transition-delay: 150ms;
}
.services-screen .social-text {
  margin-left: 320px;
  font-size: 18px;
  font-weight: normal;
}
.services-screen .social-text a {
  color: #333;
}
.services-screen .website-text,
.services-screen .mobile-text,
.services-screen .social-text {
  padding: 20px;
  background: rgba(255, 255, 255, 0.4);
}
.no-csstransforms3d .social img {
  opacity: 1 !important;
}
.clients-screen {
  overflow: hidden;
  position: relative;
  height: 100%;
  min-height: 700px;
  border-bottom: 2px solid #000;
  -webkit-perspective: 1200px;
  -moz-perspective: 1200px;
  -ms-perspective: 1200px;
  perspective: 1200px;
}
.clients-screen .square {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../i/square.jpg) no-repeat center center;
  -webkit-background-size: cover;
  background-size: cover;
  z-index: 0;
}
.clients-screen .overlay {
  z-index: 1;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
.clients-screen h2 {
  font-size: 92px;
  line-height: 112px;
  margin: 0px 0 0px;
  font-weight: 100;
  color: #4f0a04;
  color: #fff;
  margin-bottom: 10px;
  text-shadow: 0px 2px 10px rgba(0, 0, 0, 0.5);
  position: relative;
  text-transform: uppercase;
  font-family: 'PT Sans Narrow', sans-serif;
  text-align: center;
  z-index: 2;
  padding-top: 100px;
  -webkit-tranform-style: preserve-3d;
  -moz-tranform-style: preserve-3d;
  -ms-tranform-style: preserve-3d;
  -o-tranform-style: preserve-3d;
  tranform-style: preserve-3d;
}
.clients-screen h2 span {
  display: inline-block;
  background: #000;
  background: rgba(0, 0, 0, 0.6);
  padding: 0 30px;
}
.clients-screen h3 {
  text-align: center;
  position: relative;
  z-index: 5;
  text-transform: uppercase;
  font-family: 'PT Sans Narrow', sans-serif;
  font-weight: normal;
  font-size: 45px;
}
.clients-screen h3 span {
  display: inline-block;
  background: #000;
  background: rgba(0, 0, 0, 0.6);
  padding: 10px 30px;
  color: #fff;
}
.clients-screen .logos {
  text-align: center;
  position: relative;
  z-index: 5;
}
.clients-screen .logos span {
  display: inline-block;
  padding: 10px;
  width: 120px;
  height: 120px;
  background: #fff;
  background: rgba(255, 255, 255, 0.8);
  text-align: center;
  line-height: 120px;
  margin: 0 5px;
}
.clients-screen .logos img {
  max-width: 100%;
  max-height: 100%;
}
.learn-screen {
  position: relative;
  background: url(../i/linear2.jpg) repeat;
  background-attachment: fixed;
  height: 800px;
}
.learn-content {
  position: relative;
  z-index: 5;
  max-width: 1200px;
  margin: 0 auto;
  padding: 60px 50px;
}
.learn-content > h2 {
  margin: 0;
  font-weight: normal;
  line-height: 110px;
  font-size: 92px;
  font-family: 'PT Sans Narrow', sans-serif;
  text-transform: uppercase;
}
.learn-content > h2 span {
  display: inline-block;
  background: #ffffff;
  padding: 0 30px;
  margin-left: -30px;
}
.learn-content > h3 {
  margin: 0;
  font-size: 45px;
  font-family: 'PT Sans Narrow', sans-serif;
  font-weight: normal;
}
.learn-content > h3 span {
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  padding: 0 10px;
  line-height: 45px;
}
.table-wrap {
  padding: 20px;
  background: #fff;
  box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.1);
}
.table-wrap table {
  width: 100%;
}
.table-wrap table th {
  padding: 8px 10px;
  background: #000;
  background: rgba(0, 0, 0, 0.8);
  text-align: left;
  color: #fff;
  white-space: nowrap;
}
.table-wrap table td {
  padding: 5px 10px;
  background: #fff;
}
.table-wrap table tbody tr:nth-child(2n) td {
  background: #eee;
  color: #000;
}
.table-wrap table h3 {
  margin: 0;
}
.table-wrap table p {
  margin: 0;
}
.contacts-screen {
  background: #333;
  border-top: 2px solid #000;
}
.contacts-content {
  margin: 0 auto;
  max-width: 1200px;
  padding: 50px 50px;
}
.planet {
  float: left;
  width: 400px;
  height: 400px;
  -webkit-animation: planet-rotate 10000ms linear 0ms infinite;
  -o-animation: planet-rotate 10000ms linear 0ms infinite;
  -ms-animation: planet-rotate 10000ms linear 0ms infinite;
  animation: planet-rotate 10000ms linear 0ms infinite;
}
.planet img {
  width: 400px;
}
.contacts-text {
  color: #fff;
  margin-left: 450px;
}
.contacts-text .title {
  font-size: 92px;
  font-family: 'PT Sans Narrow', sans-serif;
}
.contacts-text p {
  font-size: 15px;
  overflow: hidden;
}
.contacts-text p b {
  text-align: right;
  font-weight: normal;
  float: left;
  width: 100px;
}
.contacts-text p i {
  font-style: normal;
  margin-left: 110px;
  display: block;
  max-width: 300px;
}
@-webkit-keyframes planet-rotate {
  from {
    -webkit-transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
  }
}
@-moz-keyframes planet-rotate {
  from {
    -moz-transform: rotate(0deg);
  }
  to {
    -moz-transform: rotate(360deg);
  }
}
@-o-keyframes planet-rotate {
  from {
    -moz-transform: rotate(0deg);
  }
  to {
    -moz-transform: rotate(360deg);
  }
}
@keyframes planet-rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/* ==========================================================================
   Helper classes
   ========================================================================== */
.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.clearfix:after {
  clear: both;
}
/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.clearfix {
  clear: both;
  *zoom: 1;
}
