.container {
	min-width: 1410px;
	max-width: 1920px;
	margin: 0 auto;
	box-shadow: 0 0 30px #0003;
	overflow: hidden;
}
.wrap {
	width: 1410px;
	margin: 0 auto;
}
.content {
	margin: 0 auto 100px;
}
.left {
	float: left;
	width: 1050px;
}
.right {
	float: right;
	width: 330px;
	padding: 0 0 0 40px;
	border-left: 1px solid #eee;
}
.clear {
	clear: both;
}


.fixed .container {
	padding: 175px 0 0;
}
.main .container {
	padding: 0;
}
header {
	background: #0066b0;
	position: relative;
	z-index: 102;
}
.main header, .fixed header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	background: none;
	transition:all .5s ease 0s;
	z-index: 100;
}
.main.fixed header, .fixed header {
	background: #0066b0dd;
	box-shadow: 0 0 30px #0005;
}
header .wrap {
	height: 80px;
	padding: 25px 0 0;
	color: #fff;
	font-weight: 500;
}
.main header .wrap {
	height: 110px;
	padding: 40px 0 0;
}
.main.fixed header .wrap, .fixed header .wrap {
	height: 80px;
	padding: 25px 0 0;
}
header a {
	color: #fff;
}
header .logo {
	display: inline-block;
	padding: 0 0 0 175px;
	position: relative;
	color: #fff!important;
	font-size: 20px;
	font-weight: 900;
	transition: none;
}
header .logo i {
	display: block;
	width: 130px;
	height: 130px;
	background: url(../i/logo2.png) no-repeat;
	position: absolute;
	top: -10px;
	left: 0;
	transition: all .5s ease 0s;
}
.main header .logo {
	display: none;
}
.main.fixed header .logo, .fixed header .logo {
/*	display: block;*/
	display: inline-block;
	width: 90px;
	height: 90px;
	font-size: 0;
	padding: 0;
	top: -20px;
/*	position: absolute;
	top: 10px;
	left: 50%;
	margin: 0 0 0 200px;*/
}
.main.fixed header .logo i, .fixed header .logo i {
	width: 100%;
	height: 100%;
	background-size: 100% 100%;
	position: static;
}
.lang {
	float: right;
	font-size: 17px;
	margin: 0 0 0 30px;
}
.lang a {
	margin: 0 0 0 10px;
}
#search {
	float: right;
	width: 19px;
	height: 19px;
	background: url(../i/search.png);
	cursor: pointer;
	margin: 3px 0 0 40px;
	position: relative;
	z-index: 30;
}
#search input {
	position: absolute;
	top: -10px;
	right: -10px;
	width: 350px;
}
#search button {
	padding: 0;
	width: 40px;
	height: 40px;
	background: url(../i/srch.png) no-repeat 50% 50%;
	position: absolute;
	top: -10px;
	right: -10px;
	margin: 0;
}
#search input, #search button {
	opacity: 0;
	transform: scaleX(0);
	transition:all .5s ease 0s;
}
#search.opened input, #search.opened button {
	opacity: 1;
	transform: scale(1);
}
#phones {
	float: right;
	padding: 0 10px;
	font-size: 20px;
	position: relative;
	margin: -3px 0 0;
/*	cursor: pointer;*/
}
/*#phones:after {
	content: "";
	display: inline-block;
	vertical-align: middle;
	border: 3px solid transparent;
	border-top-color: #fff;
	margin: 0 0 4px 10px;
}*/
/*#phones a {
	display: inline-block;
	vertical-align: top;
}*/
#phones section {
	position: absolute;
	top: -10px;
	left: -10px;
	right: -10px;
	background: #fff;
	border-radius: 3px;
	box-shadow: 2px 3px 4px #0003;
	padding: 10px 20px;
	cursor: default;
	transition:all .5s ease 0s;
	transform: scaleY(0) translateY(-100%);
	opacity: 0;
	display:none;
}
#phones.opened section {
	transform: none;
	opacity: 1;
}
#phones section div {
	margin: 0 0 5px;
}
#phones section div a {
	color: #000;
}


nav {
	height: 80px;
	padding: 25px 0 0 145px;
/*	text-align: center;*/
	border-bottom: 1px solid #eee;
	margin: 0 auto 15px!important;
	position: relative;
	z-index: 101;
}
.main nav, .fixed nav {
	width: auto;
	position: fixed;
	top: 0;
	left: 50%;
	margin: 0 0 0 -560px!important;
	border: 0;
	text-align: left;
	height: 110px;
	padding: 40px 0 0;
/*	transition:all .5s ease 0s;*/
}
.main.fixed nav, .fixed nav {
	height: 80px;
	padding: 25px 0 0;
}
nav a {
	display: inline-block;
	font-size: 17px;
	line-height: 25px;
	font-weight: 500;
	border-bottom: 2px solid #bde3f9;
	margin: 0 30px;
	transition: none;
}
.main nav a, .fixed nav a {
	color: #fff;
	margin: 0 60px 0 0;
}
nav a:hover, nav a.active {
	color: #000;
	border-color: #ddd;
}
nav ul {
}
nav ul li {
	display: inline-block;
	margin: 0 30px;
	position: relative;
}
.main nav ul li {
	margin: 0 60px 0 0;
}
nav ul li a {
	margin: 0!important;
}
nav ul li:hover a {
	color: #000;
}
nav ul li div {
	position: absolute;
	top: 27px;
	left: 0;
	width: 300px;
	background: #fff;
	border-radius: 0 3px 3px;
	padding: 10px 0;
	box-shadow: 3px 3px 15px #000;
	display: none;
}
nav ul li:hover div {
	display: block;
}
nav ul li div a {
	display: block;
	border: 0;
	color: #000!important;
	padding: 10px 20px;
	text-align: left;
}
nav ul li div a:hover {
	background: #eee;
}


.top {
	height: 700px;
	background: url(../i/_top001.jpg) no-repeat 50% 50% / cover;
	position: relative;
	overflow: hidden;
	z-index: 10;
}
.top:before, .top:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.top:before {
	background: #1f222699;
	z-index: 12;
}
.top:after {
	background: url(../i/top.png);
	z-index: 13;
}
.top video {
	width: 1920px;
	height: 1080px;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 11;
	transform: translate(-50%,-50%);
}
.top .logo {
	text-align: center;
	color: #fff;
	font-size: 24px;
	font-weight: 900;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 15;
}
.top .logo i {
	display: block;
	width: 195px;
	height: 171px;
	background: url(../i/logo1.png);
	margin: 0 auto 40px;
}


.top-banners {
	font-size: 0;
	margin: 5px 0;
}
.top-banners a {
	display: inline-block;
	vertical-align: top;
	width: 33.33%;
	height: 380px;
	padding: 120px 80px 0;
	background: #1f2226;
	color: #fff;
	text-align: center;
	position: relative;
	overflow: hidden;
	z-index: 12;
}
.top-banners a:nth-child(1) {
	border-right: 3px solid #fff;
}
.top-banners a:nth-child(2) {
	border-left: 2px solid #fff;
	border-right: 2px solid #fff;
}
.top-banners a:nth-child(3) {
	border-left: 3px solid #fff;
}
.top-banners a:hover {
	text-shadow: 1px 2px 3px #000;
}
.top-banners a * {
	display: block;
	position: relative;
	z-index: 13;
	transition:all .5s ease 0s;
}
.top-banners a img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: .4;
}
.top-banners a:hover img {
	opacity: .6;
}
.top-banners a span {
	font-size: 30px;
	font-weight: 900;
	line-height: 1.2;
	margin: 0 0 .7em;
}
.top-banners a i {
	font-size: 12px;
	font-style: normal;
	margin: 0 20%;
}


.h1 {
	margin: 0;
}
.h1+p {
	font-size: 18px!important;
	margin: 1em 0 3em!important;
}


.spectre {
	text-align: center;
	margin: 30px auto;
}
.spectre ul {
	font-size: 0;
	margin: 30px 0 -20px;
}
.spectre ul li {
	display: inline-block;
	vertical-align: top;
	width: 210px;
	height: 200px;
	background: #f0faff;
	font-size: 15px;
	line-height: 1.3;
	font-weight: 500;
	color: #000;
	margin: 0 30px 0 0;
}
.spectre.si ul li {
	width: 33.33%;
	height: auto;
	padding: 0 30px 30px 0;
	margin: 0;
	background: none;
}
.spectre ul li a {
	display: block;
	height: 200px;
	padding: 40px 40px 0;
}
.spectre.si ul li a {
	height: 350px;
	background: #f0faff;
}
.spectre.si ul li a h2 {
	height: 75px;
}
.spectre ul li:last-child {
	margin: 0;
}
.spectre ul li img {
	display: block;
	margin: 0 auto 20px;
}
.spectre p {
	font-size: 14px;
	margin: 1em 10%;
}


.services {
	padding: 30px 0;
	text-align: center;
	background: url(../i/servbg.jpg) 50%;
}
.content .services {
	background: none;
	padding: 0;
}
.left .services {
	padding: 0;
	background: none;
}
.services section {
	font-size: 0;
	margin: 30px 0;
}
.services section a {
	display: inline-block;
	vertical-align: top;
	width: 450px;
	height: 320px;
	padding: 100px 50px 0;
	background: #1f2226;
	color: #fff;
	text-align: center;
	position: relative;
	overflow: hidden;
	margin: 0 30px 30px 0;
	z-index: 12;
}
.left .services section a {
	margin: 0 30px 30px 0!important;
}
.services section a:hover {
	text-shadow: 1px 2px 3px #000;
}
.services section a:nth-child(3){
	margin: 0;
}
.services section a * {
	display: block;
	position: relative;
	z-index: 13;
	transition:all .5s ease 0s;
}
.services section a img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	opacity: .4;
}
.services section a:hover img {
	opacity: .6;
}
.services section a span {
	font-size: 30px;
	font-weight: 900;
	line-height: 1.2;
	margin: 0 0 .7em;
}
.services section a i {
	font-size: 12px;
	font-style: normal;
	margin: 0 10%;
}
.services p {
	font-size: 14px;
	margin: 1em 10%;
}


.company {
	text-align: center;
	margin: 30px auto;
}
.company section {
	font-size: 0;
}
.company section article, .company section ul, .company section div {
	display: inline-block;
	vertical-align: top;
	width: 450px;
	font-size: 16px;
	text-align: left;
	padding: 0 20px 0 0;
	margin: 0 30px 0 0;
}
/*.company section > * */a.button {
	display: inline-block;
	width: 170px;
	height: 50px;
	background: #fff;
	border: 2px solid #cce0ef;
	padding: 0;
	line-height: 46px;
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	color: #0066b0!important;
	text-transform: uppercase;
	margin: 30px 30px 0 0;
}
/*.company section > * */a.button:hover {
	background: #cce0ef;
}
.company section article {
}
.company section ul {
}
.company section ul li {
	margin: 20px 0;
}
.company section ul li span {
	display: block;
	font-size: 14px;
	color: #000;
}
.company section ul li p {
	margin: 0;
}
.company section ul li p a {
background:none!important;
}
.company section div {
	padding: 0;
	margin: 0;
}
.company section div a:first-child {
	display: block;
	background: #1f2226;
	position: relative;
	margin: 0 0 20px;
}
.company section div a img {
	display: block;
	opacity: .4;
	border-radius: 3px;
	transition:all .5s ease 0s;
}
.company section div a:hover img {
	opacity: .6;
}
.company section div a:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: url(../i/view.png) no-repeat 50%;
}
.company section div a span {
	display: block;
	position: absolute;
	bottom: 10px;
	right: 10px;
	font-size: 13px;
	line-height: 21px;
	color: #fff;
	padding: 0 12px;
	background: #0066b0;
	border-radius: 3px;
}
.company section div strong {
	display: block;
	font-size: 18px;
}
.company section div p {
	margin: 0;
}






.path {
	font-size: 12px;
	margin: 0 auto 30px;
}
.path a {
}
.path span {
	margin: 0 20px;
}


.right-menu {
	font-size: 15px;
	margin: 0 0 30px;
}
.right-menu li {
	margin: 0 0 10px;
}
.right-menu li a {
}
.right-menu li.active a {
	font-weight:bold;
}
.right-menu li strong {
	display: block;
	margin: 20px 0 0;
}
.right-menu li div {
	font-size: 17px;
	font-weight: 700;
	color: #000;
	margin: 50px 0 20px;
}


.right-news-list {
	border-top: 1px solid #eee;
	padding: 40px 0 0 40px;
	margin: 0 0 0 -40px;
}
.right-news-list li {
	margin: 0 0 30px;
	font-weight: 500;
}
.right-news-list li img {
	display: block;
	margin: 0 0 20px;
	border-radius: 3px;
}
.right-news-list li span {
	display: block;
	font-size: 14px;
	color: #000;
	margin: 0 0 .5em;
}
.right-news-list li a {
	font-size: 18px;
	font-weight: 700;
}
.right-news-list li p {
	color: #4c4c4c;
	margin: .5em 0 0;
}


article, .product/*, .news-detail*/ {
	margin: 0 0 50px;
}
.news-date-time {
	display: block;
	font-size: 14px;
	color: #666;
	margin: 0 0 1em;
}
.news-img {
	display:block;
	width:100%;
	height:auto;
	margin:0 0 30px;
}
article ul, article ol, .product ul, .product ol, .news-detail ul, .news-detail ol {
	margin: 1em 2em;
}
article ul, .product ul, .news-detail ul {
	list-style: disc;
}
article ol, .product ol, .news-detail ol {
}
article ul li, article ol li, .product ul li, .product ol li, .news-detail ul li, .news-detail ol li {
	margin: .2em 0;
}
article table, .product table, .news-detail table {
	font-size: 14px;
	margin: 3em 0;
	width:100%;
	overflow:hidden;
}
article table th, article table td, .product table th, .product table td, .news-detail table th, .news-detail table td {
	padding: 20px;
	border-bottom: 1px solid #eee;
}
article table th, .product table th, .news-detail table th {
	text-align: left;
	color: #000;
	background: #f2f2f2;
}
article table td, .product table td, .product table td {
}
article table tr:last-child th, article table tr:last-child td, .product table tr:last-child th, .product table tr:last-child td, .news-detail table tr:last-child th, .news-detail table tr:last-child td {
	border-bottom: 1px solid #ccc;
}
article table th p, article table td p, .product table th p, .product table td p, .news-detail table th p, .news-detail table td p {
	margin:0;
}
article table.two-cols, .product table.two-cols, .news-detail table.two-cols {
	width:100%;
	font-size:16px;
	margin:0 0 -30px;
}
article table.two-cols th, article table.two-cols td, .product table.two-cols th, .product table.two-cols td, .news-detail table.two-cols th, .news-detail table.two-cols td {
	width:50%;
	border:0!important;
}


.imgs {
	font-size: 0;
	margin: 40px 0 0;
}
.imgs img {
	display: inline-block;
	vertical-align: top;
	width: 330px;
	margin: 0 30px 30px 0;
	border-radius: 3px;
}
.imgs img:nth-child(3n) {
	margin: 0 0 30px;
}


.news-list {
}
.news-list li {
	overflow: hidden;
	margin: 0 0 40px;
}
.news-list li img {
	float: left;
	border-radius: 3px;
}
.news-list li aside {
	margin: 0 0 0 250px;
}
.news-list li aside h2 {
	font-size: 18px;
	font-weight: 700;
	margin: 0;
}
.news-list li aside p {
	margin: 1em 0 0;
}


.gallery {
	font-size: 0;
}
.gallery li {
	display: inline-block;
	vertical-align: top;
	width: 510px;
	margin: 0 30px 30px 0;
}
.gallery li:nth-child(2n) {
	margin: 0 0 30px;
}
.gallery li img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 3px;
	margin: 0 0 20px;
}
.gallery li h2 {
	width: 80%;
	font-size: 18px;
	font-weight: 700;
	margin: 0;
}
.gallery li p {
	width: 80%;
}


.gallery-inner {
	font-size: 0;
}
.gallery-inner a {
	display: inline-block;
	vertical-align: top;
}
.gallery-inner a img {
	display: block;
	width: 210px;
	padding: 2px;
}


.catalog-wrapper {
}
.catalog-wrapper h2 {
	margin:1em 0;
}
.catalog-wrapper article {
	width: 60%;
	margin:0;
}
.catalog {
	font-size: 0;
	position: relative;
	padding: 40px 0 10px;
}
.catalog:before {
	content: "";
	display: block;
	width: 1920px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	margin: 0 0 0 -960px;
	background: url(../i/servbg.jpg) no-repeat 50% 50%;
}
.catalog ul {
	font-size: 0;
	position: relative;
}
.catalog ul li {
	display: inline-block;
	vertical-align: top;
	font-size: 16px;
	margin: 0 30px 30px 0;
}
.catalog ul li:nth-child(3n) {
	margin: 0 0 30px;
}
.catalog.two-cols ul li:nth-child(2n) {
	margin: 0 0 30px;
}
.catalog.two-cols ul li:nth-child(2n+1) {
	margin: 0 30px 30px 0;
}
.catalog ul li a {
	display: block;
	width: 450px;
	height: 320px;
	padding: 110px 50px 0;
	border-radius: 3px;
	overflow: hidden;
	background: #1f2226;
	position: relative;
	color: #fff;
	text-align: center;
}
.catalog.two-cols ul li a {
	width: 690px;
}
.catalog ul li a img {
	display: block;
	width: 450px;
	height: 320px;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	opacity: .4;
}
.catalog.two-cols ul li a img {
	width: 690px;
}
.catalog ul li a strong {
	display: block;
	position: relative;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.2;
	margin: 0 0 .5em;
}
.catalog ul li a span {
	display: block;
	position: relative;
	font-size: 12px;
}


.product {
}
.product-tabs {
	margin: 0 0 40px;
}
.product-tabs li {
	display: inline-block;
	font-size: 20px;
	line-height: 2;
	padding: 0 25px;
	border-radius: 3px;
	color: #fff;
	background: #0066b0;
	margin: 0 20px 0 0;
	cursor: pointer;
	transition: all .5s ease 0s;
}
.product-tabs li.active {
	padding: 0;
	font-weight: 700;
	color: #000;
	background: none;
}
.product-tabs li:hover {
	opacity: .5;
}
.prod-img {
	float: left;
	margin: 0 40px 30px 0;
}
.prod-img a {
	display: block;
	position: relative;
}
.prod-img a+a {
	display: none;
}
.prod-img a img {
	display: block;
	border-radius: 3px;
}
.prod-img a:after {
	content: "";
	display: block;
	width: 40px;
	height: 40px;
	background: url(../i/zoom.png) no-repeat 50% 50%, #fff;
	border-radius: 3px;
	position: absolute;
	bottom: 10px;
	right: 10px;
}
.pdf {
	display: inline-block;
	height: 45px;
	padding: 5px 0 0 55px;
	background: url(../i/pdf.png) no-repeat;
	line-height: 1.3;
	margin: 10px 0;
}
.pdf span {
	display: block;
	font-size: 10px;
	color: #4c4c4c;
}


.work {
}
.work iframe {
	width:100%;
	height:590px;
}


.partners {
	font-size: 0;
}
.partners li {
	display: inline-block;
	vertical-align: top;
	width: 20%;
	padding: 0 10px 20px;
	font-size: 16px;
}
.partners li a {
	display: block;
	text-align: center;
}
.partners li a img {
	display: block;
	margin: 0 auto 10px;
}
.partners li a span {
}


.contacts {
}
.contacts #map, .contacts .bx-yandex-map {
	height: 460px;
	margin: 0 0 50px;
}
.contacts .left {
	width: 720px;
}
.contacts .right {
	width: 480px;
	padding: 0;
	border: 0;
}
.contacts address {
	line-height: 1.2;
	color: #000;
	font-style: normal;
}
.contacts address p {
	font-weight: 500;
	margin: 0 0 1em;
}
.contacts address div {
	font-size: 24px;
	margin: 0 0 .5em;
}
.contacts address a {
	font-weight: 500;
}
.contacts form {
	padding: .5em 0 0;
}
.contacts form div {
	font-size: 24px;
	margin: 0 0 1em;
}
.contacts form div.mf-captcha, .contacts form div.mf-captcha * {
	font-size: 14px;
}


.cert-list {
	font-size:0;
	text-align:center;
	margin:0 -20px 0 0;
}
.cert-list li {
	display:inline-block;
	vertical-align:top;
	width:194px;
	margin:0 20px 20px 0;
}
.cert-list li a {
	display:block;
	font-size:14px;
}
.cert-list li a img {
	display:block;
	width:100%;
	height:auto;
}
.cert-list li h2 {
	font-size:14px;
}





.map {
	position: relative;
	margin:60px 0 0;
}
#map {
	height: 420px;
}
.map .wrap {
	position: absolute;
	top: 30px;
	left: 50%;
	transform: translateX(-50%);
}
.map .wrap address {
	position: absolute;
	top: 0;
	left: 0;
	padding: 35px 40px;
	background: #fff;
	border-radius: 3px;
	box-shadow: 2px 3px 4px #0003;
	line-height: 1.2;
	font-style: normal;
}
.map .wrap address p {
	font-weight: 500;
	margin: 0 0 1em;
}
.map .wrap address div {
	font-size: 24px;
	margin: 0 0 .5em;
}
.map .wrap address a {
	font-weight: 500;
}


footer {
	background: #0066b0;
}
footer .wrap {
	padding: 30px 0;
	position: relative;
	color: #fff;
}
.copyrights {
	float: left;
	font-size: 13px;
	margin: 2px 0 0;
}
footer nav, .main footer nav {
	position: static!important;
	height: auto!important;
	border: 0!important;
	padding: 0!important;
	margin: 0 200px 0 350px!important;
	text-align:center;
}
footer nav a {
	color: #fff;
	border: 0;
	font-size: 15px;
	margin: 0 25px!important;
}
.dev {
	font-size: 13px;
	position: absolute;
	top: 32px;
	right: 0;
}
.dev a {
	font-weight: 700;
	margin: 0 0 0 5px;
	color: #fff;
}






div.pp_default .pp_expand {
display:none!important;
}












