﻿

body.open {
    overflow: hidden;
    height: 100%;
    width: 100%;
    position: fixed;
}

#wrapper {
	overflow: hidden;
	position:  relative;
}


input,
textarea,
button,
select,
a {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}


input:invalid {
    box-shadow: none;
}

body {
		margin: 0;
		font-family: 'Roboto', sans-serif;
		font-size: 16px;
		font-weight: normal;
		line-height: 1.2;
		-ms-text-size-adjust: 100%;
		-moz-text-size-adjust: 100%;
		-webkit-text-size-adjust: 100%;
		background:  url(../images/bg.jpg) repeat-y top;
		color: #120e3c;
}
*, :before, :after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}




/**
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    contenteditable attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that are clearfixed.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.cf:before,
.cf:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.cf:after {
    clear: both;
}

/**
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.cf {
    *zoom: 1;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

ul, ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

h1,h2,h3,h4,h5,h6, p {
	margin: 0;
	font-weight: normal;
}

a {
	text-decoration: none;
	color: #120e3c;
}

#map {
	height: 735px;
	width: 100%;
	clear:  both;
}

.container {width: 1035px;margin: 0 auto;}
header {
    position: fixed;
    left:  0;
    top: 0;
    width: 100%;
    z-index: 10;
}
header .container {
    display:  flex;
    align-items:  center;
    justify-content:  space-between;
    position:  relative;
    padding: 5px 0;
}
.logo {
    display:  flex;
    align-items:  center;
    margin-left: -379px;
    position:  relative;
    margin-top: 5px;
}
.logo .img {}
.step-1 .logo p {
	color: #7E8098;
}
.step-2 .logo p {
	color: #9398AB;
}
.step-3 .logo p {
	color: #9398AB;
}
.step-4 .logo p {
	color: #9398AB;
}
.step-5 .logo p {
	color: #9398AB;
}
.step-6 .logo p {
	color: #08143F;
}
.logo p {
    font-size:  14px;
    color:  #fff;
    margin-left: 33px;
    text-transform:  uppercase;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    /* color: #000; */
}

header .fill {
    background: #fff;
    position:  absolute;
    width: 1000%;
    height:  100%;
    left:  0;
    top: 0;
    z-index: 0;
}
header .filled {
    background: white;
    position:  absolute;
    width: 0;
    height:  100%;
    left:  0;
    top: 0;
    z-index: 0;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
}
header.step-1 .filled  {
	width: 72px;
	left: -72px;
}
header.step-2 .filled  {
	width: 187px;
	left: -187px;
}
header.step-3 .filled  {
	width: 301px;
	left: -301px;
}
header.step-4 .filled  {
	width: 409px;
	left: -409px;
}
header.step-5 .filled  {
	width: 445px;
	left: -445px;
}
header.step-6 .filled  {
	width: 445px;
	left: -445px;
}
#nav {
    position:  relative;
    margin-top:  8px;
    margin-left: 14px;
}
#nav ul {
    display:  flex;
    align-items:  center;
}
#nav li {
    margin-right: 72px;
}
#nav a:hover {
	text-decoration: underline;
}
#nav a {
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
#nav ul li:last-of-type {
    margin: 0;
}
.header-right .inner {
    text-align:  right;
    margin-right: 20px;
}
.header-right .phone + a {
}
.header-right .phone + a:hover {
	text-decoration: underline;
}
.header-right {
    display:  flex;
    align-items:  center;
    position:  relative;
    margin-right: -346px;
    margin-top: 6px;
}
.header-right .phone {
    font-size:  23px;
    font-weight: 900;
    display:  block;
    /* margin-right: 33px; */
    white-space:  nowrap;
    margin-bottom: 1px;
}
.header-right .call {}
.call:before {
	content: '';
	display: block;
	width: 12px;
	height: 13px;
	background: url(../images/call.png);
	position: absolute;
	left: 24px;
	top: 20px;
	z-index: 9;
}
.call:hover {/*background: #d21d38;*/background: #000;}
.call {
    display:  block;
    height:  50px;
    line-height: 54px;
    width:  200px;
    border-radius:  4px;
    position:  relative;
    text-align:  center;
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
    background-color: #F1203F; /* For browsers that do not support gradients */
    background-image: linear-gradient(to right, #F1203F, #E85146); /* Standard syntax (must be last) */
    color: #fff;
    padding-left: 9px;
    /* letter-spacing: -1px; */
    font-size: 14px;
    min-width: 200px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
.main .child.active {
	transform: scale(1.2);
}
.main .child {
	 background: url(../images/main.jpg) no-repeat top;
	 width:  100%;
	 height:  100%;
	 left:  0;
	 top: 0;
	 position:  absolute;
	 z-index: -1;
	 transition: all .5s;
}
.main {
    height:  1080px;
    /* background: url(../images/main.jpg) no-repeat top; */
    padding-top: 18vh;
    color: #fff;
    position:  relative;
    overflow:  hidden;
}
.main h1 {
    font-size:  54px;
	/*font-size:  62px;*/
    font-weight:  900;
    margin-bottom: 30px;
    line-height: 1.3;
}
.main .line {
    display:  flex;
    align-items:  center;
    /*margin-bottom: 46px;*/
	margin-bottom: 40px;
}
.main .line p:before {
	content: '';
	display: block;
	width: 100%;
/*	width: 242px;*/
	height: 17px;
	background: url(../images/under.png);
	position: absolute;
	left: 0;
	bottom: 2px;
	z-index: -1;
}
.main .line p {
    font-size:  36px;
    font-weight: 900;
    position:  relative;
    z-index: 0
}
.main .line span {
    font-size:  22px;
    margin-left: 31px;
}
.main ul {
    margin-bottom: 40px;
}
.main ul li {
    margin-bottom: 14px;
}

.btn {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
    background-color: #F1203F;
    background-image: linear-gradient(to right, #F1203F, #E85146);
    color: #fff;
    display:  block;
    text-align:  center;
    border-radius: 4px;
    height:  55px;
    line-height: 55px;
    width:  225px;
    text-transform: uppercase;
    font-size: 14px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
.btn span {
	display: block;
}

.btn::before {
	content: attr(data-text);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	-webkit-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
}


.btn::before,
.btn > span {
	/* padding: 1em 2em; */
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	-webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
	transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
}
.btn:hover::before {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.btn:hover > span {
	-webkit-transform: translate3d(0, 100%, 0);
	transform: translate3d(0, 100%, 0);
}








.call span {
	display: block;
}

.call::after {
	content: attr(data-text);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	-webkit-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
}


.call::after,
.call > span {
	/* padding: 1em 2em; */
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	-webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
	transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
}
.call:hover::after {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.call:hover > span {
	-webkit-transform: translate3d(0, 100%, 0);
	transform: translate3d(0, 100%, 0);
}





.main .btn {}
.title:before {
	content: '';
	display: block;
	width: 8px;
	height: 44px;
	background: #EC3A43;
	position: absolute;
	left: -30px;
	top: 0;
}
.title {
    font-size:  36px;
    font-weight:  700;
    position:  relative;
}
.what {
    padding-top: 205px;
    padding-bottom: 175px;
}
.what .title {
    margin-bottom: 88px;
}
.what-wrap {
    margin-bottom: 8px;
}
.vignette {
	-webkit-box-shadow: inset 0px 0px 85px rgba(0,0,0,0.4);
	-moz-box-shadow:    inset 0px 0px 85px rgba(0,0,0,0.4);
	box-shadow:         inset 0px 0px 85px rgba(0,0,0,0.4);
}

.what .btn {
    width: 345px;
    margin: 0 auto;
}
.what-item:nth-of-type(3n + 4){
	clear: both;
}
.what-item:nth-of-type(3n + 3){
	margin-right: 0;
}
.what-item:hover p {
	color: #ed3742;
}
.what-item {
    width:  314px;
    float:  left;
    margin-bottom: 116px;
    margin-right: 46px;
}
.what-item .img {
    position:  relative;
    margin-bottom: 26px;
}
.what-item p:hover:before {        
        content: '';
	display: block;
	width: 32px;
	height: 3px;
	background: #ed3742;
	position: absolute;
	left: -39px;
	top: 10px;
}
.what-item p {
    color: #ed3742;
    position:  relative;
    bottom: 10px;
    left: 5px;
    top: 10px;
    font-weight: 600;
}
.what-item img {
    display:  block;
}
.what-item h3 {
    font-size:  24px;
    font-weight: 900;
    margin-bottom: 11px;
    margin-left: 5px;
}
.what-item a:hover:before {
	content: '';
	display: block;
	width: 40px;
	height: 4px;
	background: #F63218;
	position: absolute;
	left: -45px;
	top: 6px;
        
}
.what-item a:hover {
	color: #f63218;
	font-weight: 700;
	display: block;
	position: relative;
	margin-left: 15px;
}
.what-item a {
    color:  #f63218;
    font-weight: 700;
    display:  block;
    margin-left: 10px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.reasons {
    height:  841px;
    /* background:  url(../images/reasons.jpg) no-repeat top; */
    padding-top: 100px;
    color: #fff;
}
.reasons h2:before {
	content: '';
	display: block;
	width: 130px;
	height: 9px;
	background: #fff;
	position: absolute;
	left: -150px;
	top: 50%;
 -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.reasons h2 {
    font-size:  103px;
    font-weight:  900;
    position:  relative;
    margin-bottom: -9px;
    margin-left: -6px;
}
.reasons h3 {
    font-size:  42px;
    font-weight:  300;
    margin-bottom: 48px;
    margin-left: -4px;
}
.reasons .btn {
    margin-left: 16px;
}
.reasons-wrap {
    margin-bottom: 83px;
    padding-left: 8px;
}
.reason-item {
    display:  flex;
    align-items:  center;
    margin-bottom: 39px;
}
.reason-item .number {
    font-size:  31px;
    width:  25px;
    height:  25px;
    border:  5px solid #E94945;
    padding-left:  5px;
    font-family: 'Exo 2';
    font-weight: 900;
    line-height:  0;
    padding-top: 11px;
}
.reason-item p {
    font-size:  18px;
    margin-left: 40px;
}

.portfolio{
    padding-top: 211px;
    padding-bottom: 208px;
}
.portfolio .title {
    margin-bottom: 76px;
}
.portfolio-wrap {}
.portfolio-item {
    margin-bottom: 80px;
}
.portfolio-item.hidden {
	display: none;
}
.portfolio .slider {
    width:  484px;
    float:  left;
    box-shadow: 0 0 50px rgba(69, 83, 94, 0.35);
    position:  relative;
}
.portfolio .slider-inner {
}
.portfolio .img {}
.portfolio .img img {}
.nav {
    position:  absolute;
    right: 6px;
    bottom: -45px;
    display:  flex;
    align-items:  center;
}
.nav a {
    display:  block;
    width:  27px;
    height: 18px;
}
.nav a.prev:hover {
	background: url(../images/prev-hover.png);
}
.nav a.next:hover {
	background: url(../images/next-hover.png);
}
.nav a.prev {
    background: url(../images/prev.png);
}
.nav a.next {
    background: url(../images/next.png);
    margin-left: 15px;
}
.portfolio-item.i2 {}
.portfolio-item.i2 .content {
    padding: 0;
    text-align:  right;
    padding-right: 132px;
}
.portfolio-item.i2 .slider {
    float: right;
}
.portfolio-item .content {
    float:  left;
    width:  calc(100% - 484px);
    padding-left: 125px;
}
.portfolio h3:before {
	content: '';
	display: block;
	width: 81px;
	height: 5px;
	background: #000;
	position: absolute;
	left: -100px;
	top: 50%;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 9;
}
.portfolio-item.i2 h3 {}
.portfolio-item.i2 h3:before {
    left:  auto;
    right: -111px;
    top: 15px;
}
.portfolio h3 {
    font-size:  28px;
    font-weight:  900;
    margin-bottom: 47px;
    position:  relative;
    text-transform:  uppercase;
}
.portfolio .line {
    margin-bottom: 30px;
}
.portfolio .line:nth-of-type(2) p {
	font-size: 20px;
}
.portfolio .line p {
    font-size: 24px;
    /* letter-spacing: -1px; */
}
.portfolio .line h5 {
    font-size:  14px;
    color:  #bbbac9;
    font-weight:  300;
    margin-bottom: 5px;
}
.portfolio .line h4 {
    font-size: 16px;
    margin-top: 18px;
}
.portfolio-item.i2 .row {
    float:  right;
}
.portfolio-item.i2 .row-item {}
.portfolio .row {
    display:  flex;
    margin-bottom: 73px;
    padding-top: 17px;
}
.portfolio .row-item:last-of-type {
	margin: 0;
}
.portfolio .row-item {
    margin-right: 89px;
}
.portfolio-item.i2 .submit {
	float: right;
}
.portfolio .submit {}
.portfolio .row-item p {
    font-size:  14px;
    color:  #bbbac9;
    font-weight:  300;
    margin-bottom: 5px;
}
.portfolio .row-item .number {
    display:  flex;
    align-items:  baseline;
}
.portfolio .row-item .i1 {
    font-size:  84px;
    font-weight: 900;
    margin-right: -5px;
    display:  block;
    line-height: 1;
}
.portfolio .row-item .i2 {
    transform: rotate(-90deg);
    display:  block;
    position:  relative;
    bottom: 12px;
    font-size:  18px;
    font-weight: 300;
}
.portfolio .btn {
    width: 345px;
    margin: 0 auto;
}

.how {
    background:  url(../images/how.jpg) repeat-y top;
    padding-top: 152px;
    padding-bottom: 171px;
}
.how-wrap {}
.how .title {
    margin-bottom: 90px;
}
.how-item:nth-of-type(3n + 3){
	margin-right: 0;
}
.how-item {
    width: 343px;
    height:  128px;
    background:  #fff;
    float:  left;
    position:  relative;
    margin-bottom: 3px;
    margin-right: 3px;
    padding-top:  27px;
    padding-left: 46px;
}
.how-item .number {
    position:  absolute;
    font-weight:  500;
    left: 6px;
    top: 7px;
}
.how-item .row {
    display:  flex;
    align-items:  center;
}
.how-item .icon {
    width:  100px;
}
.how-item .icon img {}
.how-item p {
    font-weight:  500;
}

.calc {
    height:  639px;
    background:  url(../images/calc.jpg) no-repeat top;
    padding-top: 184px;
}
/*.calc h2:before {
	content: '';
	display: block;
	width: 112px;
	height: 8px;
	background: #F5F6FC;
	position: absolute;
	left: -140px;
	top: 34px;
}*/
.calc h2 span {
	content: '';
	display: block;
	width: 112px;
	height: 8px;
	background: #F5F6FC;
	position: absolute;
	left: -140px;
	top: 34px;
}
.calc h2 {
    font-size:  59px;
    color:  #fff;
    font-weight:  900;
    margin-bottom: 76px;
    position:  relative;
}
.calc .btn {}

.about {
    padding-top:  150px;
    padding-bottom: 190px;
}
.about-wrap {
    display:  flex;
    justify-content: space-between;
}
.about .title {
    margin-bottom: 66px;
}
.about-item {text-align:  center;}
.about-item .number {
    font-size:  84px;
    font-weight:  900;
    color:  #F3363F;
    margin-bottom: 12px;
}
.about-item .number span {
    font-size:  18px;
    color: #ef6240;
}
.about-item p {
    font-size: 18px;
}

.partners {
    background:  #F5F6FC;
    padding-top:  150px;
    padding-bottom: 175px;
}
.partners .title {
    margin-bottom: 76px;
    float:  left;
}
.partners .nav-1 {
    float:  right;
    margin-bottom: 35px;
    margin-right: -55px;
}
.nav-1 {
    display:  flex;
    align-items:  center;
}
.nav-1 a {
    display: block;
    width: 45px;
    height: 45px;
    background-color:  #fff !important;
    border-radius: 50%;
}
.nav-1 .prev:hover {
    background: url(../images/prev-1-hover.png) no-repeat center;
}
.nav-1 .next:hover {
    background: url(../images/next-1-hover.png) no-repeat center;
}
.nav-1 .prev {
    background: url(../images/prev-1.png) no-repeat center;
}
.nav-1 .next {
    background: url(../images/next-1.png) no-repeat center;
    margin-left: 15px;
}
.partners-wrap {}
.partner-item {
    height: 215px;
    width: 408px;
    background: #fff;
    display:  flex;
    align-items:  center;
    justify-content:  center;
}
.partner-item .img {}
.partner-item .img img {}

.boss {
    padding-top: 158px;
    padding-bottom: 195px;
}
.boss-wrap {}
.boss .left {
    width:  596px;
    float:  left;
    position:  relative;
}
.boss .img {
    position:  relative;
    max-height: 444px;
}
.boss .img img {
    margin-left: -352px;
}
.boss .left p {
    font-size:  14px;
    /* position:  absolute; */
    /* left: 208px; */
    /* bottom: 170px; */
    padding-left: 236px;
    position: relative;
    margin-bottom: 3px;
}
.boss .left h3 {
    font-size: 35px;
    /* position: absolute; */
    /* left: 208px; */
    /* bottom: 123px; */
    font-weight: 900;
    position:  relative;
    padding-left: 234px;
}
.boss .right {
    float:  left;
    width: calc(100% - 596px);
    padding-top:  104px;
    padding-left: 35px;
}
.boss .title {
    margin-bottom: 112px;
}
.boss .quote:before {
	content: '';
	display: block;
	width: 35px;
	height: 28px;
	background: url(../images/quote-1.png);
	position: absolute;
	left: -45px;
	top: -49px;
}
.boss .quote:after {
	content: '';
	display: block;
	width: 35px;
	height: 28px;
	background: url(../images/quote-2.png);
	position: absolute;
	right: -13px;
	bottom: -48px;
}
.boss .quote {
    position:  relative;
}
.boss .quote p {
    font-size:  18px;
    color:  #5d5c6b;
    font-style:  italic;
    margin-bottom: 33px;
    line-height: 1.5;
}
.boss .quote p:last-of-type {
    margin: 0;
}

.cert {
    background:  #F5F6FC;
    padding-top: 144px;
    padding-bottom: 67px;
}
.cert .title {
    margin-bottom: 61px;
}
.cert .nav-1 {
    justify-content:  center;
}
.cert-wrap {
    margin-bottom: 52px;
}
.cert .img {
    padding: 40px 0;
}
.cert .img img {
    width:  auto !important;
    margin:  0 auto;
    box-shadow: 0 0 19px rgba(0, 0, 0, 0.34);
}

section.last{height:  1143px;background:  url(../images/last.jpg) no-repeat top;padding-top: 176px;}
section.last-wrap {}
section.last .img {
    width: calc(100% - 590px);
    float:  left;
    position:  relative;
}
section.last .img img {
    display:  block;
    margin-top: 209px;
    margin-left: -128px;
}
section.last .left {
    width:  590px;
    float:  left;
}
section.last form h2:before {
	content: '';
	display: block;
	width: 114px;
	height: 6px;
	background: #000;
	position: absolute;
	left: -130px;
	top: 19px;
}
section.last form h2 {
	font-size: 32px;
	font-weight: 900;
	position: relative;
	margin-bottom: 41px;
}
section.last form {
    border:  20px solid #F31D3F;
    padding: 57px 72px 69px;
    background: #fff;
}
input[type='text']{
    width:  100%;
    height:  60px;
    border:  1px solid #C7CAD5;
    border-radius: 4px;
    outline: none;
    padding-left: 25px;
    color: #545d6b;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
}
section.last input[type='text']{}
.submit:after {
	content: '';
	display: block;
	width: 37px;
	height: 37px;
	background: url(../images/submit.png);
	position: absolute;
	right: 5px;
	top: 5px;
	box-shadow: 0px 3px 10px rgba(235, 66, 68, 0.49);
	border-radius: 50%;
}
/*.submit:hover {
	
background-color: #F1203F;
	
background-image: linear-gradient(to right, #F1203F, #E85146);
	
color: #fff;
	
border-color: #f0223f;
}*/
.submit {
    display:  block;
    position:  relative;
    width: 218px;
    height:  48px;
    line-height:  48px;
    border:  1px solid #3F4854;
    border-radius:  4px;
    text-align:  center;
    padding-right: 42px;
    color:  #3f4854;
    font-size: 14px;
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
    clear: both;
    background:  transparent;
    outline:  none;
    cursor:  pointer;
    text-transform:  uppercase;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    position: relative;
    z-index: 1;
    overflow: hidden;
}






.submit span {
	display: block;
}

.submit::before {
	content: attr(data-text);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #f0223f;
	-webkit-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
	color: #fff;
	padding-right: 28px;
}


.submit::before,
.submit > span {
	/* padding: 1em 2em; */
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	-webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
	transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
}
.submit:hover::before {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.submit:hover > span {
	-webkit-transform: translate3d(0, 100%, 0);
	transform: translate3d(0, 100%, 0);
}






section.last .agree {
	margin-bottom: 41px;
	margin-top: -9px;
}
section.last .submit {
    width: 225px;
    min-width: 225px;
    padding-right: 46px;
}
.form-item {
}
section.last .form-item {
    margin-bottom: 27px;
}
.form-item p {
    font-size:  14px;
    color:  #a7b1bf;
    margin-bottom: 10px;
}

section.last .att {
    margin-left: 4px;
    white-space: nowrap;
}
section.last .att span:before, .att span:before {
	content: '';
	display: block;
	width: 21px;
	height: 20px;
	background: url(../images/file.png);
	position: absolute;
	left: -27px;
	top: -3px;
}
.inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}
section.last .att span:hover, .att span:hover {border-color: transparent;}
section.last .att span, .att span {
    display: inline-block;
    color: #3f4854;
    position:  relative;
    cursor: pointer;
    font-size: 13px;
    text-transform:  uppercase;
    border-bottom: 1px dotted;
    margin-left: 40px;
    font-family: 'Roboto Condensed', sans-serif;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.remodal .lined {
    display:  flex;
    align-items:  center;
}
.remodal .lined .submit {
    min-width: 250px;
}
.remodal .lined .att {
    white-space:  nowrap;
}
section.last .row {
    display:  flex;
    align-items:  center;
    padding-left: 7px;
}
.agree input {
    display: none;
}
.remodal .agree label {
	    font-family: 'Roboto Condensed', sans-serif;
	    font-weight: 300;
}
.agree label:before {
	content: '';
	display: block;
	width: 17px;
	height: 15px;
	background: url(../images/check.png);
	position: absolute;
	left: 0;
	top: 0px;
}

.agree label {
    font-size: 14px;
    cursor:  pointer;
    display:  block;
    position:  relative;
    padding-left: 25px;
    color:  #92a2b6;
    font-weight: 300;
}

input[type=checkbox]:checked + label:before {
    content: '';
    background: url(../images/checked.png);
    position: absolute;
}


.contacts .container {
	position: relative;
}
.contacts {}
.contacts-wrap {
    position:  absolute;
    right:  0;
    top: 80px;
    z-index:  9;
    background:  #fff;
    width:  100%;
    max-width: 445px;
    padding: 60px 9px 58px 36px;
}
.contacts h2 {
    font-size:  24px;
    color: #002450;
    font-weight: 700;
    margin-bottom: 34px;
}
.contacts .header {
    display:  flex;
    align-items:  center;
    margin-bottom: 26px;
}
.contacts .icon {
    width: 21px;
}
.contacts h3 {
    font-size:  14px;
    color: #8998ab;
    font-family: 'Roboto Condensed', sans-serif;
}
.contacts .inner {
    padding-left: 21px;
    margin-bottom: 34px;
}
.contacts .inner p {
    color: #002450;
    font-size:  18px;
}
.contacts .inner p span {
    font-weight: 500;
}
.contacts .phone:first-of-type {
	font-weight: 900;
}
.contacts .phone {
    font-size:  29px;
    color: #002450;
    font-weight: 700;
    display:  block;
}
.contacts .mail:hover {
	border-color: transparent;
}
.contacts .mail {
    font-size:  18px;
    color: #0373bf;
    border-bottom: 1.5px dotted;
    display: inline-block;
    position:  relative;
    top: -6px;
}

.contacts .call {}

footer {
    background:  #06091D;
    color:  #fff;
    padding: 49px 0;
}
.footer-left {
    float:  left;
    margin-left: -36px;
}
.footer-left h2 {
    font-size:  18px;
    font-weight:  900;
    color: #f5f6fc;
}
.footer-left p {
    color:  #f5f6fc;
    font-size:  14px;
    font-weight: 300;
}
footer .download:before {
	content: '';
	display: block;
	width: 20px;
	height: 25px;
	background: url(../images/download.png);
	position: absolute;
	left: -31px;
	top: -4px;
}
footer .download:hover {
	border-color: transparent;
}
footer .download {
    float:  right;
    display:  inline-block;
    position:  relative;
    color:  #f5f6fc;
    font-size:  14px;
    border-bottom: 1px dotted;
    margin-top: 11px;
    margin-right: 50px;
}

.scroll {
    position:  fixed;
    right: 83px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 9;
}

.p-wrap {
	width: calc(100% + 204px);
	margin-left: 10px;
	clear:  both;
}

.remodal {
    text-align:  left;
    max-width:  590px;
    border: 20px solid #EE3542;
    padding: 75px 60px 80px;
}
.remodal h2:before {
	content: '';
	display: block;
	width: 113px;
	height: 6px;
	background: #000;
	position: absolute;
	left: -145px;
	top: 17px;
}
.remodal h2 {
    font-size:  32px;
    font-weight:  900;
    position:  relative;
    margin-bottom: 60px;
}
.remodal .agree {
    margin-bottom: 23px;
}
.remodal .submit {
    width: 250px;
}
.remodal .form-item {
    margin-bottom: 30px;
}

.portfolio-item.hidden:last-of-type {
	margin-bottom: 0;
}

.partners .nav-1 {
	/* display: none; */
}

input.error {
    border-color: red !important;
}

@media screen and (max-width: 1800px){
	.logo {
		margin-left: -80px;
	}
	
	#nav li {
		margin-right: 20px;
	}
	
	.header-right {
		margin-right: -115px;
		margin-left: 15px;
	}
	
	#nav a {
		font-size: 14px;
	}
	
	.logo p {
		font-size: 12px;
		color: #000;
	}
	
	.header-right .phone {
		font-size: 18px;
		/* margin-right: 20px; */
	}
	
	.partner-item {
		width: 275px;
		padding: 15px;
		width: 100%;
	}
	
	.partner-item img {
		max-width: 100%;
	}
}

@media screen and (max-width: 1300px){
	.logo {
		margin-left: 0;
	}
	
	.container {
		width: 95%;
	}
	
	.header-right {
		margin-right: 0;
	}
	
	#nav {
		/*display: none;*/
	}
	
	header .filled {
		width: 500px;
		left: -500px;
	}
	
	.what {
		padding: 40px 0;
	}
	
	.what-item {
		float: none;
		display: inline-block;
		vertical-align: top;
	}
	
	.what-item:nth-of-type(3n + 3) {
		margin-right: 46px;
	}
	
	.what-item:nth-of-type(2n + 2) {
		margin-right: 0;
	}
	
	.what-wrap {
		max-width: 679px;
		margin: 0 auto;
	}
	
	.what .title {
		margin-bottom: 30px;
	}
	
	.what-item {
		margin-bottom: 30px;
	}
	
	.portfolio-item .content {
		padding-left: 90px;
	}
	
	.scroll {
		display: none;
	}
	
	.portfolio-item.i2 .content {
		padding-right: 90px;
	}
	
	.portfolio {
		padding: 50px 0;
	}
	
	.how {
		padding: 50px 0;
	}
	
	.title:before {
		left: -15px;
	}
	
	.how .title {
		margin-bottom: 30px;
	}
	
	.how-item {
		width: 49.5%;
		margin-right: 1%;
	}
	
	.how-item:nth-of-type(3n + 3) {
		margin-right: 1%;
	}
	
	.how-item:nth-of-type(2n + 2) {
		margin-right: 0;
	}
	
	.about {
		padding: 50px 0;
	}
	
	.about .title {
		margin-bottom: 30px;
	}
	
	.partners .nav-1 {
		margin-right: 0;
	}
	
	.partners {
		padding: 50px 0;
	}
	
	.partner-item {
		width: 235px;
		padding: 10px;
		width: 100%;
	}
	
	.boss .left {
		float: none;
		margin: 0 auto;
	    padding-left: 88px;
	}
	
	.boss .title {
		display: none;
	}
	
	.boss .right br {
		display: none;
	}
	
	.boss .right {
		float: none;
		width: 100%;
		padding-right: 25px;
	}
	
	.boss {
		padding: 70px 0;
	}
	
	.cert {
		padding: 50px 0;
	}
	
	.cert .title {
		margin-bottom: 30px;
	}
	
	.cert-wrap {
		margin-bottom: 20px;
	}
	
	.footer-left {
		margin-left: 0;
	}
	
	footer .download {
		/*margin-right: 0;*/
		    margin-right: 50px;
	}
	
	/*.what-item:last-of-type {
		display: none;
	}*/
	
	#nav a {
		font-size: 12px;
		line-height: 1;
		display: block;
	}
}


@media screen and (max-width: 1023px){
	#nav {
		display: none;
	}	
	
	.container {
		width: 725px;
	}
	
	header .fill {
		left: 50%;
	}
	
	header .filled {
		display: none;
	}
	
	.logo p {
		color: #fff !important;
	}
	
	.header-right .call {
		display: none;
	}
	
	.header-right .phone {
		font-size: 25px;
		/*margin-right: 56px;*/
		text-align:center;
	}

	.header-right .mail {
		text-align:center;
	}

	.header-right .inner {
		margin: 0;
	}
	
	.header-right .phone + a {
		/*display: none;*/
	}
	.main h1 {
		font-size: 48px;
	}
	
	header {
		position: absolute;
	}
	
	.portfolio .slider {
		width: 335px;
	}
	
	.portfolio-item .content {
		width: calc(100% - 335px);
		padding-left: 40px;
	}
	
	.portfolio-item.i2 .content {
		padding-right: 40px;
	}
	
	.portfolio br {
		display: none;
	}
	
	.portfolio-item{
		margin-bottom: 60px;
	}
	
	.portfolio h3 {
		margin-bottom: 15px;
	}
	
	.portfolio .line {
		margin-bottom: 15px;
	}
	
	.portfolio .row{
		margin-bottom: 25px;
	}
	
	.portfolio-item.i2 .row {
		float: none;
	}
	
	.portfolio .row-item {
		margin-right: 15px;
	}
	
	.about-item .number {
		font-size: 65px;
	}
	
	section.last .img {
		display: none;
	}
	
	section.last .left {
		float: none;
		margin: 0 auto;
	}
	
	section.last form {
		
	}
	
	section.last {
		background: url(../images/last-mobile.jpg) no-repeat top;
		height:  auto;
		padding: 80px 0;
	}
	
	body {
		background: url(../images/body-mobile.jpg) repeat-y top;
	}
	
	.contacts-wrap {
		left: 0;
		margin: 0 auto;
		max-width: 600px;
		padding: 25px;
		/* position: relative; */
	}
	
	.contacts-wrap .i1 {
		float:  right;
		width: 50%;
	}
		.contacts-wrap .i2 {
		float:  left;
		width:  50%;
	}

	.contacts .phone {
		font-size: 25px;
	}
		.contacts-wrap .i3 {
		float:  right;
		width:  50%;
	}
		.contacts-wrap .call {
		/* clear:  both; */
		float:  left;
	}
}

@media screen and (max-width: 767px){
	.container {
		width: 95%;
	}
	
	.logo p {
		display: none;
	}
	
	header .fill {
		display: none;
	}
	
	.header-right .phone {
		color: #fff;
		margin-right: 0;
		font-size: 21px;
		margin-bottom: 10px;
	}
	
	.header-right .mail {
		color: #fff;
	}
	
	.main {
		padding-top: 155px;
		height: auto;
		padding-bottom: 80px;
	}
	
	br {
		display: none;
	}
	
	.main h1 {
		font-size: 23px;
	}
	
	.main .line p {
		font-size: 23px;
	}
	
	.main .line p:before {
		width: 100%;
	}
	
	.main .line span {
		font-size: 19px;
	}
	
	.what-item {
		width: 304px;
		margin: 0 0 15px;
	}
	
	img {
		max-width: 100%;
	}
	
	.what .btn {
		display: none;
	}
	
	.reasons h2 {
		font-size: 55px;
	}
	
	.reasons h3 {
		font-size: 27px;
	}
	
	.reasons {
		height: auto;
		padding: 60px 0;
		background-size: cover;
	}
	
	.portfolio .slider {
		float: none;
		width: 100%;
		max-width: 485px;
		margin: 0 auto 65px;
	}
	
	.portfolio-item .content {
		float: none;
		width: 100%;
		padding: 0;
		clear: both;
	}
	
	.portfolio h3:before {
		display: none;
	}
	
	.portfolio-item.i2 .content {
		padding: 0;
		text-align: left;
	}
	
	.portfolio-item.i2 .submit {
		float: none;
	}
	
	.portfolio .btn {
		display: none;
	}
	
	.how-item {
		width: 100%;
		margin: 0 0 5px !important;
		padding-right: 5px;
	}
	
	.how-item .icon {
		width: 80px;
		min-width: 80px;
	}
	
	.how-item .icon img  {
		max-width: 80%;
	}
	
	.calc {
		height: auto;
		padding: 80px 0;
	}
	
	.calc h2 {
		font-size: 32px;
		margin-bottom: 30px;
	}
	
	.about-wrap {
		display: block;
	}
	
	.about-item {
		display: inline-block;
		vertical-align: top;
		width: 49%;
		margin: 0 0 20px;
	}
	
	.about-item .number {
		font-size: 42px;
	}
	
	.about-item .number span {
		font-size: 16px;
	}
	
	.p-wrap {
		width: 100%;
		margin: 0;
	}
	
	.partners .nav-1 {
		display: none;
	}
	
	.partner-item {
		width: 95%;
		margin: 0 auto;
	}
	
	.partners .title {
		float: none;
		margin-bottom: 30px;
	}
	
	.partners .nav-1.mobile {
		display: flex;
		float: none;
		justify-content: center;
		padding-top: 40px;
	}
	
	.boss .left {
		width: 304px;
		padding: 0;
	}
	
	.boss .left img {
		max-width: none;
		width: 670px;
		margin-left: -178px;
	}
	
	.boss .left p {
		padding-left: 75px;
	}
	
	.boss .left h3 {
		padding-left: 75px;
		font-size: 26px;
	}
	
	.boss .quote:before {
		left: -25px;
	}
	
	.title {
		font-size: 26px;
		padding-left: 20px;
	}
	
	.title:before {
		left: -5px;
	}
	
	section.last form {
		border: 0;
		padding: 0;
	}
	
	section.last {
		background:  #fff;
	}
	
	section.last .left {
		width: 100%;
	}
	
	section.last .att {
		display: none;
	}
	
	#map {
		display: none;
	}
	
	.contacts-wrap {
		position: static;
		padding: 0;
		background: none;
	}
	
	.contacts {
		padding: 40px 0;
		background: #F5F6FC;
	}
	
	.contacts-wrap .i1, .contacts-wrap .i2, .contacts-wrap .i3 {
		float: none;
		width: 100%;
	}
	
	footer {
		text-align: center;
	}
	
	.footer-left {
		float: none;
		margin-bottom: 15px;
	}
	
	.footer-left p {
		display: none;
	}
	
	footer .download {
		float: none;
		margin: 10px 20px;
	}
	
	.remodal-close {
		width: 30px;
		height: 30px;
		background-size: 30px;
		right: 10px;
		top: 10px;
	}
	
	.remodal {
		border-width: 5px;
		padding: 45px 20px 30px;
	}
	
	.remodal h2:before {
		display: none;
	}
	
	.remodal h2 {
		font-size: 26px;
		margin-bottom: 20px;
	}
	
	.remodal .lined {
  display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
	align-items: baseline;
	}
	
	.remodal .lined .submit {
		   -webkit-box-ordinal-group: 2;
    -moz-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
	}
	
  .remodal .lined .att {
    -webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
	margin-bottom: 15px;
  }
}

#web365 {
	position: absolute;
    bottom: 5px;
    right: 30px;
    color: #949493;
    padding-right: 85px;
    background: url(/images/web365_logo.png) right no-repeat;
    line-height: 30px;
    font-size: 12px;
}