* {
  box-sizing: border-box;
}

body{
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
	/*font-family: 'Alegreya Sans', sans-serif;*/
	font-family: 'Roboto', sans-serif;
	max-width: 960px;

}

.header{

	display: flex;
	  flex-wrap: wrap;
	flex-direction: column;
	padding: 8px 16px;
}

.header__call-block{
	display: flex;
	padding-bottom: 8px;
	box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2);
	justify-content: space-between;
	align-items: center;
}

.header__call-link{
	display: flex;
	align-items: center;
	text-decoration: none;
	color: black;
	
			font-size: 20px;
		font-weight: 100;
}

.header__call-link:hover{
	font-size: 24px;
}

.header__phoneicon{
	width: 30px;
}

.pulse{
	width: 30px;
	height: 30px;
	position: relative;
}

.pulse:before,
.pulse:after{
	content: '';
	display: block;
	position: absolute;
	/*border: 50%;*/
	border: 1px solid #04aeda;
	left: -5px;
	right: -5px;
	top: -5px;
	bottom: -5px;
	border-radius: 50%;
	animation: animate 1.5s linear infinite;
	opacity: 0;
	backface-visibility: hidden;
}
.pulse:after{
animation-delay: 0.5s;

}
@keyframes animate{
	0%{
		transform: scale(0.5);
		opacity: 0;
	}
	50%{
		opacity: 1;
	}
	100%{
		transform: scale(1.2);
		opacity: 0;
	}	
}

.header__phone{
	margin-left: 8px;
}

.header__show-menu{
	width: 24px;
	height: 24px;
	background-color: green;
}

.header__nav{
	display: none;
	/*width: 100%;*/
	font-size: 18px;
	font-weight: 600;
}
.icon{
	font-size: 34px;
	text-decoration: none;
	color: black;
}
.responsive
{
	display: block;
}
.header__nav-list{
	margin: 0 0 0 0;
	display: flex;
	flex-direction: column;
	list-style-type: none;
	padding: 0;
}

.header__nav-item{
}

.header__nav-link{
	display: block;
	padding: 8px;
	text-decoration: none;
	color: black;
	border-bottom: 3px solid #ffffff ;
}

.main{
	padding: 8px 16px;
}

.main__welcome{
	display: flex;
	width: 100%;
	justify-content: center;
	align-items: center;
	margin-top: 8px;
	margin-bottom: 16px;
	position: relative;
	overflow: hidden;
}
/*
.snow-layer{
	background: url(../img/snowfall.png);
	background-repeat: repeat;
	width: 100%;
	height: 650px;
	position: absolute;
	top: 0;
	left: 0;
}

.snow-layer--one{
	animation-delay: 5s;
	animation: animateLayerOne 20s infinite linear;
	/*filter: blur(px);*/
}

.snow-layer--two{
	animation: animateLayerTwo 22s infinite linear;
	animation-delay: 3s;
	filter: blur(1px);
}

.snow-layer--three{
	animation: animateLayerThree 25s infinite linear;
	filter: blur(2px);
}

@keyframes animateLayerOne{
	0%{
		background-position: 0 0;
	}
	100%{
		background-position: 100px 650px;
	}
}

@keyframes animateLayerTwo{
	0%{
		background-position: -100 0;
	}
	100%{
		background-position: 100px 650px;
	}
}

@keyframes animateLayerThree{
	0%{
		background-position: 0 -100px;
	}
	100%{
		background-position: 0 650px;
	}
}
*/
.lg-100{
	width: 80%;
}

.main__about{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	/*border: 1px solid */
	border-radius: 4px;
	/*box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2);*/
			box-shadow: 0px 0px 5px 1px rgba(0,0,0,0.48);
	position: relative;
	overflow: hidden;
}

/**/
.cyrcle-blue{
	width: 10vmin;
	height: 10vmin;
	position: absolute;
	right: -5vmin;
	top: -5vmin;
	background-color: #043882;
	border-radius: 50%;
}

.cyrcle-yellow{
	width: 12vmin;
	height: 12vmin;
	position: absolute;
	left: -5vmin;
	top: -5vmin;
	background-color: #f29400;
	border-radius: 50%;
}

.cyrcle-green{
	width: 8vmin;
	height: 8vmin;
	position: absolute;
	left: 4vmin;
	bottom: -6vmin;
	background-color: #45a12a;
	border-radius: 50%;
}

.cyrcle-red{
	width: 6vmin;
	height: 6vmin;
	position: absolute;
	left: 50vmin;
	bottom: -4vmin;
	background-color: #cc071e;
	border-radius: 50%;
}

.cyrcle-lightblue{
	width: 10vmin;
	height: 10vmin;
	position: absolute;
	right: -5vmin;
	bottom: -2vmin;
	background-color: #009ee0;
	border-radius: 50%;
}

.cyrcle-red2{
	width: 10vmin;
	height: 10vmin;
	position: absolute;
	right: -5vmin;
	top: 55vmin;
	background-color: #cc071e;
	border-radius: 50%;
}

.cyrcle-lightblue2{
	display: block;
	width: 10vmin;
	height: 10vmin;
	position: absolute;
	left: -5vmin;
	top: 40vmin;
	background-color: #009ee0;
	border-radius: 50%;
}


.main__about-title{
	font-size: 24px;
	border-bottom: 3px solid #cc071e;
	padding-bottom: 8px;
}

.main__about-img{
	width: 50%;
}

.main__about-text{
	padding: 16px;
	font-size: 12px;
	text-align: justify;
	text-indent: 24px;
}

.about_ru{
	display: none;
}



.services{
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  background-color: #f0f2f5;/*#f7f7f7;*/
  	border-radius: 4px;
    padding: 8px;	
    	position: relative;
}

.services__item{
 width: 100%;
  padding: 8px;

}

.services__card{
  height: 100%;
  padding: 8px;

	border-radius: 4px;
	background-color:#fff;
	box-shadow:0px 2px 1px -1px rgba(0, 0, 0, 0.2),
	0px 1px 1px 0px rgba(0, 0, 0, 0.14),
	0px 1px 3px 0px rgba(0,0,0,.12);
	display:flex;
	flex-direction:column;
	box-sizing:border-box;

}

.services__header{
	width: 100%;
	display: flex;
	justify-content: center;
}

.services__header-title{
		font-size: 24px;
border-bottom: 3px solid #45a12a;
	padding-bottom: 8px;
}

.services__card-header{
	margin: 16px 0;
	/*font-size: 1.25rem;
    font-weight: 500;*/
    letter-spacing: .0125em;
    text-align: center;
}

.services__card p{
	font-size: 14px;
    color: #666769;
    margin: 8px;
}

.services__card h5{
	margin: 0;
}

.services__card ul{
	font-size: 14px;
	/*padding: 0;*/
	margin: 8px;
}

.services__card li{
	margin-top: 8px;
}

.services__cyrcle-red{
	position: absolute;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: #cc071e;
	left: 8px;
	top: 8px;
}

.services__cyrcle-blue{
	position: absolute;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: #009ee0;
	left: 20px;
	top: 8px;
}

.services__cyrcle-green{
	position: absolute;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: #45a12a;
	left: 8px;
	top: 20px;
}

.team{
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  /*background-color: #f0f2f5;/*#f7f7f7;*/
  	border-radius: 4px;
    padding: 8px;	
    font-size: 14px;
        	position: relative;
}

.team__item{
  width: 100%;
  padding: 8px;
        		margin-bottom: 24px;
}

.team__header{
	width: 100%;
	display: flex;
	justify-content: center;
	margin-bottom: 16px;
}

.team__header-title{
		font-size: 28px;
border-bottom: 3px solid #45a12a;
	padding-bottom: 8px;
}

.team__photo{
	width: 100px;
	height: 100px;
	background: #009ee0;
	border-radius: 50%;
	margin-top: -40px;	
	overflow: hidden;
}

.team__photo-img{

	width: 100%;
}

.team__card{
	position: relative;
	border: 1px solid black;
	/*margin: 16px;*/
	background-color: white;
	height: 100%;
    padding: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding-bottom: 16px;

}

.team__card:before{
	content:'';
	position: absolute;
	left: -2px;
	right: -2px;
	top: -2px;
	bottom: -2px;
	transform: skew(2deg,2deg);
	z-index: -1;
}

.team__card--blue-red:before{
background: linear-gradient(135deg, rgba(0,158,224,1) 0%, rgba(204,7,30,1) 100%);
}

.team__card--yellow-lightblue:before{
background: linear-gradient(135deg, rgba(242,148,0,1) 0%, rgba(0,158,224,1) 100%);
}

.team__card--red-green:before{
background: linear-gradient(135deg, rgba(204,7,30,1) 0%, rgba(70,161,42,1) 100%);
}

.team__card--lightblue-green:before{
background: linear-gradient(135deg, rgba(70,161,42,1) 0%, rgba(0,158,224,1) 100%);
}

.team__card-header{
	font-size: 16px;
	margin: 0;
	margin-top: 8px;
}

.team__card h5{
	margin: 8px;
}

.team__card p{
	margin: 0;

}


.contacts{
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  /*background-color: #f0f2f5;/*#f7f7f7;*/
  	border-radius: 4px;
    padding: 8px;	
    margin-top: -24px;
        	position: relative;
}

.contacts__header{
	width: 100%;
	display: flex;
	justify-content: center;
	margin-top: 0;
}

.contacts__header-title{
		font-size: 24px;
border-bottom: 3px solid #45a12a;
	padding-bottom: 8px;
}

.contacts__card{
	width: 100%;
	padding: 0 16px;
}

.contacts__map{

}

.contacts__social-list{
	display: flex;
	padding: 0;
	list-style-type: none;
	margin-top: 0;
}

.contacts__social-item{
	padding-right: 8px;
	padding-left: 8px;
	width: 42px;
}

.contacts__social-icon:hover{
	width: 120%;
}

.footer{
	background: #f0f2f5;
	text-align: center;
	margin: 0;
	margin-top: 24px;
	padding: 24px;
	font-size: 12px;
}


/**/
#form_call input{
	background-color: #eee;	
	border: none;
	text-align: center;
	width: 100%;
	height: 6.79vh;
	font-size: 16px;
	color: #393939;
	text-transform: uppercase;
	margin-bottom: 1.3vh;
}

#form_call button{
	width: 100%;
	text-align: center;
}

#black_fill{
	display: none;
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 50;
	background-color: rgba(0,0,0,0.8);
}
#modal_box{
	display: none;
	position: fixed;
	top: 20vh;
	width: 50vw;
	left: calc(50% - 30vw);
	z-index: 51;
}

#content_modal{
	width: 100%;
	background-color: #fff;
	padding: 10%;
}

#close_modal{
	width: 2vw;
	height: 2vw;
	color:#fff;
	position: absolute;
	font-size: 20px;
	top: -20px;
	right: -40px;
	cursor: pointer;
}
/**/
.request_button{
	text-align: center;
	margin-top: auto;
}
.blue_btn{
	background-color: #00aaef;
	color: #fff;
	text-transform: uppercase;
}

.red_btn{
	background-color: #cc071e;
	color: #fff;
	text-transform: uppercase;
}

.blue_btn:hover{
	background-color: #0185ba;
}

.red_btn:hover{
	background-color: #d96472;
}

.btn{
	font-size: 18px;
	font-weight: bold;
	cursor: pointer;
	border: none;
	width: 100%;
	padding: 8px;
	margin: 0 auto;
	margin-top: auto;
	border-radius: 4px;
	box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2);
}

@media(min-width: 450px){
	 .services__item{
  		width: 50%;
  		padding: 8px;
	}

	 .team__item{
  		width: 50%;
  		padding: 8px;
	}
}

@media(min-width: 600px){



	 .services__item{
  		width: 33%;
  		padding: 8px;

	}
		 .team__item{
  		width: 33%;
  		padding: 8px;
	}
	.cyrcle-red2{
	top: 50vmin;
	}

	.contacts__card{
		width: 50%;
	}

	.footer{
		font-size: 16px;
	}




}

@media(min-width: 770px){
		.header__nav
{
	display: block;
}
	.header__nav-list{
		flex-direction: row;
		padding: 0;
		margin: 0;
	}
	.header__call-block{
		box-shadow: none;
		padding: 0;
	}
	.header__show-menu, .icon{
		display: none;
	}

	.header{
		flex-direction: row;
		justify-content: space-between;
		box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2);
	}


	.header__nav-link:hover{
		border-bottom: 3px solid #f29400 ;
	}

	.lg-100{
		width: 60%;
	}

	.main__about{
		margin-top: 4px;
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;

			padding-bottom: 32px;
	}
	.main__about-header{
		display: flex;
		justify-content: center;
		width: 100%;
	}

	.main__about-title{
		font-size: 24px;
	}

	.main__about-img{
		width: 30%;
	}	

	.main__about-text{
		padding-top: 0;
		width: 65%;
		font-size: 16px;
	}
	
	.cyrcle-lightblue2{
		display: none;
	}

	.cyrcle-red2{
		display: none;
	}

	.services__item{
		width: 25%; 
	}

	.team__item{
		width: 25%; 
	}
		#form_call input{
	height: 5.79vh;
	font-size: 16px;
	}

	#content_modal{
		font-size: 24px;
	}
}


