@import url(new.css);

body .sticky-header .menu__overlay,  body .sticky-header .menu {
	z-index: 3;
}

body .content_wrapper {	
	z-index: 0;
	overflow: visible;	
	position: relative;
}

.hmap__region-title {
	position: fixed;
}

.topline .nav  {
	position: absolute;
	bottom: 10px;
	left: 0;
	right: 0;
	z-index: 30;
	text-align: center;
}

.topline .nav .swiper-pagination-bullet {
	width: 24px;
	height: 24px;
	background: transparent;
	border: 4px solid #fff /*#10844a*/;
	opacity: 1;
	margin-right: 10px;
}

.topline .nav .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: #fff; 
}

.topline .sliders_block {
	position: relative;
	top: 0;
	left: 0;
}

.slider_wrap .common-string {
	color: #fff;
	text-align: center;
	background: #10844a;
	word-spacing: normal;
    padding: 3px 20px 0px;
    font-size: 28px;
    text-transform: uppercase;
    font-family: 'MetaPro', Arial;
    line-height: 100%;	
}

.clients-section {
	margin-top: 100px;
}

.breasech__items {
	font-size: 0px;	
	word-spacing: 0;
}

.bresearch__item_new {
	display: inline-block; 
	vertical-align: top;
	width: 33.33%; 	
	font-size: 1.2em; 
	font-weight: bold; 	
	margin-bottom: 50px;
	text-align: center;
}

.bresearch__item_new .pic {
	margin-bottom: 15px;		
	text-align: center;
	width: auto;
	display: inline-block;
	position: relative;
	top: 0;
	left: 0;
	overflow: hidden;
}

.bresearch__item_new .pic::before {
	opacity: 0;
	transition: opacity .25s;
}

.bresearch__item_new:hover .pic::before {
	opacity: 0.5;
}

.bresearch__item_new:hover .pic::after {
	top: 50%;
}

.bresearch__item_new .pic::before {
	content: '';
	position: absolute;
	z-index: 5;	
	background: #000;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.bresearch__item_new .pic::after {
	content: '';
    display: block;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 5px solid #10844a;
    position: absolute;
    z-index: 10;
    left: 50%;
    top: 150%;
    transition: top .25s ease-out;
    margin: -40px 0 0 -40px;
    background: url(../images/arr2.svg) 50% 50% / 25px 64px no-repeat;
}

.bresearch__item_new .pic {
	font-size: 0px;
}


.bresearch__item_new .pic img {
	display: inline-block;
	vertical-align: middle;
	max-width: 150px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 0;	
}

.bresearch__item_new .pic,
.bresearch__item_new .desc {
	
	text-align: center;	
}

.bresearch__item_new .desc {
	font-size: 20px;
	display: block;
}



.main-page-banner {
	/*height: 300px;*/
	display: block;
	box-sizing: content-box;	
	position: relative;
	top: 0;
	left: 0;		
	z-index: 0;
}

.main-page-banner:hover {
	text-decoration: none;	
}

.main-page-banner {	
	display: block;
	background: url('/assets/images/company/bg.jpg') center center no-repeat;
	background-size: cover;	
}

 .main-page-banner .banner {
	position: relative;
	top: 0;
	left: 0; 	
	display: block;
	text-align: center;
	font-size: 0px;
 }

.main-page-banner .container {
	display: block;
}

.main-page-banner .container .banner .valign-helper {
	content: '';
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}

.main-page-banner .container .banner > img {
	max-width: 100%;
	display: inline-block;
	vertical-align: middle;
}

.main-page-banner .container .banner::before,
.main-page-banner .container .banner::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
}

.main-page-banner .container .banner::before {
	background: url('/assets/images/company/wave.png') center center no-repeat;
	background-size: 150px;
	opacity: 1;	
	transition: none;
}

.main-page-banner .container .banner::after {	
	background: url('/assets/images/company/play.png') center center no-repeat;
	background-size: 150px;
	z-index: 10;
	transition: background-size 0.1s ease-in;
}

.main-page-banner .container:hover .banner::after {	
	background-size: 170px;	
}

.main-page-banner .container:hover .banner::before {
	opacity: 0.1;
	background-size: 400px;	
	transition: 1s ease-out;
	transition-property: opacity, background-size;
}

.main-page-banner .overlay {
	display: table;
	width: 100%;
	height: 100%;
}

.main-page-banner .overlay > span {
	display: table-cell;
	width: 33.33%;
	text-align: center;
}

.main-page-banner .overlay > span img {
	max-width: 100%;
	max-height: 100%;
}


.main-page-banner::after {
	text-decoration: none;
	content: 'В течение 20 лет обеспечиваем строительство, эффективное функционирование и развитие промышленных предприятий';
	display: block;
	color: #fff;
	text-align: center;
	background: #000;
	word-spacing: normal;
    padding: 20px 20px;
    font-size: 38px;
    text-transform: uppercase;    
    bottom: 0;
    left: 0;
	right: 0;
    font-family: 'MetaPro', Arial;
    line-height: 100%;	
}

.footer__container > .affs {
	display: inline-block;
}

.footer__container > .affs .affs__item {
	width: auto;
	float: none;
}

.main_addr {
	padding: 0 30px 20px 0;
    color: gray;
    line-height: 21px;	
}

.projects__items {
	position: relative;
	top: 0;
	left: 0;		
}

.projects__items > * {
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	background: #fff;
}

.projects__loading.hidden {
	opacity: 0;
}


@media (min-width: 1025px) {
	.projects__filters {
		position: relative;
		top: 0;
		left: 0;
	}	
}


.projects__filters::before {
	content: '';
	position: absolute;	
	display: block;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: transparent;
	/*opacity: 0;*/
	z-index: 0;
	/*visibility: hidden;*/
	transition: opacity .5s;
}

.has-loader .projects__filters::before {
	
	/*visibility: visible;*/
	
	opacity: 0.8;
	z-index: 4;	
}

/*
.projects__items::before {
	content: '';
	visibility: hidden;
	z-index: 0;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;	
	background: #fff url(../images/loading.gif) no-repeat;	
	background-position: center 300px ;
	
	width: auto;
	height: auto;
	
	transition: opacity .5s;	
}

.projects__items::before {
	opacity: 1.0;
	z-index: 5;
	visibility: visible;
}
*/


.project .project__logo { width: 300px; }

.bprojects__item .bprojects__logo, #projects .others__items .others__item .others__logo {
	background-color: #fff;	
	outline: #f4f4f4 solid 3px;
	transition: outline .5s;
}

.bprojects__item:hover .bprojects__logo,
#projects .others__items .others__item:hover .others__logo
{
	outline: #10844a solid 3px;
}

.nobound .about-content .text-bound { max-width: initial; }

.project__map-box, .project__map-box-ref {
	display: block;
}

.project__map-box {
	position: relative;
	top: 0;
	left: 0;
}

.project__map-box .project__map {
	position: relative;
	top: 0;
	left: 0;
	z-index: 0;
}

.project__map-box-ref {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;	
	z-index: 1;
}



.hevents__all:hover, .bprojects__total:hover  .bprojects__sublink, .bletters__all:hover, .hserts__all:hover {
    background-position: 100% 50%;
}

.hevents__all, .bprojects__sublink, .bletters__all, .hserts__all {
	background-position: 92% 50%;
}

.page__right .float .banner-area {	
	opacity: 0;
	transition: opacity 0.5s;
}

.page__right .float.float_fixed .banner-area {
	visibility: visible;
	opacity: 1;	
}

.topline__item {
	font-size: 0;
	word-spacing: 0;
	height: auto;
	padding: 0px;
}

.topline {
	/*height: 318px;*/
	height: auto;
}

.topline.more_height {
	/*height: 478px;*/
}

.topline.more_height .topline__arrow {
	top: 160px;
}

/*
.topline__item::before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
*/

.topline__container {
	padding: 0;	
	position: relative;
	/*	position: absolute;	*/
	bottom: 0;
	left: 0;
	right: 0;
	background: #000;	
	color: #fff;	
	/*
	display: inline-block;
	vertical-align: middle;
	width: 100%;
	*/
	z-index: 10;	
}

.topline__container .topline__row2 {	
	word-spacing: normal;
	padding: 20px 20px;
	font-size: 38px;
	text-transform: uppercase;	
	position: relative;
	top: 0;
	left: 0;
	font-family: 'MetaPro', Arial;
	line-height: 100%;
}

.topline__container .topline__row2 > span {
	position: relative;
	top: 0;
	left: 0;
	z-index: 10;
}

/*
.topline__container .topline__row2::before {
	content: '';
	position: absolute;
	background: #fff;
	opacity: 0.8;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 0;
}
*/

.topline.more_height .topline-bg-lg, .topline.more_height .topline-bg-sm, .topline.more_height .topline-bg-xs {
	height: 400px;
}

.topline-bg-lg, .topline-bg-sm, .topline-bg-xs { 
	/*position: absolute;*/
	position: relative;
	height: 240px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: center center no-repeat;
	background-size: cover;	
	display: block;
	z-index: 0;
}

.page__title.h1-center {
	text-align: center;
}

.topline-bg-lg, .topline-bg-sm {
	display: none;
}


.about-content {
}

.about-content .text-bound {
	max-width: 768px;
	margin: 0 auto;
	font-family: Arial;
	color:  #4c4c4c;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;	
}

.about-content .text-bound ol {	
	margin-left: 20px;
	counter-reset: item;
}

.about-content .text-bound ol li {
	counter-increment: item;
}

.about-content .text-bound ol > li:before {
  display: inline-block;
  font-weight: bold;
  text-align: right;
  margin-right: 5px;
  content: counter(item) ".";
}

.about-content .text-bound h2, .about-content .text-bound .h2 {
	font-family: MetaPro;
	color: #000000;
	font-size: 20px; /* ����������� ��-�� ����������� ������� */
	font-weight: 500;
	text-align: left;
	margin-bottom: 34px;
}

.about-content .text-bound p {
	margin-bottom: 20px;
}

.about-content.clients h2, .about-content.clients .h2 {
	font-family: MetaPro;
	color: #000000;
	font-size: 32px; /* ����������� ��-�� ����������� ������� */
	font-weight: 700;
	line-height: 36px; /* ����������� ��-�� ����������� ������� */
	text-align: left;
}

.about-content.clients h3, .about-content.clients .h3 {
	font-family: MetaPro;
	color: #000000;
	font-size: 20px; /* ����������� ��-�� ����������� ������� */
	font-weight: 500;
	text-align: left;	
	margin-bottom: 14px;
}

.about-content.clients .text-bound .leftside {
	float: left;
	display: block;
	width: 170px;
	margin-left: -190px;
	font-family: Arial;
	color:  #333333;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	text-align: left;	
}

.about-content.clients .text-bound .leftside i {
	font-family: Arial;
	color:  #10844a;
	font-size: 36px;
	line-height: 100%;
	display: block;
}

.about-content .client-logos {
	margin: 0 auto;
	text-align: center;
	margin: 58px 0;
}

.about-content .client-logos-centering {
	display: inline-block;
	vertical-align: middle;
}

.about-content .client-logos .rows {
	/*display: table;*/
	border-spacing: 30px 0;	
	border-collapse: separate;
}

.about-content .client-logos .rows .cell {
	/*display: table-cell;*/
	background-color:  #f4f4f4;
	width: 170px;
	height: 110px;
	line-height: 110px;
	vertical-align: middle;	
}

.about-content .client-logos .rows .row {
	/*display: table-row;*/
}

.about-content .client-logos .rows {
	display: block;
}

.about-content .client-logos .rows .row {
	display: block;		
	word-spacing: 15px;
}

.about-content .client-logos .rows .cell {
	display: inline-block;
	vertical-align: top;		
	margin-bottom: 20px;
}

.about-content .client-logos .rows .cell img {
	vertical-align: middle;
}

.about-content .client-logos .rows .cell img {
	max-width: 100%;
	max-height: 100%;
}


.about-content .image-text-block {
	margin: 58px 0;	
	display: block;	
	overflow: hidden;
	font-size: 0px;
	word-spacing: 0px;
}

.about-content .image-text-block.even {
	border-left: 5px solid #10844a;
	padding-left: 40px;
}

.about-content .image-text-block.odd {
	border-right: 5px solid #10844a;
	padding-right: 40px;
}

.about-content .image-text-block.even .quote {
	padding-right: 40px;
}

.about-content .image-text-block.odd .quote {
	padding-left: 40px;
}


/*
.about-content .image-text-block::before {
	content: '';
	height: 100%;
	display: inline-block;	
	vertical-align: middle;
}
*/

.about-content .image-text-block .quote {
	word-spacing: normal;
	display: inline-block;
	vertical-align: middle;
	margin: 0px;
	max-width: 50%;	
	
	color: #000000;
	font-size: 24px; /* ����������� ��-�� ����������� ������� */
	font-weight: 700;
	line-height: 36px; /* ����������� ��-�� ����������� ������� */
	text-align: left;	
	font-family: 'MetaPro', Arial;
}

.arb-frame-vk-video {
    display: inline-block;	
	vertical-align: middle;
	width: 50%;
    height: 400px;
}
.about-content .image-text-block img {
	display: inline-block;	
	vertical-align: middle;
	width: 50%;
}

#presentation-video > * {	
	/*width: 900px;
	height: 600px;
	*/
	max-width: 100%;
	max-height: 100%;
	display: block;
	padding: 0;
	margin: 0;
	border: 0;
}

.body_home .content_wrapper, .body_home .footer {
     z-index: 10;
}

@media (max-width: 1024px) {

	#presentation-video > .none {	
		width: 700px;
		height: 450px;
	}


	.topline__row2 {
		letter-spacing: 0px;
		font-size: 36px;
	}

	.projects__filters {
		top: -160px;
	}


}
	
@media (max-width: 768px) {

	.projects__filters {
		top: -88px;
	}

/*
	.body_inner > .sticky-header {
		position: relative;
		z-index: 0;
	}

	.body_inner > .content_wrapper {
		z-index: 1;
	}
	
*/	



	body {
		position: relative;
		top: 0;
		left: 0;
		height: auto;
	}

	#presentation-video > .none {	
		width: 400px;
		height: 250px;
	}


	.menu { 
		padding-bottom: 20px;
		bottom: 0;
		min-height: initial;
	}

	.main-page-banner .container .banner {
		height: 200px;
	}

	.main-page-banner .container .banner img {
		display: none;
	}


	.main-page-banner::after {
		font-size: 20px;
	}

	.about-content .image-text-block .quote {
		max-width: none;
	}
	
	.about-content .image-text-block.even .quote {
		margin-bottom: 20px;
	}

	.about-content .image-text-block.odd .quote {
		margin-top: 20px;
		padding-left: 0;
	}	
	
	.about-content .image-text-block img {
		width: 100%;
	}
    
	.arb-frame-vk-video {
		width: 100%;
		height: 300px;
	}

	.bresearch__item_new {
		display: block;
		width: auto;		
	}
	
	.bresearch__item_new .pic, 
	.bresearch__item_new .text {
		max-width: 300px;
		margin: 0 auto 15px;
	}
	
	

}

@media (max-width: 576px) {
	#presentation-video > .none {	
		width: 350px;
		height: 300px;
	}
  
  .newspage img{
    height: auto !important;
  }
}

@media (max-width: 425px) {
	.about-content .image-text-block .quote {
		font-size: 20px; 
		line-height: 150%;
	}

	#presentation-video > .none {	
		width: 250px;
		height: 200px;
	}

	.main-page-banner .container .banner::before {
		background-size: 60px;
	}

	.main-page-banner .container .banner::after {
		background-size: 60px;
	}


	.main-page-banner .container:hover .banner::after {
		background-size: 70px;
	}
	

}

@media (min-width: 576px) {

	.main-page-banner .container .banner {
		height: 300px;
	}

	
	.topline-bg-xs {
		display: none;
	}
	
	.topline-bg-sm {
		display: block;
	}	
}

@media (min-width: 640px) {
	.search_page {
		margin-top: 0;
	}	
}


@media (min-width: 769px) {
	.bresearch__item_new:nth-child(3n + 3) {
		margin-right: 0;
	}

	.body_home .sticky-header {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		background: #fff;
		z-index: 2;
	}

	.body_home .content_wrapper, .body_home .footer {
		position: relative;
		top: 0;
		left: 0;			
	}

	.body_home .footer {
			
	}

	.body_home .content_wrapper {
		z-index: 1;	
	}

	.body_home {
		padding-top: 160px;
	}

}

@media (min-width: 992px) {
	
	.hmap__map svg {
		min-height: 800px;
		max-width: 100%;
	}
	
	.topline-bg-sm {
		display: none;
	}	
	
	.topline-bg-lg {
		display: block;
	}
}


@media (min-width: 1500px) {
	#presentation-video > .none {	
		width: 1400px;
		height: 1000px;
	}	
}


@media (max-width: 768px) {
    .sub_dropdown .dropdown__wrapper { box-shadow:0px 0px 0px transparent; }
    .sub_dropdown { margin:10px 10px 0; }
}
@media (min-width: 768px) {
    .arrow___nav { margin:0 0 0 7px; left:200%!important; top:-45px!important; box-shadow:0 0 1px rgba(0,0,0,.2); }
    .arrow___nav:before {  content: ''; display:block; position:absolute; top: 15px; margin-left:-7px; border-bottom:7px solid transparent; border-top:7px solid transparent; border-right:7px solid #d4d4d4;}
    .sub_dropdown { width:50%; position:relative; } 
}
@media (min-width: 768px) {
    .header__mail-enter-mob { display: none; }
}

body .sticky-header .menu{
	z-index:99;
}

/*.branches .branches__item .branches__title {
	display: inline-block;
	width: 100%;
}
*/
.branches .branches__item .branches__title {
	display: grid;
	width: 100%;
}

.branches .branches__item .branches__title::before {
	content: '';
	display: inline-block;
	height: 100%;
	width: 0;
	vertical-align: middle;
}

/* crossPlain */
.socials__item i.fa{
  z-index: 1;
  font-size: 20px;
  position:absolute;
  top: 25%;
  left: 23%;
}
.socials__item i.fa-youtube{
  left: 30%;
}
.wb-error-send{background: #e3b3b3; padding: 9px; font-size: 19px; color: #4b0303; min-width: 320px; max-width: 400px;}
.txt-red{color: #ff8b8b}