@import url('https://fonts.googleapis.com/css2?family=Jost:wght@100;200;300;400;500;600;700;800;900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
html, body {
	height: fill-available;
    height: -webkit-fill-available;
    font-size: 10px;
    overflow: hidden;
    font-family: 'Jost', sans-serif;
    font-weight: 600;
    letter-spacing: 1px;
}
body {
	padding: 0 20px;
    box-sizing: border-box;
	display: flex;
    background: url(/img/bg.jpg);
    background-size: 100% 100%;
    min-height: 100vh;
    min-height: fill-available;
    min-height: -webkit-fill-available;
    margin: 0;
    position: relative;
    color: white;
    flex-direction: column;
    align-items: center;
    width: 100%;
	
}
p {font-family: 'Roboto', sans-serif;
font-size: 18px;
    font-weight: 200;
    line-height: 1.5;
	opacity:0;
	transition:0.6s}
h2 {padding: 20px 0;
    line-height: 1;
    font-size: 50px;
	margin: 10px 0;
	transition: .6s;
	transform: translatey(-15px);
	opacity:0;
    }
hr {background:#ffba00;
	transition: .5s;
    width:0%;
    height: 6px;
    margin:0;
    height: 1px;
    border: none;
}
#advantages svg {
	display: block;
    width: 70px;
    height: 70px;
    fill: #ffba00;
    margin: 0 auto;}
#advantages h4 {
	margin: 15px 0;
	text-align: center;
    height: 60px;
    display: flex;
    font-size: 24px;
    line-height: 1.1;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
}

.bg_border {
	background:linear-gradient(90deg, #ffffff12 0%, #ffffff12 1px, transparent 1px, transparent calc(100% - 1px), #ffffff12 calc(100% - 1px))
}
input, textarea {
	outline: none;
    transition: .5s;
    border-radius: 5px;
    padding: 10px;
    border: 5px solid transparent;
    margin-bottom: 20px;
    background: #ffffff1f;
    color: white;
    font-family: inherit;
    height: 50px;
    box-sizing: border-box;
}
input:focus, textarea:focus {
	border: 5px solid #ffffff2e;
}
#contacts form span {
	font-size: 18px;
    align-items: center;
    height: 50px;
    margin-bottom: 20px;
    display: flex;
    justify-content: flex-end;
}
.nav {display: flex;}
.nav div {position:relative}
.nav div span {position:relative; color:#ffffff91; transition:0.3s; cursor:pointer}
.nav div svg {display:none}
.nav .active span{color:white;transition:0.3s}
.nav div:before {
	transition:0.3s;
	bottom: -10px;
    border-radius: 50%;
    content: '';
    position: absolute;
    background: transparent;
    width: 3px;
    height: 3px;
    left: calc(50% - 1.5px);
}
.nav .active:before {
	/*background: #ffba00;*/
	box-shadow: 0 0 20px 2px #0032ff;
    background: #004eff;
}
.translate {transition:0.3s; color:#707080}
button {
	border: none;
    font-size: 22px;
    margin: 0 auto;
    padding: 15px 50px;
    min-width: 300px;
    background: #ffba00;
    color: black;
    font-weight: bold;
    border-radius: 11px;}
.content {height:-webkit-fill-available; position:relative}
.pad_lr {padding:0 20px}
.orange {color:#ffba00}
.flex {display:flex}
.row {flex-direction:row}
.col {flex-direction:column}
.flex1 {flex:1}
.flex2 {flex:2}
.wrap {flex-wrap: wrap;}
.ai_center {align-items:center}
.ai_start {align-items:flex-start}
.ai_end {align-items:flex-end}
.jc_center {justify-content: center}
.jc_sb {justify-content: space-between}
.w100 {width:100%}
.w50 {width:50%}
.pad_20 {padding:20px}
.box {box-sizing:border-box}
header, footer {height:60px;width:100%}

.w900 {width:900px;max-width: calc(100% - 350px);}
header .empty {width:150px;}
header .logo {font-size:26px}
header .nav div {margin-right:45px}
main {max-width:1200px;}
.content_inner {
	transition:0.3s;
	position:absolute;
	display: flex;
    height: 100%;
	width:100%;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}
.main_logo_container {
	margin-top: 100px;
	display: flex;
    font-size:90px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}
.main_logo_container .one {padding-left: 50px; width: 100%; line-height: 0.2; transition:.7s; opacity:0;transform:translatey(-100px)}
.main_logo_container .two {width:100%;}
.main_logo_container .two > span {transition:.7s;opacity:0;display: inline-block;}
.main_logo_container .two .t1{transform:translatex(-100px)}
.main_logo_container .two .t3{transform:translatex(500px)}
.main_logo_container .two .t4{transform:translatex(500px)}
.main_logo_container .three {padding-left: 50px;line-height: 0.2;display: flex;}
.main_logo_container .three > span {transition:.7s;opacity:0;transform:translatey(300px)}
.main_logo_container .four {
	font-weight: 100;
    margin-left: 20px;
    margin-top: 0px;
    font-size: 16px;
    display: flex;
    flex-direction: column;
    line-height: 1.1;transition:.7s}
.main_logo_container .four .ff1{transition:.7s;opacity:0;transform:translatex(30px)}
.main_logo_container .four .ff2{transition:.7s;opacity:0;transform:translatex(-30px)}
.text {
	transition:1s;
	font-family: 'Roboto', sans-serif;
	line-height: 1.1;
    margin-top: 25px;
    max-width: 50%;
    font-size: 27px;
    font-weight: 100; 
	opacity:0;
	transform:translateX(50px);
}
.adv {
	transition:0.7s;
	opacity:0;
	transform:translateY(50px);
}
#home {background:url(/img/bg2.png); background-repeat:no-repeat; background-position:center}
.svg_container {overflow:hidden; position:relative}
.main_svg, .car_svg {fill: #464651;}
.car {position:absolute; width:90%; right:-13%; top:-50%}
.car1{
	animation:car1 14s linear infinite;
}
.car2{
	animation:car2 14s linear infinite;
}
@keyframes car1 {
	10% {top:-13%; transform:rotate(0deg)}
	20% {top:-13%; transform:rotate(-90deg)}
	50% {top:-13%; transform:rotate(-90deg)}
	60% {top:-13%; transform:rotate(0deg)}
	80%{top:100%; transform:rotate(0deg)}
	100%{top:100%; transform:rotate(0deg)}
}
@keyframes car2 {
	10% {top:-50%; transform:rotate(0deg)}
	30% {top:21%; transform:rotate(0deg)}
	40% {top:21%; transform:rotate(-90deg)}
	80% {top:21%; transform:rotate(-90deg)}
	90% {top:21%; transform:rotate(0deg)}
	100%{top:100%; transform:rotate(0deg)}
}
.car svg {width: 22%;}
.green {
	background: green;
    opacity: 0.4;
    width: 47%;
    height: 13%;
    position: absolute;
    right: 5%;
}
.green1 {top: 34.3%; animation:green1 14s linear infinite}
.green2 {top: 67.2%; animation:green2 14s linear infinite}
@keyframes green1 {
	20% {opacity:0.4}
	22% {opacity:0.8}
	24% {opacity:0}
	58% {opacity:0}
	60% {opacity:0.8}
	62%{opacity:0.4}
	100%{opacity:0.4}
}
@keyframes green2 {
	40% {opacity:0.4}
	42% {opacity:0.8}
	44% {opacity:0}
	88% {opacity:0}
	90% {opacity:0.8}
	92%{opacity:0.4}
	100%{opacity:0.4}
}
.number {
	padding: 0 2%;
    font-size: 50px;
    position: absolute;
    top: 0;
    left: 5%;
    
	
}
.number2 {color:greenyellow;animation: num2 14s linear infinite;border: 2px solid green;}
.number1 {opacity:0;color:greenyellow;animation: num1 14s linear infinite;border: 2px solid green;}
.number0 {opacity:0;color:red; animation: num0 14s linear infinite;border: 2px solid red;}
@keyframes num2 {
	23%{opacity:1 }
	24%{opacity:0 }
	60%{opacity:0 }
	90%{opacity:0 }
	91%{opacity:1}
}
@keyframes num1 {
	23%{opacity:0}
	24%{opacity:1}
	43%{opacity:1}
	44%{opacity:0}
	60%{opacity:0}
	61%{opacity:1}
	90%{opacity:1}
	91%{opacity:0}
}@keyframes num0 {
	43%{opacity:0}
	44%{opacity:1}
	60%{opacity:1}
	61%{opacity:0}
}
#home {align-items: flex-start;
    justify-content: flex-start;}
.lightbox {
	display: flex;
    align-items: center;
    justify-content: center;
	visibility:hidden;
	opacity:0;
	transition:0.2s;
	position: fixed;
    width: 100%;
    height: 100%;
    z-index: 101;
    background: #0000008c;
    top: 0;
    left: 0;
}
.lightbox .box {
	box-shadow: 0 0 100px 0px #000000c4;
	width: 75%;
	border-radius: 4pt;
    padding-top: 0;
    background: #292733;
}
.lightbox .box .header {
	font-weight: 400;
    font-size: 14px;
    border-bottom: 1pt solid #0039ff;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.lightbox .box .header span, .lightbox .box .header div, .lightbox .box .context {padding:10pt}
.lightbox .box .header svg {height:100%;width: 12px; fill: #9593a1;}
.lightbox .box .context {
	width: unset;
	display: flex;
    flex-direction: column;
    align-items: center;}
.lightbox .box .context p {
	margin-bottom: 20px;
	color: white;
    opacity: 1;}
.lightbox .box .context input[type="text"] {
	padding: 7pt;
    margin: 5pt;
    box-sizing: border-box;
    width: 100%;
    border: none;
    background: #f0f2f6;
    border-radius: 5pt;
}
.lightbox .box .context > span {margin-bottom:5pt}
.lightbox .box .context > div {
	width: 100%;
    display: flex;
    justify-content: space-around;}
.lightbox .box .context > div div {
	text-align: center;
    margin: 5pt 10pt;
    flex: 1;}
.lightbox .box .context > div div:last-child {
	background: #f5f5f5;
    color: black;
}	
.lightbox .box .context > div div:first-of-type {
	font-weight: bolder;
    background: #ffba00;
}


.lightbox .box .context .button {
	color: white;
    border-radius: 4pt;
    font-weight: 400;
    margin-top: 5pt;
    background: #00adff;
    padding: 10pt 15pt;
}
/* mobile styles */
@media screen and (max-width: 600px) {
	.content_inner {
	
	position:fixed;
	
    height: calc(100% - 135px);
	
}
	.bg_border {background:unset}
	body {padding:0}
	header {padding:0 20px}
	header > div:first-child, header > div:nth-child(2){padding: 0 10px;}
	header .empty {width:unset}
	header .w900 {
		height: 100%;
		max-width: unset;
		justify-content: flex-end;}
	header .nav{
		-webkit-tap-highlight-color: transparent;
		outline:none;
		z-index: 99;
		display: flex;
		left: 0;
		position: fixed;
		bottom: 0;
		width: 100%;
		padding: 10px 20px 20px;
		box-sizing: border-box;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: space-between;
		}
	header .nav div {
		position: relative;
		height: 45px;
		width: 45px;
		margin-right:0;
	}
	header .nav div span {color:transparent;}
	header .nav svg {
		z-index: -1;
		position:absolute;
		top:0;
		display:block;		
		transition:0.3s;
		padding: 10px;
		fill: #555765;}
	header .nav div:before {bottom:0}
	header .nav .active span{color: transparent;}
	header .nav .active svg {fill: #ffba00;}
	.content {
		height: calc(100% - 130px);
		max-width: unset;
		width: 100%;
	}
	#home > div {margin-left:20px}
	#works {overflow-y: auto;}
	#works > div {flex-direction:column}
	#works > div > div {width: 100%;} 
	#works > div > div:last-child {padding: 0 20%;}
	#advantages {
		overflow-y: auto;
		box-sizing: border-box;
		padding: 0 20px;}
	#advantages > div > div{flex-direction:column}
	#advantages .adv {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		}
	#advantages svg {width:50px; height:50px; margin:0 20px;}
	#advantages h4 {margin:0; font-size:18px; line-height:unset}
	#advantages p {margin-top: 0;}
	#contacts {
		overflow-y: auto;
		box-sizing: border-box;
		padding: 0 20px;}
	#contacts form > div:first-of-type{display:none}
	#contacts form > div:last-of-type{width:100%; padding:20px 0}
	h2 {padding:0; font-size:25px; width: fit-content;}
	p {font-size:14px; line-height:1.3; margin-bottom:0}
}