@font-face{
    font-family: 'fontello';
    src: url('../fonts/fontello.eot?60480237');
    src: url('../fonts/fontello.eot?60480237#iefix') format('embedded-opentype'), url('../fonts/fontello.woff2?60480237') format('woff2'), url('../fonts/fontello.woff?60480237') format('woff'), url('../fonts/fontello.ttf?60480237') format('truetype'), url('../fonts/fontello.svg?60480237#fontello') format('svg');
    font-weight: normal;
    font-style: normal;
}
/*Fontello icons*/
[class*="font-icon-"]:before, .developers .slick-arrow:before, .upload-btn:before, .fileinput-name .close:before, .btn-link .sub-box:after, .read-case:after, .no-touchevents .awards-list .img:after, .lg-icon:after, .awards-list .item + p a[target=_blank]:after, .awards-list .item .fake-link:after{
    font-family: "fontello";
    font-style: normal;
    font-weight: normal;
    speak: none;
    display: inline-block;
    vertical-align: top;
    font-size: 18px;
    color: #fff;
    text-decoration: inherit;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
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,
menu, nav, output, ruby, section, summary,
time, mark, audio, video{
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
strong, b{
    font-weight: 700;
}
.weight-medium{
    font-weight: 500;
    color: #4d4d4d;
}
em, i{
    font-style: italic;
}
sup, sub{
    position: relative;
    top: -0.6em;
    font-size: 75% !important;
    line-height: 1em !important;
}
sub{
    top: auto;
    bottom: -0.3em;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, menu, nav, section, main{
    display: block;
}
/*_____________________________________________*/
html{
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
body{
    height: 100%;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.777777777777778em;
    color: #4d4d4d;
    min-width: 320px;
    background: #fff;
}
.hide-scroll{
    overflow: hidden !important;
}
/*Common styles*/
*, *:before, *:after{
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-focus-ring-color: rgba(0, 0, 0, 0);
    outline: none !important;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .head-page-title{
    font-family: 'Montserrat', sans-serif;
    position: relative;
    font-weight: 700;
    color: #1d1d1d;
}
h1, .h1, .head-page-title{
    font-weight: 800;
    font-size: 46px;
    line-height: 1.217391304347826em;
    letter-spacing: .03em;
    text-align: center;
    margin: 0 0 48px;
}
h2, .h2{
    font-weight: 300;
    font-size: 46px;
    line-height: 1.565217391304348em;
    margin: 70px 0 50px;
}
.separator-line + h2, .separator-line + .h2, .separator-line + .form-title{
    margin-top: -12px;
}
.separator-line + h2.large-top-title-indent{
    margin-top: 172px;
}
h2.after-last-img-container{
    margin-top: 98px;
}
.text-img-box + h2{
    margin-top: 114px;
}
.dark-bg-box + h2{
    margin-top: 140px;
}
.form-title{
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 36px;
    line-height: 1.565217391304348em;
    text-align: center;
    color: #1d1d1d;
    max-width: 1000px;
    margin: 70px auto 50px;
}
h3, .h3{
    font-weight: 800;
    font-size: 28px;
    line-height: 1.428571428571429em;
    margin: 80px 0 50px;
}
h3.small-indent, .h3.small-indent{
    margin-bottom: 39px;
}
.title-bg-line, .negative-title-indent{
    position: relative;
    margin: 177px 0 40px -34px;
}
.title-bg-line.small-top-indent{
    margin-top: 36px;
}
.title-bg-line.middle-top-indent{
    margin-top: 110px;
}
.title-bg-line:before{
    content: '';
    position: absolute;
    z-index: -1;
    top: -26px;
    height: 88px;
    width: 2500px;
    left: -2356px;
    background: #f4f4f4;
}
.title-bg-line.min-height{
    min-height: 246px;
}
.title-bg-line.large-line:before{
    height: 272px;
}
.title-bg-line.full-height-line:before{
    height: auto;
    bottom: -40px;
}
.separator-line + .title-bg-line{
    margin-top: 105px;
}
h4, .h4{

}
h5, .h5{
    font-size: 20px;
    line-height: 1.6em;
    margin: 80px 0 25px;
}
h6, .h6{

}
.large-top-title-indent, .large-top-text-indent{
    margin-top: 166px;
}
.middle-top-title-indent{
    margin-top: 112px;
}
h1 + .large-top-title-indent{
    margin-top: 144px;
}
.title-line{
    position: relative;
    display: inline-block;
}
.title-line:before{
    content: '';
    position: absolute;
    z-index: -1;
    top: 29px;
    left: -57px;
    right: -57px;
    height: 16px;
    background: #f5ea38;
}
h3 .title-line:before{
    top: 22px;
    height: 8px;
    left: -25px;
    right: -25px;
}
ol, ul{
    list-style: none;
    margin: 16px 0;
}
ul li, ol li{
    position: relative;
    padding: 0 0 0 24px;
    margin-bottom: 16px;
    background: url("../i/list-bullet.svg") no-repeat 0 14px/8px 8px;
}
ol{
    counter-reset: list1;
    list-style: none;
}
ul ul, ol ol{
    margin: 16px 0;
}
ol li{
    padding-left: 27px;
}
ol > li{
    background: none;
}
ol > li:before{
    counter-increment: list1;
    content: counter(list1) ".";
    position: absolute;
    left: 0;
    top: 1px;
    font-size: 13px;
}
ol ol{
    counter-reset: list2;
}
ol ol li{
    padding-left: 52px;
}
ol ol li:before{
    counter-increment: list2;
    content: counter(list1) "." counter(list2) ". ";
}
ul li p, ol li p{
    margin-bottom: 0;
}
/*_______________________________*/
.scroll-tbl{
    margin: 31px 0 27px;
    position: relative;
    width: 100%;
    overflow-x: auto;
}
.scroll-tbl table{
    margin: 0 auto;
    min-width: 600px;
    box-shadow: none;
}
table{
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    margin: 31px auto 27px;
    overflow: auto;
}
table th, table td{
    font-size: 15px;
    line-height: 1.6em;
    padding: 16px 26px 20px;
    text-align: left;
    color: #242424;
    border: 1px solid #dfe1e6;
    vertical-align: top;
}
table th{
    font-weight: 500;
    background: #f6f7f8;
}
a{
    color: #242424;
    text-decoration: none;
    outline: none !important;
    border-bottom: 1px solid #a5a5a5;
}
a[href^=tel]{
    white-space: nowrap;
}
.no-touchevents a:hover{
    color: #9d9d9d;
    border-bottom-color: transparent;
}
a[href^=tel]{
    border-bottom: none !important;
}
p{
    margin: 16px 0;
}
.important-text{
    font-weight: 300;
    font-size: 24px;
    line-height: 1.666666666666667em;
    margin: 24px 0;
}
.back-technologies + .important-text{
    margin-top: 90px;
}
.important-text.after-title{
    max-width: 720px;
    margin: -16px auto 0 !important;
    text-align: center;
}
.in-brief-text{
    max-width: 490px;
}
.start-project{
    font-size: 16px;
    text-align: center;
    letter-spacing: .48px;
    color: #cbcbcb;
}
.start-project strong{
    font-weight: 400;
    color: #989898;
    white-space: nowrap;
}
.isolated-bg-line{
    position: relative;
    padding: 60px 0;
    margin: 48px auto 68px;
}
.isolated-bg-line:before{
    content: '';
    position: absolute;
    z-index: -1;
    left: 80px;
    top: 0;
    bottom: 0;
    right: -2000px;
    background: #f4f4f4;
}
h1 + .start-project{
    margin-top: -39px;
}
blockquote{
    position: relative;
    display: flex;
    justify-content: space-between;
    margin: 71px 0 61px;
    padding: 80px 0 0;
}
blockquote:before{
    content: '';
    position: absolute;
    z-index: -1;
    left: 80px;
    top: 0;
    right: -2500px;
    height: 160px;
    background: #f4f4f4;
}
blockquote .text{
    position: relative;
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    line-height: 1.666666666666667em;
    color: #1d1d1d;
    padding: 0 50px 0 46px;
    max-width: 860px;
    width: calc(100% - 277px);
}
blockquote .text p{
    margin: 0 0 16px;
}
blockquote .text > *:last-child{
    margin-bottom: 0;
}
blockquote .text:before{
    content: '«';
    position: absolute;
    left: -32px;
    top: -14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 60px;
    line-height: 1em;
    color: #f5ea38;
}
blockquote .author{
    width: 277px;
    margin: -14px 0 0;
}
blockquote .author img{
    margin: 0;
    clip-path: url(#author-mask);
}
#author-mask{
    position: absolute;
    left: -10000px;
    bottom: -10000px;
    width: 100%;
    height: 100%;
}
img{
    display: block;
    max-width: 100%;
    height: auto;
    margin: 32px 0;
}
.large-img-indent{
    margin-top: 70px;
    margin-bottom: 70px;
}
.large-top-img-indent{
    margin-top: 90px;
}
.large-bottom-indent{
    margin-bottom: 56px;
}
.large-img-indent.has-shadow-negative-indent{
    margin-bottom: 56px;
}
.rare-images-indent{
    margin: 70px 0 140px;
}
.large-top-indent{
    margin-top: 56px;
}
.largest-top-indent{
    margin-top: 78px;
}
.middle-top-indent{
    margin-top: 38px;
}
.small-bottom-indent{
    margin-bottom: 32px;
}
.largest-bottom-img-indent{
    margin-bottom: 80px;
}
.no-bottom-indent{
    margin-bottom: 0 !important;
}
.no-top-indent{
    margin-top: 0 !important;
}
img.half-top, img.half-between{
    margin-bottom: 0 !important;
}
img.half-bottom, img.half-between{
    margin-top: 0 !important;
}
.after-title{
    margin-top: 54px !important;
}
a img{
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
}
img.left{
    margin: 32px 32px 28px 0;
    max-width: 44%;
}
img.right{
    margin: 32px 0 28px 32px;
    max-width: 44%;
}
p img.left, p img.right{
    margin-top: 28px;
    margin-bottom: 28px;
}
.style-shadow{
    -webkit-box-shadow: 0 5px 20px 0 rgba(65, 65, 65, .08);
    box-shadow: 0 5px 20px 0 rgba(65, 65, 65, .08);
}
.style-large-shadow{
    -webkit-box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .05);
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .05);
}
.style-large-shadow.dark-shadow{
    -webkit-box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .1);
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .1);
}
img.style-shadow{
    margin-top: 70px;
}
.usual-max-w + .text-img-box img.middle-top-indent{
    margin-top: 32px;
}
small{
    font-size: 0.8em;
}
.normal-weight{
    font-weight: 400;
}
/*___________________________*/
/*Form styles*/
.form{
    position: relative;
    margin: 40px auto;
    font-size: 0;
    line-height: 1em;
    color: #8d9398;
}
h2 + .form, .form-title + .form{
    margin-top: 79px;
}
.important-text + .form{
    margin-top: 54px;
}
.form p{
    font-size: 14px;
    line-height: 1.33333333em;
    margin: 0 0 19px;
}
.form .two-cols{
    font-size: 0;
    margin: 0 -16px;
}
.form .two-cols.negative-indent{
    margin-top: -17px;
}
.form .two-cols .col{
    display: inline-block;
    vertical-align: top;
    width: 52%;
    padding: 0 16px;
}
.form .two-cols .col:last-child{
    width: 48%;
}
.field{
    line-height: 0;
    margin: 0 0 47px;
}
.field .sub-box{
    position: relative;
    padding: 0 0 4px;
    border-bottom: 1px solid #f1f1f1;
}
.field .sub-box:before{
    content: '';
    position: absolute;
    z-index: 1;
    left: 94px;
    bottom: -1px;
    height: 1px;
    width: calc(100% - 94px);
    background: #d0d0d0;
}
.error-field .sub-box:before{
    background: #f04e28;
}
.field .sub-box:after{
    content: '';
    position: absolute;
    z-index: 2;
    left: 94px;
    bottom: -1px;
    height: 2px;
    width: 0;
    background: rgb(212, 225, 90);
    background: -webkit-linear-gradient(left, rgba(212, 225, 90, 1) 0%, rgba(99, 195, 206, 1) 100%);
    background: linear-gradient(to right, rgba(212, 225, 90, 1) 0%, rgba(99, 195, 206, 1) 100%);
}
.field.filled .sub-box:after{
    width: calc(100% - 94px);
}
.field.error-field .sub-box:after{
    background: #f04e28 !important;
}
.field-name{
    position: relative;
    z-index: 10;
    display: inline-block;
    vertical-align: top;
    font-size: 15px;
    line-height: 1.2em;
    width: 94px;
    color: #6c6c6c;
    margin: 2px 0 0;
}
.required .field-name:after{
    content: '*';
    color: #bdbdbd;
}
.form-control{
    position: relative;
    z-index: 9;
    display: inline-block;
    vertical-align: top;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    font-size: 18px;
    color: #1d1d1d;
    line-height: 49px;
    width: calc(100% - 94px);
    height: 49px;
    margin: -14px 0 0;
    padding: 0 0 1px;
    border: none;
    background: transparent !important;
    border-radius: 1px !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none !important;
    text-overflow: ellipsis;
}
textarea.form-control{
    line-height: 1.42em;
    padding: 11px 0 0;
    height: 101px;
    min-height: 101px;
    max-width: calc(100% - 94px);
    min-width: calc(100% - 94px);
    overflow: auto;
}
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder{
    opacity: 1;
    color: #a2acb0;
}
input::-moz-placeholder, textarea::-moz-placeholder{
    opacity: 1;
    color: #a2acb0;
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder{
    opacity: 1;
    color: #a2acb0;
}
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder{
    opacity: 0 !important;
}
input:focus::-moz-placeholder, textarea:focus::-moz-placeholder{
    opacity: 0 !important;
}
input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder{
    opacity: 0 !important;
}
.form .error-field-text{
    font-size: 11px;
    line-height: 1.6em;
    color: #f04e28;
    margin: 2px 0 -19px 94px;
}
.submit-message{
    text-align: center;
    margin: 24px 0 0;
}
.submit-message p{
    position: relative;
    font-size: 18px;
    line-height: 1.777777777777778em;
    margin: 0;
    padding: 18px 0 0;
    border-top: 3px solid #cfe140;
    overflow: hidden;
}
.submit-message p.error-message{
    border-color: #f04e28;
}
.submit-message p:before{
    content: '';
    position: absolute;
    left: 50%;
    top: -21px;
    width: 24px;
    height: 24px;
    margin: 0 0 0 -12px;
    background: #cfe140;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.submit-message p.error-message:before{
    background: #f04e28;
}
/*Checkboxes*/
.checkbox-item{
    position: relative;
    margin: 37px 0 0;
    line-height: 0;
}
.form .negative-indent .checkbox-item{
    margin: -5px 0 0;
}
.checkbox-item input[type="checkbox"]{
    width: 0;
    height: 0;
    bottom: 0;
    left: 0;
    position: absolute;
    z-index: -1;
    opacity: 0;
}
.checkbox-item input[type="checkbox"] + label{
    position: relative;
    left: 0;
    top: 0;
    display: inline-block;
    vertical-align: top;
    font-size: 14px;
    line-height: 1.375em;
    text-transform: none;
    color: #6c6c6c;
    padding: 0 0 0 36px;
    margin: 0;
    cursor: pointer;
}
.checkbox-item.large input[type="checkbox"] + label{
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
    font-size: 24px;
    line-height: 1.333333333333333em;
    color: #1d1d1d;
    padding: 0 0 0 52px;
}
.checkbox-item input[type="checkbox"]:disabled + label{
    cursor: default;
}
.checkbox-item input[type="checkbox"] + label:before{
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    height: 18px;
    background: url("../i/checkbox-icon.svg") no-repeat 0 0/18px 39px;
}
.checkbox-item.large input[type="checkbox"] + label:before{
    background-size: 32px 69px;
    width: 32px;
    height: 32px;
}
.checkbox-item input[type="checkbox"]:checked + label:before{
    background-position: 0 -21px;
}
.checkbox-item.large input[type="checkbox"]:checked + label:before{
    background-position: 0 -37px;
}
.checkbox-item input[type="checkbox"]:disabled + label:before{
    opacity: .4;
    cursor: default;
    filter: gray;
    -webkit-filter: grayscale(100%);
}
.checkbox-item label a{
    color: #6c6c6c;
    white-space: nowrap;
}
/*Btn*/
button{
    border: none;
    cursor: pointer;
}
.btn{
    position: relative;
    z-index: 4;
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
    font-size: 18px;
    line-height: 1.5em;
    color: #000;
    text-align: center;
    padding: 0 16px 39px;
    min-width: 240px;
    max-width: 100%;
    margin: 0 auto;
    border: none;
    border-radius: 0;
    background: transparent !important;
    outline: none !important;
    cursor: pointer;
    overflow: hidden;
}
.form .btn-box{
    overflow: hidden;
    margin: 24px 0 0;
    padding: 37px 0 0 56px;
    border-top: 1px solid #efefef;
}
.form .btn{
    margin-top: -10px;
    width: 100%;
}
.form .btn-box .btn{
    float: right;
    width: 50%;
}
.btn.full-width{
    width: 100%;
}
.btn::-moz-focus-inner{
    border: 0;
}
.no-touchevents .btn:not(:disabled):active{
    color: #6c6c6c;
}
.btn:disabled{
    opacity: .2;
    cursor: default;
}
.btn:after{
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: 16px;
    background: #f5ea38;
    transform: translate3d(0, 8px, 0);
}
.no-touchevents .btn:not(:disabled):hover:after, .no-touchevents .btn:not(:disabled):focus:after{
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.no-touchevents .btn:not(:disabled):active:after{
    transform: translate3d(0, 12px, 0);
}
/*Form message*/

/*Appearance*/
.left{
    float: left;
}
.right{
    float: right;
}
.center{
    text-align: center;
}
.uppercase{
    text-transform: uppercase;
}
.no-indent{
    margin-bottom: 0 !important;
}
.align-m, .align-b{
    display: table-cell;
    vertical-align: middle;
}
.align-b{
    vertical-align: bottom;
}
.no-wrap{
    white-space: nowrap;
}
/*Independent*/
.container{
    position: relative;
    z-index: 2;
    max-width: 1234px;
    padding: 0 24px;
    margin: 0 auto;
}
.container.full-width{
    max-width: none;
    padding-top: 22px;
}
.container.full-width.no-inner-indent{
    padding-top: 0;
}
.container:after{
    content: '';
    display: table;
    width: 0;
    height: 0;
    clear: both;
}
/*=========================================================================
								STRUCTURE
==========================================================================*/
#all{
    position: relative;
    z-index: 1;
    min-height: 100%;
    height: auto !important;
    height: 100%;
    padding: 123px 0 0;
    overflow: hidden;
    background: #fff;
}
#top-page-bg, #bottom-page-bg{
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    width: 100%;
    padding-bottom: 43.75%;
    background-image: url("../i/top-page-bg.png");
    background-position: 50% 0;
    background-repeat: no-repeat !important;
    background-size: 100% auto !important;
}
#bottom-page-bg{
    z-index: 1;
    top: auto;
    bottom: 0;
    background-image: url("../i/bottom-page-bg.png");
    background-position: 50% 100%;
    padding-bottom: 30.9%;
}
.hide-top-page-bg #top-page-bg, .error-page #top-page-bg{
    display: none;
}
#indent{
    clear: both;
}
/*================================HEADER===================================*/
#header{
    position: fixed;
    z-index: 999;
    left: 0;
    top: 0;
    padding: 52px 0 0;
    width: 100%;
    min-width: 320px;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}
.sticky-header #header{
    /*    padding: 26px 0;
        background: rgba(255, 255, 255, .98);
        -webkit-box-shadow: 0 2px 7px 0 rgba(0, 0, 0, .15);
        box-shadow: 0 2px 7px 0 rgba(0, 0, 0, .15);*/
}
.head-page-title{
    position: absolute;
    left: 50%;
    top: -14px;
    margin: 0 0 0 -200px;
    width: 400px;
    text-transform: uppercase;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}
#header.visible-title .head-page-title{
    opacity: .05;
    visibility: visible;
}
#logo{
    position: relative;
    float: left;
    width: 124px;
    height: 27px;
    border: none;
    background: url("../i/logo-ru.svg") no-repeat 0 0/124px 27px;
}
.sticky-header #logo{
    opacity: 0;
    visibility: hidden;
}
.en #logo{
    background: url("../i/logo-en.svg") no-repeat 0 0/113px 27px;
}
.by #logo{
    background: url("../i/logo-by.svg") no-repeat 0 0/119px 27px;
}
.index-page #logo{
    cursor: default;
}
.no-touchevents body:not(.index-page) #logo:hover{
    opacity: .7;
}
#js-open-nav{
    position: fixed;
    top: 50px;
    z-index: 1001;
    float: right;
    font-weight: 900;
    font-size: 12px;
    line-height: 1em;
    color: #1d1d1d;
    text-transform: uppercase;
    margin: 0 -8px 0 0;
    cursor: pointer;
    padding-left: 56px;
    height: 32px;
}
.sticky-header #js-open-nav{
    top: 24px;
}
#js-open-nav:before, #js-open-nav:after{
    content: '';
    position: absolute;
    right: 69px;
    top: 12px;
    width: 25px;
    height: 2px;
    background: #1d1d1d;
}
#js-open-nav:after{
    top: 19px;
    right: 56px;
}
.no-touchevents #js-open-nav:hover:before{
    right: 56px;
}
.no-touchevents #js-open-nav:hover:after{
    right: 69px;
}
#js-open-nav.active:before{
    top: 15px !important;
    right: 63px !important;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all .2s ease 1s;
    transition: all .2s ease 1s;
}
#js-open-nav.active:after{
    top: 15px !important;
    right: 63px !important;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transition: all .2s ease 1s;
    transition: all .2s ease 1s;
}
#js-open-nav span{
    position: relative;
    top: 10px;
    right: 0;
    -webkit-transition: all .3s ease 1s;
    transition: all .3s ease 1s;
}
#js-open-nav.active span{
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}
#js-open-nav.active span:first-child{
    opacity: 0;
    right: -6px;
}
.no-touchevents #js-open-nav.active:hover{
    opacity: .5;
}
#js-open-nav .btn-lines{
    position: absolute;
    z-index: -1;
    left: 0;
    top: 10px;
    bottom: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .3s;
    transition: all .3s ease;
}
.sticky-header #js-open-nav .btn-lines{
    opacity: 1;
    visibility: visible;
}
#js-open-nav .btn-lines:before, #js-open-nav .btn-lines:after{
    content: '';
    position: absolute;
    left: -9px;
    top: 0;
    width: 113px;
    height: 6px;
    background: rgba(255, 255, 255, .6);
}
#js-open-nav .btn-lines:after{
    top: 7px;
    left: 4px;
}
.no-touchevents #js-open-nav:hover .btn-lines:before{
    left: 4px;
}
.no-touchevents #js-open-nav:hover .btn-lines:after{
    left: -9px;
}
#js-open-nav.active .btn-lines{
    opacity: 0;
    visibility: hidden;
}
/*========================END OF HEADER========================*/
/*Page overlay*/
#page-overlay{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.8);
    z-index: 999;
    display: none;
    will-change: opacity;
}
/*============================NAV==============================*/
#nav-box{
    position: fixed;
    z-index: 1000;
    width: 70%;
    top: 0;
    right: 0;
    bottom: 0;
    overflow-y: auto;
    overflow-x: hidden;
    background: #fff;
    transform: translate3d(100%, 0, 0);
}
#nav{
    position: absolute;
    z-index: 10;
    width: 100%;
    top: 0;
    right: 0;
    height: 100%;
    overflow-y: auto;
    display: table;
    table-layout: fixed;
}
#nav ul{
    padding: 90px 0 90px 184px;
    display: table-cell;
    vertical-align: middle;
}
#nav li{
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 34px;
    line-height: 1.4em;
    margin: 32px 0;
    padding: 0;
    background: none;
}
#nav a{
    position: relative;
    color: #1d1d1d;
    border: none;
}
#nav .active a{
    color: #a8a8a8;
}
.no-touchevents #nav a:after{
    content: '';
    position: absolute;
    right: 0;
    bottom: -9px;
    height: 2px;
    background: rgb(212, 225, 90);
    background: -webkit-linear-gradient(left, rgba(212, 225, 90, 1) 0%, rgba(99, 195, 206, 1) 100%);
    background: linear-gradient(to right, rgba(212, 225, 90, 1) 0%, rgba(99, 195, 206, 1) 100%);
    width: 0;
}
.no-touchevents #nav a:hover:after{
    width: 100%;
    left: 0;
}
#nav-box .langs{
    position: relative;
    z-index: 11;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1em;
    padding-left: 184px;
    margin: 57px 0 0;
}
.sticky-header #nav-box .langs{
    margin-top: 31px;
}
.langs a{
    position: relative;
    color: #1d1d1d;
    border-color: transparent;
    margin: 0 54px 0 0;
}
.no-touchevents .langs a:hover{
    border-color: #a5a5a5;
}
.langs a[target=_blank]:before, .langs a[target=_blank]:after{
    content: '';
    position: absolute;
    right: -26px;
    top: 4px;
    width: 14px;
    height: 14px;
    background: url("../i/lang-target-blank.svg") no-repeat 0 0/100% auto;
}
.langs a[target=_blank]:after{
    right: -28px;
    top: 2px;
    width: 6px;
    height: 6px;
    background: url("../i/lang-target-blank-arrow.svg") no-repeat 0 0/100% auto;
    -webkit-transition: all .1s ease;
    transition: all .1s ease;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.no-touchevents .langs a[target=_blank]:hover:after{
    -webkit-transform: translate3d(2px, 2px, 0);
    transform: translate3d(2px, -2px, 0);
}
/*=========================END OF NAV===========================*/
/*Intro text*/
.main-intro-box{
    max-width: 770px;
    margin: 47px 0 34px;
}
.main-intro-box .title{
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 50px;
    line-height: 1.44em;
    color: #1d1d1d;
    margin: 0 0 39px;
}
.main-intro-box p{
    margin: 0 0 24px;
}
.main-intro-box p:not(.title){
    margin-left: 50px;
}
.main-intro-box p:last-child{
    margin-bottom: 0;
}
.main-intro-box .title small{
    display: inline-block;
    vertical-align: top;
    line-height: 1.44em;
}
.main-intro-box .title .heart{
    display: inline-block;
    vertical-align: middle;
    margin: -5px 0 0;
    height: auto;
}
.gradient-line{
    position: relative;
}
.gradient-line .bg-line{
    content: '';
    position: absolute;
    top: 15px;
    height: 2px;
    background: rgb(212, 225, 90);
    background: -webkit-linear-gradient(left, rgba(212, 225, 90, 1) 0%, rgba(99, 195, 206, 1) 100%);
    background: linear-gradient(to right, rgba(212, 225, 90, 1) 0%, rgba(99, 195, 206, 1) 100%);
}
/*Masonry grid*/
.masonry-grid{
    margin: 32px -16px;
}
.masonry-grid .item-box{
    float: left;
    width: 50%;
    padding: 0 16px;
    margin: 0;
}
/*Our projects*/
.our-projects-box{
    position: relative;
    z-index: 4;
    margin: 109px auto 33px;
    padding: 0 24px;
    max-width: 1264px;
}
.our-projects{
    margin: 0 -16px;
}
.our-projects .item-box{
    margin: 0;
}
.our-projects .item-box + .item-box{
    margin-top: 80px;
}
.our-projects .item{
    position: relative;
    display: block;
    max-width: 100%;
    float: left;
    border: none;
    -webkit-box-shadow: 0 10px 40px 0 rgba(0, 0, 0, .1);
    box-shadow: 0 10px 40px 0 rgba(0, 0, 0, .1);
    -webkit-transition: all .6s ease;
    transition: all .6s ease;
    transform: translateZ(0);
    will-change: transform, filter;
}
html:not(.ie) .our-projects.on-hover .item-box:not(.selected) .item{
    filter: blur(5px);
    -webkit-transform: scale(.98);
    transform: scale(.98);
}
.no-touchevents.ie .our-projects .img img, .no-touchevents .ie .our-projects .item .name{
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
.no-touchevents.ie .our-projects .item:hover .img img, .no-touchevents.ie .our-projects .item:hover .name{
    opacity: .7;
}
.our-projects .item-box:not(.even) .item{
    float: right;
}
.no-touchevents .our-projects .item:hover{
    color: #000;
}
.our-projects .img{
    position: relative;
}
.our-projects .img img{
    position: absolute;
    left: 0;
    bottom: 0;
    margin: 0;
}
.our-projects .name{
    position: absolute;
    left: 48px;
    bottom: -12px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
    font-size: 24px;
    line-height: 1.25em;
    margin: 0;
    width: 400px;
    max-width: calc(100% - 50px);
}
.our-projects .item-box.even .name{
    left: auto;
    right: 48px;
    text-align: right;
}
.our-projects .awards{
    position: absolute;
    width: 60px;
    right: -8px;
    bottom: -7px;
    background: #fff;
}
.our-projects .item-box.even .awards{
    left: -8px;
}
.our-projects .awards .icon{
    position: relative;
    z-index: 4;
    display: flex;
    align-items: center;
    width: 60px;
    height: 67px;
    background: #fff;
    -webkit-box-shadow: 0 3px 24px 0 rgba(0, 0, 0, .1);
    box-shadow: 0 3px 24px 0 rgba(0, 0, 0, .1);
}
.our-projects .awards .icon:nth-child(2){
    z-index: 3;
}
.our-projects .awards .icon:nth-child(3){
    z-index: 2;
}
.our-projects .awards .icon:nth-child(4){
    z-index: 1;
}
.our-projects .awards .icon img{
    display: block;
    max-width: 51px;
    margin: 0 auto;
}
.btn-link{
    display: table;
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
    font-size: 18px;
    line-height: 1.25em;
    text-align: center;
    margin: 32px auto;
    padding: 14px 24px 15px;
    min-width: 312px;
    max-width: 100%;
    border: 2px solid #f5ea38;
    background: #f5ea38;
}
.our-projects-box .btn-link{
    margin: 104px auto 0;
}
.no-touchevents .btn-link:hover{
    color: #000;
    background: #fff;
    border: 2px solid #f5ea38;
}
.btn-link .sub-box{
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn-link span{
    display: inline-block;
    vertical-align: middle;
    text-align: left;
    margin: 0 18px;
}
.ie .btn-link span{
    max-width: calc(100% - 80px);
}
.btn-link .sub-box:after{
    content: '\e807';
    position: relative;
    top: 1px;
    display: inline-block;
    vertical-align: middle;
    font-size: 15px;
    color: #000;
    margin: 0 18px;
}
/*Social links*/
.social-links{
    font-size: 0;
    margin: 36px 0;
    text-align: right;
}
.social-links a{
    position: relative;
    display: inline-block;
    vertical-align: top;
    text-align: center;
    width: auto;
    height: 32px;
    line-height: 32px;
    margin: 0 0 0 46px;
    opacity: 1 !important;
    text-decoration: none;
    border: none;
}
.social-links a:before{
    position: relative;
    z-index: 1;
    font-size: 23px;
    line-height: 32px;
    color: #000;
}
.no-touchevents .social-links a:hover:before{
    color: #9d9d9d;
}
.font-icon-facebook:before{
    content: '\e800';
    top: 1px !important;
}
.font-icon-twitter:before{
    content: '\e801';
}
.font-icon-dribbble:before{
    content: '\e802';
}
.font-icon-behance:before{
    content: '\e803';
}
.font-icon-linkedin:before{
    content: '\f0e1';
}
/*Separator line*/
.separator-line{
    position: relative;
    z-index: 30;
    margin: 71px auto;
    width: 2px;
    height: 112px;
}
h2 + .separator-line{
    margin-top: 59px;
}
.separator-line.small-top-indent{
    margin-top: 24px;
}
.separator-line.large-top-indent{
    margin-top: 144px;
}
.separator-line.large-bottom-indent{
    margin-bottom: 120px;
}
.technologies-separator{
    margin-top: -74px;
}
.back-technologies + .separator-line{
    margin-top: -45px;
}
.separator-line:before{
    content: '';
    position: absolute;
    top: 0;
    left: -1px;
    width: 100%;
    height: 100%;
    background: rgb(212, 225, 90);
    background: -webkit-linear-gradient(top, rgba(212, 225, 90, 1) 1%, rgba(99, 195, 206, 1) 100%);
    background: linear-gradient(to bottom, rgba(212, 225, 90, 1) 1%, rgba(99, 195, 206, 1) 100%);
}
/*Ajax upload*/
#ajax-upload{
    position: relative;
    z-index: 10;
    padding-bottom: 170px;
    -webkit-transition: opacity .5s ease .7s;
    transition: opacity .5s ease .7s;
    will-change: opacity;
}
.ajax-transitions-start #ajax-upload{
    opacity: 0;
}
#ajax-transitions{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    bottom: 0;
    z-index: 1100;
    background: #f8f7f7;
    overflow: hidden;
    will-change: width;
}
/*#ajax-transitions:before{
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 180px;
    height: 180px;
    margin: -90px 0 0 -90px;
    background: url("../i/loader.svg") no-repeat 50% 50%/180px 180px;
    opacity: 0;
    -webkit-transition: opacity .4s ease 1s;
    transition: opacity .4s ease 1s;
    }
.ajax-transitions-start #ajax-transitions:before{
    opacity: 1;
    }*/
#ajax-transitions .layer{
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    background: rgb(212, 225, 90);
    background: -webkit-linear-gradient(left, rgba(212, 225, 90, 1) 0%, rgba(99, 195, 206, 1) 100%);
    background: linear-gradient(to right, rgba(212, 225, 90, 1) 0%, rgba(99, 195, 206, 1) 100%);
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    will-change: transform;
}
.loader{
    position: relative;
    width: 56px;
    height: 56px;
    overflow: hidden;
}
#ajax-transitions .loader{
    position: absolute;
    z-index: 2;
    left: 50%;
    top: 50%;
    margin: -28px 0 0 -28px;
    opacity: 0;
    -webkit-transition: opacity .2s ease;
    transition: opacity .2s ease;
}
.ajax-transitions-start #ajax-transitions .loader{
    opacity: 1;
    -webkit-transition: opacity .4s ease 1s;
    transition: opacity .4s ease 1s;
}
.el_1, .el_2, .el_3, .el_4{
    width: 8px;
    height: 56px;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translate(0px, -60px);
    -webkit-transform-origin: 50% 50%;
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
    transform: translate(0px, -60px);
    transform-origin: 50% 50%;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
}
.el_1{
    background: #dddd32;
    -webkit-animation-name: el_1_animation;
    animation-name: el_1_animation;
}
.el_2{
    left: 16px;
    background: #9ed161;
    -webkit-animation-name: el_2_animation;
    animation-name: el_2_animation;
}
.el_3{
    left: 32px;
    background: #40bea7;
    -webkit-animation-name: el_3_animation;
    animation-name: el_3_animation;
}
.el_4{
    left: 48px;
    background: #0ea8b0;
    -webkit-animation-name: el_4_animation;
    animation-name: el_4_animation;
}
@-webkit-keyframes el_1_animation{
    0%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    35%{
        -webkit-transform: translate(0px, 100px);
        transform: translate(0px, 100px);
    }
    70%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    100%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
}
@keyframes el_1_animation{
    0%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    35%{
        -webkit-transform: translate(0px, 100px);
        transform: translate(0px, 100px);
    }
    70%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    100%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
}
@-webkit-keyframes el_2_animation{
    5%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    40%{
        -webkit-transform: translate(0px, 100px);
        transform: translate(0px, 100px);
    }
    75%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    0%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    100%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
}
@keyframes el_2_animation{
    5%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    40%{
        -webkit-transform: translate(0px, 100px);
        transform: translate(0px, 100px);
    }
    75%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    0%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    100%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
}
@-webkit-keyframes el_3_animation{
    10%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    45%{
        -webkit-transform: translate(0px, 100px);
        transform: translate(0px, 100px);
    }
    80%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    0%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    100%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
}
@keyframes el_3_animation{
    10%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    45%{
        -webkit-transform: translate(0px, 100px);
        transform: translate(0px, 100px);
    }
    80%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    0%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    100%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
}
@-webkit-keyframes el_4_animation{
    15%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    50%{
        -webkit-transform: translate(0px, 100px);
        transform: translate(0px, 100px);
    }
    85%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    0%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    100%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
}
@keyframes el_4_animation{
    15%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    50%{
        -webkit-transform: translate(0px, 100px);
        transform: translate(0px, 100px);
    }
    85%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    0%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
    100%{
        -webkit-transform: translate(0px, -100px);
        transform: translate(0px, -100px);
    }
}
/*============================MAIN=============================*/
#main{
    position: relative;
    z-index: 10;
}
/*Top page image*/
.top-page-image{
    position: relative;
    z-index: -1;
    height: 400px;
    width: 1440px;
    left: 50%;
    margin: 13px 0 60px -720px;
    overflow: hidden;
    -webkit-box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .05);
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .05);
}
.top-page-image.large{
    height: 432px;
}
.top-page-image .bg{
    position: absolute;
    z-index: 2;
    left: 0;
    top: -17%;
    width: 100%;
    height: 134.7222222222222%;
    background-size: auto 100%;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}
.top-page-image + h1{
    margin-top: -89px;
    margin-left: auto;
    margin-right: auto;
}
.top-page-image .video{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    cursor: url("../i/pause.png"), auto;
}
.touchevents .top-page-image .video{
    display: none;
}
/*Center position box*/
.center-position{
    margin-left: auto;
    margin-right: auto;
}
.full-width-img{
    margin-left: -24px;
    max-width: calc(100% + 48px);
    width: calc(100% + 48px);
}
.large-center-box-top-indent{
    margin-top: 146px;
}
/*Page anchors*/
.page-anchors{
    text-align: center;
    margin: 32px 0;
}
p + .page-anchors{
    margin-top: -10px;
}
.page-anchors li{
    display: inline-block;
    vertical-align: top;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5em;
    padding: 0;
    margin: 0 18px 14px;
    background: none;
}
.anchor{
    color: #4d4d4d;
    border-bottom-style: dotted;
}
/*Layout grid*/
.layout-grid{
    position: relative;
    font-size: 0;
    margin: 40px -2.5%;
}
.layout-grid.large-top-indent{
    margin-top: 106px;
}
.layout-grid.has-bg{
    padding: 66px 0 70px;
}
.layout-grid + .layout-grid.has-bg{
    margin-top: 70px;
}
img + .center-position > .layout-grid{
    margin-top: 82px;
}
.layout-grid.has-bg:before{
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 112px;
    right: -2500px;
    background: #f4f4f4;
}
.layout-grid .col{
    display: inline-block;
    vertical-align: top;
    font-size: 18px;
    width: 50%;
    padding: 0 2.5%;
    margin: 0;
}
.layout-grid .col.has-bg{
    position: relative;
}
.layout-grid .col.has-bg:before{
    content: '';
    position: absolute;
    z-index: -1;
    top: -20px;
    right: calc(95% - 82px);
    height: 204px;
    left: -2500px;
    background: #f4f4f4;
}
.layout-grid.three-col .col{
    width: 33.333333333%;
}
.layout-grid.project-awards .col{
    width: 25%;
}
/*Project awards*/
.project-awards-box{
    margin: 122px auto 100px;
    max-width: 1186px;
}
.project-awards-box.large-top-indent{
    margin-top: 180px;
}
.container .project-awards-box:last-child{
    margin-bottom: 20px;
}
.project-awards-box h2{
    text-align: center;
    margin: 0 0 57px;
}
.layout-grid.project-awards{
    text-align: center;
    margin-bottom: -60px;
}
.project-awards .col{
    margin-bottom: 60px;
}
.project-awards .item-award{
    font-size: 16px;
    line-height: 1.5em;
    color: #1d1d1d;
    max-width: 240px;
    margin: 0 auto;
}
.project-awards .item-award a{
    display: inline-block;
    border: none;
    color: #1d1d1d !important;
}
.no-touchevents .project-awards .item-award a:hover{
    opacity: 1;
}
.project-awards .img{
    height: 125px;
    line-height: 0;
    display: flex;
    margin: 0 0 23px;
}
.project-awards img{
    margin: 0 auto;
    align-self: center;
    max-height: 125px;
}
.no-touchevents .project-awards .item-award a:hover img{
    opacity: .7;
}
.project-awards p{
    margin-top: 0;
}
.project-awards .item-award a p{
    display: inline;
    border-bottom: 1px dotted transparent;
}
.no-touchevents .project-awards .item-award a:hover p{
    border-color: rgba(0, 0, 0, .8);
}
.project-awards p:last-child{
    margin-bottom: 0;
}
/*Content arrow box*/
.content-arrow-box{
    position: relative;
    max-width: 1186px;
    margin: 0 auto 139px;
    padding: 0 0 87px;
}
.content-arrow-box:before{
    content: '';
    position: absolute;
    z-index: -2;
    left: 76px;
    top: 22px;
    bottom: 0;
    right: -2500px;
    background: #f4f4f4;
}
.content-arrow-box .title-bg-line{
    margin-top: 0;
}
.content-arrow-box .title-bg-line:before{
    display: none;
}
.content-arrow-box .sub-box, .our-process .sub-box{
    display: flex;
    align-items: flex-start;
    flex-flow: row wrap;
}
.content-arrow-box .col, .our-process .sub-box .col{
    width: 470px;
}
.content-arrow-box .col.sub-info, .our-process .sub-box .col.sub-info{
    position: relative;
    max-width: none;
    padding-left: 12.75%;
    width: calc(100% - 470px);
}
.content-arrow-box .col.sub-info:before{
    content: '';
    position: absolute;
    z-index: -1;
    left: 46px;
    top: 50%;
    width: 142px;
    height: 115px;
    margin: -66px 0 0 0;
    background: url("../i/content-arrow-box.svg") no-repeat 0 0/100% auto;
}
.content-arrow-box .col > *:first-child, .our-process .sub-box .col > *:first-child, .our-process .sub-box .col [data-max-width] > *:first-child{
    margin-top: 0 !important;
}
/*Vacancies*/
.vacancies-page #ajax-upload .container{
    max-width: 1298px;
}
.vacancies-list{
    margin: 154px 0 112px;
}
.vacancies-list .row{
    position: relative;
    display: flex;
    flex: auto;
    flex-direction: column;
    margin: 0 0 66px;
    /*Temp*/
    /*align-items: flex-end;*/
}
.vacancies-list .row:nth-child(even){
    align-items: flex-end;
}
.vacancies-list .row:before{
    content: '';
    position: absolute;
    z-index: 0;
    top: 22px;
    left: 9%;
    right: 0;
    height: 176px;
    background: #f4f4f4;
}
.vacancies-list .row:nth-child(even):before{
    left: 0;
    right: 9%;
}
.vacancies-list .bg{
    position: absolute;
    z-index: 1;
}
.vacancies-list .bg.project-manager-bg{
    top: -9px;
    left: 33.3%;
}
.vacancies-list .front-end-bg{
    top: -81px;
    right: 36.5%;
}
.vacancies-list .designer-bg{
    top: -54px;
    left: 35.5%;
}
.vacancies-list .sales-manager-bg{
    top: -56px;
    right: 35.4%;
}
.vacancies-list .back-end-bg{
    top: -52px;
    left: 35.4%;
}
.vacancies-list .marketing-bg{
    top: -59px;
    right: 35%;
}
.vacancies-list .bg img{
    margin: 0;
    max-width: none !important;
}
.vacancies-list .item{
    position: relative;
    z-index: 2;
    width: 50%;
}
.vacancies-list .h3{
    margin: 0 0 41px;
}
.vacancies-list p{
    margin-left: 28px;
    max-width: 470px;
}
.vacancies-list .separator-line{
    margin: 45px auto 0;
}
.more-link{
    position: relative;
    display: inline-block;
    vertical-align: top;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 13px;
    line-height: 18px;
    text-transform: uppercase;
    border: none;
    margin: 25px 0;
}
.vacancies-list .more{
    margin: 25px 0 0;
}
.no-touchevents .more-link:hover{
    color: #242424;
}
.more-link:after{
    content: '';
    position: absolute;
    z-index: -1;
    left: -15px;
    top: 50%;
    margin: -7px 0 0;
    width: 198px;
    height: 15px;
    background: url("../i/more-link.svg") no-repeat 0 0/100% auto;
}
.no-touchevents .more-link:hover:after{
    -webkit-transform: translate3d(30px, 0, 0);
    transform: translate3d(30px, 0, 0);
}
/*Developers box*/
.developers{
    position: relative;
    left: 50%;
    margin: 100px 0;
    padding: 0 16px;
    overflow: hidden;
    width: 100vw;
    opacity: 0;
    margin-left: -50vw;
    -webkit-transition: opacity .2s ease;
    transition: opacity .2s ease;
}
.developers.visible{
    opacity: 1;
}
.separator-line + .developers{
    margin-top: 80px;
}
.developers:before{
    content: '';
    position: absolute;
    z-index: -1;
    left: 0;
    top: 118px;
    right: 0;
    height: 168px;
    background: #f4f4f4;
}
.developers .slider{
    max-width: 1264px;
    margin: 0 auto;
    padding: 0 10px;
}
.developers .slick-slide{
    line-height: 0;
    padding: 0 16px;
}
.developers .slide .sub-box{
    position: relative;
    max-width: 248px;
    margin: 0 auto;
    cursor: pointer;
}
.developers .img{
    position: relative;
    z-index: 1;
    height: 320px;
    overflow: hidden;
}
.developers img{
    margin: 0;
    width: auto !important;
    max-width: none !important;
    -webkit-transform: translate3d(-50px, 0, 0);
    transform: translate3d(-50px, 0, 0);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}
.no-touchevents .developers .sub-box:hover .img img, .touchevents .developers .img img{
    -webkit-transform: translate3d(-168px, 0, 0) !important;
    transform: translate3d(-168px, 0, 0) !important;
}
.developers .developer{
    position: relative;
    z-index: 2;
    line-height: 1.2em;
    margin: -14px 0 0 16px;
    min-height: 74px;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.developers .developer p{
    margin: 0;
}
.developers .developer .name{
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
    font-size: 20px;
    line-height: 1.2em;
    color: #1d1d1d;
    margin: 0 0 4px;
}
.developers .position{
    font-size: 14px;
}
.developers .slick-arrow{
    position: absolute;
    z-index: 30;
    left: 10px;
    top: 39.25%;
    width: 41px;
    height: 22px;
    padding: 0;
    background: none;
}
.developers .slick-next{
    left: auto;
    right: 9px;
}
.developers .slick-arrow:before{
    content: '\e805';
    font-size: 22px;
    position: absolute;
    left: 0;
    top: 0;
    color: #1d1d1d;
}
.developers .slick-next:before{
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}
.no-touchevents .developers .slick-arrow:hover:before{
    left: -22px;
    color: #9e9e9e;
}
.no-touchevents .developers .slick-next:hover:before{
    left: 22px;
}
.developers .btn-link{
    margin: 88px auto 0;
}
/*Clients poll*/
.clients-poll{
    margin: 220px 0 227px;
}
.clients-poll h2{
    margin-top: 0;
}
.clients-poll .bg-box{
    padding: 87px 24px 231px;
    margin: -127px -24px 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.no-touchevents .clients-poll .bg-box{
    background-attachment: fixed;
}
.ie .clients-poll .bg-box, .edge .clients-poll .bg-box{
    background-attachment: scroll;
}
.clients-poll .awards-box{
    position: relative;
    margin: -148px auto 0;
    max-width: 840px;
}
.clients-poll .awards-box img{
    margin: 0 auto;
}
.clients-poll .awards-box:before{
    content: '';
    position: absolute;
    z-index: -2;
    bottom: -100px;
    right: -16px;
    height: 257px;
    width: 2500px;
    background: #f4f4f4;
}
/*.clients-poll .awards-box:after{
    content: '';
    position: absolute;
    z-index: -1;
    width: 616px;
    left: 50%;
    max-width: 84%;
    height: 257px;
    bottom: -8px;
    background: #fff;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
    }*/
.percents{
    display: block;
    font-weight: 300;
    font-size: 60px;
    line-height: 1em;
    color: #1d1d1d;
    margin: 16px 0;
}
.clients-poll .layout-grid .percents{
    margin-top: 0;
}
/*In numbers*/
.in-numbers{
    position: relative;
    margin: 227px 0 115px;
}
.in-numbers.middle-top-indent{
    margin-top: 140px;
}
.in-numbers.middle-bottom-indent{
    margin-bottom: 80px;
}
.in-numbers .number{
    position: relative;
    display: block;
    font-weight: 300;
    font-size: 60px;
    line-height: 1em;
    color: #1d1d1d;
    margin: 0 0 16px 0;
}
.in-numbers .layout-grid .col > p:first-child{
    margin: -48px 0 16px;
}
.in-numbers .layout-grid:before{
    content: '';
    position: absolute;
    z-index: -1;
    top: -9px;
    left: -1500px;
    right: -1500px;
    height: 80px;
    background: #f4f4f4;
}
.in-numbers .layout-grid:after{
    content: attr(data-numbers);
    position: absolute;
    z-index: -1;
    top: -172px;
    left: -1000px;
    right: -1000px;
    font-weight: 700;
    font-size: 400px;
    line-height: 1em;
    text-align: center;
    padding-left: 8.2%;
    color: #fff;
    white-space: nowrap;
    text-shadow: 0 20px 30px rgba(0, 0, 0, 0.03);
}
.in-numbers .layout-grid.no-bg-text-indent:after{
    padding-left: 0;
}
/*Our awards*/
.our-awards{
    margin: 115px 0 0;
}
.awards-list{
    font-size: 0;
    margin: 0 -22px;
}
.awards-list .item-box{
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 25%;
    padding: 0 22px;
    margin: 0 0 34px;
}
.awards-list .item-box.hidden{
    display: none;
}
.awards-list .item-box.animate{
    opacity: 0;
}
.awards-list .item{
    position: relative;
    display: block;
    font-size: 16px;
    line-height: 1.5em;
    color: #1d1d1d;
    cursor: pointer;
    max-width: 268px;
    margin: 0 auto;
    border: none;
}
.no-touchevents .awards-list .item:hover{
    color: #1d1d1d;
}
.awards-list .img{
    position: relative;
    margin: 0 auto 15px;
    max-width: 248px;
}
.no-touchevents .awards-list .img:before{
    content: '';
    position: absolute;
    z-index: 10;
    left: 10.48387096774194%;
    bottom: 7.92682926829268%;
    width: 79.03225806451613%;
    height: 0;
    background: rgb(212, 225, 90);
    background: -webkit-linear-gradient(top, rgba(212, 225, 90, 1) 1%, rgba(99, 195, 206, 1) 100%);
    background: linear-gradient(to bottom, rgba(212, 225, 90, 1) 1%, rgba(99, 195, 206, 1) 100%);
    opacity: .9;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}
.no-touchevents .awards-list .item:hover .img:before{
    height: 84.14634146341463%;
    top: 7.92682926829268%;
}
.no-touchevents .awards-list .img:after{
    content: '\e806';
    position: absolute;
    z-index: 11;
    font-size: 25px;
    line-height: 38px;
    text-align: center;
    left: 50%;
    top: 50%;
    width: 42px;
    height: 42px;
    margin: -21px 0 0 -21px;
    border: 2px solid #fff;
    border-radius: 110%;
    opacity: 0;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
.no-touchevents .awards-list .item:hover .img:after{
    opacity: 1;
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
}
.awards-list img{
    margin: 0 auto;
    width: 100%;
}
.awards-list p{
    display: inline;
    position: relative;
    margin: 0 24px 0 0;
    border-bottom: 1px dotted transparent;
}
.no-touchevents .awards-list .item:hover p, .no-touchevents .awards-list .item + p a:hover{
    color: #1d1d1d;
    border-bottom-color: #a5a5a5;
    opacity: 1;
}
.awards-list p:before{
    content: '';
    position: absolute;
    z-index: -1;
    left: -22px;
    top: -119px;
    width: 80px;
    height: 136px;
    background: #f4f4f4;
}
.awards-list .item .img:after{
    /* */
}
.awards-list .item + p{
    display: block;
    font-size: 16px;
    line-height: 1.5em;
    max-width: 268px;
    margin: 0 auto;
    padding-right: 6px;
}
.awards-list .item + p a{
    position: relative;
    padding-top: 4px;
    margin: 0 6px 0 0;
    text-decoration: none;
    border-bottom: 1px dotted transparent;
}
.awards-list .item + p a[target=_blank]:after{
    content: '\e80f';
    font-size: 14px;
    line-height: 1em;
    color: #1d1d1d;
    width: 0;
    transform: translate3d(10px, 4px, 0);
}

.awards-list .item .fake-link{
    position: absolute;
    z-index: 100;
    right: 10.48387096774194%;
    bottom: 7.92682926829268%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    background: #f5ea38;
}
.awards-list .item .fake-link:after{
    content: '\e80f';
    font-size: 18px;
    line-height: 1em;
    color: #0d0d0d;
}
.no-touchevents .awards-list .item .fake-link:hover:after{
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}
.js-more-awards{
    margin: 40px auto 72px;
}
/*Principles*/
.principles{
    margin: 135px 0 272px;
}
.principles .item{
    position: relative;
    margin: 0 0 66px;
}
.principles .custom-products-item{
    margin: 0 0 99px;
}
.principles .attentive-to-details-item, .principles .design-around-content-item{
    margin: 0 0 59px;
}
.principles .item:nth-child(even){
    text-align: right;
}
.principles .item .bg{
    position: absolute;
    z-index: -1;
    margin: 0;
}
.principles .item .bg img{
    margin: 0;
    max-width: none;
}
.principles .item:before{
    content: '';
    position: absolute;
    z-index: -2;
    background: #f4f4f4;
}
.principles .usability-item:before{
    top: 22px;
    left: 50%;
    width: 1135px;
    height: 176px;
    margin-left: -512px;
}
.principles .usability-item .bg{
    top: -2px;
    left: 57.3%;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}
.principles .custom-products-item:before{
    top: 22px;
    left: -126px;
    width: 2500px;
    height: 160px;
}
.principles .custom-products-item .bg{
    left: 41%;
    top: -19px;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}
.principles .attentive-to-details-item:before{
    top: -155px;
    left: 78px;
    width: 794px;
    height: 177px;
}
.principles .attentive-to-details-item .bg{
    left: 63.5%;
    top: -30px;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}
.principles .design-around-content-item:before{
    top: -106px;
    left: 50%;
    width: 177px;
    height: 384px;
    margin: 0 0 0 -89px;
}
.principles .design-around-content-item .bg{
    left: 38.5%;
    top: -11px;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}
.principles .mvp-item:before{
    top: 22px;
    right: -126px;
    width: 2500px;
    height: 208px;
}
.principles .mvp-item .bg{
    left: 60%;
    top: 14px;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}
.principles .item .separator-line{
    margin: 86px auto 0;
}
.principles .usability-item .separator-line{
    margin-top: 63px;
}
.principles .item .info{
    display: inline-block;
    vertical-align: top;
    text-align: left;
    max-width: 50%;
}
.principles .item:nth-child(even) .info{
    width: 50%;
    padding-left: 32px;
}
.principles h3{
    margin-top: 0;
}
.principles .info p:last-child{
    margin-bottom: 0;
}
/*Our process*/
.process-section{
    position: relative;
    margin: 272px 0 0;
}
.our-process{
    position: relative;
    margin: -110px 0 -16px;
}
.our-process .item{
    position: relative;
    margin: 0 0 40px;
}
.our-process .title-line{
    display: inline-block;
}
.our-process h3 sup{
    top: -.6em;
    font-size: 60% !important;
    color: #6c6c6c;
    margin-left: 6px;
}
.our-process .content-arrow-box{
    z-index: 5;
    margin: 0;
    padding: 0;
}
.our-process .content-arrow-box:before{
    display: none;
}
.our-process .content-arrow-box .col.sub-info{
    margin-top: 40px;
}
.our-process .negative-title-indent{
    position: relative;
    z-index: 5;
    margin-top: 0;
}
.our-process .item:before{
    content: '';
    position: absolute;
    z-index: -3;
    background: #f4f4f4;
}
.our-process .research-item:before{
    top: 22px;
    left: -2500px;
    right: 32.5%;
    height: 272px;
}
.our-process .projection-item:before{
    bottom: -15px;
    right: -1755px;
    width: 3000px;
    height: 128px;
}
.our-process .design-item:before{
    top: 71px;
    right: -127px;
    width: 723px;
    width: calc(50% + 127px);
    max-width: 723px;
    height: 168px;
}
.our-process .front-end-item:before{
    top: 98px;
    left: -126px;
    height: 192px;
    width: 1320px;
}
.our-process .back-end-item:before{
    top: 15px;
    right: 240px;
    height: 280px;
    width: 321px;
}
.our-process .start-control-item:before{
    top: 198px;
    left: 50%;
    height: 240px;
    width: 2000px;
}
.our-process .development-item:before{
    top: -18px;
    left: calc(50% + 278px);
    height: 240px;
    width: 2000px;
}
.our-process .item:after{
    content: attr(data-step);
    position: absolute;
    z-index: -1;
    right: -106px;
    top: -45px;
    font-weight: 700;
    font-size: 400px;
    line-height: 1em;
    color: #fff;
    white-space: nowrap;
    text-shadow: 0 20px 50px rgba(0, 0, 0, 0.06);
}
.our-process .projection-item:after{
    top: -26px;
}
.our-process .separator-line{
    margin: 0 auto 66px;
}
.our-process .process-gradient{
    position: absolute;
    z-index: -2;
    top: -81px;
    right: 9px;
    bottom: 170px;
    width: 231px;
    /*    max-width: 20%;*/
    background: rgb(245, 234, 56);
    background: -webkit-linear-gradient(top, rgba(245, 234, 56, 1) 0%, rgba(29, 183, 193, 1) 100%);
    background: linear-gradient(to bottom, rgba(245, 234, 56, 1) 0%, rgba(29, 183, 193, 1) 100%);
}
/*Technologies stack*/
.technologies-stack-section{
    margin: 0 0 111px;
}
.technologies-list{
    font-size: 0;
    margin: 135px -16px -120px;
}
.technologies-list .item{
    position: relative;
    display: inline-block;
    vertical-align: top;
    font-size: 18px;
    width: 25%;
    padding: 0 16px;
    margin: 0 0 120px;
}
.technologies-list .item:before{
    content: '';
    position: absolute;
    left: 23%;
    top: -18px;
    bottom: -31px;
    width: 104px;
    background: #f4f4f4;
}
.technologies-list h3{
    margin-top: 0;
}
.technologies-list .negative-title-indent{
    margin-left: -34px;
}
.technologies-list .item > *:last-child{
    margin-bottom: 0;
}
/*Video section*/
.video-box, .autoplay-video-box{
    position: relative;
    max-width: 1024px;
    margin: 80px auto;
}
.video-box:before{
    content: '';
    position: absolute;
    z-index: 1;
    top: 50%;
    left: -2000px;
    right: -2000px;
    height: 258px;
    margin: -129px 0 0;
    background: #f4f4f4;
}
.video-box:after{
    content: 'Play Play';
    position: absolute;
    z-index: 2;
    width: 1554px;
    left: 50%;
    top: 50%;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 198px;
    line-height: 1em;
    text-transform: uppercase;
    text-align: center;
    word-spacing: 415px;
    white-space: nowrap;
    color: #fff;
    margin: -99px 0 0 -777px;
    text-shadow: 0 20px 30px rgba(0, 0, 0, 0.03);
}
.js-video, .proportion-video-box{
    position: relative;
    z-index: 3;
    cursor: pointer;
    padding-bottom: 56.25%;
    background: #000;
}
.js-video .poster{
    position: absolute;
    z-index: 6;
    left: 0;
    top: 0;
    width: 100%;
    max-width: none;
    min-height: 100%;
    margin: 0;
    -webkit-transition: -webkit-transform .5s ease;
    -ms-transition: -ms-transform .5s ease;
    transition: transform .5s ease;
}
.js-video img{
    margin: 0;
}
.js-video iframe, .js-video .video, .proportion-video-box .video{
    position: absolute;
    z-index: 5;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.js-video:before{
    content: '';
    position: absolute;
    z-index: 4;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, .5);
}
.js-video:after{
    content: '';
    position: absolute;
    z-index: 7;
    top: 50%;
    left: 50%;
    width: 61px;
    height: 85px;
    margin: -43px 0 0 -30px;
    background: url("../i/play-btn.svg") no-repeat 0 0/100% 100%;
}
.playing-video .js-video:after{
    display: none;
}
.no-touchevents .js-video:hover:after{
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
}
.daria-usova-video{
    position: relative;
}
.daria-usova-video:after{
    content: '';
    position: absolute;
    z-index: 1000;
    left: 0;
    top: 0;
    height: 1px;
    width: 100%;
    background: #fff;
}
.read-case{
    display: table;
    font-weight: 900;
    font-size: 14px;
    line-height: 1em;
    color: #484848;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .05em;
    margin: 40px auto;
    cursor: pointer;
    border: none;
}
.video-box + .read-case{
    margin: -45px auto 0;
}
.read-case:after{
    content: '';
    display: block;
    font-size: 10px;
    text-align: center;
    color: #8e8e8e;
    height: 10px;
    margin: 24px 0 0;
    background: url("../i/down-arrow.svg") no-repeat 50% 50%/15px 10px;
}
.no-touchevents .read-case:hover:after{
    -webkit-animation: arrowAnimate .8s linear infinite;
    -ms-animation: arrowAnimate .8s linear infinite;
    animation: arrowAnimate .8s linear infinite;
}
@-webkit-keyframes arrowAnimate{
    0%{
        -webkit-transform: translate3d(0, 0, 0);
    }
    25%{
        -webkit-transform: translate3d(0, 5px, 0);
    }
    75%{
        -webkit-transform: translate3d(0, -5px, 0);
    }
    100%{
        -webkit-transform: translate3d(0, 0, 0);
    }
}
@-ms-keyframes arrowAnimate{
    0%{
        -ms-transform: translate3d(0, 0, 0);
    }
    25%{
        -ms-transform: translate3d(0, 5px, 0);
    }
    75%{
        -ms-transform: translate3d(0, -5px, 0);
    }
    100%{
        -ms-transform: translate3d(0, 0, 0);
    }
}
@keyframes arrowAnimate{
    0%{
        transform: translate3d(0, 0, 0);
    }
    25%{
        transform: translate3d(0, 5px, 0);
    }
    75%{
        transform: translate3d(0, -5px, 0);
    }
    100%{
        transform: translate3d(0, 0, 0);
    }
}
/*Contacts*/
.contacts{
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 26px;
    line-height: 1.625em;
    color: #000;
    margin: 95px 0 71px;
    display: flex;
    justify-content: space-between;
}
.contacts .col{
    width: 50%;
}
.contacts .col:nth-child(1){
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    font-size: 24px;
    line-height: 1.625em;
    max-width: 500px;
    padding-right: 60px;
    color: #4d4d4d;
}
.contacts p{
    margin: 0 0 30px;
}
.contacts .social-links{
    text-align: left;
    margin: 31px 0 -6px;
}
.contacts .social-links a{
    margin: 0 58px 0 0;
}
.contacts .social-links a:before{
    font-size: 28px;
    line-height: 32px;
}
.contacts .separator{
    margin: 8px 11px 0 13px;
    display: inline-block;
    vertical-align: top;
    width: 17px;
    height: 27px;
    background: url("../i/separator.svg") no-repeat 0 0/100% auto;
}
/*Vacancy inner*/
.back-link{
    font-family: 'Montserrat', sans-serif;
    display: table;
    margin: 0 auto;
    font-weight: 800;
    font-size: 12px;
    line-height: 19px;
    text-transform: uppercase;
    color: #000;
    padding: 0 14px;
    border: none;
    background: #f5ea38;
}
h1 + .back-link{
    margin-top: -36px;
}
.no-touchevents .back-link:hover{
    color: #000;
}
.back-link:before{
    content: '';
    display: inline-block;
    vertical-align: top;
    width: 6px;
    height: 9px;
    margin: 5px 12px 0 0;
    background: url("../i/left-arrow-icon.svg") no-repeat 0 0/6px 9px;
}
.no-touchevents .back-link:hover:before{
    -webkit-animation: backLinkaArrow .7s infinite;
    animation: backLinkaArrow .7s linear infinite;
}
@-webkit-keyframes backLinkaArrow{
    0%{
        transform: translate3d(0, 0, 0);
    }
    25%{
        transform: translate3d(-6px, 0, 0);
    }
    75%{
        transform: translate3d(3px, 0, 0);
    }
    100%{
        transform: translate3d(0, 0, 0);
    }
}
@keyframes backLinkaArrow{
    0%{
        transform: translate3d(0, 0, 0);
    }
    25%{
        transform: translate3d(-6px, 0, 0);
    }
    75%{
        transform: translate3d(3px, 0, 0);
    }
    100%{
        transform: translate3d(0, 0, 0);
    }
}
.vacancy-inner{
    margin: 68px 0 0;
}
/*=========================END OF MAIN=========================*/
/*Cases*/
.main-case-img{
    position: relative;
    z-index: 3;
    width: 100%;
    margin: 70px 0;
}
.main-case-img.small-bottom-indent{
    margin-bottom: 50px;
}
/*Usual max width*/
.usual-max-w{
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
}
.text-img-box + .usual-max-w{
    position: relative;
    z-index: 6;
    margin-top: 44px;
}
/*Dark bg box*/
.dark-bg-box{
    padding: 70px 0 62px;
    margin: 72px -24px 80px;
    background: #f9f9f9;
    overflow: hidden;
}
.dark-bg-box.large-inner-indent{
    padding: 80px 0 80px;
}
.dark-bg-box.small-top-inner-indent{
    padding-top: 30px;
}
.dark-bg-box.small-bottom-indent{
    margin-bottom: 32px;
}
.dark-bg-box.x-inner-indent{
    padding-left: 24px !important;
    padding-right: 24px !important;
}
.dark-bg-box > *:first-child{
    margin-top: 0;
}
.dark-bg-box > *:last-child{
    margin-bottom: 0;
}
.dark-bg-box .note-img:last-child{
    margin-bottom: -5.75%;
}
.dark-bg-box .bottom-shadow-fix{
    margin: -16px auto -36px;
}
/*Two cols img*/
.two-cols-img{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 24px;
}
.dark-bg-box .two-cols-img{
    margin: 10px 0 18px;
}
.two-cols-img .img{
    max-width: 50%;
    padding: 0 24px;
}
.two-cols-img img{
    margin: 0;
    -webkit-box-shadow: 0 5px 20px 0 rgba(65, 65, 65, .08);
    box-shadow: 0 5px 20px 0 rgba(65, 65, 65, .08);
}
/*Before After*/
.before-after-box{
    position: relative;
    margin: 48px -24px 73px;
    -webkit-user-select: none;
    -ms-user-select: none;
}
.usual-max-w + .before-after-box{
    margin-top: 60px;
}
.layout-grid + .before-after-box, .center-position + .before-after-box{
    margin-top: 80px;
}
.before-after{
    margin: 0 auto;
    -webkit-box-shadow: 0 5px 20px 0 rgba(0, 0, 0, .1);
    box-shadow: 0 5px 20px 0 rgba(0, 0, 0, .1);
}
.before-after img{
    margin: 0;
    width: 100%;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.before-after.active img{
    -webkit-transition: none;
    transition: none;
}
/*Technologies*/
.front-technologies{
    margin: 40px auto;
}
.separator-line + .front-technologies{
    margin-top: -127px;
}
.front-technologies .img{
    position: relative;
    z-index: 2;
    float: right;
    padding: 64px 0 0;
    width: calc(100% - 460px);
}
.front-technologies .text{
    position: relative;
    z-index: 1;
    float: right;
    padding: 154px 24px 0 0;
    margin: 0 0 40px;
    width: 460px;
}
.front-technologies .text *:last-child, .back-technologies .text *:last-child{
    margin-bottom: 0;
}
.front-technologies .text:before{
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    left: 78px;
    width: 794px;
    height: 177px;
    background: #f4f4f4;
}
.front-technologies h3, .back-technologies h3{
    margin-top: 0;
}
.front-technologies .title-bg-line:before, .back-technologies .title-bg-line:before{
    display: none;
}
.front-technologies:after, .back-technologies:after{
    content: '';
    display: table;
    width: 0;
    height: 0;
    clear: both;
}
.back-technologies{
    position: relative;
    margin: 40px 0;
}
.separator-line + .back-technologies{
    margin-top: -118px;
}
.back-technologies:before{
    content: '';
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 0;
    width: 178px;
    height: 384px;
    margin: 0 0 0 -89px;
    background: #f4f4f4;
}
.back-technologies .img{
    position: relative;
    z-index: 1;
    float: left;
    width: 50%;
    padding: 59px 0 0;
}
.back-technologies .img img{
    float: right;
    margin-right: -138px;
    max-width: calc(100% + 138px);
}
.back-technologies .text{
    position: relative;
    z-index: 2;
    float: left;
    width: 50%;
    padding: 106px 0 0 32px;
}
.back-technologies .text h3{
    margin: 0 0 40px -34px;
}
/*Fixed bg box*/
.fixed-bg-box{
    position: relative;
    height: 520px;
    margin: 32px auto;
    max-width: 1440px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.fixed-bg-box.large-bottom-indent{
    margin-bottom: 56px;
}
.no-touchevents .fixed-bg-box{
    background-attachment: fixed;
}
.ie .fixed-bg-box, .edge .fixed-bg-box{
    background-attachment: scroll;
}
/*Last img box*/
.last-img-box{
    position: relative;
    margin: 86px 0 0;
}
.last-img-box img{
    margin: 0 auto;
}
.last-img-box:before{
    content: '';
    position: absolute;
    z-index: -1;
    top: 18.5%;
    left: -50px;
    right: -50px;
    height: 40%;
    background: #f4f4f4;
}
/*Text image box*/
.text-img-box{
    position: relative;
    z-index: 5;
    display: flex;
    align-items: stretch;
    margin: 40px -24px 30px;
}
.text-img-box + .text-img-box.invert{
    margin-top: 96px;
}
.in-brief-text + .text-img-box{
    margin-top: 108px;
}
.text-img-box.large-top-indent, .dark-bg-box + .text-img-box.large-top-indent{
    margin-top: 152px;
}
.text-img-box.overstep-bounds{
    margin-top: -53px;
    margin-bottom: -15px;
}
.text-img-box.negative-img-indent{
    margin-top: -72px;
    margin-bottom: -66px;
}
.text-img-box.frame-separator{
    margin-top: -156px;
    margin-bottom: -156px;
}
.important-text + .text-img-box{
    margin-top: 117px;
}
img + .text-img-box{
    margin-top: 126px;
}
.text-img-box.top-indent-after-img{
    margin-top: 48px;
}
.text-img-box.small-top-indent-after-img{
    margin-top: 50px;
}
.text-img-box.middle-top-indent{
    margin-top: 116px;
}
.text-img-box.middle-bottom-indent{
    margin-bottom: 54px;
}
.text-img-box.large-bottom-indent{
    margin-bottom: 106px;
}
.text-img-box.next-text-indent{
    margin-bottom: 110px;
}
.dark-bg-box + .text-img-box{
    margin-top: -28px;
}
.has-indent-after-dark-bg{
    margin-top: 102px !important;
}
.text-img-box .col{
    position: relative;
    width: 50%;
    order: 1;
    display: flex;
    justify-content: center;
    flex-direction: column;
}
.text-img-box .higher-index{
    z-index: 10;
}
.text-img-box .align-top{
    align-self: flex-start;
}
.text-img-box .img-col{
    order: 2;
}
.text-img-box.invert .img-col{
    order: 0;
    padding-right: 24px;
}
.text-img-box.invert.centered-text-col .img-col{
    padding-right: 50px;
    padding-top: 52px;
}
.text-img-box.centered-text-col .img-col.no-inner-indent{
    padding-top: 0;
}
.text-img-box .img-col.has-indent{
    padding: 0 24px 0 74px;
}
.text-img-box .img-col.small-right-inner-indent{
    padding-right: 24px;
}
.text-img-box .img-col img{
    align-self: baseline;
    min-height: 1px
}
.text-img-box .img-col .autoplay-video-box{
    width: 100%;
    margin: 32px 0;
}
.text-img-box .align-right img{
    margin-left: auto;
}
.text-img-box .align-right img.large-shadow-negative-indent{
    margin-right: -38px;
    margin-top: 0;
    max-width: calc(100% + 40px);
}
.text-img-box .img-col img.has-shadow{
    margin-left: -2.5%;
    margin-right: -24px;
    max-width: calc(102.5% + 24px);
}
.text-img-box.invert .img-col img.has-shadow{
    margin-left: -24px;
    max-width: calc(100% + 48px);
}
.text-img-box.overstep-bounds img.full-width{
    width: 100%;
}
.text-img-box.invert .img-col img{
    width: auto;
    float: right;
}
.text-img-box.invert .img-col img.small-top-indent{
    margin-top: 32px;
}
.text-img-box .img-col .bg{
    position: absolute;
    z-index: -1;
    left: 0;
    top: 32px;
    width: 2500px;
    bottom: 32px;
}
.text-img-box .text-col{
    padding: 0 32px 0 24px;
}
.text-img-box.invert .text-col{
    padding-left: 40px;
}
.text-img-box.invert.centered-text-col .text-col{
    padding-left: 32px;
}
.text-img-box .text{
    position: relative;
    margin-left: auto;
    max-width: 560px;
    width: 100%;
    padding: 48px 0 50px;
}
.text-img-box.invert .text{
    float: none;
    margin-left: 0;
}
.text-img-box .text.large-width{
    max-width: 700px;
}
.text-img-box .text > *:first-child, .text-img-box .text [data-max-width] > *:first-child{
    margin-top: 0 !important;
}
.text-img-box .text > *:last-child, .text-img-box .text [data-max-width] > *:last-child{
    margin-bottom: 0 !important;
}
.text-img-box .text.has-bg:before, .text-img-box .text-col.has-bg:before{
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: -2390px;
    width: 2500px;
    background: #f4f4f4;
}
.text-img-box .text-col.has-bg:before{
    top: -48px;
    left: -72px;
    bottom: 50%;
    width: 160px;
}
.text-img-box.centered-text-col .text-col.has-bg:before{
    left: -80px;
}
.text-img-box.overstep-bounds .text-col.has-bg:before{
    top: -66px;
}
.text-img-box .text-col.has-bg .text.has-bg:before{
    width: 160px;
    left: -112px;
    bottom: -13px;
}

.text-img-box.after-separator .text-col.has-bg:before{
    top: -120px;
}

.text-img-box.overstep-bounds .text-col.has-bg .text.has-bg:before{
    bottom: -69px;
}
.text-img-box.overstep-bounds .title-bg-line:before{
    display: none;
}
.text-img-box h3{
    margin-bottom: 32px;
}
.text-img-box .negative-left-position{
    transform: translate3d(-34px, 0, 0);
}
.text-img-box .negative-right-position{
    transform: translate3d(34px, 0, 0);
}
.text-img-box + .text-top-tablet-indent{
    margin-top: 48px;
}
.after-text-img-top-indent{
    margin-top: 140px;
}
/*Rare text img box*/
.ghp-rare-text-img-box1{
    margin-top: -170px !important;
}
/*Rare images*/
.ghp-rare-img1{
    position: relative;
    z-index: 2;
    margin-top: -21% !important;
    margin-left: 11% !important;
}
.ghp-rare-img2{
    position: relative;
    z-index: 2;
    margin-bottom: 0 !important;
}
.ghp-rare-img3{
    position: relative;
    left: -48px;
    margin-top: 0 !important;
}
.ghp-rare-img4{
    position: relative;
    z-index: 1;
    margin-bottom: 0 !important;
}
.ghp-rare-img5{
    position: relative;
    z-index: 2;
    left: -48px;
    margin-top: -8.5% !important;
}
.ie .ghp-rare-img2, .ie .ghp-rare-img5{
    align-self: flex-end !important;
}
/*Last image box*/
.last-image-box{
    margin: 54px 0 0;
}
.last-image-box img{
    margin: 0;
}
.last-image-box + .container{
    padding-top: 0;
}
.last-image-box + .container > .case-project-link{
    margin-top: 0;
}
/*Case project link*/
.case-project-link{
    position: relative;
    padding: 58px 16px 60px;
    margin: 104px -24px 151px;
    text-align: center;
    background: #f4f4f4;
}
.case-project-link:before{
    content: 'WWW';
    position: absolute;
    z-index: 1;
    left: 50%;
    top: 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 198px;
    line-height: 1em;
    color: #fff;
    margin: 0 0 0 -351px;
    text-shadow: 0 20px 30px rgba(0, 0, 0, .03);
}
.case-project-link *{
    position: relative;
    z-index: 2;
}
.case-project-link p{
    margin: 0 0 14px;
}
.case-project-link a{
    display: inline-block;
    vertical-align: top;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 28px;
    line-height: 1em;
    padding-bottom: 7px;
    border-color: #000;
}
.no-touchevents .case-project-link a:hover{
    color: #000;
    opacity: .5;
}
/*Similar projects*/
.similar-projects{
    position: relative;
    text-align: center;
    padding: 62px 0 0;
    margin: 104px auto 132px;
    max-width: 1442px;
}
.similar-projects:before{
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: -70px;
    left: 50%;
    width: 160px;
    margin: 0 0 0 -80px;
    background: #f4f4f4;
}
.similar-projects h2{
    margin: 0 0 59px;
}
.similar-projects .projects-box{
    font-size: 0;
    margin: 0 -2.21914008321775%;
}
.similar-projects .project-col{
    display: inline-block;
    vertical-align: top;
    width: 50%;
    padding: 0 2.21914008321775%;
    margin: 0 0 60px;
}
.similar-projects .project-col:last-child, .similar-projects .project-col:nth-last-child(2){
    margin-bottom: 0;
}
.similar-projects .project{
    position: relative;
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
    font-size: 24px;
    line-height: 1.25em;
    text-align: left;
    border: none;
}
.similar-projects .project-col:nth-child(even) .project{
    text-align: right;
}
.no-touchevents .similar-projects .project:hover{
    color: #000;
}
.similar-projects .project .bg{
    height: 207px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
.no-touchevents .similar-projects .project:hover .bg{
    transform: scale(.95);
}
.similar-projects .project .title{
    position: relative;
    z-index: 2;
    margin: -18px 0 0 14%;
}
.similar-projects .project-col:nth-child(even) .project .title{
    margin: -18px 14% 0 0;
}
/*Asb box*/
.asb-box{
    position: relative;
    display: flex;
    align-items: center;
    font-weight: 300;
    font-size: 24px;
    line-height: 1.625em;
    text-align: center;
    height: 470px;
    margin: 288px -24px 0;
    padding: 0 24px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.case-project-link + .asb-box{
    margin-top: -148px;
}
.no-touchevents .asb-box{
    background-attachment: fixed;
}
.ie .asb-box, .edge .asb-box{
    background-attachment: scroll;
}
.asb-box .max-w{
    max-width: 660px;
    margin: 0 auto;
}
.asb-box a{
    padding-top: 10px;
}
.asb-box a, .no-touchevents .asb-box a:hover{
    color: #4d4d4d;
}
/*Daria usova design box*/
.daria-usova-design-box{
    margin: 44px 0;
    padding: 80px 0 !important;
    background: #fff url("../i/daria-usova-design-box-bg.gif") repeat 100% 100%;
    background-position: 50% 0;
}
/*Cookies*/
.cookie-box{
    position: fixed;
    z-index: 1000;
    left: 0;
    bottom: 0;
    font-size: 12px;
    line-height: 1.333333333333333em;
    color: #fff;
    padding: 11px 16px 13px;
    width: 100%;
    min-width: 320px;
    background: rgba(36, 36, 36, .8);
}
.cookie-box .container{
    padding: 0 160px 0 0;
    max-width: 824px;
}
.cookie-box p{
    margin: 0;
}
.cookie-box a{
    color: #fff;
    border-color: #939393;
}
.cookie-box .ok{
    position: absolute;
    right: 0;
    top: 3px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 14px;
    line-height: 24px;
    text-align: center;
    color: #fff;
    width: 124px;
    height: 28px;
    border: 2px solid #f5ea38;
    cursor: pointer;
}
.no-touchevents .cookie-box .ok:hover{
    color: #000;
    background: #f5ea38;
}
.cookie-controls{
    margin: 69px auto 16px;
    max-width: 980px;
}
.cookie-controls .item{
    margin: 0 0 70px;
}
.cookie-controls .item:last-child{
    margin: 0;
}
.cookie-controls .checkbox-item{
    margin: 0 0 35px;
}
.cookie-controls .item p:last-child{
    margin-bottom: 0;
}
.cookie-controls .usual-max-w{
    max-width: 816px;
}
/*_______*/
/*404*/
.error-page #ajax-upload{
    padding-bottom: 0;
}
#error-page-box{
    text-align: center;
    margin: 70px 0;
    min-width: 286px;
}
#error-page-box .num{
    font-size: 225px;
    line-height: 1em;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 34px;
}
#error-page-box .circle-video{
    position: relative;
    top: -3px;
    width: 271px;
    height: 271px;
    border-radius: 110%;
    margin: 0 28px;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
#error-page-box .circle-video video, #error-page-box .circle-video .touch-gif{
    position: absolute;
    left: 50%;
    top: -5px;
    height: 281px;
    margin: 0;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}
#error-page-box .circle-video .touch-gif{
    max-width: none;
    height: 100%;
    top: 0;
    min-width: 100%;
    /*max-width: 100%;
    height: auto;
    min-height: 110%;*/
}
.no-touchevents #error-page-box .circle-video .touch-gif, .touchevents #error-page-box .circle-video video{
    display: none;
}
/*Popup*/
#popup-box{
    position: fixed;
    z-index: 10001;
    top: 0;
    left: 0;
    width: 100%;
    max-height: 100%;
    overflow: hidden;
    overflow-y: auto;
    background: #fff;
    padding: 195px 0 0;
    -webkit-box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .05);
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .05);
    -webkit-transform: translate3d(0, -105%, 0);
    transform: translate3d(0, -105%, 0);
}
#popup-box .popup{
    display: none;
}
#popup-box .container{
    max-width: 1248px;
    margin-bottom: 100px;
}
#popup-box .h1{
    font-weight: 300;
    letter-spacing: 0;
}
#popup-box .important-text{
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
#popup-box [data-max-width]{
    margin: 0 auto;
}
#popup-box h5{
    margin-top: 61px;
}
#popup-box .contacts-box{
    margin: 92px 0 0;
}
#popup-box .contacts{
    display: block;
    text-align: center;
    margin: 0 auto;
    max-width: none;
}
#popup-box .contacts .separator{
    margin: 8px 11px 0 13px;
    display: inline-block;
    vertical-align: top;
    width: 17px;
    height: 27px;
    background: url("../i/separator.svg") no-repeat 0 0/100% auto;
}
#popup-box .js-close-popup-box{
    position: absolute;
    z-index: 100;
    left: 0;
    width: 100%;
    max-width: 100%;
    top: 67px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
#popup-box .js-close-popup-box.sticky{
    top: 4px;
}
#popup-box .js-close-popup-box .max-w{
    position: relative;
    max-width: 1340px;
    margin: 0 auto;
}
#popup-box .js-close-popup{
    position: absolute;
    top: 0;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    margin: 0 0 0 -35px;
    border: 2px solid #f3f3f3;
    border-radius: 110%;
    cursor: pointer;
}
#popup-box .js-close-popup-box.sticky .js-close-popup{
    left: auto;
    right: 4px;
    top: 0;
    background: rgba(255, 255, 255, .7);
}
#popup-box .js-close-popup .circle{
    position: absolute;
    z-index: 1;
    top: -2px;
    left: -2px;
    display: block;
    right: -2px;
    bottom: -2px;
    border-radius: 110%;
}
.touchevents #popup-box .js-close-popup .circle{
    display: none;
}
#popup-box .js-close-popup .circle:after{
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    right: 2px;
    bottom: 2px;
    border-radius: 110%;
    background: #fff;
}
#popup-box .js-close-popup .circle span{
    position: absolute;
    width: 50%;
    height: 100%;
    overflow: hidden;
}
#popup-box .js-close-popup .circle span em{
    position: absolute;
    border-radius: 999px;
    width: 100%;
    height: 100%;
    background: #b7b7b7;
    transition: transform .2s linear;
}
#popup-box .js-close-popup .circle span:first-child{
    left: 0;
}
#popup-box .js-close-popup .circle span:first-child em{
    left: 100%;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    transform-origin: 0% 50%;
}
#popup-box .js-close-popup .circle span:last-child{
    left: 50%;
}
#popup-box .js-close-popup .circle span:last-child em{
    left: -100%;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    transform-origin: 100% 50%;
    transition-delay: .2s;
}
.no-touchevents #popup-box .js-close-popup:hover .circle span:first-child em{
    transform: rotate(-180deg);
    transition: transform .4s ease-out;
    transition-delay: .2s;
}
.no-touchevents #popup-box .js-close-popup:hover .circle span:last-child em{
    transform: rotate(-180deg);
    transition: transform .2s linear;
}
#popup-box .js-close-popup svg{
    position: relative;
    z-index: 4;
}
.no-touchevents #popup-box .js-close-popup:hover svg *{
    fill: #8f8e8e;
}
/*Ebrr popup*/
.ebrr-popup{
    display: block;
    position: relative;
}
.ebrr-popup:before{
    content: attr(data-bg-text);
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    top: 45%;
    font-weight: 700;
    font-size: 400px;
    line-height: 1em;
    color: #fff;
    text-align: center;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    text-shadow: 0 20px 30px rgba(0, 0, 0, .03);
    pointer-events: none;
}


/*PWA landing*/
.landing-page{

}
.landing-page #all{
    padding-top: 0;
}
.landing-page.no-touchevents a:hover{
    border-bottom-color: transparent !important;
}



.landing-page.sticky-header #header{
    padding: 24px 0;
    background: rgba(255, 255, 255, .95);
    box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
}
.landing-page #header .container{
    display: flex;
    justify-content: space-between;
}
.landing-page #header #logo{
    float: none;
}
.landing-page.sticky-header #header #logo{
    opacity: 1;
    visibility: visible;
}



#header .contacts-links{
    display: flex;
    flex-wrap: wrap;
    font-weight: 500;
    font-size: 18px;
    line-height: 1em;
    margin-left: auto;
    padding: 3px 0 0;
}
#header .contacts-links span{
    display: block;
    margin: 0 0 0 28px;
}
#header .contacts-links a{
    border-color: #000;
}


/*Pwa main screen*/
#pwa-main-screen{
    position: relative;
    z-index: 10;
    display: table;
    table-layout: fixed;
    width: 100%;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 46px;
    line-height: 1.391304347826087em;
    letter-spacing: .03em;
    color: #000;
    margin: 0 0 92px;
}
#pwa-main-screen.view2{
    font-size: 22px;
    line-height: 1.727272727272727em;
}
#pwa-main-screen .align-m{
    position: relative;
    height: 100vh;
}
#pwa-main-screen .container{
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: auto;
}
#pwa-main-screen .text-box{
    position: relative;
    z-index: 2;
    width: 50%;
    padding: 160px 22px 160px 0;
}
#pwa-main-screen p{
    margin: 0;
}
#pwa-main-screen .title{
    font-weight: 700;
    font-size: 38px;
    line-height: 1.315789473684211em;
    margin: 29px 0;
    max-width: 480px;
}
#pwa-main-screen.eng .title{
    max-width: 510px;
}
#pwa-main-screen .text-box strong{
    display: block;
    margin-top: 8px;
}
#pwa-main-screen.view2 strong{
    margin: 0;
}
.bottom-text-line .line{
    position: relative;
    display: inline-block;
}
.bottom-text-line .line:before{
    content: '';
    position: absolute;
    z-index: -1;
    height: 8px;
    left: -6px;
    right: -6px;
    bottom: 7px;
    background: #f5ea38;
}
#pwa-main-screen:not(.view2) .bottom-text-line .line:before{
    height: 16px;
    left: -16px;
    right: -16px;
    bottom: 15px;
}
#pwa-main-screen .bg-box{
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50%;
    height: 100vh;
    min-height: 550px;
    padding-left: 14px;
    opacity: 0;
    transition: opacity 1.5s ease .5s;
}
.ios #pwa-main-screen .bg-box{
    max-height: 500px;
}
#pwa-main-screen .sub-video-box{
    width: 120%;
    margin: 0 -20% 0 0;
}
#pwa-main-screen .bg-box.visible{
    opacity: 1;
}
#pwa-main-screen .bg-box:not(.has-video) img{
    position: relative;
    z-index: 2;
    margin: 0;
    top: 160px;
    max-height: 90%;
    max-width: 61%;
}
#pwa-main-screen .bg-box:not(.has-video) img:last-child{
    z-index: 1;
    top: -180px;
    margin: 0 0 0 -44px;
    max-height: 80%;
    max-width: 43.6%;
}
.pwa-intro-video{
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    background: #000;
}
.pwa-intro-video .js-video{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.pwa-intro-video .js-video:before{
    display: none;
}
.pwa-intro-video .js-video:after{
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    margin: 0;
    width: 14.40922190201729%;
    height: 25.61544757033248%;
    background: rgba(255, 255, 255, .7) url("../pwa-i/play-btn-arrow.svg") no-repeat 60% 50%/34.68468468468468% 47.74774774774775%;
    border-radius: 110%;
    transform: translate3d(-50%, -50%, 0);
}
.no-touchevents .pwa-intro-video .js-video:hover:after{
    transform:  translate3d(-50%, -50%, 0) scale(1.1);
}
.how-it-works{
    font-weight: 800;
    font-size: 14px;
    line-height: 1.2em;
    text-align: center;
    text-transform: uppercase;
    color: #484848;
    margin: 0 0 142px;
}
.how-it-works a{
    display: inline-block;
    vertical-align: top;
    border: none;
}
.how-it-works svg{
    display: block;
    margin: 20px auto 0;
    opacity: .5;
}
#pwa-main-screen .how-it-works{
    position: absolute;
    z-index: 50;
    left: 50%;
    bottom: 24px;
    width: 300px;
    margin: 0 0 0 -150px;
}

.no-touchevents #pwa-main-screen .how-it-works a:hover svg{
    -webkit-animation: arrowAnimate .8s linear infinite;
    -ms-animation: arrowAnimate .8s linear infinite;
    animation: arrowAnimate .8s linear infinite;
}
@-webkit-keyframes arrowAnimate{
    0%{
        -webkit-transform: translate3d(0, 0, 0);
    }
    25%{
        -webkit-transform: translate3d(0, 5px, 0);
    }
    75%{
        -webkit-transform: translate3d(0, -5px, 0);
    }
    100%{
        -webkit-transform: translate3d(0, 0, 0);
    }
}
@-ms-keyframes arrowAnimate{
    0%{
        -ms-transform: translate3d(0, 0, 0);
    }
    25%{
        -ms-transform: translate3d(0, 5px, 0);
    }
    75%{
        -ms-transform: translate3d(0, -5px, 0);
    }
    100%{
        -ms-transform: translate3d(0, 0, 0);
    }
}
@keyframes arrowAnimate{
    0%{
        transform: translate3d(0, 0, 0);
    }
    25%{
        transform: translate3d(0, 5px, 0);
    }
    75%{
        transform: translate3d(0, -5px, 0);
    }
    100%{
        transform: translate3d(0, 0, 0);
    }
}
/*Pwa content*/
#pwa-landing-content{
    padding-top: 1px;
    margin-bottom: 124px;
}
.sub-h3{
    font-size: 26px;
}
.layout-grid .sub-h3{
    margin: 0 0 41px;
    padding-top: 4px;
}

#pwa-landing-content .layout-grid + .layout-grid.has-bg{
    margin-top: 106px !important;
}
#pwa-landing-content .layout-grid.half-bg-width:before{
    left: 47.5%;
}
.two-cols-grid-bg{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    margin: 80px 0;
}
.two-cols-grid-bg .bg:before{
    content: '';
    position: absolute;
    z-index: -2;
    right: 0;
    top: 0;
    bottom: 0;
    width: 2500px;
    background: #f4f4f4;
}
.two-cols-grid-bg .col{
    position: relative;
    width: 50%;
    padding: 20px 32px 26px 0;
}
.two-cols-grid-bg .col:last-child{
    padding: 26px 0 26px 32px;
}
.two-cols-grid-bg .col:last-child:before{
    left: 0;
}
[data-bg-text]:before{
    content: attr(data-bg-text);
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 50%;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 160px;
    line-height: 1em;
    color: #fff;
    text-shadow: 0 20px 30px rgba(0, 0, 0, .03);
    transform: translateX(-50%) translateY(-50%);
}
.two-cols-grid-bg[data-bg-text]:before{
    top: auto;
    bottom: -55px;
    transform: translateX(-50%) translateY(0);
}
.two-cols-grid-bg[data-bg-text]{
    margin-bottom: 179px;
}
.two-cols-grid-bg.in-case[data-bg-text]{
    margin-bottom: 120px;
}
.boost-sales-box{
    margin: 80px 0 40px;
}
.rare-title{
    font-family: 'Montserrat', sans-serif;
    font-size: 40px;
    line-height: 1.7em;
    color: #000;
    margin: 0 auto 40px;
}
.rare-title .bottom-text-line{
    font-weight: 700;
    color: #4d4d4d;
}
.rare-title .bottom-text-line .line:before{
    bottom: 17px;
}
.rare-title .sub-text{
    display: block;
    font-weight: 300;
}

.boost-sales-list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 40px -16px;
}
.boost-sales-list .col{
    text-align: center;
    width: 33.333333%;
    padding: 0 24px;
    margin: 0 0 72px;
    max-width: 340px;
}
.boost-sales-list .col > *:first-child{
    margin-top: 0;
}
.boost-sales-list .col > *:last-child{
    margin-bottom: 0;
}
.boost-sales-list .title{
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.333333333333333em;
    color: #000;
    margin: 0 0 29px;
}
.boost-sales-list .title .line:before{
    bottom: 5px;
}
.pwa-checkbox{
    margin: -12px 0 0;
}
/*Questions grid box*/
.questions-grid-box{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    margin: 100px 0 0;
}
.questions-grid-box .col{
    position: relative;
    width: 50%;
    padding-right: 48px;
}
.questions-grid-box .col:nth-child(even){
    padding: 0 0 0 34px;
    width: calc(50% + 40px);
    margin-right: -40px;
}
.questions-grid-box .col:first-child:before{
    content: '';
    position: absolute;
    z-index: -1;
    top: -26px;
    bottom: -24px;
    width: 2500px;
    left: -2356px;
    background: #f4f4f4;
}

.questions-grid-box h3, .questions-grid-box .h3{
    margin-top: 0;
}
/*Advantages box*/
.advantages-box.principles{
    margin: 80px 0;
}
.advantages-box.principles.in-case{
    margin: 148px 0 180px;
}
.advantages-box .without-network-item:before{
    height: 184px;
    top: 22px;
    left: -1500px;
    right: 125px;
}
.advantages-box .without-network-item .bg{
    top: -24px;
    left: 57%;
    transform: translateX(-50%);
}

.advantages-box .fast-loading-item:before{
    height: 165px;
    width: 571px;
    top: 22px;
    left: 50%;
    margin-left: -286px;
    transform: skew(-15deg);
}
.advantages-box .fast-loading-item .bg{
    top: -46px;
    left: 38%;
    transform: translateX(-50%);
}


.advantages-box .easier-to-promote-item:before, .advantages-box .influence-seo-item:before{
    height: 184px;
    top: 22px;
    left: -1500px;
    right: -190px;
}
.advantages-box .easier-to-promote-item .bg, .advantages-box .influence-seo-item .bg{
    top: -30px;
    left: 60.5%;
    transform: translateX(-50%);
}


.advantages-box .item .separator-line{
    margin-top: 100px;
}
.advantages-box .without-network-item .separator-line{
    margin-bottom: 80px;
}
.advantages-box .fast-loading-item .separator-line{
    margin-bottom: 80px;
}
.advantages-box .easier-to-promote-item .separator-line, .advantages-box .influence-seo-item .separator-line{
    margin-top: 130px;
}

.important-text .bottom-text-line{
    display: block;
}
.important-text .bottom-text-line .line:before{
    bottom: 7px;
    left: -12px;
    right: -12px;
}

/*Brands pwa results box*/
.no-touchevents .brands-pwa-results-box .bg-box{
    background-attachment: fixed;
}
.brands-pwa-results-box{
    margin: 0 0 83px;
}
.brands-pwa-results-box .bg-box{
    padding: 111px 24px 162px;
    margin: -127px -24px 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.brands-pwa-results-grid{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    max-width: 1232px;
    margin: 0 auto -54px;
}
.brands-pwa-results-grid .col{
    width: calc(25% + 12px);
    padding-right: 48px;
    margin: 0 0 54px;
}
.brands-pwa-results-grid .col:nth-child(4n){
    width: calc(25% - 36px);
    padding-right: 0;
}
.brands-pwa-results-grid .col > *:last-child{
    margin-bottom: 0;
}
.brands-pwa-results-grid .brand{
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 32px;
    line-height: 1.4em;
    margin-bottom: 30px;
}
/*Content form*/
.content-form-box{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 956px;
    margin: 162px 0 120px 5.9%;
}
.content-form-box .text{
    width: calc(100% - 342px);
    padding-right: 54px;
    max-width: 500px;
}
.content-form-box .h3{
    margin: 0 0 16px;
}
.content-form-box .form{
    width: 342px;
    margin: 14px 0 0;
    max-width: 100%;
}
.content-form-box .form .btn-box{
    border: none;
    padding-left: 0;
}
.content-form-box .form .btn-box .btn{
    float: none;
    width: auto;
    min-width: 0;
    padding-left: 0;
    padding-right: 0;
    margin: 0;
}
.content-form-box[data-bg-text]:before{
    font-size: 340px;
    line-height: 1em;
    letter-spacing: .03em;
    left: 54%;
    top: auto;
    bottom: -114px;
    transform: translateY(0) translateX(-50%);
}

.content-form-box + .rare-title{
    margin-top: 245px;
}

/*Compare table*/
.compare-box{
    margin: 163px 0;
}
.compare-box + .separator-line{
    margin-top: -14px;
}
.compare-box .h3{
    margin: 0 0 30px -30px;
}
.compare-table{
    position: relative;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 2em;
    max-width: 1024px;
}
.compare-table:before{
    content: '';
    position: absolute;
    z-index: -1;
    left: -88px;
    top: 4px;
    width: 174px;
    height: 317px;
    background: url("../pwa-i/compare-table-icon.png") no-repeat 0 0;
}
.compare-table .row{
    display: flex;
    flex-wrap: wrap;
}
.compare-table .col{
    flex-grow: 1;
    padding: 16px 8px;
}
.compare-table .col.text{
    width: 48.8%;
    max-width: 48.8%;
    min-width: 48.8%;
    padding-right: 5%;
    padding-left: 0;
}
.compare-table .col.text p{
    max-width: 428px;
}
.compare-table .col.pwa{
    width: 140px;
    max-width: 140px;
    min-width: 140px;
}
.compare-table .col:not(.text){
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    line-height: 0;
    border-bottom: 1px solid #f4f4f4;
}
.compare-table .row:last-child .col:not(.text){
    border: none;
}
.compare-table p{
    margin: 0;
}
.compare-table .head{
    flex-wrap: nowrap;
    font-size: 24px;
    color: #1d1d1d;
    margin: 0 0 4px 48.8%;
    justify-content: flex-end;
    -webkit-box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .03);
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .03);
}
.compare-table .head .col{
    padding-top: 22px;
    padding-bottom: 22px;
    line-height: 1.419em;
    border: none;
}

.landing-page #footer .phones p:last-child{
    margin: 0;
}

/*Pwa steps*/
.pwa-steps-box{
    margin-top: 248px;
}
.pwa-steps{
    margin: -42px 0 110px;
}
.pwa-steps.in-case{
    margin-top: -10px;
}
.pwa-steps .step-item{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 0 -90px;
}
.pwa-steps .step-item:last-child{
    margin: 0;
}
.pwa-steps .img-box{
    position: relative;
    width: 50%;
    padding: 80px 48px 0 0;
}
.pwa-steps:not(.invert) .step-item:nth-child(even) .img-box, .pwa-steps.invert .step-item:nth-child(odd) .img-box{
    order: 2;
    padding: 80px 0 0 48px;
}
.pwa-steps .img-box img{
    margin: 0;
}
.pwa-steps .img-box .arrow{
    position: absolute;
    top: 55%;
    left: -106px;
    transform: translateY(-50%);
}
.pwa-steps .text{
    position: relative;
    width: 50%;
    padding: 0 0 0 34px;
    min-height: 120px;
}
.pwa-steps:not(.invert) .step-item:nth-child(even) .text, .pwa-steps.invert .step-item:nth-child(odd) .text{
    order: 1;
    padding: 0 34px 0 0;
}
.pwa-steps .text > *:last-child{
    margin-bottom: 0;
}
.pwa-steps .text .h3{
    margin: 0 0 16px -34px;
}
.pwa-steps .text p{
    max-width: 480px;
}
.pwa-steps a{
    color: #1d1d1d;
}
.pwa-steps .text:before{
    content: '';
    position: absolute;
    z-index: -2;
    left: -118%;
    top: 18px;
    bottom: -50px;
    min-height: 110px;
    width: 2500px;
    background: #f4f4f4;
}
.pwa-steps:not(.invert) .step-item:nth-child(even) .text:before, .pwa-steps.invert .step-item:nth-child(odd) .text:before{
    left: auto;
    right: -118%;
}
.pwa-steps.invert .step-item:nth-child(3n) .text{
    min-height: 252px;
}
.pwa-steps .step-item:nth-child(3n) .text:before, .pwa-steps.invert .step-item:nth-child(3n) .text:before{
    left: -2500px;
    right: -2500px;
    width: auto;
}
.pwa-steps .text:after{
    content: attr(data-num);
    position: absolute;
    z-index: -1;
    bottom: -174px;
    right: calc(100% + 40px);
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 250px;
    line-height: 1em;
    color: #fff;
    width: 320px;
    text-shadow: 0 20px 30px rgba(0, 0, 0, .03);
}
.pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
    right: 40px;
}
/*===========================FOOTER============================*/
#footer{
    position: relative;
    z-index: 2;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.4em;
    color: #000;
    overflow: hidden;
}
#footer .container{
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    padding-top: 40px;
    padding-bottom: 82px;
}
#footer .container:after{
    display: none;
}
#footer a{
    border: none;
}
.no-touchevents #footer a:hover{
    color: #9d9d9d;
}
#footer .mail{
    margin-right: 54px;
}
#footer .mail .bg-line{
    top: 40px;
}
#footer .phones p{
    display: inline-block;
    vertical-align: top;
    margin: 0 30px 0 0;
}
#footer .social-links{
    margin: -5px 0 0;
}
#footer .sub-link{
    position: absolute;
    z-index: 11;
    left: 50%;
    bottom: 4px;
    font-size: 13px;
    line-height: 1em;
    letter-spacing: 0;
    color: #9b9a9a;
    padding-bottom: 12px;
    margin: 0 0 0 -40px;
}
.no-touchevents #footer .sub-link:hover{
    color: #000;
}
#footer .sub-link:after{
    content: '';
    position: absolute;
    left: 0;
    bottom: -7px;
    height: 8px;
    width: 100%;
    background: #d0d0d0;
}
.no-touchevents #footer .sub-link:hover:after{
    background: #f5ea38;
}
/*========================END OF FOOTER========================*/

/*=========================TRANSITIONS=========================*/
.no-touchevents a, .no-touchevents .btn, .no-touchevents .btn:after, .no-touchevents #js-open-nav:before, .no-touchevents #js-open-nav:after, .no-touchevents .js-video:after, .no-touchevents .developers .slick-arrow:before, .field .sub-box:after, .no-touchevents .social-links a:before, .no-touchevents .cookie-box .ok, .no-touchevents #footer .sub-link:after, .no-touchevents #nav a:after, #js-open-nav, #nav-box .langs, .no-touchevents #js-open-nav .btn-lines:before, .no-touchevents #js-open-nav .btn-lines:after, .no-touchevents .awards-list .item p, .no-touchevents .lg-icon:after, .no-touchevents .more-link:after, .no-touchevents #popup-box .js-close-popup svg *, .no-touchevents .project-awards .item-award a img{
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
/**/
/*Resolutions*/
@media screen and (max-width: 1620px){
    /*In numbers*/
    .in-numbers .layout-grid:after{
        top: -140px;
        font-size: 340px;
    }
}
@media screen and (max-width: 1440px){
    /*Fixed bg box*/
    .fixed-bg-box{
        padding-bottom: 36.1%;
        margin: 32px -24px;
        height: auto;
        min-height: 230px;
        max-width: 1480px;
    }
    /*Text image box*/
    .text-img-box.overstep-bounds .text-col.has-bg .text.has-bg:before{
        bottom: -13px;
    }
    /*Rare text img box*/
    .ghp-rare-text-img-box1{
        margin-top: -11% !important;
    }
    /*Pwa*/
    #pwa-main-screen .sub-video-box{
        width: 110%;
        margin: 0 -10% 0 0;
    }
}
@media screen and (max-width: 1400px){
    /*Text image box*/
    .text-img-box.frame-separator{
        margin-top: -130px;
        margin-bottom: -130px;
    }
    /*Pwa steps*/
    .pwa-steps .img-box .arrow{
        display: none;
    }
}
@media screen and (max-width: 1360px){
    /*In numbers*/
    .in-numbers .layout-grid:after{
        top: -120px;
        font-size: 300px;
    }
}

@media screen and (max-width: 1320px){
    blockquote:before{
        left: 90px;
    }
    blockquote .text{
        padding: 0 30px 0 56px;
    }
    blockquote .text:before{
        left: 0;
    }
    /**/
    .title-bg-line, .negative-title-indent{
        margin-left: -24px;
    }
    /*Text image box*/
    .text-img-box.invert.centered-text-col .text-col{
        padding-left: 24px;
    }
    .invert.centered-text-col.text-img-box .text-col.has-bg .text.has-bg:before{
        left: -104px;
    }
    .text-img-box + .text-top-tablet-indent{
        margin-top: 72px;
    }
    .text-img-box .negative-left-position, .text-img-box .negative-right-position{
        transform: translate3d(0, 0, 0);
    }
    /*Last image box*/
    .last-image-box{
        margin: 48px 0 0;
    }
    /*Developers box*/
    .developers .slick-arrow{
        left: 0;
    }
    .developers .slick-next{
        left: auto;
        right: 0;
    }
    .no-touchevents .developers .slick-arrow:hover:before{
        left: 0;
    }
    /*Principles*/
    .principles .item:nth-child(even) .info{
        padding-left: 24px;
    }
    /*Technologies stack*/
    .technologies-list{
        max-width: 900px;
        margin-left: auto;
        margin-right: auto;
        padding-left: 10%;
    }
    .technologies-list .item{
        width: 50%;
    }
    /*Compare table*/
    .compare-box .h3{
        margin: 0 0 30px;
    }
    /*Steps box*/
    .pwa-steps:not(.invert) .step-item:nth-child(even) .text, .pwa-steps.invert .step-item:nth-child(odd) .text{
        padding: 0 34px 0;
    }
    /*Questions grid box*/
    .questions-grid-box .col:nth-child(even){
        padding: 0 0 0 24px;
        width: 50%;
        margin-right: 0;
    }
    /*Pwa*/
    #pwa-main-screen .sub-video-box{
        width: 100%;
        margin: 0;
    }
}
@media screen and (max-width: 1310px){
    .title-bg-line, .negative-title-indent{
        margin-left: -14px;
    }
    /*Text image box*/
    .text-img-box.invert.centered-text-col .text-col{
        padding-left: 14px;
    }
    .invert.centered-text-col.text-img-box .text-col.has-bg .text.has-bg:before{
        left: -94px;
    }
    /*Principles*/
    .principles .item:nth-child(even) .info{
        padding-left: 14px;
    }
    /*Questions grid box*/
    .questions-grid-box .col:nth-child(even){
        padding: 0 0 0 14px;
    }
}
@media screen and (max-width: 1300px){
    .title-bg-line, .negative-title-indent{
        margin-left: 0;
    }
    /*Text image box*/
    .text-img-box.invert.centered-text-col .text-col{
        padding-left: 0;
    }
    .invert.centered-text-col.text-img-box .text-col.has-bg .text.has-bg:before{
        left: -80px;
    }
    /*Principles*/
    .principles .item:nth-child(even) .info{
        padding-left: 0;
    }
    /*Questions grid box*/
    .questions-grid-box .col:nth-child(even){
        padding: 0;
    }
}
@media screen and (max-width: 1260px){
    /*Top page image*/
    .top-page-image{
        height: auto;
        padding-bottom: 33.5%;
        min-height: 230px;
    }
    .top-page-image.large{
        height: auto;
        padding-bottom: 36.4%;
    }
    /*Text image box*/
    .text-img-box.frame-separator{
        margin-top: -110px;
        margin-bottom: -110px;
    }
}
@media screen and (max-width: 1200px){
    /*In numbers*/
    .in-numbers .layout-grid:after{
        top: -104px;
        font-size: 270px;
    }
    /*Our awards*/
    .our-awards{
        margin: -27px 0 0;
    }
}
@media screen and (max-width: 1180px){
    /*Two cols img*/
    .two-cols-img{
        padding: 0 12px;
    }
    .two-cols-img .img{
        padding: 0 12px;
    }
    /*Pwa steps*/
    .pwa-steps .text:after{
        right: 100%;
    }
    .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        right: 0;
    }
}
@media screen and (max-width: 1140px){
    .large-top-img-indent{
        margin-top: 64px;
    }
    /*Nav*/
    #nav-box .langs{
        padding-left: 18%;
    }
    #nav ul{
        padding: 90px 0 90px 18%;
    }
    /*Developers*/
    .developers img{
        -webkit-transform: translate3d(-60px, 0, 0);
        transform: translate3d(-60px, 0, 0);
    }
    /*Contacts*/
    .contacts .separator{
        margin: 0 0 4px;
        display: block;
        width: 0;
        height: 0;
        line-height: 0;
        background: none;
    }
    /*Pwa main screen*/
    #pwa-main-screen{
        font-size: 40px;
    }
    #pwa-main-screen:not(.view2) .bottom-text-line .line:before{
        height: 14px;
        left: -12px;
        right: -12px;
        bottom: 14px;
    }
    #pwa-main-screen .bg-box:not(.has-video) img{
        top: 130px;
    }
    #pwa-main-screen .bg-box:not(.has-video) img:last-child{
        margin: 0 0 0 -34px;
    }
    /*Pwa*/
    #pwa-main-screen .bg-box.has-video{
        padding-left: 40px;
    }
    /*Content form*/
    .content-form-box{
        margin-left: 0;
    }
}
@media screen and (max-width: 1120px){
    /*Content arrow box*/
    .content-arrow-box .sub-box{
        margin: 0 -24px;
    }
    .content-arrow-box .col, .content-arrow-box .col.sub-info{
        width: 50%;
        padding: 0 24px;
    }
    .content-arrow-box .col.sub-info:before{
        left: -77px;
    }
    /*Text image box*/
    .text-img-box.frame-separator{
        margin-top: -60px;
        margin-bottom: -60px;
    }
    /*Our awards*/
    .awards-list .item-box{
        width: 33.333333333%;
    }
    /*Pwa steps*/
    .pwa-steps .text:after, .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        right: auto;
        left: 0;
        margin: 0 0 0 -160px;
    }
    .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        left: 100%;
        margin: 0 0 0 -320px;
    }
    .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        text-align: right;
    }

    .our-projects .awards{
        top: -8px;
        bottom: auto;
        left: -8px;
    }

}
@media screen and (max-width: 1100px){
    .separator-line + h2.large-top-title-indent{
        margin-top: 122px;
    }
    /*Separator*/
    .technologies-separator{
        margin-top: -24px;
    }
    /*Ajax upload*/
    #ajax-upload{
        padding-bottom: 120px;
    }
    /*Clients poll*/
    .clients-poll{
        margin: 200px 0;
    }
    .clients-poll .awards-box:before{
        bottom: -80px;
        height: 220px;
    }
    /*In numbers*/
    .in-numbers{
        margin: 200px 0;
    }
    /*Our awards*/
    .our-awards{
        margin: -128px 0 0;
    }
    /*In numbers*/
    .in-numbers .layout-grid:after{
        top: -90px;
        font-size: 240px;
    }
    /*Developers*/
    .developers img{
        -webkit-transform: translate3d(-70px, 0, 0);
        transform: translate3d(-70px, 0, 0);
    }
    /*Content form*/
    .content-form-box[data-bg-text]:before{
        left: 46%;
        font-size: 320px;
        bottom: -108px;
    }
}
@media screen and (max-width: 1069px){
    .project-awards-box.large-top-indent{
        margin-top: 140px;
    }
    /*Developers*/
    .developers .slider{
        max-width: 900px;
    }
    .developers img{
        -webkit-transform: translate3d(-50px, 0, 0);
        transform: translate3d(-50px, 0, 0);
    }
    /*Ebrr popup*/
    .ebrr-popup:before{
        font-size: 320px;
    }
}
@media screen and (min-width: 1051px){
    .layout-grid .col.no-left-indent-desktop{
        padding-left: 0;
    }
}
@media screen and (max-width: 1040px){
    /*Principles*/
    .principles{
        margin-bottom: 200px;
    }
    /*Our process*/
    .process-section{
        margin: 200px 0 0;
    }
    /*Asb box*/
    .asb-box{
        display: block;
        height: auto;
        margin: 200px -24px 0;
        padding: 160px 16px;
    }
    /*Pwa landing*/
    #pwa-main-screen .title{
        font-size: 34px;
        margin: 20px 0;
    }
    /*Compare table*/
    .compare-table .head{
        font-size: 21px;
    }
    /*Brands pwa results box*/
    .brands-pwa-results-box .bg-box{
        padding: 110px 24px 132px;
    }
    .brands-pwa-results-grid{
        max-width: 740px;
    }
    .brands-pwa-results-grid .col{
        width: 50% !important;
        padding-right: 32px !important;
    }
    .brands-pwa-results-grid .col:nth-child(2n){
        padding: 0 0 0 32px !important;
    }
    /*Compare table*/
    .compare-box{
        margin: 120px 0;
    }
}
@media screen and (max-width: 980px){
    h2.after-last-img-container{
        margin-top: 72px;
    }
    .title-bg-line{
        margin-top: 140px;
    }
    #all{
        padding: 120px 0 0;
    }
    /*Header*/
    #header{
        padding: 28px 0 0;
    }
    .sticky-header #header{
        padding: 16px 0;
    }
    #js-open-nav{
        top: 25px;
    }
    .sticky-header #js-open-nav{
        top: 14px;
    }
    #nav-box .langs{
        margin-top: 35px;
    }
    .sticky-header #nav-box .langs{
        margin-top: 21px;
    }
    /*Intro text*/
    .main-intro-box{
        margin: 0 0 34px;
    }
    /*Our projects*/
    .our-projects-box{
        margin-bottom: 0;
    }
    /*Top page image*/
    .top-page-image{
        margin-top: -6px;
    }
    /*Clients poll*/
    .clients-poll{
        margin: 180px 0;
    }
    .clients-poll .awards-box:before{
        bottom: -60px;
        height: 200px;
    }
    /*In numbers*/
    .in-numbers{
        margin: 180px 0;
    }
    .in-numbers.middle-bottom-indent{
        margin-bottom: 54px;
    }
    /*Cases*/
    /*Technologies*/
    .front-technologies .img{
        padding: 64px 0 0 10px;
        width: 50%;
    }
    .front-technologies .text{
        padding: 154px 10px 0 0;
        width: 50%;
    }
    /*Text image box*/
    .text-img-box.large-top-indent, .dark-bg-box + .text-img-box.large-top-indent{
        margin-top: 112px;
    }
    .text-img-box.invert .text-col{
        padding-left: 16px;
    }
    .text-img-box .text-col.has-bg:before{
        left: -80px;
    }
    .text-img-box .text-col.has-bg .text.has-bg:before{
        left: -96px;
    }

    .text-img-box .align-right img.large-shadow-negative-indent{
        margin-right: 0;
        max-width: calc(100% + 24px);
    }
    /*Case project link*/
    .case-project-link{
        margin: 84px -24px 128px;
    }
    /*In numbers*/
    .in-numbers .layout-grid:after{
        top: -80px;
        font-size: 220px;
    }
    /*Asb box*/
    .case-project-link + .asb-box{
        margin-top: -125px;
    }
    /*Dark bg box*/
    .dark-bg-box.small-top-tablet-indent{
        margin-top: 48px;
    }
    /*Awards box*/
    .layout-grid.project-awards .col{
        width: 33.333333%;
    }
    /*404*/
    #error-page-box{
        margin: 40px 0;
    }
    /*Footer*/
    #footer .phones p{
        display: block;
        margin: 0 0 14px;
    }
    #footer .phones p:last-child{
        margin: 0;
    }

    /*Pwa landing*/
    .landing-page #header{
        padding: 24px 0;
    }
    #pwa-main-screen{
        margin-bottom: 32px;
    }
    #pwa-main-screen.view2{
        font-size: 20px;
    }
    #pwa-main-screen .align-m{
        padding-top: 120px;
        padding-bottom: 80px;
    }
    #pwa-main-screen .container{
        flex-wrap: wrap;
    }

    #pwa-main-screen .bg-box:not(.has-video) img{
        top: 80px;
    }

    #pwa-main-screen .text-box{
        align-self: center;
        width: 100%;
        max-width: 680px;
        padding: 0 5%;
        margin: 0 0 -20px;
    }
    #pwa-main-screen .title{
        font-size: 30px;
        margin-top: 0;
    }
    #pwa-main-screen.view2 p{
        max-width: 500px;
    }
    #pwa-main-screen .bg-box{
        margin: 0 0 0 auto;
        padding: 0;
        width: 60%;
        max-width: 450px;
        height: auto;
        min-height: 0;
        align-self: center;
    }

    #pwa-main-screen .bg-box.has-video{
        padding: 0;
        margin: 72px auto 0;
        max-width: 580px;
        width: 100%;
    }

    #pwa-main-screen .how-it-works{
        display: none;
    }

    /*Pwa content*/
    #pwa-landing-content{
        margin-bottom: 54px;
    }

    .advantages-box .without-network-item:before{
        right: 32px;
    }
    .advantages-box .without-network-item .bg{
        left: 59%;
        transform: translateX(-50%);
    }

    .advantages-box .easier-to-promote-item .separator-line, .advantages-box .influence-seo-item .separator-line{
        margin-top: 70px;
    }

    .landing-page #footer .phones p{
        display: inline-block;
        margin: 0 30px 0 0;
    }

    /*Pwa steps*/
    .pwa-steps-box{
        margin-top: 180px;
    }
}
@media screen and (max-width: 960px) and (min-width: 860px){
    /*In numbers*/
    .in-numbers.in-content .number{
        font-size: 50px;
        padding: 4px 0 0;
        margin-bottom: 23px;
    }
    .in-numbers.in-content .layout-grid .col{
        padding: 0 14px;
    }
}
@media screen and (max-width: 940px){
    blockquote .text{
        font-size: 22px;
    }
    blockquote .text:before{
        font-size: 54px;
        top: -12px;
    }
    /*Content arrow box*/
    .content-arrow-box{
        margin: 0 auto 110px;
    }
    /*Text image box*/
    .text-img-box .img-col.has-indent{
        padding: 0 24px 0 24px;
    }
    /*Similar projects*/
    .similar-projects .project{
        font-size: 22px;
    }
    .similar-projects .project .title{
        margin: -16px 0 0 10%;
    }
    .similar-projects .project-col:nth-child(even) .project .title{
        margin: -16px 10% 0 0;
    }
    /*Our process*/
    .our-process{
        margin-bottom: 80px;
    }
    .our-process .sub-box{
        display: block;
        max-width: 50%;
        margin: 0;
    }
    .our-process .sub-box .col{
        width: 100%;
        padding: 0;
    }
    .our-process .sub-box .col.sub-info{
        position: relative;
        max-width: none;
        width: 100%;
        padding: 0;
        margin: 32px 0 0;
    }
    .our-process .content-arrow-box .col.sub-info:before{
        top: 0;
        left: 50%;
        margin: -104px 0 0 -71px;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
    }
    .our-process .negative-title-indent{
        max-width: 50% !important;
    }
    /*Contacts*/
    .contacts{
        margin: 71px 0 71px;
    }
    .contacts .social-links a{
        margin: 0 48px 0 0;
    }
}
@media screen and (max-width: 890px){
    h1, .h1{
        font-size: 42px;
        margin: 0 0 36px;
    }
    h2, .h2{
        font-size: 42px;
    }
    .large-top-title-indent, h1 + .large-top-title-indent, .large-top-text-indent{
        margin-top: 100px;
    }
    .title-bg-line.small-top-indent{
        margin-top: 80px;
    }
    .title-bg-line.middle-top-indent{
        margin-top: 80px;
    }
    .title-line:before{
        top: 29px;
        left: -47px;
        right: -47px;
        height: 12px;
    }
    .important-text{
        font-size: 22px;
    }
    h1 + .start-project{
        margin-top: -27px;
    }
    img.style-shadow{
        margin-top: 40px;
    }
    blockquote{
        padding: 40px 0 0;
    }
    blockquote:before{
        left: 80px;
        height: 110px;
    }
    blockquote .text{
        font-size: 19px;
        padding: 0 30px 0 50px;
        width: calc(100% - 200px);
    }
    blockquote .text:before{
        font-size: 50px;
    }
    blockquote .author{
        width: 200px;
        margin: 0;
    }
    #author-mask{
        width: 200px;
        height: 143px;
    }
    .isolated-bg-line{
        padding: 48px 0;
        margin: 72px auto 48px;
    }
    /*Center position box*/
    .large-center-box-top-indent{
        margin-top: 120px;
    }
    /*Form styles*/
    h2 + .form, .form-title + .form{
        margin-top: 60px;
    }
    /*Intro text*/
    .main-intro-box .title{
        font-size: 42px;
    }
    .main-intro-box{
        max-width: 700px;
    }
    /*Separator line*/
    .separator-line.large-top-indent{
        margin-top: 100px;
    }
    .separator-line.large-bottom-indent{
        margin-bottom: 100px;
    }
    /*Text image box*/
    .ie .text-img-box .img-col{
        min-width: 100% !important;
    }
    .text-img-box.early-mobile, .text-img-box.frame-separator{
        flex-flow: row wrap;
        margin: 70px 0 24px;
    }
    .text-img-box.middle-top-indent{
        margin-top: 70px;
    }
    .text-img-box.large-top-indent-mobile-after-text{
        margin-top: 120px;
    }
    .text-img-box.frame-separator{
        margin-bottom: -24px;
    }
    .text-img-box.not-top-indent-early-mobile{
        margin-top: -32px !important;
    }
    .text-img-box.overstep-bounds{
        margin-top: 70px;
        margin-bottom: -24px;
    }
    .text-img-box.middle-bottom-indent{
        margin-bottom: 54px;
    }
    .text-img-box.next-text-indent{
        margin-bottom: 90px;
    }
    .text-img-box.negative-img-indent{
        margin-top: -72px;
        margin-bottom: 0;
    }
    .text-img-box.early-mobile .img-col{
        order: 0;
        width: 100%;
        margin: 0 0 32px;
    }
    .text-img-box.negative-img-indent .img-col{
        margin-bottom: -16px;
    }
    .text-img-box.invert.centered-text-col .img-col{
        padding-right: 32px;
    }
    .text-img-box.invert.centered-text-col.overstep-bounds .img-col{
        padding: 0;
    }
    .text-img-box.early-mobile .img-col.align-right{
        padding: 0;
    }
    .text-img-box.early-mobile .img-col.full-width-mobile{
        margin-left: -24px;
        margin-right: -24px;
        width: auto;
        padding: 0;
    }
    .text-img-box.early-mobile .img-col.max-width-mobile{
        margin: 0 auto 42px;
        max-width: 600px;
    }
    .text-img-box.early-mobile .img-col.auto-width-mobile{
        margin-left: auto;
        margin-right: auto;
    }
    .text-img-box.early-mobile .img-col.video-col{
        width: 100%;
    }
    .text-img-box.early-mobile .img-col .autoplay-video-box{
        margin: 0;
    }
    .text-img-box.early-mobile .img-col img, .text-img-box.early-mobile .img-col img.small-top-indent{
        margin: 0 auto;
    }
    .text-img-box.early-mobile .img-col img.has-shadow, .text-img-box.invert.early-mobile .img-col img.has-shadow{
        margin-left: auto;
        margin-right: auto;
        margin-bottom: -14px;
        max-width: 100%;
    }
    .text-img-box .img-col.negative-bottom-indent-mobile{
        margin-bottom: 16px;
    }
    .text-img-box .img-col .bg.hide-mobile{
        display: none;
    }
    .text-img-box .align-right img.large-shadow-negative-indent{
        margin-right: 0 !important;
        margin-left: -32px !important;
        margin-bottom: -24px !important;
        max-width: calc(100% + 60px) !important;
    }
    .text-img-box.early-mobile .text-col, .text-img-box.invert.early-mobile .text-col{
        width: 100%;
        padding: 0;
    }
    .text-img-box.early-mobile .text, .text-img-box.early-mobile [data-max-width]{
        max-width: none !important;
    }
    .text-img-box.early-mobile .text{
        padding: 0 0 32px;
    }
    .text-img-box.early-mobile.has-bg:before{
        display: none;
    }
    .text-img-box.early-mobile .text.has-bg:before{
        top: -80px;
    }
    .text-img-box.early-mobile.has-bg .text.has-bg:before{
        display: block;
    }
    .text-img-box.early-mobile  .text-col.has-bg:before{
        left: -112px;
    }
    .text-img-box.overstep-bounds .text.has-bg:before{
        top: -54px;
        height: 272px;
        bottom: auto;
    }
    .full-width-mobile-half{
        margin-left: -40px;
        margin-right: -40px;
        width: auto;
        max-width: calc(100% + 80px);
    }
    .early-full-width-mobile{
        margin-left: -24px;
        margin-right: -24px;
        max-width: calc(100% + 48px);
    }
    .separator-line + .text-img-box.after-separator{
        margin-top: -120px;
    }
    .text-img-box.after-separator .text-col.has-bg:before{
        top: -48px;
    }

    .has-indent-after-dark-bg{
        margin-top: 72px !important;
    }
    /*Rare text img box*/
    .ghp-rare-text-img-box1{
        margin-top: 70px !important;
    }
    /*Rare images*/
    .ghp-rare-img1{
        margin-top: -18% !important;
    }
    /*Our process*/
    .our-process{
        margin: -12px 0 0;
    }
    .our-process .item{
        margin: 0 0 54px;
    }
    .our-process .sub-box{
        max-width: calc(100% - 270px);
    }
    .our-process .negative-title-indent{
        max-width: calc(100% - 270px) !important;
    }
    .our-process .item:before{
        left: -24px !important;
        top: -40px !important;
        width: 100px !important;
        height: 194px !important;
    }
    .our-process .item:after{
        right: -66px;
        top: -35px !important;
        font-size: 320px;
    }
    .our-process .separator-line{
        margin: 0 auto 48px;
    }
    .our-process .process-gradient{
        width: 200px;
    }
    /*Contacts*/
    .contacts{
        display: block;
        margin: 71px auto;
        max-width: 520px;
    }
    .contacts .col{
        display: block;
        width: 100%;
        max-width: none !important;
        text-align: center;
        padding: 0 !important;
    }
    .contacts .col:nth-child(1){
        margin-bottom: 48px;
    }
    .contacts .social-links{
        text-align: center;
        margin: 48px 0 -5px;
    }
    .contacts .social-links a{
        margin: 0 24px;
    }
    /*back link*/
    h1 + .back-link{
        margin-top: -24px;
    }
    /*Pwa main screen*/
    #pwa-main-screen .bg-box:not(.has-video) img{
        top: 90px;
    }
    #pwa-main-screen .bg-box:not(.has-video) img:last-child{
        top: -160px;
    }

    [data-bg-text]:before{
        font-size: 130px;
    }
    .two-cols-grid-bg[data-bg-text]:before{
        bottom: -48px;
    }


    .advantages-box.principles.in-case{
        margin-bottom: 140px;
    }

    /*Content form*/
    .content-form-box{
        margin: 120px 0;
    }
    .content-form-box[data-bg-text]:before{
        left: 50%;
        font-size: 280px;
        bottom: -94px;
    }

    .content-form-box + .rare-title{
        margin-top: 200px;
    }

    /*Pwa content*/
    #pwa-landing-content{
        margin-bottom: 16px;
    }
}
@media screen and (max-width: 870px){
    /*Developers*/
    .developers img{
        -webkit-transform: translate3d(-60px, 0, 0);
        transform: translate3d(-60px, 0, 0);
    }
}
@media screen and (max-width: 860px){
    .form-title{
        font-size: 32px;
    }
    /*Layout grid*/
    .layout-grid{
        margin: 40px -16px;
    }
    .layout-grid .col{
        padding: 0 16px;
    }
    .layout-grid.early-changes{
        margin-bottom: -30px;
    }
    .layout-grid.early-changes .col{
        display: block;
        width: 100%;
        max-width: 360px;
        margin: 0 auto 70px;
    }
    /*In numbers*/
    .in-numbers .layout-grid .col > p:first-child{
        margin: 16px;
    }
    .in-numbers .layout-grid:before{
        left: 50%;
        top: -32px;
        bottom: -32px;
        width: 80px;
        height: auto;
        margin: 0 0 0 -40px;
    }
    .in-numbers .layout-grid:after{
        display: none;
    }
    .in-numbers .number:before{
        content: attr(data-number);
        position: absolute;
        z-index: -1;
        top: 55%;
        left: -500px;
        right: -500px;
        font-weight: 700;
        font-size: 200px;
        line-height: 1em;
        text-align: center;
        color: #fff;
        margin: -100px 0 0;
        white-space: nowrap;
        text-shadow: 0 20px 30px rgba(0, 0, 0, 0.03);
    }
    /*Our awards*/
    .our-awards{
        margin: -100px 0 0;
    }
    /*Project awards*/
    .container .project-awards-box:last-child{
        margin-bottom: 32px;
    }
    /*Case project link*/
    .case-project-link{
        padding: 40px 16px 40px;
        margin: 64px -24px 100px;
    }
    .case-project-link:before{
        font-size: 160px;
        margin: 0 0 0 -284px;
        text-shadow: 0 14px 24px rgba(0, 0, 0, .03);
    }
    /*Similar projects*/
    .similar-projects{
        margin: 100px auto 90px;
    }
    .similar-projects .projects-box{
        margin: 0 auto;
        max-width: 689px;
    }
    .similar-projects .project-col, .similar-projects .project-col:nth-last-child(2){
        display: block;
        width: 100%;
        padding: 0;
        margin: 0 auto 52px;
    }
    .similar-projects .project{
        font-size: 24px;
    }
    .similar-projects .project .title{
        margin: -18px 0 0 10%;
    }
    .similar-projects .project-col:nth-child(even) .project .title{
        margin: -18px 10% 0 0;
    }
    /*Asb box*/
    .case-project-link + .asb-box{
        margin-top: -97px;
    }
    /*Our awards*/
    .our-awards .center-position{
        max-width: 720px !important;
    }
    .awards-list .item-box{
        width: 50%;
    }
    /*Developers*/
    .developers img{
        -webkit-transform: translate3d(-66px, 0, 0);
        transform: translate3d(-66px, 0, 0);
    }

    .boost-sales-list{
        justify-content: center;
    }
    .boost-sales-list .col{
        width: 50%;
        max-width: 400px;
    }

    /*Pwa steps*/
    .pwa-steps{
        margin-top: -72px;
    }
    .pwa-steps .step-item{
        margin: 0 0 -30px;
    }
    .pwa-steps .img-box{
        width: 36%;
        padding-right: 32px;
    }
    .pwa-steps:not(.invert) .step-item:nth-child(even) .img-box, .pwa-steps.invert .step-item:nth-child(odd) .img-box{
        padding: 80px 0 0 32px;
    }
    .pwa-steps .text{
        width: 64%;
    }
    .pwa-steps .text:after, .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        right: auto;
        left: 0;
        margin: 0 0 0 -80px;
    }
    .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        left: auto;
        right: 0;
        margin: 0 -80px 0 0;
    }
    .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        text-align: left;
    }
}
@media screen and (max-width: 830px){
    /*Our projects*/
    .our-projects-box{
        position: relative;
        z-index: 4;
        margin: 109px auto 0;
        padding: 0 24px;
        max-width: 1264px;
    }
    .our-projects{
        max-width: 512px;
        margin: 0 auto;
    }
    .our-projects .item-box{
        margin: 0 auto;
        padding: 0;
        width: 100%;
    }
    /*Cases*/
    /*Technologies*/
    .front-technologies .text{
        padding: 114px 10px 0 0;
    }
    /*Developers*/
    .developers img{
        -webkit-transform: translate3d(-70px, 0, 0);
        transform: translate3d(-70px, 0, 0);
    }
    /*Ebrr popup*/
    .ebrr-popup:before{
        font-size: 260px;
    }
}
@media screen and (max-width: 819px){
    /*Developers*/
    .developers .slider{
        max-width: 600px;
    }
    .developers img{
        -webkit-transform: translate3d(-50px, 0, 0);
        transform: translate3d(-50px, 0, 0);
    }
    /*Layout grid*/
    .layout-grid.project-awards{
        margin-left: auto;
        margin-right: auto;
        max-width: 700px;
    }
    .layout-grid.three-col.project-awards .col, .layout-grid.project-awards .col{
        display: inline-block;
        width: 50%;
    }
    /*Text image box*/
    .text-img-box + .text-img-box.invert{
        margin-top: 48px;
    }
    /*Popup*/
    #popup-box .container{
        margin-bottom: 64px;
    }
    /*Pwa main screen*/
    #pwa-main-screen{
        font-size: 36px;
    }
    #pwa-main-screen .text-box{
        margin-bottom: 0;
    }
    #pwa-main-screen .bg-box.has-video{
        margin: 48px auto 0;
    }
    #pwa-main-screen:not(.view2) .bottom-text-line .line:before{
        height: 13px;
        left: -10px;
        right: -10px;
        bottom: 12px;
    }
    #pwa-main-screen .bg-box:not(.has-video) img:last-child{
        top: -140px;
    }

    .important-text .bottom-text-line .line:before{
        left: -10px;
        right: -10px;
    }

    .advantages-box.principles.in-case{
        margin-top: 120px;
    }
}
@media screen and (min-width: 781px){
    /*Layout grid*/
    .layout-grid .col *:first-child{
        margin-top: 0;
    }
    .layout-grid .col *:last-child{
        margin-bottom: 0;
    }
}
@media screen and (max-width: 780px){
    h2.after-last-img-container{
        margin-top: 56px;
    }
    .text-img-box + h2{
        margin-top: 80px;
    }
    .dark-bg-box + h2{
        margin-top: 100px;
    }
    h5, .h5{
        margin: 60px 0 25px;
    }
    /*Independent*/
    .container{
        padding: 0 16px;
    }
    .title-bg-line{
        margin-top: 100px;
    }
    .title-bg-line.large-mobile-top-indent, .video-box + .title-bg-line{
        margin-top: 120px;
    }
    .title-bg-line.min-height{
        min-height: 0;
    }
    .title-bg-line.full-height-line:before{
        bottom: -24px;
    }

    .text-img-box + .center-position.largest-top-indent{
        margin-top: 0;
    }
    /*Separator line*/
    .separator-line.large-bottom-indent{
        margin-bottom: 72px;
    }
    /*Header*/
    .head-page-title{
        display: none !important;
    }
    /*Top page image*/
    .top-page-image{
        width: 780px;
        margin-left: -390px;
    }
    /*Our projects*/
    .our-projects-box{
        padding: 0 16px;
    }
    /*Layout grid*/
    .layout-grid{
        margin: 40px 0;
    }
    .layout-grid.large-top-indent{
        margin-top: 71px;
    }
    img + .center-position > .layout-grid{
        margin-top: 54px;
    }
    .layout-grid.negative-bottom-indent-mobile{
        margin-bottom: -50px;
    }
    .layout-grid .col, .layout-grid.three-col .col{
        display: block;
        width: 100%;
        padding: 0;
    }
    .layout-grid.large-top-indent .title-bg-line{
        margin-top: 71px;
    }
    .layout-grid .col .no-max-width-780{
        max-width: none !important;
    }
    .layout-grid.has-bg{
        padding: 40px 0;
    }
    .layout-grid.negative-indent-mobile{
        margin-top: 0;
    }
    .layout-grid + .layout-grid.has-bg{
        margin-top: -32px;
    }
    .layout-grid.has-bg:before{
        left: 80%;
        width: auto;
        right: -24px;
    }
    .layout-grid + .layout-grid.has-bg:before{
        top: 18px;
    }
    /*Text image box*/
    .text-img-box{
        margin: 40px -16px 24px;
    }
    .text-img-box .img-col.has-indent{
        padding: 0 16px;
    }
    .text-img-box .img-col.small-right-inner-indent{
        padding-right: 16px;
    }
    .text-img-box .text-col{
        padding: 0 24px 0 16px;
    }
    .text-img-box .align-right img.large-shadow-negative-indent{
        margin-left: -23px !important;
        margin-bottom: -24px !important;
        max-width: calc(100% + 46px) !important;
    }
    .full-width-img, .early-full-width-mobile{
        margin-left: -16px;
        max-width: calc(100% + 32px);
        width: calc(100% + 32px);
    }
    .text-img-box.early-mobile .img-col.full-width-mobile, .text-img-box.early-mobile .img-col.auto-width-mobile{
        margin-left: -16px;
        margin-right: -16px;
    }
    .text-img-box.early-mobile .img-col.auto-width-mobile{
        margin-left: auto;
        margin-right: auto;
    }
    .full-width-mobile-half{
        margin-left: -28px;
        margin-right: -28px;
        max-width: calc(100% + 56px);
    }
    .ghp-rare-text-img-box1{
        margin-top: 40px !important;
    }
    /*Last img box*/
    .last-img-box{
        margin: 56px 0 24px;
    }
    /*Clients poll*/
    .clients-poll{
        margin: 150px 0;
    }
    .clients-poll .awards-box:before{
        bottom: -20px;
    }
    /*In numbers*/
    .in-numbers{
        margin: 150px 0;
    }
    /*Our awards*/
    .our-awards{
        margin: -70px 0 0;
    }
    /*Principles*/
    .advantages-box.principles.in-case{
        margin: 80px 0 100px;
    }
    .principles{
        margin: 80px 0 140px;
    }
    .principles .item{
        margin: 0 0 50px !important;
    }
    .principles .item:before{
        display: none;
    }
    .principles .item .bg{
        position: relative;
        top: 0 !important;
        left: 0 !important;
        max-width: 420px;
        margin: 0 auto 16px;
        -webkit-transform: none !important;
        transform: none !important;
    }
    .principles .item .bg img{
        max-width: 100%;
        margin: 0 auto;
    }
    .principles .item .bg:before{
        content: '';
        position: absolute;
        z-index: -1;
        left: -224px;
        right: -224px;
        top: 45%;
        bottom: -76px;
        background: #f4f4f4;
    }
    .principles .item .separator-line{
        margin: 50px auto 0 !important;
    }
    .principles .item .info, .principles .item:nth-child(even) .info{
        display: block;
        max-width: none;
        width: 100%;
        padding: 0;
    }
    .principles .item [data-max-width]{
        max-width: none !important;
    }
    /*Our process*/
    .process-section{
        margin: 140px 0 0;
    }
    /*Before after box*/
    .layout-grid + .before-after-box, .center-position + .before-after-box{
        margin-top: 40px;
    }
    /*Vacancies*/
    .vacancies-list{
        margin: 80px 0 100px;
    }
    .vacancies-list .row{
        display: block;
    }
    .vacancies-list .row:before, .vacancies-list .row:nth-child(even):before{
        display: none;
    }
    .vacancies-list .bg{
        position: relative;
        z-index: 1;
        top: 0 !important;
        left: 0 !important;
        right: auto !important;
        max-width: 420px;
        margin: 0 auto 16px;
    }
    .vacancies-list .bg.project-manager-bg{
        padding-right: 8px;
    }
    .vacancies-list .front-end-bg{
        padding-left: 10px;
    }
    .vacancies-list .designer-bg{
        padding-right: 11px;
    }
    .vacancies-list .sales-manager-bg{
        padding-left: 8px;
    }
    .vacancies-list .back-end-bg{
        padding-right: 8px;
    }
    .vacancies-list .marketing-bg{
        padding-left: 8px;
    }
    .vacancies-list .bg img{
        margin: 0 auto;
        max-width: 100% !important;
    }
    .vacancies-list .bg:before{
        content: '';
        position: absolute;
        z-index: -1;
        top: 45%;
        bottom: -82px;
        left: -224px;
        right: -224px;
        background: #f4f4f4;
    }
    .vacancies-list .item{
        width: 100%;
        max-width: 420px;
        margin: 0 auto;
        padding-left: 6px;
    }
    /*Cases*/
    .main-case-img{
        width: 100%;
        margin: 40px 0 100px;
    }
    .main-case-img.small-bottom-indent{
        margin-bottom: 20px;
    }
    .main-case-img.no-top-indent{
        margin-top: 40px !important;
    }
    .dark-bg-box.x-inner-indent{
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    /*Before After*/
    .before-after-box{
        margin: 48px -16px 54px;
    }
    /*Popup*/
    #popup-box h5{
        margin-top: 50px;
    }
    #popup-box .contacts-box{
        margin: 72px 0 0;
    }

    .layout-grid .sub-h3{
        margin: 0 0 32px;
        padding-top: 0;
    }

    .two-cols-grid-bg .col, .two-cols-grid-bg .col:last-child{
        width: 100%;
        padding: 10px 0;
    }
    .two-cols-grid-bg .col:before{
        left: -24px !important;
    }

    .pwa-steps.in-case{
        margin-top: -24px;
    }

    /*Questions grid box*/
    .questions-grid-box{
        margin-top: 80px;
    }
    .questions-grid-box .col, .questions-grid-box .col:nth-child(even){
        width: 100%;
        padding: 0;
        margin: 0 0 62px;
        max-width: none !important;
    }
    .questions-grid-box .col:last-child{
        margin-bottom: 0;
    }
    .questions-grid-box h3, .questions-grid-box .h3{
        max-width: none !important;
    }
    /*In numbers*/
    .in-numbers.middle-top-indent{
        margin-top: 100px;
    }
}
@media screen and (max-width: 750px){
    /*Content form*/
    .content-form-box{
        display: block;
    }
    .content-form-box .text{
        width: 100%;
        padding-right: 0;
        max-width: 450px;
        margin: 0 0 48px;
    }
    .content-form-box .form{
        width: 400px;
        margin: 14px auto 0;
    }
    .content-form-box .form .btn-box{
        padding-top: 4px;
    }
    .content-form-box[data-bg-text]:before{
        left: 50%;
        font-size: 240px;
        bottom: -54px;
    }
    /*Pwa*/
    .content-form-box .form .pwa-checkbox + .btn-box{
        padding-top: 24px;
    }
}
@media screen and (max-width: 732px){
    .form-title{
        font-size: 28px;
    }
    /*Nav*/
    #nav-box .langs{
        padding-left: 12%;
    }
    #nav ul{
        padding: 90px 0 90px 12%;
    }
    #js-open-nav.active:before{
        right: 0 !important;
    }
    #js-open-nav.active:after{
        right: 0 !important;
    }
    /*Separator*/
    .back-technologies + .separator-line{
        margin-top: -10px;
    }
    /*Ajax upload*/
    #ajax-upload{
        padding-bottom: 70px;
    }
    /*Our projects*/
    .our-projects-box{
        margin-bottom: 40px;
    }
    /*Technologies*/
    .back-technologies .img{
        width: 40%;
    }
    .back-technologies .img img{
        margin-right: -186px;
        max-width: calc(100% + 186px);
    }
    .back-technologies .text{
        width: 60%;
    }
    /*Technologies stack*/
    .technologies-list{
        margin-left: -16px;
        margin-right: -16px;
        padding-left: 0;
    }
    .technologies-list .negative-title-indent{
        margin-left: 0;
    }
    /*Our process*/
    .our-process .sub-box{
        max-width: calc(100% - 190px);
    }
    .our-process .negative-title-indent{
        max-width: calc(100% - 190px) !important;
    }
    .our-process .item:after{
        right: -66px;
        top: -35px !important;
        font-size: 280px;
    }
    .our-process .process-gradient{
        width: 136px;
    }
    /*404*/
    #error-page-box{
        margin: 0 0 40px;
    }
    #error-page-box .num{
        font-size: 170px;
    }
    #error-page-box .circle-video{
        width: 200px;
        height: 200px;
        margin: 0 28px;
    }
    #error-page-box .circle-video video{
        height: 210px;
    }
    /*Footer*/
    #footer .container{
        max-width: 600px;
        padding-bottom: 88px;
    }
    #footer .mail{
        margin: 0;
    }
    #footer .social-links{
        width: 100%;
        text-align: center;
        margin: 50px 0 0;
    }
    #footer .social-links a{
        margin: 0 23px;
    }
    /*Compare table*/
    .compare-table .head{
        font-size: 20px;
    }
    .compare-table .col.pwa{
        width: 110px;
        max-width: 110px;
        min-width: 110px;
    }

    .landing-page #footer .phones p{
        display: block;
        margin: 0 0 14px;
    }
}
@media screen and (max-width: 700px){
    /*Pwa main screen*/
    #pwa-main-screen .container{
        flex-wrap: wrap;
    }
    #pwa-main-screen .text-box{
        align-self: center;
        width: 100%;
        padding: 0 5%;
        margin: 0 0 20px;
    }
    #pwa-main-screen.view2 .text-box{
        margin-bottom: 40px;
    }
    #pwa-main-screen .bg-box{
        margin: 0 auto;
        padding: 0;
        width: 75%;
        max-width: 450px;
        height: auto;
        min-height: 0;
        align-self: center;
    }
    #pwa-main-screen .bg-box.has-video{
        margin: 0;
        max-width: none;
        padding: 0 5%;
    }
    #pwa-main-screen .bg-box:not(.has-video) img{
        top: 90px;
        margin-right: -10px;
    }
    #pwa-main-screen .bg-box:not(.has-video) img:last-child{
        top: -120px;
        margin: 0 0 0 -10px;
    }
}
@media screen and (min-width: 691px){
    /*Compare table*/
    .compare-table .head.is_stuck{
        position: relative !important;
        top: auto !important;
        width: auto !important;
    }
    .compare-table .head.is_stuck + div{
        display: none !important;
    }
}
@media screen and (max-width: 690px){
    blockquote:before{
        left: 70px;
        height: 96px;
    }
    blockquote .text{
        font-size: 18px;
        padding: 0 24px 0 44px;
        width: calc(100% - 160px);
    }
    blockquote .text:before{
        top: -10px;
        font-size: 44px;
    }
    blockquote .author{
        width: 160px;
    }
    img.full-width-mobile{
        margin-left: -16px;
        margin-right: -16px;
        max-width: calc(100% + 32px);
    }
    img.no-top-indent-mobile{
        margin-top: 0;
    }
    .large-top-indent{
        margin-top: 40px;
    }
    .important-text.large-top-indent{
        margin-top: 54px;
    }
    .has-shadow-negative-indent, .has-shadow-negative-indent.center-position{
        margin-left: -10px;
        margin-right: -10px;
        max-width: calc(100% + 20px) !important;
    }
    /*Content arrow box*/
    .content-arrow-box{
        padding: 0 0 40px;
        margin: 0 auto 100px;
    }
    .content-arrow-box .sub-box{
        display: block;
    }
    .content-arrow-box .col, .content-arrow-box .col.sub-info{
        width: 100%;
        margin-bottom: 24px;
    }
    .content-arrow-box .col.sub-info{
        margin: 0;
    }
    .content-arrow-box .col.sub-info:before{
        top: 0;
        left: 50%;
        margin: -104px 0 0 -71px;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
    }
    /*Text image box*/
    .text-img-box{
        flex-flow: row wrap;
        margin: 70px 0 24px;
    }
    .text-img-box.middle-top-indent-mobile{
        margin-top: 54px;
    }
    .text-img-box.large-top-indent-mobile{
        margin-top: 90px;
    }
    .text-img-box.large-top-indent-mobile-after-text{
        margin-top: 90px;
    }
    .separator-line + .text-img-box{
        margin-top: 90px;
    }
    .text-img-box.negative-img-indent{
        margin-top: -72px;
        margin-bottom: 0;
    }
    .container > .text-img-box:first-child{
        margin-top: 20px;
    }
    .container > .text-img-box.no-top-indent:first-child{
        margin-top: 24px !important;
    }
    .in-brief-text + .text-img-box{
        margin-top: 50px;
    }
    .important-text + .text-img-box{
        margin-top: 40px;
    }
    img + .text-img-box{
        margin-top: 70px;
    }
    .text-img-box.top-indent-after-img{
        margin-top: 80px;
    }
    .dark-bg-box + .text-img-box{
        margin-top: -10px;
    }
    .usual-max-w + .text-img-box.middle-top-indent{
        margin-top: 50px;
    }
    .text-img-box .col{
        display: block;
    }
    .text-img-box .img-col{
        order: 0;
        width: 100%;
        margin: 0 0 32px;
    }
    .text-img-box .img-col.has-indent, .text-img-box .img-col.small-right-inner-indent{
        padding: 0;
    }
    .text-img-box .img-col.negative-indent-mobile{
        margin: 0 0 24px;
    }
    .text-img-box.invert .img-col, .text-img-box.invert.centered-text-col .img-col{
        padding-right: 0;
    }
    .text-img-box .align-right img{
        margin-left: auto;
    }
    .text-img-box .img-col img, .text-img-box.invert .img-col img{
        margin: 0 auto;
        float: none;
    }
    .text-img-box .img-col img.has-shadow, .text-img-box.invert .img-col img.has-shadow{
        margin-left: auto;
        margin-right: auto;
        margin-bottom: -14px;
        max-width: 100%;
        float: none;
    }
    .text-img-box .img-col.full-width-mobile{
        margin-left: -16px;
        margin-right: -16px;
        width: auto;
    }
    .text-img-box .img-col.full-width-mobile .has-shadow{
        margin-left: -16px;
        margin-right: -16px;
        max-width: calc(100% + 32px);
    }
    .text-img-box .text-col, .text-img-box.invert .text-col{
        width: 100%;
        padding: 0;
    }
    .text-img-box .text, .text-img-box [data-max-width]{
        max-width: none !important;
    }
    .text-img-box .text{
        padding: 0 0 32px;
    }
    .text-img-box .text.has-bg:before, .text-img-box .text-col.has-bg .text.has-bg:before, .invert.centered-text-col.text-img-box .text-col.has-bg .text.has-bg:before, .text-img-box.early-mobile.frame-separator h3.title-bg-line:before{
        left: -16px;
        width: 80px;
        top: -40px;
        bottom: 0;
    }
    .text-img-box .text-col.has-bg:before{
        display: none;
    }
    /*Unique styles*/
    .unique-style-mobile{
        margin: 0 auto;
        max-width: 220px;
    }
    /*Technologies stack*/
    .technologies-list{
        max-width: 360px;
        margin: 70px auto 0;
    }
    .technologies-list .item{
        display: block;
        width: 100%;
        margin: 0 0 100px;
    }
    .technologies-list .item:last-child{
        margin: 0;
    }
    .technologies-list .item:before{
        left: 50%;
        margin-left: -52px;
    }
    .technologies-list .negative-title-indent{
        margin-left: -10px;
        margin-right: -10px;
        text-align: center;
    }
    /*Layout grid*/
    .layout-grid.negative-indent-mobile{
        margin-top: -24px;
    }
    /*Dark bg box*/
    .dark-bg-box.small-top-indent-mobile{
        margin-top: 40px;
    }

    .project-awards-box.large-top-indent{
        margin-top: 100px;
    }
    /*Popup*/
    #popup-box .container{
        margin-bottom: 40px;
    }
    /*Ebrr popup*/
    .ebrr-popup:before{
        font-size: 220px;
    }

    .separator-line + .content-form-box{
        margin-top: 96px;
    }
    /*Compare table*/
    .compare-box{
        margin: 90px 0;
    }
    .compare-box + .separator-line{
        margin-top: 0;
    }
    .compare-table .head{
        margin: 0 -16px;
        padding-left: 16px;
        padding-right: 16px;
        background: #fff;
    }
    .compare-table .head .col{
        padding-top: 18px;
        padding-bottom: 18px;
    }
    .compare-table .col{
        padding: 16px 8px 24px;
    }
    .compare-table .col.text{
        width: 100%;
        max-width: 100%;
        min-width: 100%;
        padding-bottom: 0;
        padding-top: 24px;
    }
    .compare-table .col.pwa{
        width: 140px;
        max-width: 140px;
        min-width: 140px;
    }
    /*Principles*/
    .advantages-box.principles.in-case{
        margin-bottom: 80px;
    }
}
@media screen and (max-width: 660px){
    h1, .h1{
        font-size: 36px;
    }
    h2, .h2{
        font-size: 36px;
    }
    .title-line:before{
        top: 27px;
        left: -37px;
        right: -37px;
        height: 8px;
    }
    .container > .clear-top-mobile:first-child{
        margin-top: 8px !important;
    }
    h5, .h5{
        margin: 50px 0 20px;
    }
    .important-text{
        font-size: 20px;
    }
    h1 + .large-top-title-indent{
        margin-top: 70px;
    }
    .separator-line + h2.large-top-title-indent{
        margin-top: 92px;
    }
    /*Separator line*/
    .separator-line.large-top-indent{
        margin-top: 72px;
    }
    /*Images styles*/
    .large-img-indent{
        margin-top: 50px;
        margin-bottom: 50px;
    }
    .large-img-indent.large-top-indent-mobile{
        margin-top: 64px;
    }
    .large-bottom-indent, .fixed-bg-box.large-bottom-indent{
        margin-bottom: 50px;
    }
    .large-img-indent.has-shadow-negative-indent{
        margin-bottom: 40px;
    }
    .rare-images-indent{
        margin: 60px 0 120px;
    }
    .small-bottom-indent{
        margin-bottom: 32px;
    }
    .largest-bottom-img-indent{
        margin-bottom: 50px;
    }
    /*Intro text*/
    .main-intro-box .title{
        font-size: 36px;
        margin-bottom: 32px;
    }
    .main-intro-box p:not(.title){
        margin-left: 24px;
    }
    .main-intro-box .title .heart{
        margin: -5px 0 0;
        width: 36px;
    }
    /*Top page image*/
    .top-page-image + h1{
        margin-top: -86px;
    }
    /*Text img box*/
    .after-text-img-top-indent{
        margin-top: 100px;
    }
    /*Vacancy inner*/
    .vacancy-inner{
        margin: 48px 0 0;
    }
    /*Two cols img*/
    .two-cols-img{
        display: block;
        padding: 0 24px;
    }
    .two-cols-img .img{
        padding: 0;
        margin: 0 0 32px;
        max-width: 100%;
    }
    .two-cols-img .img:last-child{
        margin: 0;
    }
    /*Popup*/
    #popup-box{
        padding: 100px 0 0;
    }
    #popup-box h5{
        margin-top: 40px;
    }
    #popup-box .js-close-popup-box{
        top: 32px;
    }
    #popup-box .js-close-popup{
        width: 50px;
        height: 50px;
        margin: 0 0 0 -25px;
    }

    /*Content form*/
    .content-form-box[data-bg-text]:before{
        font-size: 230px;
    }


    /*Pwa steps*/
    .pwa-steps .step-item{
        margin: 0 0 -30px;
    }
    .pwa-steps .img-box{
        width: 36%;
        padding-right: 0;
    }
    .pwa-steps:not(.invert) .step-item:nth-child(even) .img-box, .pwa-steps.invert .step-item:nth-child(odd) .img-box{
        padding: 80px 0 0 0;
    }
    .pwa-steps .text{
        width: 64%;
    }
    .pwa-steps:not(.invert) .step-item:nth-child(even) .text, .pwa-steps.invert .step-item:nth-child(odd) .text{
        padding: 0 34px 0 0;
    }
    .pwa-steps.invert .step-item:nth-child(3n) .text{
        min-height: 0;
    }
    .pwa-steps .text .h3{
        margin: 0 0 16px;
    }
    .pwa-steps .text:after, .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        bottom: -136px;
        font-size: 180px;
        margin: 0 0 0 -20px;
        width: 230px;
    }
    .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        margin: 0 -20px 0 0;
    }
    .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        text-align: right;
    }
}
@media screen and (max-width: 630px){
    /*Text image box*/
    .text-img-box.frame-separator{
        margin: -20px 0 -40px;
    }
    .text-img-box.early-mobile .img-col.max-width-mobile{
        margin: 0 -16px 48px;
        max-width: none;
    }
    /*Developers*/
    .developers img{
        -webkit-transform: translate3d(-50px, 0, 0);
        transform: translate3d(-50px, 0, 0);
    }
    /*Asb box*/
    .asb-box{
        padding: 120px 16px;
        font-size: 20px;
    }
    /*Popup*/
    #popup-box .contacts .separator{
        margin: 0 0 4px;
        display: block;
        width: 0;
        height: 0;
        line-height: 0;
        background: none;
    }

    [data-bg-text]:before{
        font-size: 110px;
    }

    .two-cols-grid-bg[data-bg-text]{
        margin-bottom: 140px;
    }
    .two-cols-grid-bg[data-bg-text]:before{
        bottom: -40px;
    }

    .rare-title{
        font-size: 34px;
        line-height: 1.5em;
    }
    .rare-title .bottom-text-line .line:before{
        bottom: 11px;
    }

    .content-form-box + .rare-title{
        margin-top: 160px;
    }


    /*Pwa steps*/
    .pwa-steps{
        margin: 0 0 200px;
    }
    .pwa-steps.in-case{
        margin: 60px 0 130px;
    }
    .pwa-steps .step-item{
        align-items: flex-start;
        margin: 0 0 40px;
    }
    .pwa-steps .img-box, .pwa-steps:not(.invert) .step-item:nth-child(even) .img-box, .pwa-steps.invert .step-item:nth-child(odd) .img-box{
        width: 30%;
        padding: 0;
    }
    .pwa-steps .text, .pwa-steps:not(.invert) .step-item:nth-child(even) .text, .pwa-steps.invert .step-item:nth-child(odd) .text{
        width: 70%;
        padding-top: 80px;
    }
    .pwa-steps .text:before{
        top: 98px;
    }
}
@media screen and (max-width: 620px){
    .large-top-img-indent.small-top-indent-mobile{
        margin-top: 40px;
    }
    /*Separator*/
    .technologies-separator{
        margin: 50px auto;
    }
    .back-technologies + .separator-line{
        margin: 60px auto;
    }
    /*Form styles*/
    .form .two-cols{
        margin: 0;
    }
    .form .two-cols .col, .form .two-cols .col:last-child{
        display: block;
        width: 100%;
        padding: 0;
    }
    .form .upload-box{
        margin: -7px 0 32px;
    }
    .form .negative-indent .checkbox-item{
        margin: 0;
    }
    .form .btn-box{
        overflow: hidden;
        margin: 32px 0 0;
        padding: 37px 0 0 0;
        border-top: 1px solid #efefef;
    }
    .form .btn-box .btn{
        float: none;
        margin: 0 auto;
    }
    .form .btn{
        margin-top: 50px;
        width: 50%;
    }
    /*Pwa*/
    .content-form-box .form .pwa-checkbox + .btn-box{
        padding-top: 8px;
    }
    /*Layout grid*/
    .project-awards-box{
        margin: 100px auto 80px;
    }
    .container .project-awards-box:last-child{
        margin-bottom: 64px;
    }
    .layout-grid.project-awards{
        margin-bottom: -48px;
    }
    .layout-grid.three-col.project-awards .col, .layout-grid.project-awards .col{
        display: block;
        width: 100%;
        margin: 0 0 48px;
    }
    /*Technologies*/
    .separator-line + .front-technologies{
        margin-top: -80px;
    }
    .front-technologies .img, .back-technologies .img{
        float: none;
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
    }
    .front-technologies .img:before{
        display: none;
    }
    .front-technologies .text{
        float: none;
        width: 100%;
        padding-top: 0;
        margin: 0 0 20px;
    }
    .front-technologies .text:before{
        top: -164px;
        height: 226px;
    }
    .separator-line + .back-technologies{
        margin-top: -80px;
    }
    .back-technologies:before{
        display: none;
    }
    .back-technologies .img{
        float: none;
        width: 100%;
    }
    .back-technologies .img img{
        float: none;
        margin-right: 0;
        max-width: 100%;
    }
    .back-technologies .text{
        z-index: 0;
        float: none;
        width: 100%;
        padding: 0;
    }
    .back-technologies .text h3{
        margin-left: 0;
    }
    .back-technologies .text:before{
        content: '';
        position: absolute;
        z-index: -1;
        top: -149px;
        left: 78px;
        width: 620px;
        height: 210px;
        background: #f4f4f4;
    }
    .back-technologies + .important-text{
        margin-top: 60px;
    }

    .text-img-box.next-text-indent{
        margin-bottom: 64px;
    }
}
@media screen and (max-width: 600px){
    /*Dark bg box*/
    .dark-bg-box{
        padding: 40px 0;
        margin: 62px -16px 70px;
    }
    .dark-bg-box.large-inner-indent{
        padding: 70px 0 70px;
    }
    .dark-bg-box .bottom-shadow-fix{
        margin: -4px auto -24px;
    }
    /*Case project link*/
    .case-project-link{
        margin: 54px -16px 100px;
    }
    /*Video section*/
    .video-box:before{
        height: 200px;
        margin: -100px 0 0;
    }
    .video-box:after{
        font-size: 150px;
        margin: -75px 0 0 -777px;
        word-spacing: 115px;
    }
    /*Two cols img*/
    .two-cols-img{
        padding: 0 16px;
    }
    .dark-bg-box .two-cols-img{
        margin: 30px 0;
    }
    /*Developers*/
    .developers img{
        -webkit-transform: translate3d(-60px, 0, 0);
        transform: translate3d(-60px, 0, 0);
    }
    /*Ebrr popup*/
    .ebrr-popup:before{
        font-size: 180px;
    }
    /*Pwa main screen*/
    #pwa-main-screen{
        font-size: 32px;
    }
    #pwa-main-screen:not(.view2) .bottom-text-line .line:before{
        height: 12px;
        bottom: 11px;
    }
    #pwa-main-screen .text-box{
        margin-bottom: 40px;
        padding: 0 7%;
    }
    #pwa-main-screen.view2 .text-box{
        padding: 0;
    }
    #pwa-main-screen .bg-box.has-video{
        max-width: none;
        padding: 0;
    }

    .boost-sales-box{
        margin: 80px 0 54px;
    }
    .boost-sales-list .col{
        width: 100%;
        padding: 0;
        margin: 0 0 54px;
        max-width: 290px;
    }

    /*Content form*/
    .content-form-box[data-bg-text]:before{
        font-size: 200px;
    }
    /*Brands pwa results box*/
    .brands-pwa-results-grid .col{
        width: 50% !important;
        padding-right: 20px !important;
    }
    .brands-pwa-results-grid .col:nth-child(2n){
        padding: 0 0 0 20px !important;
    }
    /*Text img box*/
    .text-img-box.early-mobile.small-top-indent-mobile{
        margin-top: 48px;
    }
}
@media screen and (max-width: 586px){
    /*Pwa landing*/
    #header .contacts-links{
        font-size: 16px;
        padding-top: 4px;
    }
    #header .contacts-links span{
        margin-left: 16px;
    }
    /*Developers*/
    .developers img{
        -webkit-transform: translate3d(-65px, 0, 0);
        transform: translate3d(-65px, 0, 0);
    }
    /*Pwa steps*/
    .pwa-steps-box{
        margin-top: 154px;
    }
    .pwa-steps{
        margin: 54px 0 200px;
    }
    .pwa-steps .step-item{
        margin: 0 0 54px;
    }
    .pwa-steps .text, .pwa-steps:not(.invert) .step-item:nth-child(even) .text, .pwa-steps.invert .step-item:nth-child(odd) .text{
        padding: 64px 0 0 24px;
    }
    .pwa-steps:not(.invert) .step-item:nth-child(even) .text, .pwa-steps.invert .step-item:nth-child(odd) .text{
        padding: 64px 24px 0 0;
    }
    .pwa-steps .text:before{
        top: 82px;
    }
    .pwa-steps .text:after, .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        bottom: -126px;
        font-size: 160px;
        margin: 0 0 0 -16px;
    }
    .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        margin: 0 -16px 0 0;
    }
    .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        text-align: left;
    }
}
@media screen and (max-width: 569px){
    blockquote{
        margin: 60px 0 50px;
        padding: 34px 0 0;
    }
    blockquote:before{
        left: 52px;
        height: 90px;
    }
    blockquote .text{
        font-size: 16px;
        padding: 0 16px 0 28px;
        width: calc(100% - 120px);
    }
    blockquote .text:before{
        top: -9px;
        left: -8px;
        font-size: 40px;
    }
    blockquote .author{
        width: 120px;
    }
    .form-title{
        font-size: 25px;
    }
    .middle-top-title-indent{
        margin-top: 82px;
    }
    /*Nav*/
    #nav-box{
        width: 100%;
    }
    #nav-box .langs{
        padding-left: 16px;
    }
    #nav-box .langs a{
        margin-right: 32px;
    }
    #nav ul{
        text-align: center;
        padding: 70px 0;
    }
    #nav li{
        font-size: 30px;
        margin: 28px 0;
    }
    /*Developers box*/
    .developers .slider{
        max-width: 290px;
        padding: 0;
    }
    .developers img{
        -webkit-transform: translate3d(-50px, 0, 0);
        transform: translate3d(-50px, 0, 0);
    }
    .developers .slick-arrow{
        left: -11px;
    }
    .developers .slick-next{
        left: auto;
        right: -11px;
    }
    .no-touchevents .developers .slick-arrow:hover:before{
        left: -22px;
    }
    .no-touchevents .developers .slick-next:hover:before{
        left: 22px;
    }
    /*Text image box*/
    .text-img-box.large-top-indent, .dark-bg-box + .text-img-box.large-top-indent{
        margin-top: 90px;
    }
    /*Our awards*/
    .our-awards{
        margin-bottom: 80px;
    }
    .our-awards .center-position{
        max-width: none !important;
    }
    .awards-list .item-box{
        display: block;
        width: 100%;
    }
    .js-more-awards{
        margin: 54px auto 72px;
    }
    /*Principles*/
    .principles{
        margin-bottom: 120px;
    }
    /*Our process*/
    .process-section{
        margin: 120px 0 0;
    }
    .our-process .sub-box{
        max-width: calc(100% - 120px);
    }
    .our-process .negative-title-indent{
        max-width: calc(100% - 120px) !important;
    }
    .our-process .item:after{
        right: -135px;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
    }
    .our-process .process-gradient{
        right: -16px;
        width: 100px;
        bottom: 100px;
    }

    .two-cols-grid-bg{
        margin: 48px 0;
    }

}
@media screen and (max-width: 569px) and (max-height: 620px){
    /*Nav*/
    #nav ul{
        padding: 70px 0 32px;
    }
}
@media screen and (max-width: 569px) and (max-height: 520px){
    /*Nav*/
    #nav li{
        font-size: 26px;
        margin: 24px 0;
    }
}
@media screen and (max-width: 569px) and (max-height: 480px){
    /*Nav*/
    #nav ul{
        padding: 70px 0 24px;
    }
    #nav li{
        font-size: 22px;
        margin: 18px 0;
    }
}
@media screen and (max-width: 550px){
    h2.small-top-indent-mobile:first-child{
        margin-top: 40px;
    }
    .isolated-bg-line{
        margin: 48px auto 32px;
    }
    /*Center position box*/
    .large-center-box-top-indent{
        margin-top: 100px;
    }
    /*Intro text*/
    .main-intro-box{
        margin: -8px 0 34px;
    }
    .main-intro-box .title{
        font-size: 30px;
    }
    /*Cases*/
    .title-bg-line, .title-bg-line.small-top-indent{
        margin-top: 70px;
    }
    .container > .title-bg-line:first-child{
        margin-top: 52px;
    }
    .title-bg-line.small-top-indent{
        margin-top: 50px;
    }
    .title-bg-line.middle-top-indent, .container > .title-bg-line.middle-top-indent:first-child{
        margin-top: 60px;
    }
    .title-bg-line.large-mobile-top-indent{
        margin-top: 100px;
    }
    .rare-images-indent{
        margin: 60px -8px 100px;
    }
    /*Case project link*/
    .case-project-link{
        margin: 44px -16px 70px;
    }
    /*Asb box*/
    .case-project-link + .asb-box{
        margin-top: -67px;
    }
    /*Similar projects*/
    .similar-projects{
        padding: 42px 0 0;
        margin: 70px auto 90px;
    }
    .similar-projects h2{
        margin: 0 0 48px;
    }
    /*Brands pwa results box*/
    .brands-pwa-results-box .bg-box{
        padding: 100px 24px 124px;
    }
    .brands-pwa-results-grid .col, .brands-pwa-results-grid .col:nth-child(2n){
        width: 100% !important;
        padding: 0 !important;
        margin: 0 auto 40px;
        max-width: 320px;
    }
    .brands-pwa-results-grid .brand{
        margin-bottom: 24px;
    }
    /*In numbers*/
    .in-numbers.middle-top-indent{
        margin-top: 80px;
    }
}
@media screen and (max-width: 520px){
    .text-img-box + .center-position.largest-top-indent{
        margin-top: -40px;
    }
    /*Pwa landing*/
    .landing-page #header, .landing-page.sticky-header #header{
        padding: 21px 0 19px;
    }
    #header .contacts-links{
        display: block;
        font-size: 14px;
        padding-top: 0;
        margin-top: -7px;
    }
    #header .contacts-links span{
        margin-bottom: 8px;
    }
    #header .contacts-links span:last-child{
        margin-bottom: 0;
    }

    #pwa-main-screen{
        margin-bottom: 0;
    }
    #pwa-main-screen.view2{
        font-size: 18px;
    }
    #pwa-main-screen .align-m{
        padding-top: 100px;
        padding-bottom: 64px;
    }
    #pwa-main-screen .text-box{
        padding: 0;
    }
    #pwa-main-screen.view2 .text-box{
        margin-bottom: 60px;
    }

    #pwa-main-screen .bg-box.has-video{
        margin: -32px 0 0;
    }
    #pwa-main-screen .bg-box:not(.has-video) img{
        top: 60px;
    }
    #pwa-main-screen .bg-box:not(.has-video) img:last-child{
        top: -90px;
    }
    .compare-table .head{
        margin-top: -6px;
    }
    /*Pwa steps*/
    .pwa-steps .step-item{
        margin: 0 0 54px;
    }
    .pwa-steps .text, .pwa-steps:not(.invert) .step-item:nth-child(even) .text, .pwa-steps.invert .step-item:nth-child(odd) .text{
        padding: 48px 0 0 24px;
    }
    .pwa-steps:not(.invert) .step-item:nth-child(even) .text, .pwa-steps.invert .step-item:nth-child(odd) .text{
        padding: 48px 24px 0 0;
    }
    .pwa-steps .text:before{
        top: 66px;
    }
    .pwa-steps .text:after, .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        left: 50%;
        right: auto;
        bottom: -116px;
        font-size: 140px;
        width: 170px;
        margin: 0 0 0 -85px;
    }
}
@media screen and (max-width: 490px){
    body{
        font-size: 17px;
    }
    h1, .h1{
        font-size: 30px;
        line-height: 1.425em;
    }
    h2, .h2{
        font-size: 30px;
        margin: 54px 0 32px;
    }
    .separator-line + h2, .separator-line + .h2, .separator-line + .form-title{
        margin-top: 0;
    }
    img.large-img-indent + .large-top-title-indent{
        margin-top: 66px;
    }
    h2.after-last-img-container{
        margin-top: 40px;
    }
    h2.small-top-indent-mobile:first-child{
        margin-top: 24px;
    }
    .dark-bg-box + h2{
        margin-top: 80px;
    }
    .form-title{
        font-size: 22px;
    }
    h3, .h3{
        font-size: 26px;
        margin: 60px 0 32px;
    }
    h3.small-indent, .h3.small-indent{
        margin-bottom: 32px;
    }
    .sub-h3{
        font-size: 24px;
    }
    .large-top-title-indent, h1 + .large-top-title-indent{
        margin-top: 54px;
    }
    .container > h2:first-child.large-top-title-indent{
        margin-top: 47px;
    }
    .large-top-text-indent{
        margin-top: 80px;
    }
    .large-top-img-indent.small-top-indent-mobile{
        margin-top: 16px;
    }

    /*Separator line*/
    .separator-line + h2.large-top-title-indent{
        margin-top: 72px;
    }
    .separator-line.large-bottom-indent{
        margin-bottom: 56px;
    }
    .title-line:before{
        top: 24.5px;
        left: -27px;
        right: -27px;
        height: 7px;
    }
    ul li{
        background-position: 0 12px;
    }
    .important-text{
        font-size: 19px;
    }
    blockquote{
        display: block;
        margin: 48px 0 40px;
    }
    blockquote:after{
        content: '';
        display: table;
        width: 0;
        height: 0;
        clear: both;
    }
    blockquote .text{
        padding: 0 0 0 28px;
        width: 100%;
    }
    blockquote .text:before{
        top: -9px;
        left: -8px;
        font-size: 40px;
    }
    blockquote .author{
        width: 160px;
        float: right;
        margin: 16px 5% 0 0;
    }
    .large-top-indent{
        margin-top: 32px;
    }
    .middle-mobile-bottom-indent{
        margin-bottom: 24px !important;
    }

    .important-text.after-title{
        margin: 0 auto !important;
    }
    /*Form styles*/
    h2 + .form, .form-title + .form{
        margin-top: 50px;
    }
    /*Ajax upload*/
    #ajax-upload{
        padding-bottom: 50px;
    }
    /*Temp*/
    .main-intro-box .title{
        font-size: 24px;
        max-width: 400px;
    }
    /*Separator line*/
    .separator-line, h2 + .separator-line{
        margin: 40px auto;
        height: 70px;
    }
    .separator-line.large-top-indent{
        margin-top: 60px;
    }
    .separator-line + .title-bg-line{
        margin-top: 84px;
    }
    .technologies-separator{
        margin: -16px auto 40px;
    }
    .back-technologies + .separator-line{
        margin: 40px auto;
    }
    /*Important text*/
    .back-technologies + .important-text{
        margin-top: 40px;
    }
    /*Layout grid*/
    .layout-grid .col{
        font-size: 17px;
    }
    /*Images styles*/
    .large-img-indent{
        margin-top: 40px;
        margin-bottom: 40px;
    }
    .large-bottom-indent, .fixed-bg-box.large-bottom-indent{
        margin-bottom: 40px;
    }
    .large-img-indent.has-shadow-negative-indent{
        margin-bottom: 30px;
    }
    .small-bottom-indent{
        margin-bottom: 32px;
    }
    .largest-bottom-img-indent{
        margin-bottom: 40px;
    }
    /*Last image box*/
    .last-image-box{
        margin: 32px 0 0;
    }
    /*Content arrow box*/
    .content-arrow-box{
        margin: 0 auto 80px;
    }
    /*Developers box*/
    .separator-line + .developers{
        margin-top: 48px;
    }
    /*Clients poll*/
    .clients-poll{
        margin: 120px 0;
    }
    .clients-poll .bg-box{
        padding: 50px 16px 220px;
        margin: -70px -16px 0;
    }
    .clients-poll .awards-box{
        margin-top: -180px;
    }
    .clients-poll .awards-box:before{
        bottom: -30px;
    }
    /*In numbers*/
    .in-numbers{
        margin: 120px 0;
    }
    .in-numbers.middle-top-indent{
        margin-top: 48px;
    }
    .in-numbers .layout-grid{
        margin-top: 50px;
    }
    /*Our awards*/
    .our-awards{
        margin: -50px 0 60px;
    }
    /*Principles*/
    .principles{
        margin: 60px 0 120px;
    }
    /*Layout grid*/
    .project-awards-box{
        margin: 80px auto;
    }
    .container .project-awards-box:last-child{
        margin-bottom: 80px;
    }
    /*Technologies stack*/
    .technologies-stack-section{
        margin: 0 0 100px;
    }
    /*Our projects*/
    .our-projects-box{
        margin: 70px auto 40px;
    }
    .our-projects .name, .our-projects .item-box.even .name{
        left: 24px;
        bottom: -10px;
        font-size: 22px;
        text-align: left;
        width: 330px;
        max-width: calc(100% - 32px);
    }
    .our-projects-box .btn-link{
        margin: 80px auto 0;
    }
    .our-projects .awards{
        width: 43px;
        left: -8px;
    }
    .our-projects .awards .icon{
        width: 43px;
        height: 48px;
    }
    .our-projects .awards .icon img{
        max-width: 34px;
    }
    /*Top page image*/
    .top-page-image + h1{
        margin-top: -85px;
    }
    /*Technologies*/
    .front-technologies .text:before{
        top: -131px;
        height: 190px;
    }
    .back-technologies .text:before{
        top: -129px;
        height: 190px;
    }
    /*Text image box*/
    .separator-line + .text-img-box{
        margin-top: 54px;
    }
    .separator-line + .text-img-box.overstep-bounds{
        margin-top: 60px;
    }
    .text-img-box.negative-img-indent{
        margin-top: -42px;
        margin-bottom: 0;
    }
    .text-img-box.negative-img-indent .img-col{
        margin-bottom: -6px;
    }
    .in-brief-text + .text-img-box{
        margin-top: 40px;
    }
    .text-img-box.frame-separator, .text-img-box.overstep-bounds{
        margin-bottom: -16px;
    }
    .text-img-box.not-top-indent-early-mobile{
        margin-top: -12px !important;
    }
    .text-img-box.large-top-indent-mobile-after-text{
        margin-top: 72px;
    }
    .text-img-box .align-right img.large-shadow-negative-indent{
        margin-left: -16px !important;
        margin-bottom: -20px !important;
        max-width: calc(100% + 32px) !important;
    }


    .separator-line + .text-img-box.after-separator{
        margin-top: -72px;
    }
    /*Clients poll*/
    .clients-poll h2{
        font-size: 28px;
    }
    /*Cases*/
    .main-case-img{
        width: 100%;
        margin: 30px 0 60px;
    }
    .main-case-img.negative-indent-mobile{
        margin-bottom: -24px;
    }
    .main-case-img.no-top-indent{
        margin-top: 30px !important;
    }
    /*Last img box*/
    .last-img-box{
        margin: 40px 0 24px;
    }
    /*Before After*/
    .usual-max-w + .before-after-box{
        margin-top: 40px;
    }
    /*Dark bg box*/
    .dark-bg-box.small-top-indent-mobile{
        margin-top: 10px;
    }
    /*Video section*/
    .video-box{
        margin: 50px auto;
    }
    /*read case*/
    .video-box + .read-case{
        margin: -15px auto 0;
    }
    .read-case:after{
        margin: 16px 0 0;
    }
    /*Case project link*/
    .case-project-link{
        padding: 34px 16px 35px;
    }
    .case-project-link:before{
        font-size: 140px;
        margin: 0 0 0 -249px;
        text-shadow: 0 12px 22px rgba(0, 0, 0, .03);
    }
    .case-project-link p{
        margin-bottom: 12px;
    }
    .case-project-link a{
        font-size: 24px;
        padding-bottom: 5px;
    }
    /*Principles*/
    .principles{
        margin-bottom: 100px;
    }
    .advantages-box.principles.in-case{
        margin: 56px 0 64px;
    }
    /*Our process*/
    .process-section{
        margin: 100px 0 0;
    }
    .our-process{
        margin: 0 0 60px;
    }
    .our-process .sub-box{
        max-width: calc(100% - 80px);
    }
    .our-process .negative-title-indent{
        max-width: calc(100% - 80px) !important;
    }
    .our-process .item:after{
        right: -135px;
    }
    .our-process .process-gradient{
        right: -16px;
        width: 60px;
        bottom: 60px;
    }
    /*Video section*/
    .video-box:before{
        height: 120px;
        margin: -60px 0 0;
    }
    .video-box:after{
        font-size: 90px;
        margin: -45px 0 0 -777px;
    }
    .js-video:after{
        width: 50px;
        height: 56px;
        margin: -28px 0 0 -25px;
    }
    /*Vacancies*/
    .vacancies-list{
        margin: 48px 0 64px;
    }
    .vacancies-list .row{
        margin: 0 0 32px;
    }
    .vacancies-list .bg:before{
        bottom: -80px;
    }
    .vacancies-list p{
        margin-left: 16px;
    }
    .vacancies-list .separator-line{
        margin: 32px auto 0;
    }
    /*Vacancy inner*/
    .vacancy-inner{
        margin: 32px 0 0;
    }
    /*Contacts*/
    .contacts{
        font-size: 22px;
        line-height: 1.625em;
        margin: 50px 0;
    }
    .contacts .social-links a:before{
        font-size: 23px;
    }
    /*Asb box*/
    .asb-box{
        margin: 140px -16px 20px;
    }
    /*Daria usova design box*/
    .daria-usova-design-box{
        margin: 32px 0;
        padding: 64px 0 !important;
    }
    /*Cookies*/
    .cookie-box .container{
        padding: 0;
    }
    .cookie-box .ok{
        position: relative;
        display: block;
        right: 0;
        top: auto;
        width: 220px;
        max-width: 100%;
        margin: 16px auto 0;
    }
    /*404*/
    #error-page-box{
        margin: 0 0 40px;
    }
    #error-page-box .num{
        font-size: 120px;
    }
    #error-page-box .circle-video{
        width: 150px;
        height: 150px;
        margin: 0 20px;
    }
    #error-page-box .circle-video video{
        height: 160px;
    }
    /*Popup*/
    #popup-box .container{
        margin-bottom: 16px;
    }
    /*Ebrr popup*/
    .ebrr-popup:before{
        font-size: 150px;
    }

    .two-cols-grid-bg.in-case[data-bg-text]{
        margin-bottom: 80px;
    }
    [data-bg-text]:before{
        font-size: 90px;
    }
    .two-cols-grid-bg[data-bg-text]:before{
        bottom: -32px;
    }

    .rare-title{
        font-size: 30px;
        line-height: 1.7em;
    }
    .rare-title .bottom-text-line .line:before{
        bottom: 13px;
    }

    .boost-sales-list .title{
        font-size: 22px;
        margin: 0 0 16px;
    }
    .boost-sales-list .col{
        margin-bottom: 40px;
    }

    /*Advantages box*/
    .advantages-box.principles{
        margin: 54px 0;
    }

    /*Content form*/
    .content-form-box{
        margin: 100px 0;
    }
    .separator-line + .content-form-box{
        margin-top: 80px;
    }
    .content-form-box[data-bg-text]:before{
        font-size: 160px;
    }
    .content-form-box .text{
        width: 100%;
        padding-right: 0;
        max-width: 450px;
        margin: 0 0 48px;
    }
    .content-form-box .form{
        width: 400px;
        margin: 14px auto 0;
    }
    .content-form-box .form .btn-box{
        padding-top: 4px;
    }
    .content-form-box + .rare-title{
        margin-top: 130px;
    }

    /*Brands pwa results box*/
    .brands-pwa-results-box{
        margin: 0 0 64px;
    }
    .brands-pwa-results-box .bg-box{
        margin-top: -70px;
        padding: 72px 24px 100px;
    }
    /*Compare table*/
    .compare-box{
        margin: 54px 0 72px;
    }
    .compare-table .head .col{
        font-size: 18px;
    }
    .compare-box + .separator-line{
        margin-top: -14px;
    }
    .separator-line + .content-form-box{
        margin-top: 64px;
    }

    /*Pwa steps*/
    .pwa-steps-box{
        margin-top: 124px;
    }
    .pwa-steps{
        margin-bottom: 140px;
    }
    .pwa-steps .step-item{
        display: block;
        margin: 0 0 140px;
    }
    .pwa-steps .step-item .img-box, .pwa-steps:not(.invert) .step-item:nth-child(even) .img-box, .pwa-steps.invert .step-item:nth-child(odd) .img-box{
        width: 100%;
        max-width: 124px;
        margin: 0 auto 16px;
    }
    .pwa-steps .text, .pwa-steps:not(.invert) .step-item:nth-child(even) .text, .pwa-steps.invert .step-item:nth-child(odd) .text{
        width: 100%;
        padding: 0;
        min-height: 0;
    }
    .pwa-steps .text:before{
        top: 21px;
        bottom: -32px;
        min-height: 0;
    }
    .pwa-steps .text:after, .pwa-steps:not(.invert) .step-item:nth-child(even) .text:after, .pwa-steps.invert .step-item:nth-child(odd) .text:after{
        left: auto;
        right: -16px;
        top: auto;
        bottom: -96px;
        font-size: 140px;
        width: auto;
        margin: 0;
    }
    /*Questions grid box*/
    .questions-grid-box{
        margin-top: 64px;
    }
}
@media screen and (max-width: 450px){
    .btn-link{
        padding: 14px 0 15px;
    }
    .in-brief-text + img{
        margin-top: 32px;
    }
    /*Images styles*/
    .large-img-indent.large-top-indent-mobile{
        margin-top: 54px;
    }
    /*Developers*/
    .developers .btn-link{
        margin: 40px auto 0;
    }
    /*Dark bg box*/
    .dark-bg-box{
        margin: 48px -16px;
    }
    .dark-bg-box.small-top-tablet-indent{
        margin-top: 38px;
    }
    .dark-bg-box.large-inner-indent{
        padding: 56px 0;
    }
    .dark-bg-box.small-bottom-indent-mobile{
        margin-bottom: 60px;
    }
    /*Two cols img*/
    .dark-bg-box .two-cols-img{
        margin: 20px 0;
    }
    /*text img box*/
    .dark-bg-box + .text-img-box{
        margin-top: 58px;
    }
    .text-img-box + .text-top-tablet-indent{
        margin-top: 54px;
    }
    .after-text-img-top-indent{
        margin-top: 72px;
    }
    .text-img-box.middle-bottom-indent{
        margin-bottom: 48px;
    }
    .text-img-box.large-top-indent-mobile{
        margin-top: 72px;
    }
    /*Layout grid*/
    .layout-grid.has-bg{
        padding: 24px 0;
    }
    img + .center-position > .layout-grid{
        margin-top: 40px;
    }
    .layout-grid.negative-bottom-indent-mobile{
        margin-bottom: -36px;
    }
    /*Page anchors*/
    .page-anchors{
        text-align: center;
        margin-left: -18px;
        margin-right: -18px;
    }
    .page-anchors li{
        margin: 0 12px 14px;
    }
    /*Similar projects*/
    .similar-projects .projects-box{
        margin: 0 -16px;
    }
    .similar-projects .project{
        font-size: 22px;
    }
    .similar-projects .project-col:nth-child(even) .project{
        text-align: left;
    }
    .similar-projects .project .title, .similar-projects .project-col:nth-child(even) .project .title{
        margin: -15px 0 0 24px;
    }
    /*Footer*/
    #footer .container{
        display: block;
        padding-bottom: 80px;
        text-align: center;
    }
    #footer .mail{
        display: inline-block;
        vertical-align: top;
        margin: 0 0 60px;
    }
    /*Pwa main screen*/
    #pwa-main-screen{
        font-size: 28px;
    }
    #pwa-main-screen .text-box{
        margin-bottom: 52px;
    }
    .bottom-text-line .line:before{
        height: 6px;
        left: -8px;
        right: -8px;
    }
    #pwa-main-screen:not(.view2) .bottom-text-line .line:before{
        height: 10px;
        bottom: 9px;
        left: -8px;
        right: -8px;
    }
    #pwa-main-screen .title{
        font-size: 24px;
    }

    .important-text .bottom-text-line .line:before{
        left: -8px;
        right: -8px;
        bottom: 6px;
    }
}
@media screen and (max-width: 420px){
    h2.small-font-mobile{
        font-size: 24px;
    }
    .form-title{
        font-size: 20px;
    }
    /*Ajax upload*/
    #ajax-upload{
        padding-bottom: 30px;
    }
    /*Our projects*/
    .our-projects-box{
        margin-top: 60px;
    }
    /*Clients poll*/
    .clients-poll h2{
        font-size: 24px;
    }
    /**/
    .video-box + .title-bg-line{
        margin-top: 100px;
    }
    /*Text image box*/
    .text-img-box.large-top-indent, .dark-bg-box + .text-img-box.large-top-indent{
        margin-top: 80px;
    }
    .text-img-box.large-bottom-indent{
        margin-bottom: 80px;
    }
    /*Our process*/
    .our-process .item{
        margin-bottom: 48px;
    }
    .our-process .sub-box{
        max-width: calc(100% - 40px);
    }
    .our-process .negative-title-indent{
        font-size: 24px;
        max-width: calc(100% - 40px) !important;
        margin-bottom: 32px;
    }
    .our-process .item:before{
        height: 208px !important;
    }
    .our-process .item:after{
        right: -135px;
    }
    .our-process .process-gradient{
        right: -16px;
        width: 40px;
    }
    .our-process .negative-title-indent .title-line:before{
        top: 18px;
    }
    /*Contacts*/
    .contacts{
        font-size: 20px;
        line-height: 1.625em;
        margin: 50px 0;
    }
    .contacts .social-links a{
        margin: 0 18px;
    }
    .contacts .separator, #popup-box .contacts .separator{
        margin: 0 0 8px;
    }
    /*Asb box*/
    .asb-box{
        padding: 100px 24px;
    }
    /*Cookies*/
    .cookie-controls{
        margin: 54px auto 16px;
        max-width: 980px;
    }
    .cookie-controls .item{
        margin: 0 0 48px;
    }
    .cookie-controls .item:last-child{
        margin: 0;
    }
    .cookie-controls .checkbox-item{
        margin: 0 0 24px;
    }
    .checkbox-item.large input[type="checkbox"] + label{
        font-size: 20px;
        padding: 0 0 0 42px;
    }
    .checkbox-item.large input[type="checkbox"] + label:before{
        background-size: 26px 56px;
        width: 26px;
        height: 26px;
    }
    .checkbox-item.large input[type="checkbox"]:checked + label:before{
        background-position: 0 -30px;
    }
    /*Popup*/
    #popup-box .contacts-box{
        margin-top: 54px;
    }
    /*Ebrr popup*/
    .ebrr-popup:before{
        font-size: 120px;
    }

    .compare-box + .separator-line{
        margin-top: -24px;
    }
    .separator-line + .content-form-box{
        margin-top: 54px;
    }



    .compare-table .head .col{
        font-size: 17px;
    }
    .compare-table .col.pwa{
        width: 110px;
        max-width: 110px;
        min-width: 110px;
    }

    /*Brands pwa results box*/
    .brands-pwa-results-grid .brand{
        font-size: 28px;
    }
    /*In numbers*/
    .in-numbers.in-numbers.in-content .number{
        font-size: 50px;
    }
}
@media screen and (max-width: 390px){
    h2.after-last-img-container{
        margin-top: 32px;
    }
    h3.small-size-mobile, .h3.small-size-mobile{
        font-size: 24px;
    }
    .form .btn-box .btn, .form .btn{
        width: 100%;
    }
    /*Top page image*/
    .top-page-image + h1{
        font-size: 29px;
    }
    /*Checkboxes*/
    .checkbox-item input[type="checkbox"] + label{
        padding: 0 0 0 26px;
    }
    .btn-link{
        display: block;
        width: 100%;
        min-width: 0;
    }
    /*Intro text*/
    .main-intro-box .title{
        font-size: 23px;
        margin: 0 0 24px;
    }
    .main-intro-box .title .heart{
        display: block;
        margin: 16px auto 0;
    }
    /*Page anchors*/
    .page-anchors{
        text-align: center;
        margin-left: -10px;
        margin-right: -10px;
    }
    .page-anchors li{
        margin: 0 4px 14px;
    }
    /*Our projects*/
    .our-projects .name, .our-projects .item-box.even .name{
        left: 16px;
        font-size: 20px;
        width: calc(100% - 16px);
    }
    .our-projects .name{
        max-width: 280px !important;
    }
    .no-touchevents .developers .slick-arrow:hover:before{
        left: 0;
    }
    /*Clients poll*/
    .clients-poll{
        margin: 120px 0 110px;
    }
    /*In numbers*/
    .in-numbers{
        margin: 110px 0;
    }
    .in-numbers.middle-top-indent{
        margin-top: 32px;
    }
    .in-numbers.middle-top-indent h2, .in-numbers.middle-top-indent .h2{
        margin-top: 32px;
    }
    /*Case project link*/
    .case-project-link{
        margin: 24px -16px 70px;
    }
    .case-project-link a{
        font-size: 22px;
        padding-bottom: 5px;
    }
    /*404*/
    #error-page-box{
        margin: 0 0 24px;
    }
    #error-page-box .num{
        font-size: 100px;
    }
    #error-page-box .circle-video{
        width: 130px;
        height: 130px;
    }
    #error-page-box .circle-video video{
        height: 140px;
    }
    /*Popup*/
    #popup-box .h1{
        font-size: 26px;
    }
    /*Pwa main screen*/
    #pwa-main-screen{
        font-size: 26px;
    }
    #pwa-main-screen .title{
        font-size: 23px;
    }
    #pwa-main-screen .bg-box:not(.has-video) img{
        top: 40px;
        margin-right: -4px;
    }
    #pwa-main-screen .bg-box:not(.has-video) img:last-child{
        top: -80px;
        margin: 0 0 0 -4px;
    }

    [data-bg-text]:before{
        font-size: 84px;
    }
    .two-cols-grid-bg[data-bg-text]{
        margin-bottom: 120px;
    }
    .two-cols-grid-bg[data-bg-text]:before{
        bottom: -30px;
    }

    .rare-title{
        font-size: 27px;
    }
    .rare-title .bottom-text-line .line:before{
        bottom: 12px;
    }
    /*Content form*/
    .content-form-box[data-bg-text]:before{
        font-size: 140px;
    }

    .content-form-box + .rare-title{
        margin-top: 120px;
    }
    /*Questions grid box*/
    .questions-grid-box h3, .questions-grid-box .h3{
        font-size: 24px;
    }
}
@media screen and (max-width: 360px){
    [data-bg-text]:before{
        font-size: 80px;
    }

    .rare-title{
        font-size: 25px;
    }
    .rare-title .bottom-text-line .line:before{
        bottom: 11px;
    }
    /*Questions grid box*/
    .questions-grid-box h3, .questions-grid-box .h3{
        font-size: 23px;
    }
}
/*Custom elements*/
/*Before After*/
.twentytwenty-left-arrow, .twentytwenty-right-arrow, .twentytwenty-up-arrow, .twentytwenty-down-arrow{
    display: none;
}
.twentytwenty-container{
    box-sizing: content-box;
    z-index: 0;
    overflow: hidden;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
}
.twentytwenty-container img{
    max-width: 100%;
    position: absolute;
    top: 0;
    display: block;
}
.twentytwenty-container.active .twentytwenty-overlay,
.twentytwenty-container.active :hover.twentytwenty-overlay{
    background: transparent;
}
.twentytwenty-container.active .twentytwenty-overlay .twentytwenty-before-label,
.twentytwenty-container.active .twentytwenty-overlay .twentytwenty-after-label,
.twentytwenty-container.active :hover.twentytwenty-overlay .twentytwenty-before-label,
.twentytwenty-container.active :hover.twentytwenty-overlay .twentytwenty-after-label{
    opacity: 0;
}
.twentytwenty-container *{
    box-sizing: content-box;
}
.twentytwenty-before{
    z-index: 20;
}
.twentytwenty-after{
    z-index: 10;
}
.twentytwenty-handle{
    position: absolute;
    z-index: 40;
    left: 50%;
    top: -100px;
    margin: 0 0 0 -39px;
    height: 62px;
    width: 62px;
    border: 8px solid #fff;
    border-radius: 110%;
    background: rgb(245, 234, 56);
    background: -webkit-linear-gradient(top, rgba(245, 234, 56, 1) 0%, rgba(29, 183, 193, 1) 100%);
    background: linear-gradient(to bottom, rgba(245, 234, 56, 1) 0%, rgba(29, 183, 193, 1) 100%);
    -webkit-box-shadow: 0 10px 40px 0 rgba(0, 0, 0, .1);
    box-shadow: 0 10px 40px 0 rgba(0, 0, 0, .1);
    cursor: pointer;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.before-after.active .twentytwenty-handle, .before-after.active .twentytwenty-separator{
    -webkit-transition: none;
    transition: none;
}
.twentytwenty-handle:after{
    content: '';
    display: block;
    margin: 9px auto 0;
    width: 44px;
    height: 44px;
    border-radius: 110%;
    background: #fff url("../i/before-after-handle-arrows.svg") no-repeat 50% 50%/ 28px 11px;
}
.twentytwenty-separator{
    position: absolute;
    z-index: 39;
    top: 0;
    width: 17px;
    height: 100%;
    background: url("../i/handle-separator-shadow.png") repeat-y 100%;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
/*File upload*/
.upload-box{
    margin: 0;
    line-height: 0;
}
.form .upload-box{
    margin-top: -7px;
}
.fileinput-wrapper{
    display: block;
    margin: 0;
    line-height: 0;
    text-align: left;
}
.fileinput{
    position: relative;
    cursor: pointer;
    z-index: 1;
    overflow: hidden;
}
.fileinput input[type=file], .fileinput input[type=file]:focus, .fileinput input[type=file]:hover{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    opacity: 0;
    padding: 0;
    -ms-filter: 'alpha(opacity=0)';
    direction: ltr;
    outline: 0;
    cursor: pointer;
}
.upload-btn{
    position: relative;
    display: inline-block;
    vertical-align: top;
    font-size: 15px;
    line-height: 1.225em;
    color: #000;
    padding: 2px 0 0;
    height: 24px;
    overflow: hidden;
    cursor: pointer;
}
::-webkit-file-upload-button{
    cursor: pointer;
}
.file-selected .upload-btn{
    display: none;
}
.upload-btn:before, .fileinput-name .close:before{
    content: '\e806';
    font-size: 24px;
    line-height: 24px;
    color: #73c7bd;
    margin: -2px 15px 0 0;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}
.no-touchevents .upload-btn:hover:before{
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
}
.fileinput-name .close:before{
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
.no-touchevents .fileinput-name .close:hover:before{
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}
.fileinput-name{
    position: relative;
    display: block;
    vertical-align: top;
    font-size: 15px;
    line-height: 1.225em;
    color: #6c6c6c;
    padding: 2px 0 0 39px;
    height: 24px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
.fileinput-name .close{
    position: absolute;
    top: 1px;
    left: 0;
    width: 24px;
    height: 24px;
    padding: 0;
    background: none;
}
.fileinput-name .close:before{
    color: #f04e28;
}
.upload-box .formats{
    font-size: 11px;
    line-height: 1.4em;
    color: #6c6c6c;
    margin: -3px 0 0 40px;
}
.upload-box .file-selected + .formats, .upload-box .error-field-text + .formats{
    visibility: hidden;
}
.upload-box .error-field-text{
    margin-bottom: 0;
}
/*Slick slider*/
.slick-slider{
    position: relative;
    display: block;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}
.slick-list{
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slick-list:focus{
    outline: none;
}
.slick-list.dragging{
    cursor: pointer;
    cursor: hand;
}
.slick-slider .slick-track, .slick-slider .slick-list{
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.slick-track{
    position: relative;
    top: 0;
    left: 0;
    display: block;
}
.slick-track:before, .slick-track:after{
    display: table;
    content: '';
}
.slick-track:after{
    clear: both;
}
.slick-loading .slick-track{
    visibility: hidden;
}
.slick-slide{
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide{
    float: right;
}
.slick-slide img{
    display: block;
    width: 100%;
}
.slick-slide.slick-loading img{
    display: none;
}
.slick-slide.dragging img{
    pointer-events: none;
}
.slick-initialized .slick-slide{
    display: block;
}
.slick-loading .slick-slide{
    visibility: hidden;
}
.slick-vertical .slick-slide{
    display: block;
    height: auto;
    border: 1px solid transparent;
}
.slick-arrow{
    display: inline-block;
    vertical-align: top;
    line-height: 0;
    cursor: pointer;
}
.slick-arrow.slick-disabled{
    display: none !important;
}
.slick-prev::-moz-focus-inner, .slick-next::-moz-focus-inner{
    border: none;
}
.slick-arrow:before{
    content: '\e805';
    font-size: 20px;
    color: #fff;
}
.slick-arrow.slick-prev:before{

}
.no-touchevents .slick-arrow:hover:before{
    color: #ffaa17;
}
.slick-dots{
    display: inline-block;
    vertical-align: top;
    font-size: 0;
    margin: 8px 42px 0 44px;
}
.slick-dots li{
    display: inline-block;
    vertical-align: top;
    font-size: 0;
    line-height: 0;
    margin: 0 8px 0 7px;
    padding: 0;
    background: none;
}
.slick-dots button{
    font-size: 0;
    width: 25px;
    height: 4px;
    padding: 0;
    margin: 0 auto;
    cursor: pointer;
    text-indent: -10000px;
    border: none;
    background: rgba(255, 255, 255, .5);
}
.slick-dots .slick-active button{
    background: #fff !important;
    cursor: default;
}
.no-touchevents .slick-dots li:hover button{
    background: #ffaa17;
}
.slick-dots button::-moz-focus-inner, .slick-dots button::-moz-focus-inner{
    border: none;
}
.slick-arrow.slick-hidden{
    display: none;
}
/*LightGallery*/
.lg-icon:after{
    line-height: 27px;
    color: #383838;
}
.lg-actions .lg-next, .lg-actions .lg-prev{
    cursor: pointer;
    display: block;
    font-size: 22px;
    margin-top: -32px;
    padding: 0 24px;
    position: absolute;
    top: 50%;
    z-index: 1080;
    left: 0;
    width: 112px;
    height: 64px;
    text-align: right;
    background: #fff;
    -webkit-box-shadow: 0 -8px 24px 0 rgba(0, 0, 0, .05);
    box-shadow: 0 -8px 24px 0 rgba(0, 0, 0, .05);
}
.lg-actions .lg-next{
    left: auto;
    right: 0;
    text-align: left;
}
.lg-actions .lg-next.disabled, .lg-actions .lg-prev.disabled{
    pointer-events: none;
    opacity: .5;
}
.lg-actions .lg-prev:after{
    content: "\e805";
    position: relative;
    display: inline-block;
    vertical-align: top;
    font-size: 20px;
    line-height: 64px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
.lg-actions .lg-next:after{
    content: "\e805";
    font-size: 20px;
    line-height: 64px;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
.no-touchevents .lg-actions .lg-prev:hover:after{
    padding-right: 10px;
    opacity: .5;
}
.no-touchevents .lg-actions .lg-next:hover:after{
    padding-right: 10px;
    opacity: .5;
}
@-webkit-keyframes lg-right-end{
    0%{
        left: 0;
    }
    50%{
        left: -30px;
    }
    100%{
        left: 0;
    }
}
@-moz-keyframes lg-right-end{
    0%{
        left: 0;
    }
    50%{
        left: -30px;
    }
    100%{
        left: 0;
    }
}
@-ms-keyframes lg-right-end{
    0%{
        left: 0;
    }
    50%{
        left: -30px;
    }
    100%{
        left: 0;
    }
}
@keyframes lg-right-end{
    0%{
        left: 0;
    }
    50%{
        left: -30px;
    }
    100%{
        left: 0;
    }
}
@-webkit-keyframes lg-left-end{
    0%{
        left: 0;
    }
    50%{
        left: 30px;
    }
    100%{
        left: 0;
    }
}
@-moz-keyframes lg-left-end{
    0%{
        left: 0;
    }
    50%{
        left: 30px;
    }
    100%{
        left: 0;
    }
}
@-ms-keyframes lg-left-end{
    0%{
        left: 0;
    }
    50%{
        left: 30px;
    }
    100%{
        left: 0;
    }
}
@keyframes lg-left-end{
    0%{
        left: 0;
    }
    50%{
        left: 30px;
    }
    100%{
        left: 0;
    }
}
.lg-outer.lg-right-end .lg-object{
    -webkit-animation: lg-right-end .3s;
    -o-animation: lg-right-end .3s;
    animation: lg-right-end .3s;
    position: relative;
}
.lg-outer.lg-left-end .lg-object{
    -webkit-animation: lg-left-end .3s;
    -o-animation: lg-left-end .3s;
    animation: lg-left-end .3s;
    position: relative;
}
.lg-toolbar{
    z-index: 1080;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    height: 72px;
    padding: 12px;
    background: #fff;
    min-width: 320px;
}
.lg-toolbar .lg-icon{
    color: #000;
    cursor: pointer;
    float: right;
    font-size: 24px;
    height: 47px;
    line-height: 27px;
    padding: 10px 0;
    margin-left: 54px;
    text-align: center;
    width: 50px;
    text-decoration: none !important;
    outline: medium none;
    border: none;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
.lg-toolbar .lg-icon:hover{
    opacity: .5;
}
.lg-toolbar .lg-close:after{
    content: "\e806";
    font-size: 24px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.lg-toolbar .lg-download:after{
    content: '';
    /*content: "\e80b";
    font-size: 24px;*/
    width: 25px;
    height: 25px;
    background: url("../i/download-arrow.svg") no-repeat 50% 50%/25px 25px;
}
.lg-sub-html{
    background-color: rgba(0, 0, 0, .45);
    bottom: 0;
    color: #eee;
    font-size: 16px;
    left: 0;
    padding: 10px 40px;
    position: fixed;
    right: 0;
    text-align: center;
    z-index: 1080;
}
.lg-sub-html h4{
    margin: 0;
    font-size: 13px;
    font-weight: bold;
}
.lg-sub-html p{
    font-size: 12px;
    margin: 5px 0 0;
}
#lg-counter{
    position: relative;
    left: 7%;
    display: inline-block;
    vertical-align: top;
    font-weight: 700;
    font-size: 18px;
    line-height: 1em;
    margin: 4px 0 0;
    color: #e4e4e4;
}
#lg-counter-current{
    position: relative;
    top: 10px;
    margin: 0 4px 0 0;
    font-weight: 900;
    font-size: 32px;
    color: #dbdbdb;
}
#lg-counter-all{
    margin-left: -4px;
}
.lg-toolbar, .lg-prev, .lg-next{
    opacity: 1;
    -webkit-transition: -webkit-transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s;
    -moz-transition: -moz-transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s;
    -o-transition: -o-transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s;
    transition: transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s;
}
.lg-hide-items .lg-prev{
    opacity: 0;
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
}
.lg-hide-items .lg-next{
    opacity: 0;
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
}
.lg-hide-items .lg-toolbar{
    opacity: 0;
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
}
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-object{
    -webkit-transform: scale3d(0.5, 0.5, 0.5);
    transform: scale3d(0.5, 0.5, 0.5);
    opacity: 0;
    -webkit-transition: -webkit-transform 250ms ease 0s, opacity 250ms !important;
    -moz-transition: -moz-transform 250ms ease 0s, opacity 250ms !important;
    -o-transition: -o-transform 250ms ease 0s, opacity 250ms !important;
    transition: transform 250ms ease 0s, opacity 250ms !important;
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
}
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item.lg-complete .lg-object{
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
    opacity: 1;
}
.lg-outer .lg-thumb-outer{
    background: #fff;
    bottom: 0;
    position: absolute;
    width: 100%;
    z-index: 1080;
    max-height: 350px;
    height: 132px !important;
    padding: 0 10px;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
    -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
    -o-transition: -o-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
    transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
    -webkit-box-shadow: 0 -8px 24px 0 rgba(0, 0, 0, .05);
    box-shadow: 0 -8px 24px 0 rgba(0, 0, 0, .05);
}
.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item{
    /*cursor: -webkit-grab;
	cursor: -moz-grab;
	cursor: -o-grab;
	cursor: -ms-grab;
	cursor: grab;*/
}
.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item{
    cursor: move;
    cursor: -webkit-grabbing;
    cursor: -moz-grabbing;
    cursor: -o-grabbing;
    cursor: -ms-grabbing;
    cursor: grabbing;
}
.lg-outer .lg-thumb-outer.lg-dragging .lg-thumb{
    -webkit-transition-duration: 0s !important;
    transition-duration: 0s !important;
}
.lg-outer.lg-thumb-open .lg-thumb-outer{
    -webkit-transform: translate3d(0, 0%, 0);
    transform: translate3d(0, 0%, 0);
}
.lg-outer .lg-thumb{
    padding: 10px 0;
    height: 100%;
    margin-bottom: -5px;
}
.lg-outer .lg-thumb-item{
    cursor: pointer;
    float: left;
    overflow: hidden;
    height: 100%;
    position: relative;
    border: 1px solid #eaeaea;
}
.lg-outer .lg-thumb-item.active:after{
    content: '';
    position: absolute;
    left: 2px;
    top: 2px;
    right: 2px;
    bottom: 0;
    background: rgb(212, 225, 90);
    background: -webkit-linear-gradient(top, rgba(212, 225, 90, 1) 1%, rgba(99, 195, 206, 1) 100%);
    background: linear-gradient(to bottom, rgba(212, 225, 90, 1) 1%, rgba(99, 195, 206, 1) 100%);
    opacity: .7;
}
.lg-outer .lg-thumb-item img{
    min-width: 96px;
    min-height: 76px;
    max-width: 100%;
    opacity: 1;
}
.lg-outer.lg-has-thumb .lg-item{
    padding-bottom: 120px;
}
.lg-outer.lg-can-toggle .lg-item{
    padding-bottom: 0;
}
.lg-outer.lg-pull-caption-up .lg-sub-html{
    -webkit-transition: bottom 0.25s ease;
    -o-transition: bottom 0.25s ease;
    transition: bottom 0.25s ease;
}
.lg-outer.lg-pull-caption-up.lg-thumb-open .lg-sub-html{
    bottom: 100px;
}
.lg-outer .lg-toogle-thumb{
    background: #fff;
    border-radius: 2px 2px 0 0;
    color: #fff;
    cursor: pointer;
    font-size: 24px;
    height: 49px;
    line-height: 27px;
    padding: 5px 0;
    position: absolute;
    z-index: -1;
    right: 4.3%;
    text-align: center;
    top: -49px;
    width: 89px;
    -webkit-transition: all .2s ease;
    -moz-transition: all .2s ease;
    transition: all .2s ease;
    -webkit-box-shadow: 0 -8px 24px 0 rgba(0, 0, 0, .05);
    box-shadow: 0 -8px 24px 0 rgba(0, 0, 0, .05);
}
.lg-outer .lg-toogle-thumb:after{
    content: "\e809";
    position: relative;
    z-index: 1;
    font-size: 24px;
    line-height: 46px;
}
.lg-outer .lg-toogle-thumb:before{
    content: '';
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 70px;
    background: #fff;
}
.lg-outer .lg-toogle-thumb:hover:after{
    opacity: .7;
}
.lg-outer .lg-video-cont{
    display: inline-block;
    vertical-align: middle;
    max-width: 1140px;
    max-height: 100%;
    width: 100%;
    padding: 0 5px;
}
.lg-outer .lg-video{
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    position: relative;
}
.lg-outer .lg-video .lg-object{
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}
.lg-outer .lg-video .lg-video-play{
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;
    width: 90px;
    height: 90px;
    margin: -45px 0 0 -45px;
    /*background: url("../i/play-icon.svg") no-repeat 0 0;*/
    cursor: pointer;
}
.lg-outer .lg-video-object{
    width: 100% !important;
    height: 100% !important;
    position: absolute;
    top: 0;
    left: 0;
}
.lg-outer .lg-has-video .lg-video-object{
    visibility: hidden;
}
.lg-outer .lg-has-video.lg-video-palying .lg-object, .lg-outer .lg-has-video.lg-video-palying .lg-video-play{
    display: none;
}
.lg-outer .lg-has-video.lg-video-palying .lg-video-object{
    visibility: visible;
}
.lg-progress-bar{
    background-color: #333;
    height: 5px;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1080;
    opacity: 0;
    -webkit-transition: opacity 0.08s ease 0s;
    -moz-transition: opacity 0.08s ease 0s;
    -o-transition: opacity 0.08s ease 0s;
    transition: opacity 0.08s ease 0s;
}
.lg-progress-bar .lg-progress{
    background-color: #fff;
    height: 5px;
    width: 0;
}
.lg-progress-bar.lg-start .lg-progress{
    width: 100%;
}
.lg-show-autoplay .lg-progress-bar{
    opacity: 1;
}
.lg-autoplay-button:after{
    font-size: 24px;
    content: "\e80a";
}
.lg-show-autoplay .lg-autoplay-button:after{
    content: "\e80a";
}
.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap, .lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image{
    -webkit-transition-duration: 0s;
    transition-duration: 0s;
}
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap{
    -webkit-transition: -webkit-transform 0.3s ease 0s;
    -moz-transition: -moz-transform 0.3s ease 0s;
    -o-transition: -o-transform 0.3s ease 0s;
    transition: transform 0.3s ease 0s;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image{
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
    -webkit-transition: -webkit-transform 0.3s ease 0s, opacity 0.15s !important;
    -moz-transition: -moz-transform 0.3s ease 0s, opacity 0.15s !important;
    -o-transition: -o-transform 0.3s ease 0s, opacity 0.15s !important;
    transition: transform 0.3s ease 0s, opacity 0.15s !important;
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
}
#lg-zoom-in, #lg-zoom-out{
    position: relative;
}
#lg-zoom-in:after{
    content: "\e806";
    font-size: 24px;
}
#lg-zoom-out{
    opacity: 0.5;
    pointer-events: none;
}
#lg-zoom-out:after{
    content: '';
    position: absolute;
    height: 2px;
    width: 24px;
    top: 23px;
    left: 13px;
    background: #383838;
}
.lg-zoomed #lg-zoom-out{
    opacity: 1;
    pointer-events: auto;
}
.no-touchevents .lg-zoomed #lg-zoom-out:hover{
    opacity: .5;
}
.lg-outer .lg-pager-outer{
    bottom: 60px;
    left: 0;
    position: absolute;
    right: 0;
    text-align: center;
    z-index: 1080;
    height: 10px;
}
.lg-outer .lg-pager-outer.lg-pager-hover .lg-pager-cont{
    overflow: visible;
}
.lg-outer .lg-pager-cont{
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
    position: relative;
    vertical-align: top;
    margin: 0 5px;
}
.lg-outer .lg-pager-cont:hover .lg-pager-thumb-cont{
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.lg-outer .lg-pager-cont.lg-pager-active .lg-pager{
    box-shadow: 0 0 0 2px white inset;
}
.lg-outer .lg-pager-thumb-cont{
    background-color: #fff;
    color: #fff;
    bottom: 100%;
    height: 83px;
    left: 0;
    margin-bottom: 20px;
    margin-left: -60px;
    opacity: 0;
    padding: 5px;
    position: absolute;
    width: 120px;
    border-radius: 3px;
    -webkit-transition: opacity 0.15s ease 0s, -webkit-transform 0.15s ease 0s;
    -moz-transition: opacity 0.15s ease 0s, -moz-transform 0.15s ease 0s;
    -o-transition: opacity 0.15s ease 0s, -o-transform 0.15s ease 0s;
    transition: opacity 0.15s ease 0s, transform 0.15s ease 0s;
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
}
.lg-outer .lg-pager-thumb-cont img{
    width: 100%;
    height: 100%;
}
.lg-outer .lg-pager{
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    box-shadow: 0 0 0 8px rgba(255, 255, 255, .7) inset;
    display: block;
    height: 12px;
    -webkit-transition: box-shadow 0.3s ease 0s;
    -o-transition: box-shadow 0.3s ease 0s;
    transition: box-shadow 0.3s ease 0s;
    width: 12px;
}
.lg-outer .lg-pager:hover, .lg-outer .lg-pager:focus{
    box-shadow: 0 0 0 8px white inset;
}
.lg-outer .lg-caret{
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px dashed;
    bottom: -10px;
    display: inline-block;
    height: 0;
    left: 50%;
    margin-left: -5px;
    position: absolute;
    vertical-align: middle;
    width: 0;
}
.lg-fullscreen:after{
    content: "\e80d";
    font-size: 24px;
}
.lg-fullscreen-on .lg-fullscreen:after{
    content: "\e80c";
}
.group{
    *zoom: 1;
}
.group:before, .group:after{
    display: table;
    content: "";
    line-height: 0;
}
.group:after{
    clear: both;
}
.lg-outer{
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1050;
    opacity: 0;
    -webkit-transition: opacity 0.15s ease 0s;
    -o-transition: opacity 0.15s ease 0s;
    transition: opacity 0.15s ease 0s;
}
.lg-outer *{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.lg-outer.lg-visible{
    opacity: 1;
}
.lg-outer img{
    margin: 0;
}
.lg-outer.lg-css3 .lg-item.lg-prev-slide, .lg-outer.lg-css3 .lg-item.lg-next-slide, .lg-outer.lg-css3 .lg-item.lg-current{
    -webkit-transition-duration: inherit !important;
    transition-duration: inherit !important;
    -webkit-transition-timing-function: inherit !important;
    transition-timing-function: inherit !important;
}
.lg-outer.lg-css3.lg-dragging .lg-item.lg-prev-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-next-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-current{
    -webkit-transition-duration: 0s !important;
    transition-duration: 0s !important;
    opacity: 1;
}
.lg-outer.lg-grab img.lg-object{
    cursor: -webkit-grab;
    cursor: -moz-grab;
    cursor: -o-grab;
    cursor: -ms-grab;
    cursor: grab;
}
.lg-outer.lg-grabbing img.lg-object{
    cursor: move;
    cursor: -webkit-grabbing;
    cursor: -moz-grabbing;
    cursor: -o-grabbing;
    cursor: -ms-grabbing;
    cursor: grabbing;
}
.lg-outer .lg{
    height: 100%;
    width: 100%;
    position: relative;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    max-height: 100%;
}
.lg-outer .lg-inner{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    white-space: nowrap;
}
.lg-outer .lg-item{
    background: url("../i/gallery-loader.svg") no-repeat 50% 50%/100px 100px;
}
.lg-outer.lg-css3 .lg-prev-slide, .lg-outer.lg-css3 .lg-current, .lg-outer.lg-css3 .lg-next-slide{
    display: inline-block !important;
}
.lg-outer.lg-css .lg-current{
    display: inline-block !important;
}
.lg-outer .lg-item, .lg-outer .lg-img-wrap{
    display: inline-block;
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
}
.lg-outer .lg-item:before, .lg-outer .lg-img-wrap:before{
    content: "";
    display: inline-block;
    height: 50%;
    width: 1px;
    margin-right: -1px;
}
.lg-outer .lg-img-wrap{
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 120px 16px 48px;
}
.lg-outer.lg-thumb-open .lg-img-wrap{
    padding: 120px 16px 190px;
}
.lg-outer:not(.lg-has-thumb) .lg-img-wrap{
    padding: 52px 5px 5px;
}
.lg-outer .lg-item.lg-complete{
    background-image: none;
}
.lg-outer .lg-item.lg-current{
    z-index: 1060;
}
.lg-outer .lg-image{
    display: inline-block;
    vertical-align: middle;
    max-width: 100%;
    max-height: 100%;
    width: auto !important;
    height: auto !important;
}
.lg-outer.lg-show-after-load .lg-item .lg-object, .lg-outer.lg-show-after-load .lg-item .lg-video-play{
    opacity: 0;
    -webkit-transition: opacity 0.15s ease 0s;
    -o-transition: opacity 0.15s ease 0s;
    transition: opacity 0.15s ease 0s;
}
.lg-outer.lg-show-after-load .lg-item.lg-complete .lg-object, .lg-outer.lg-show-after-load .lg-item.lg-complete .lg-video-play{
    opacity: 1;
}
.lg-outer .lg-empty-html{
    display: none;
}
.lg-backdrop{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1040;
    background: #fff url("../i/top-page-bg.png") no-repeat 50% 0;
    background-size: cover;
    opacity: 0;
    -webkit-transition: opacity 0.15s ease 0s;
    -o-transition: opacity 0.15s ease 0s;
    transition: opacity 0.15s ease 0s;
}
.lg-backdrop.in{
    opacity: 1;
}
.lg-css3.lg-no-trans .lg-prev-slide, .lg-css3.lg-no-trans .lg-next-slide, .lg-css3.lg-no-trans .lg-current{
    -webkit-transition: none 0s ease 0s !important;
    -moz-transition: none 0s ease 0s !important;
    -o-transition: none 0s ease 0s !important;
    transition: none 0s ease 0s !important;
}
.lg-css3.lg-use-css3 .lg-item{
    will-change: transform, opacity;
}
.lg-css3.lg-use-left .lg-item{
    will-change: left, opacity;
}
.lg-css3.lg-fade .lg-item{
    opacity: 0;
}
.lg-css3.lg-fade .lg-item.lg-current{
    opacity: 1;
}
.lg-css3.lg-fade .lg-item.lg-prev-slide, .lg-css3.lg-fade .lg-item.lg-next-slide, .lg-css3.lg-fade .lg-item.lg-current{
    -webkit-transition: opacity 0.1s ease 0s;
    -moz-transition: opacity 0.1s ease 0s;
    -o-transition: opacity 0.1s ease 0s;
    transition: opacity 0.1s ease 0s;
}
.lg-css3.lg-slide.lg-use-css3 .lg-item{
    opacity: 0;
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide{
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide{
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current{
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current{
    -webkit-transition: -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
    -moz-transition: -moz-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
    -o-transition: -o-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
    transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
}
.lg-css3.lg-slide.lg-use-left .lg-item{
    opacity: 0;
    position: absolute;
    left: 0;
}
.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide{
    left: -100%;
}
.lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide{
    left: 100%;
}
.lg-css3.lg-slide.lg-use-left .lg-item.lg-current{
    left: 0;
    opacity: 1;
}
.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide, .lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide, .lg-css3.lg-slide.lg-use-left .lg-item.lg-current{
    -webkit-transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
    -moz-transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
    -o-transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
    transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
}
@media screen and (min-width: 961px){
    #lg-zoom-in, #lg-zoom-out{
        position: absolute;
        left: 50%;
        margin-left: 8px;
    }
    #lg-zoom-out{
        margin-left: -58px;
    }
}
@media screen and (max-width: 960px){
    .lg-toolbar .lg-icon{
        margin-left: 24px;
    }
    #lg-counter{
        left: 16px;
    }
    #lg-zoom-in, #lg-zoom-out{
        margin-left: 24px;
    }
}
@media screen and (min-width: 781px) and (max-height: 780px){
    .lg-outer .lg-img-wrap{
        padding: 104px 16px 32px;
    }
    .lg-outer.lg-thumb-open .lg-img-wrap{
        padding: 104px 16px 170px;
    }
}
@media screen and (min-width: 781px) and (max-height: 580px){
    .lg-outer .lg-img-wrap{
        padding: 100px 16px 26px;
    }
    .lg-outer.lg-thumb-open .lg-img-wrap{
        padding: 100px 16px 156px;
    }
}
@media screen and (max-width: 780px){
    .lg-toolbar{
        height: 48px;
        padding: 0 12px;
    }
    .lg-toolbar .lg-icon{
        height: 48px;
        margin-left: 14px;
    }
    #lg-counter{
        left: 16px;
    }
    #lg-zoom-in, #lg-zoom-out{
        margin-left: 6px;
    }
    .lg-toolbar .lg-close:after, .lg-toolbar .lg-download:after, .lg-autoplay-button:after, .lg-fullscreen:after, #lg-zoom-in:after{
        font-size: 20px;
        line-height: 26px;
    }
    #lg-zoom-out:after{
        width: 20px;
    }
    .lg-toolbar .lg-download:after{
        position: relative;
        top: 2px;
        width: 21px;
        height: 21px;
        background-size: 21px 21px;
    }
    #lg-counter{
        left: 0;
    }
    .lg-outer .lg-img-wrap{
        padding: 80px 16px 32px;
    }
    .lg-outer.lg-thumb-open .lg-img-wrap{
        padding: 80px 16px 140px;
    }
    .lg-outer .lg-thumb-outer{
        height: 100px !important;
    }
    .lg-actions .lg-next, .lg-actions .lg-prev{
        text-align: center;
        width: 56px;
        height: 48px;
        margin-top: -54px;
        padding: 0;
    }
    .lg-actions .lg-next.disabled, .lg-actions .lg-prev.disabled{
        pointer-events: none;
        opacity: .5;
    }
    .lg-actions .lg-prev:after{
        font-size: 18px;
        line-height: 48px;
    }
    .lg-actions .lg-next:after{
        font-size: 18px;
        line-height: 48px;
    }
    .no-touchevents .lg-actions .lg-prev:hover:after{
        padding-right: 0;
        opacity: .5;
    }
    .no-touchevents .lg-actions .lg-next:hover:after{
        padding-right: 0;
        opacity: .5;
    }
    .lg-outer .lg-toogle-thumb{
        height: 40px;
        right: 16px;
        top: -40px;
        width: 72px;
    }
    .lg-outer .lg-toogle-thumb:after{
        font-size: 22px;
        line-height: 32px;
    }
    .lg-outer .lg-toogle-thumb:before{
        height: 60px;
    }
}
@media screen and (max-width: 590px){
    .twentytwenty-handle{
        margin: -28px 0 0 -28px;
        height: 46px;
        width: 46px;
        border: 5px solid #fff;
    }
    .twentytwenty-handle:after{
        margin: 6px auto 0;
        width: 34px;
        height: 34px;
        background: #fff url("../i/before-after-handle-arrows.svg") no-repeat 50% 50%/ 20px 8px;
    }
    /*Pwa content*/
    #pwa-landing-content{
        margin-bottom: 0;
    }
}
@media screen and (max-width: 490px){
    .lg-toolbar .lg-icon{
        width: 40px;
    }
    .lg-outer.lg-thumb-open .lg-img-wrap{
        padding: 80px 16px 120px;
    }
    .lg-outer .lg-thumb-outer{
        height: 80px !important;
    }
    .lg-outer .lg-toogle-thumb{
        width: 56px;
    }

    .project-awards-box.large-top-indent{
        margin-top: 80px;
    }
}
@media screen and (max-width: 420px){
    .lg-toolbar{
        height: 48px;
        padding: 0 0 0 10px;
    }
    .lg-toolbar .lg-icon{
        margin-left: 0;
    }
    #lg-counter{
        left: 0;
    }
    #lg-zoom-in, #lg-zoom-out{
        margin-left: 0;
    }
    .lg-toolbar .lg-close:after, .lg-toolbar .lg-download:after, .lg-autoplay-button:after, .lg-fullscreen:after, #lg-zoom-in:after{
        font-size: 18px;
    }
    #lg-zoom-out:after{
        width: 18px;
    }
    .lg-toolbar .lg-download:after{
        top: 3px;
        width: 19px;
        height: 19px;
        background-size: 19px 19px;
    }
}