@font-face {
    font-family: 'DinDisplay-Black';
    src: url('/assets/templates/fonts/PFDinDisplayPro-Black.woff2') format('woff2'),
        url('/assets/templates/fonts/PFDinDisplayPro-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'DinDisplay-Bold';
    src: url('/assets/templates/fonts/PFDinDisplayPro-Bold.woff2') format('woff2'),
        url('/assets/templates/fonts/PFDinDisplayPro-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'DinDisplay-Regular';
    src: url('/assets/templates/fonts/PFDinDisplayPro-Regular.woff2') format('woff2'),
        url('/assets/templates/fonts/PFDinDisplayPro-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


html {
	margin: 0;
	padding: 0;
	height: 100%;
}

body, table, input, textarea {
	font-family: DinDisplay-Regular, Tahoma, Arial, Helvetica, Roboto, Calibri, sans-serif;
	font-size: 1.1em;
	line-height: 1.25;
	color: #4d4d4d;
	color: #1A1A1A;
	height: 100%;
	margin: 0;
	padding: 0;
}

strong {
	color: #353535;
	}

table {
	border-collapse: collapse;
}

table td,
table th {
	padding: 0;
}

div {
	box-sizing: border-box;
	}

img {
	border: none;
}

form {
	padding: 0;
	margin:0;
}

p {
	padding: 0;
	margin: 0 0 1rem 0;
}

a {
	color: #2d94d6;
	text-decoration: underline;
}

a:hover {
	/*color: #1970e1;*/
/*	text-decoration: none;*/
}


h1 a,
h2 a,
h3 a,
h4 a {
	color: #fff;
}

/*
input[type="text"],
input[type="password"],
input[type="email"],
textarea,
select {
	border: solid 1px #A5B9D3;
	border: none;
	line-height: 27px;
	padding: 2px 5px;
	margin: 0;
	outline: none;
	box-sizing: border-box;
	height: 23px;
	font-size: 95%;
}

textarea {
	height: auto;
	}

select {
	padding-right: 0px;
	}


textarea {
	resize: none;
}

*/

.background {
	height: auto !important;
	height: 100%;
	min-height: 100%;
	position: relative;
	min-width: 320px;
	overflow: hidden;
	background-color: #fff;
/*	background-image: url('/assets/templates/pic/bg.png');
	background-size: auto;
	background-attachment: fixed;*/
}

.background:before {
/*	content: ' ';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	opacity: 0.1;
	background-image: url('/assets/templates/pic/bg_000.png');*/
/*	background-repeat: repeat;
	background-position: center center;
	background-attachment: fixed;
	background-size: cover;*/
/*	background: repeating-linear-gradient(
			100grad,
			rgba(255, 255, 255, 0.3),
			rgba(255, 255, 255, 1) 2px,
			rgba(255, 255, 255, 0.2) 3px
			);*/
/*	background: rgba(255, 255, 255, 0.5);*/
}


button {
	border: none;
	background: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

button::-moz-focus-inner {
	border: 0;
	padding: 0;
}

button:focus {
	outline: none;
	box-shadow: 0 0 0 4px #cbd6ee;
	}



.content_button {
	margin:0;
	padding: 1rem;
	text-align: center;
	}

.content_button span,
.content_button a,
.submit_button {
	cursor: pointer;
	text-transform: uppercase;
	text-decoration: none;
	display: inline-block;
	color: #fff;
	font-size: 1.2em;
	white-space: nowrap;
	background-color: #56b4f1;
/*	background-color: #2d94d6;*/
	border-radius: 2rem;
	padding: .8rem 3rem .9rem 3rem;
	}

.content_button span:hover,
.content_button a:hover,
.content_button span:active,
.content_button a:active,
.submit_button:hover {
	background: #fea43b;
	}

.content_button.white span,
.content_button.white a {
	color: #2d94d6;
	background: #fff;
	}

.content_button.white span:hover,
.content_button.white a:hover,
.content_button.white span:active,
.content_button.white a:active {
	color: #fff;
/*	background-color: #2d94d6;*/
	background: #fea43b;
	}


/*-------------------------------------------*/

.form_block {
	width: 35vw;
	margin: 0 auto;
	text-align: center;
	}

.form_block button {
	margin: 1.7rem 0 0 0;
	padding: .9rem 3rem .8rem 3rem;
	}

.form_block input,
.form_block label,
.form_block textarea {
	display: block;
	}

.form_block input,
.form_block textarea {
	width: 97%;
	width: calc(100% - 4px - 1rem);
	margin: 0 0 10px 0;
	border: 2px solid #2d94d6;;
	padding: .3rem .5rem;
	padding: .5rem .5rem .7rem .5rem;
	}

.form_block input {
	font-size: 1.5em;
	text-align: center;
	margin: 1rem 0 0 0;
	}

span.required,
span.error{
	color: #ff0000;
	margin: 0;
	}

span.required{
    font-size: 1rem;
}
span.error{
    font-size: 1rem;
}

/*-------------------------------------------*/





h1, h2, h3, h4, h5, h6 {
/*	text-transform: uppercase;*/
	font-weight: normal;
	color: #2d94d6;
	font-size: 2.1em;
	padding: 0;
	margin: 1.5rem 0 1rem 0;
	letter-spacing: .15rem;
	}

.h_descr {
	font-size: 1.4em;
	padding: .5rem 0 1.5rem 0;
	margin: 0;
	text-align: center;
	display: block;
	font-style: normal;
	}



.block_nobg {
	padding: 2rem 1rem;
	}

.block_nobg h1,
.block_nobg h2,
.block_nobg h3 {
	margin-bottom: 0;
	text-transform: uppercase;
	text-align: center;
	}

.block_nobg .h_descr {
	color: #2d94d6;
	}


.block_blue,
.block_bluebg {
	padding: 2rem 1rem;
	background-color: #56b4ff;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	}

.block_blue {
	background-color: #56b4f1;
	}

.block_blue h1,
.block_blue h2,
.block_blue h3,
.block_bluebg h1,
.block_bluebg h2,
.block_bluebg h3 {
	color: #fff;
	margin-bottom: 0;
	text-transform: uppercase;
	text-align: center;
	}

.block_blue .h_descr,
.block_bluebg .h_descr {
	color: #fff;
	}


.white_tr,
.blue_tr {
	padding: 2rem 1rem;
	background-color: rgba(255,255,255,0.85);
	}

.blue_tr {
	background-color: rgba(86,180,255,0.85);
	}

.white_tr h1,
.white_tr h2,
.white_tr h3 {
	color: #2d94d6;
	}

.white_tr .h_descr {
	color: #4d4d4d;
	}


.blue_tr h1,
.blue_tr h2,
.blue_tr h3,
.blue_tr .h_descr {
	color: #fff;
	}


.content_blocks_row  {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-evenly;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
	}

.content_blocks_row > li {
	width: 15%;
	margin: 0 1rem 1rem 1rem;
	padding: 0 1rem;
	background-color: rgba(255,255,255,0.8);
	}

.content_blocks_row > li strong {
	display: block;
	text-align: center;
	}

.content_blocks_row > li p {
	display: block;
	text-align: center;
	}

.content_blocks_row > li ul {
	display: block;
	margin: 1rem auto;
	width: 70%;
	}

.content_blocks_row > li em {
	display: block;
	background-color: rgba(255,255,255,1);
	margin: 0;
	}

.content_blocks_row > li img {
	display: block;
	margin: 1rem auto;
	padding: 25px;
	background-color: rgba(255,255,255,1);
/*	border: solid 1rem rgba(8,118,189,0.5);*/
	}


.content_table {
	border-collapse: separate;
	color: #fff;
	margin: 1rem auto;
	}

.content_table th {
	text-align: center;
	padding: 1rem;
	margin: 10px;
	background-color: rgba(8,118,189,1);
	}

.content_table td {
	text-align: center;
	padding: .5rem 1rem;
	margin: 10px;
	background-color: rgba(86,180,241,1);
	}


/* шапка */

.header {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	background-color: rgba(255,255,255,0.7);
	padding: 3rem .5rem 3rem .5rem;
	margin: 0;
	}

.header_logo {
	width: 14vw;
	max-width: 170px;
	padding: 0;
	margin: 0;
	}

.header_logo a {
	display: inline-block;
	background-image: url('/assets/templates/pic/logo.svg');
	background-position: center center;
	background-size: auto;
	background-repeat: no-repeat;
	transition: all .45s ease;
	height: 180px;
	width: 100%;
	padding: 0;
	margin: 0;
	}

.header_logo a:hover {
	opacity: 0.9;
	}

.header_center {
	width: 55vw;
	width: 50vw;
	padding: 0 0 0 1vw;
	margin: 0 1rem;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	font-family: DinDisplay-Regular, DinDisplay-Bold, Tahoma, Arial, Helvetica, Roboto, Calibri, sans-serif;
	}

.header_name {
	}

.header_name_mobile {
	display: none;
	}

.header_name_mobile1 {
	display: none;
	}


.header_name,
.header_name_mobile,
.header_name_mobile1 {
	text-decoration: none;
	color: #2d94d6;
	font-size: 2.4em;
	letter-spacing: .02em;
	font-weight: bold;
	white-space: nowrap;
	}

.header_descr {
	color: #4d4d4d;
	font-size: 1.7em;
	letter-spacing: .02em;
	font-weight: bold;
	padding: 0 0 .5rem 0;
	}

.head_menu {
	min-width: 850px;
	}

.header_contact {
	width: 21vw;
	width: 25vw;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	padding: 0;
	margin: 0;
	}

.header_contact_mobile {
	display: none;
	}


.header_social {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	}

.vk,
.fb,
.tg,
.wa,
.ph,
.ct {
	width: 35px;
	height: 35px;
	margin: 0 0 0 .5rem;
	transition: all .45s ease;
	background-position: center center;
	background-size: auto;
	background-repeat: no-repeat;
	}

.vk {
	background-image: url('/assets/templates/pic/ico_vk.svg');
	}

.fb {
	background-image: url('/assets/templates/pic/ico_fb.svg');
	}

.tg {
	background-image: url('/assets/templates/pic/ico_tg.svg');
	}

.wa {
	background-image: url('/assets/templates/pic/ico_wa.svg');
	}

.ph {
	background-image: url('/assets/templates/pic/ico_ph.svg');
	}

.ct {
	background-image: url('/assets/templates/pic/ico_ct.svg');
	}


.header_social a:hover {
	opacity: 0.85;
	}

.bottom_social {
	}

.bottom_social a {
	display: inline-block;
	width: auto;
	background-size: 1.5rem 1.5rem;
	padding: .25rem 0 .25rem 1.8rem;
	background-position: 0 20%;
	text-decoration: none;
	}

.bottom_social a:hover {
	text-decoration: underline;
	}

.header_address {
	text-align: right;
	font-family: Calibri, Arial, Tahoma, Helvetica, Roboto, sans-serif;
	font-size: 1.2em;
	letter-spacing: -.05rem;
	white-space: nowrap;
	padding: .9rem 0 0 0;
	}

.header_phone {
	text-align: right;
	font-size: 1.5em;
	letter-spacing: .02em;
	font-weight: bold;
	white-space: nowrap;
	padding: .5rem 0 0 0;
	}

.header_phone a {
	text-decoration: none;
	color: #2d94d6;
	}

/* end шапка */


.text {
	display: block;
	margin: 0;
	padding: .25rem 5vw;
	text-align: center;
	}

.blue_tr .text,
.block_bluebg .text  {
	color: #fff;
	}




.slide {
	padding: 2.5rem 0;
	height: 50vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 2.5em;
	text-transform: uppercase;
	}

.slide span {
	font-size: 1.5em;
	}


.ico_center {
	height: 6rem;
	margin: -5rem 0 0 0;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 100%;
	}


/* шаги */
.block_steep {
	padding: 2rem 0 5rem 0;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	}

.block_steep h1,
.block_steep h2,
.block_steep h3 {
	margin-bottom: 0;
	text-transform: uppercase;
	text-align: center;
	margin-bottom: 1rem;: 0;
	}


/* типы */
.types_block {
	}

.types {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-evenly;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
	}

.types li {
	margin: .7rem;
	padding: 0;
	width: 22vw;
	text-align: center;
	}

.types li img {
	width: 72%;/*width: 175px;*/
	padding: 3.5%;
	background: rgba(255,255,255,.8);
        }

.types_descr {
	text-align: center;
	display: block;
	margin: 0 5vw;
	padding: 0 0 2rem 0;
	}

.subtitle {
	text-transform: uppercase;
	font-size: 1.4em;
	padding: 1.5rem 0 .5rem 0;
	margin: 0;
	text-align: center;
	display: block;
	font-style: normal;
	}

.block_bluebg .subtitle,
.block_bluebg .types_descr {
	color: #fff;
	}


/* решения для */

.solutions {
	padding: 2.5rem 0;
	}

.solutions a {
	text-decoration: none;
	}

.solutions ul {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-evenly;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
	}

.solutions ul li {
	margin: 10px;
	padding: 12px 12px 0 12px;
	background-color: rgba(255,255,255,0.9);
	border: solid 1px #fff;
	}

.solutions ul li span {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	width: 15vw;
	height: 30vh;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	vertical-align: middle;
	border: solid 1px #fff;
	}

.solutions ul li span img {
	position: relative;
	max-height: 15.5vh;
	max-width: 15.5vh;	
	margin: 0 .5vw -9.5vh 0;
	}


.solutions ul li em {
	display: table-cell;
	height: 11vh;
	vertical-align: middle;
	font-style: normal;
	}

.solutions ul li em i {
	font-style: normal;
	position: relative;
	color: #4d4d4d;
	font-size: 1.3em;
	text-shadow: -1px 0 0 #fff, 0 -1px 0 #fff, 1px 0 0 #fff, 0 1px 0 #fff;
	}


.solutions .content_button {
	padding-top: 2.8rem;
	}


/* end решения для */


/* преимущества */

.advantage {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-evenly;
	justify-content: center;
	list-style: none;
	margin: 3rem 0 0 0;
	padding: 0;
	}

.advantage li {
	margin: 10px;
	padding: 0;
	width: 20vw;
	text-align: center;
	}

.advantage li img {
	width: 50%;/*width: 175px;*/
	}

.advantage li em {
	display: block;
	text-transform: uppercase;
	font-style: normal;
	color: #4d4d4d;
	font-size: 1.35em;
	padding: 1rem 0 0 0;
	}

.block_bluebg .advantage li em {
	color: #fff;
	}


/* end преимущества */


/* индивидуальные решения */

.customize {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	list-style: none;
	width: 80%;
	margin: 0 auto;
	padding: 0;
	}

.customize li {
	margin: 2rem 3rem 0 3rem;
	margin: 1rem;
	padding: 0;
	text-align: center;
	min-width: 132px;	
	width: 132px;	
	color: #1A1A1A;
	}

.customize li p {
	display: block;
	font-style: normal;
	padding: 0 1rem 0 1rem;
	padding: 0;
	margin: 0;
	text-align: center;
	}


/* end индивидуальные решения */


/* задачи */

.tasks {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
	}

.tasks li {
	margin: 2rem 3rem 0 3rem;
	padding: 0;
	width: 20%;
	text-align: center;
	}

.tasks li p {
	display: block;
	font-style: normal;
	padding: 0 1rem 0 1rem;
	padding: 0;
	margin: 0;
	color: #fff;
	}

.tasks li p strong {
	display: block;
	text-transform: uppercase;
	font-size: 1.35em;
	letter-spacing: .07rem;
	color: #fff;
	padding: 1rem 0 0.5rem 0;
	margin: 0;
	}

.tasks li div {
	border-radius: 50%;
/*	padding: 12px;*/
	padding: 4%;
	background-color: rgba(255,255,255,0.5);
	max-width: 324px;
	margin: 0 auto;
	}

.tasks li span {
	display: block;
	border-radius: 50%;
/*	border: 20px solid rgba(255,255,255,0.5);*/
	max-width: 300px;
	max-height: 300px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	width: 100%;
	margin: 0 auto;
	}

.tasks li span:before{
	content: "";
	display: block;
	padding-top: 100%;
	}

/* end задачи */


/* как работаем */

.work {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
	}

.work li {
	margin: 2rem 2rem 0 2rem;
	padding: 0;
	width: 20%;
	text-align: center;
	color: #fff;
	}

.work li div {
	border-radius: 50%;
	padding: 4%;
	background-color: rgba(255,255,255,0.5);
	max-width: 324px;
	margin: 0 auto;
	}

.work li span {
	display: block;
	border-radius: 50%;
	max-width: 270px;
	max-height: 270px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	width: 100%;
	min-width: 180px;	
	margin: 0 auto;
	}

.work li span:before{
	content: "";
	display: block;
	padding-top: 100%;
	}

.work li p {
	display: block;
	color: #4d4d4d;
	font-style: normal;
	padding: 0;
	margin: 0;
	}

.work li p strong {
	display: block;
	color: #4d4d4d;
	text-transform: uppercase;
	font-size: 1.35em;
	letter-spacing: .07rem;
	padding: 1rem 0 0.5rem 0;
	margin: 0;
	}

/* end как работаем */


/* контакты */

.map {
	margin: 1rem 5vw;
	height: 65vh;
	padding: .5%;
	background: rgba(255,255,255,.8);
	}

.address {
	font-size: 1.5em;
	letter-spacing: -.05rem;
/*	white-space: nowrap;*/
	padding: .9rem 0 0 0;
	}

.phone {
	font-size: 1.4em;
	white-space: nowrap;
	padding: .5rem 0 .6rem 0;
	}

.phone a {
	text-decoration: none;
	color: #2d94d6;
	font-size: 1.4em;
	letter-spacing: .02em;
	font-weight: bold;
	}

.phone a:hover {
	text-decoration: none;
	}


/* end контакты */



/* фотогалерея */

.pic_block {
	text-align: center;
	padding: 0 0 1rem 0;
	}

.pic_block>img {
	max-width: 100%;
	}

ul.pic_block {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding: 0 0 1rem 0;
	margin: 0 -.25rem;
/*	font-size: 0;
	line-height: 0;*/
	color: #4d4d4d;
	font-size: 1rem;
/*	text-shadow: -1px 0 0 rgba(255,255,255,.7), 0 -1px 0 rgba(255,255,255,.5), 1px 0 0 rgba(255,255,255,.5), 0 1px 0 rgba(255,255,255,.5);*/
	}

ul.pic_block li {
	list-style:none;
	padding: 0;
	padding: .75%;
	flex: auto; 
	width: 350px; 
/*	margin: .5vw; */
	margin: .7rem;
	background: rgba(255,255,255,.5);
	background: rgba(255,255,255,.8);
	}

ul.pic_block li a {
	text-decoration: none;	
	}

ul.pic_block li img { 
	width: 100%; 
	height: auto; 
	}

ul.pic_block li p { 
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0;
	height: 4.5rem;
	line-height: 1.1;
	}

/* end фотогалерея */



.cat {
	position: absolute;
	right: 0;
	width: 496px;
	height: 469px;
	margin: -390px 1% 0 0;
	background-image: url('/assets/templates/pic/cat.svg');
	background-size: 100%;
	}



.video_block {
	overflow:hidden;
	position:relative;
	padding-bottom:56.25%;
	padding-top:30px;
	height:0;
	margin: 0 0 1.5rem 0;
	}

.video_block iframe,
.video_block object,
.video_block embed {
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	top:0;
	margin: .5rem 0 0 0;
	}




.circle {
	display: inline-block;
	width: 110px;
	height: 110px;
	border-radius: 50%;
	box-shadow: inset 0px 0px 7px rgba(0,0,0,0.1);
	background-position: center center;
	background-repeat: repeat;
	}


/* меню внешнее оформление */

.head_menu {
	z-index: 99;
/*	text-transform: uppercase;*/
	font-size: 0;
	line-height: 0;
	margin: 0 0 0 -.5vw;
	font-family: Calibri, Arial, Tahoma, Helvetica, Roboto, sans-serif;
	}

.head_menu ul {
	list-style: none;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	white-space: nowrap;
	}

.head_menu ul li {
	text-align: center;
	}

.head_menu ul li a {
	color: #1a1a1a;
	padding: .8rem .5vw .9rem .5vw;
	font-size: 1.19rem;
	white-space: nowrap;
	letter-spacing: -.05rem;
	}

/* end меню внешнее оформление */


@media all and (max-width: 1600px) {
	.header_logo {
		width: 12vw;
		}

	.head_menu ul li a {
		font-size: 1.16rem;
		letter-spacing: -.055rem;
		}

	.header_address {
		font-size: 1.1em;
		letter-spacing: -.06rem;
		}

	.types li {
		width: 25vw;
		}

	.types li img {
		width: 80%;
	        }

	.cat {
		width: 400px;
		height: 378px;
		margin: -315px 1% 0 0;
		}

	}


@media all and (max-width: 1300px) {
	body, table, input, textarea {
		font-size: 1.0em;
		}

	.customize {
		flex-wrap: wrap;
		}

	.header {
		padding: 0.5rem .5rem 2.5rem .5rem;
		}

	.header_center {
		padding: 2rem 0 0 2vw;
		margin: 0rem;
		width: 50vw;
		}

	.header_contact {
		width: 30vw;
		}

	.header_logo {
		width: 11vw;
		}

	.header_name,
	.header_name_mobile {
		font-size: 2.1em;
		letter-spacing: .02em;
		}

	.header_descr {
		font-size: 1.7em;
		letter-spacing: .02em;
		}

	.header_phone {
		font-size: 1.3em;
		padding: .4rem 0 0 0;
		}

	.header_social .vk,
	.header_social .fb,
	.header_social .tg,
	.header_social .wa {
		width: 30px;
		height: 30px;
		margin: 0 0 0 .5rem;
		}

	.solutions ul li span {
		height: 25vh;
		}

	.types li {
		width: 27vw;
		}

	.types li img {
		width: 82%;
	        }

	.content_blocks_row  {
		flex-wrap: wrap;
		}

	.content_blocks_row > li {
		width: 20%;
		}

	.cat {
		width: 300px;
		height: 283px;
		margin: -235px 1% 0 0;
		}

	}


@media all and (max-width: 1000px) {
	body, table, input, textarea {
		font-size: 1.0em;
		}

	h1, h2, h3, h4, h5, h6 {
		font-size: 1.9em;
		}

	.h_descr {
		font-size: 1.3em;
		}

	.tasks li p strong,
	.work li p strong {
		font-size: 1.25em;
		}

	.header_name {
		font-size: 1.9em;
		}

	.header_descr {
		font-size: 1.5em;
		}

	.head_menu {
		position: relative;
		top: 2.0rem;
		right: 12vw;
		min-width: 790px;
		}

	.head_menu ul li a {
		padding: .9rem .6vw;
		}

	.solutions ul {
		flex-wrap: wrap;
		}

	.solutions ul li span {
		width: 25vw;
		height: 23vh;
		}

	.tasks li {
		width: 30%;
		}

	.work {
		flex-wrap: wrap;
		}

	.work li {
		width: 35%;
		}

	.form_block {
		width: 50vw;
		}

	.types li {
		width: 30vw;
		}

	.types li img {
		width: 85%;
	        }

	.content_blocks_row > li {
		width: 25%;
		}

	.cat {
		width: 250px;
		height: 236px;
		margin: -195px 1% 0 0;
		}
	}



@media all and (max-width: 900px) {
	.header {
		padding: 0rem .5rem 1.5rem .5rem;
		}

	.header_name,
	.header_name_mobile,
	.header_name_mobile1 {
		font-size: 1.7em;
		}

	.header_descr {
		font-size: 1.3em;
		}

	.head_menu {
		top: 2rem;
		min-width: 750px;
		}

	.head_menu ul li a {
		font-size: 1.1rem;
		}

	.advantage {
		flex-wrap: wrap;
		}

	.advantage li {
		width: 35vw;
		}
	}



@media all and (max-width: 800px) {
	body, table, input, textarea {
		font-size: 1.1em;
		}

	h1, h2, h3, h4, h5, h6 {
		font-size: 1.7em;
		margin: 1rem 0 1rem 0;
		}

	.h_descr {
		font-size: 1.2em;
		padding: 0rem 0 .5rem 0;
		}

	.header_contact {
		display: none;
		}

	.header_contact_mobile {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: center;
		padding: 0;
		margin: 0;
		}

	.header_contact_mobile a {
		margin: 0 .5rem 0 0;
		}

	.header {
top:33px; /* !! 1 */
		padding: 0 2vw 0 80px;
		position: fixed;
		z-index: 50;
		width: 100%;
		background-color: rgba(255,255,255,0.85);
		-webkit-box-shadow: 0px 5px 5px -5px rgba(34, 60, 80, 0.14);
		-moz-box-shadow: 0px 5px 5px -5px rgba(34, 60, 80, 0.14);
		box-shadow: 0px 5px 5px -5px rgba(34, 60, 80, 0.14);
-webkit-box-shadow: 0px 7px 7px 0px rgba(34, 60, 80, 0.1);
-moz-box-shadow: 0px 7px 7px 0px rgba(34, 60, 80, 0.1);
box-shadow: 0px 7px 7px 0px rgba(34, 60, 80, 0.1);
		}

	.bottom .header {
		display: none;
		}

	.header_logo {
		width: 11vw;
		min-width: 80px;
		padding: 7px 0 5px 0;
		}

	.header_logo a {
		height: 80px;
		}

	.header_center {
		padding: 0 0 0 1rem;
		width: 63vw;
		}

	.header_name,
	.header_name_mobile {
		font-size: 1.6em;
		letter-spacing: .01em;
		}

	.header_descr {
		display: none;
		}

	.head_menu {
		position: fixed;
		top: 0; right: 0;
		width: 100%;
		background-color: rgba(255,255,255,0.95);
		min-width: 300px;
		text-transform: uppercase;
		padding: 0;
		}

	.slide {
		padding: 4.5rem 0 .5rem 0;
		font-size: 1.7em;
		}

	.solutions {
		padding-top: 125px;
		}

	.top_indent {
		height: 125px;
		}

	.tasks {
		flex-direction: column;
		justify-content: center;
		}

	.tasks li {
		margin: 2rem auto 0 auto;
		width: 85%;
		}

	.work {
		flex-direction: column;
		}

	.work li {
		margin: 2rem auto 0 auto;
		width: 85%;
		}

	.form_block {
		width: 55vw;
		}

	.ank {
		display: block;
		padding: 65px 0 0 0;
		}

	.types {
		flex-direction: column;
		}

	.types li {
		margin: .7rem auto;
		width: 60vw;
		}

	.content_blocks_row > li {
		width: 35%;
		}

	.cat {
		display: none;
		width: 110px;
		height: 104px;
		margin: -75px 1% 0 0;
		}
	}



@media all and (max-width: 600px) {
	.solutions ul li span {
		width: 35vw;
		height: 23vh;
		}

	.header_name {
		display: none;
		}

	.header_name_mobile {
		display: block;
		}

	.form_block {
		width: 70vw;
		}

	.types li {
		width: 80vw;
		}

	.content_blocks_row > li {
		width: 50%;
		}

	}

@media all and (max-width: 500px) {
	h1, h2, h3, h4, h5, h6 {
		margin: .5rem 0 1rem 0;
		}

	.header_name_mobile {
		display: none;
		}

	.header_name_mobile1 {
		display: block;
		}

	.slide {
		font-size: 1.4em;
		}

	.solutions ul {
		flex-direction: column;
		margin: 0 auto;
		}

	.solutions ul li {
		margin: 10px 7vw 0 7vw;
		}

	.solutions ul li span {
		width: 78vw;
		height: 35vh;
		}

	.advantage {
		flex-direction: column;
		}

	.advantage li {
		width: 85vw;
		}

	.form_block {
		width: 80vw;
		}

	.customize {
		width: 100%;
		}

	.customize li {
		margin: .25rem;
		}

	.types li {
		width: 90vw;
		}

	.content_blocks_row > li {
		width: 70%;
		}

	}


@media all and (max-width: 380px) {
	.header_name_mobile {
		display: none;
		}

	.header_name_mobile1 {
		display: none;
		}

	.slide {
		padding: 4.5rem 0 .5rem 0;
		font-size: 1.2em;
		}

	.form_block {
		width: 85vw;
		}
	}



.clear {
width: 100%;
clear: both;
overflow: hidden;
height: 0;
font-size: 0;
line-height: 0;
}








.black_bg {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0,0,0,.6);
z-index: 99;
display: flex;
justify-content: center;
align-content: space-between;
align-items: center;
flex-direction: column;
	}

.request_form_block {
	position: relative;
	background-color: #fff;
/*	background-image: url('/assets/templates/pic/bg.png');
	background-size: auto;
	background-attachment: fixed;*/
	max-width: 580px;
}

.request_form_block form {
/*	background-image: url('/assets/templates/pic/bg_right.svg');
	background-size: 265px 170px;
	background-repeat: no-repeat;
	background-position: right 4% bottom;*/
	padding: 1rem;
	}

.form_massage {
	padding: 3rem 1.5rem 4rem 1.5rem;
	text-align: center;
	}

.upload_title {
	font-family: OfficinaSansC, Tahoma, Verdana, Arial;
	text-align: center;
	background-color: #00468c;	
	color: #fff;
	text-transform: uppercase;
	margin: 0 auto 0 auto;
	padding: 1rem 0 1rem 0;
	font-size: 1.15rem;
	}

.upload_input {
	display: table;
	list-style: none;
	padding: 0;
	margin: 0 0 5px 0;
	}

.upload_input li {
	display: table-cell;
	vertical-align: middle;
	padding: 0 0px 0 0;
	}

.upload_input li:nth-child(1) {
	width: 30%;
	}

.upload_input li small {
	display: inline-block;
	text-align: left;
	font-size: .9rem;
	line-height: 1;
	}

.content_block .content .upload_input li .but {
	margin: 0;
	}

.upload_input input[type="text"],
.upload_input input[type="file"],
.upload_input textarea {
	width: 380px;
	border: solid 1px #d6d6d6;
	background-color: #fff;
	}

.upload_input input[type="text"] {
	height: 1.5rem;
	}

.upload_input button {
	font-size: 1rem;	
	font-family: OfficinaSansC, Tahoma, Verdana, Arial;
	}

.upload_input label {
	font-size: 90%;
	}

.upload_but {
	text-align: right;
	padding: 10px 3px 0 0;
	}

.close{width:55px;height:46px;position:absolute;right:0;top:0;cursor:pointer;z-index: 99;}
.close:after{position:absolute;top:22px;right:20px;display:block;height:4px;width:20px;border-top:2px solid #255598;border-bottom:2px solid #255598;content:''}
.close:before{position:absolute;top:16px;right:20px;display:block;height:2px;width:20px;background:#255598;content:''}
.close:after{top:23px;border:0;height:2px;width:19px;background:#fff;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}
.close:before{top:23px;background:#fff;width:19px;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}

.but {
	text-transform: uppercase;
	text-align: center;
	display: inline-block;
	text-decoration: none;
	color: #fff;
	background-color: #00468c;
	padding: .6rem 1rem;
	transition: all .25s ease;
	cursor: pointer;
background: rgb(242,101,34); /* Old browsers */
background: -moz-linear-gradient(top, rgba(242,101,34,1) 0%, rgba(246,139,82,1) 50%, rgba(246,139,82,1) 50%, rgba(242,101,34,1) 51%, rgba(242,101,34,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(242,101,34,1) 0%,rgba(246,139,82,1) 50%,rgba(246,139,82,1) 50%,rgba(242,101,34,1) 51%,rgba(242,101,34,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(242,101,34,1) 0%,rgba(246,139,82,1) 50%,rgba(246,139,82,1) 50%,rgba(242,101,34,1) 51%,rgba(242,101,34,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f26522', endColorstr='#f26522',GradientType=0 ); /* IE6-9 */
	border-radius: 5px;
	padding: .7rem 2.5rem;
}

.but:hover,
.but:active {
	background-color: #1970e1;	
background: rgb(255,150,53); /* Old browsers */
background: -moz-linear-gradient(top, rgba(255,150,53,1) 0%, rgba(255,150,53,1) 0%, rgba(255,178,112,1) 50%,rgba(255,150,53,1) 51%, rgba(255,150,53,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(255,150,53,1) 0%,rgba(255,150,53,1) 0%,rgba(255,178,112,1) 50%,rgba(255,150,53,1) 51%,rgba(255,150,53,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(255,150,53,1) 0%,rgba(255,150,53,1) 0%,rgba(255,178,112,1) 50%,rgba(255,150,53,1) 51%,rgba(255,150,53,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff9635', endColorstr='#ff9635',GradientType=0 ); /* IE6-9 */
	}




@media all and (max-width: 600px) {
	.upload_input {
		width: 100%;
		}
	.upload_input li:nth-child(3) {
		width: 2px;
		padding: 0;
		}
	.upload_input input[type="text"],
	.upload_input input[type="file"],
	.upload_input textarea {
		width: 100%;
		}
	.upload_block button,
	.upload_block .but {
		width: 100%;
		}
	.upload_notes {
		display: none;
		}
	.upload_notes p {
		display: none;
		}
	}


@media all and (max-width: 599px) {
	.upload_input {
		display: block;
		}
	.upload_input li {
		display: block;
		padding: 0;
		}
	.upload_input li:nth-child(1) {
		width: auto;
		padding-bottom: 5px;
		}
	.upload_but {
		text-align: center;
		padding: 15px 0 0 0;
		}
        }
















/**{margin:0;padding:0;text-decoration:none}*/
nav{
position:relative;
margin: 0 auto;
padding: 0;
}

#cssmenu,#cssmenu ul,#cssmenu ul li,#cssmenu ul li a,#cssmenu #head-mobile {
	border:0;
	list-style:none;
	line-height:0.5;
	display:block;
	position:relative;
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;
	}

#cssmenu {
	text-align: center;
	padding: 0;
	}

#cssmenu:after,#cssmenu > ul:after {
	content:".";
	display:block;
	clear:both;
	visibility:hidden;
	line-height:0;
	height:0;
	margin: 0;
	padding: 0;
	}

#cssmenu #head-mobile {
	display:none;
	}

#cssmenu > ul {
/*	display: inline-block;*/
	}

#cssmenu > ul > li {
	float:left;
	}

#cssmenu > ul > li > a {/*padding:17px;letter-spacing:1px;*/text-decoration:none;}

#cssmenu > ul > li:hover > a,
#cssmenu > ul > li:hover > a i,
#cssmenu ul li.active a {
	color:#fff;   
	}

#cssmenu > ul > li:hover,
#cssmenu ul li.active:hover,
#cssmenu ul li.active,
#cssmenu ul li.has-sub.active:hover {
	background: rgba(251,201,52,0.5)!important;
	background: #2d94d6!important;
	-webkit-transition:background .2s ease;-ms-transition:background .2s ease;transition:background .2s ease;
	}

#cssmenu > ul > li.has-sub > a{padding-right:30px}
#cssmenu > ul > li.has-sub > a:after{position:absolute;top:22px;right:11px;width:8px;height:2px;display:block;background:#ddd;content:''}
#cssmenu > ul > li.has-sub > a:before{position:absolute;top:19px;right:14px;display:block;width:2px;height:8px;background:#ddd;content:'';-webkit-transition:all .25s ease;-ms-transition:all .25s ease;transition:all .25s ease}
#cssmenu > ul > li.has-sub:hover > a:before{top:23px;height:0}
#cssmenu ul ul{position:absolute;left:-9999px}
#cssmenu ul ul li{height:0;-webkit-transition:all .25s ease;-ms-transition:all .25s ease;background:#333;transition:all .25s ease}
#cssmenu ul ul li:hover{}
#cssmenu li:hover > ul{left:auto}
#cssmenu li:hover > ul > li{height:35px}
#cssmenu ul ul ul{margin-left:100%;top:0}
#cssmenu ul ul li a{border-bottom:1px solid rgba(150,150,150,0.15);padding:11px 15px;width:170px;text-decoration:none;color:#fff;}
#cssmenu ul ul li:last-child > a,#cssmenu ul ul li.last-item > a{border-bottom:0}
#cssmenu ul ul li:hover > a,#cssmenu ul ul li a:hover{color:#fff}
#cssmenu ul ul li.has-sub > a:after{position:absolute;top:16px;right:11px;width:8px;height:2px;display:block;background:#ddd;content:''}
#cssmenu ul ul li.has-sub > a:before{position:absolute;top:13px;right:14px;display:block;width:2px;height:8px;background:#ddd;content:'';-webkit-transition:all .25s ease;-ms-transition:all .25s ease;transition:all .25s ease}
#cssmenu ul ul > li.has-sub:hover > a:before{top:17px;height:0}
#cssmenu ul ul li.has-sub:hover,#cssmenu ul li.has-sub ul li.has-sub ul li:hover{background:#363636;}
#cssmenu ul ul ul li.active a{border-left:1px solid #333}
#cssmenu > ul > li.has-sub > ul > li.active > a,#cssmenu > ul ul > li.has-sub > ul > li.active> a{border-top:1px solid #333}

@media screen and (max-width:800px){
nav{width:100%;}
#cssmenu{width:100%;}

#cssmenu ul {
	display:none;
	width:100%;
	padding-top: 2.4rem;
	padding-bottom: 2.4rem;
	padding-top: 6.1rem;
	padding-bottom: 0.7rem;
	-webkit-box-shadow: 0px 5px 5px -5px rgba(34, 60, 80, 0.14);
	-moz-box-shadow: 0px 5px 5px -5px rgba(34, 60, 80, 0.14);
	box-shadow: 0px 5px 5px -5px rgba(34, 60, 80, 0.14);
-webkit-box-shadow: 0px 7px 7px 0px rgba(34, 60, 80, 0.1);
-moz-box-shadow: 0px 7px 7px 0px rgba(34, 60, 80, 0.1);
box-shadow: 0px 7px 7px 0px rgba(34, 60, 80, 0.1);
	}
#cssmenu ul li{width:100%;/*border-top:1px solid #444*/}
#cssmenu ul li:hover{background:#363636;}
#cssmenu ul ul li,#cssmenu li:hover > ul > li{height:auto}
#cssmenu ul li a,#cssmenu ul ul li a{width:100%;border-bottom:0}
#cssmenu > ul > li{float:none}
#cssmenu ul ul li a{padding-left:25px}
#cssmenu ul ul li{background:#333!important;}
#cssmenu ul ul li:hover{background:#363636!important}
#cssmenu ul ul ul li a{padding-left:35px}
#cssmenu ul ul li a{color:#ddd;background:none}
#cssmenu ul ul li:hover > a,#cssmenu ul ul li.active > a{color:#fff}
#cssmenu ul ul,#cssmenu ul ul ul{position:relative;left:0;width:100%;margin:0;text-align:left}
#cssmenu > ul > li.has-sub > a:after,#cssmenu > ul > li.has-sub > a:before,#cssmenu ul ul > li.has-sub > a:after,#cssmenu ul ul > li.has-sub > a:before{display:none}
#cssmenu #head-mobile{display:block;/*padding:23px;*/color:#ddd;}

.button {
	position:absolute;
	left:17px;top:25px;
    top:58px; /* !!top */
	cursor:pointer;
	z-index: 99;
	width:46px;height:46px;
	background-color: rgba(255,255,255,.99);
	}

.button:after {
	position:absolute;
	top:22px;right:14px;
	display:block;
	height:4px;
	width:20px;
	border-top:2px solid #2d94d6;
	border-bottom:2px solid #2d94d6;
	content:''}

.button:before {
	-webkit-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease;
	position:absolute;
	top:16px;right:14px;
	display:block;
	height:2px;
	width:20px;
	background:#2d94d6;
	content:''}

.button.menu-opened:after {
	-webkit-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease;
	top:23px;
	border:0;
	height:2px;
	width:19px;
	background:#2d94d6;
	-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)
	}

.button.menu-opened:before {
	top:23px;
	width:19px;
	background:#2d94d6;
	-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)
	}

#cssmenu .submenu-button{position:absolute;z-index:99;right:0;top:0;display:block;border-left:1px solid #444;height:46px;width:46px;cursor:pointer}
#cssmenu .submenu-button.submenu-opened{background:#262626}
#cssmenu ul ul .submenu-button{height:34px;width:34px}
#cssmenu .submenu-button:after{position:absolute;top:22px;right:19px;width:8px;height:2px;display:block;background:#ddd;content:''}
#cssmenu ul ul .submenu-button:after{top:15px;right:13px}
#cssmenu .submenu-button.submenu-opened:after{background:#fff}
#cssmenu .submenu-button:before{position:absolute;top:19px;right:22px;display:block;width:2px;height:8px;background:#ddd;content:''}
#cssmenu ul ul .submenu-button:before{top:12px;right:16px}
#cssmenu .submenu-button.submenu-opened:before{display:none}
#cssmenu ul ul ul li.active a{border-left:none}
#cssmenu > ul > li.has-sub > ul > li.active > a,#cssmenu > ul ul > li.has-sub > ul > li.active > a{border-top:none}
}