/* HEADER */
body{
	/*background: transparent url(images/gradient_light.png) repeat-x 50% 0;*/
	/*background: transparent linear-gradient(to bottom,#e6e6e6 0,#fff 100%) no-repeat 50% 0;*/
	/*background-size: 100% 100%;*/
    background-image: linear-gradient(to bottom, #eee, #fff);
    background-repeat: no-repeat;
}
body.main{background-image: none;}
header.header{
	position: relative;
	z-index: 30;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	padding: 30px 0;
	line-height: 1;
	margin: 0 -15px;
}
.no-phone {
	mozUserSelect: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.main header.header{
	padding-bottom: 0;
	position: absolute;
	width: 100%;
	flex-wrap: wrap;
}

header.header .work-time{	
	margin-left:var(--col5);
    flex: 0 0 var(--col4);
    max-width: var(--col4);
}

header.header .place{
	flex: 0 0 var(--col3);
	max-width: 220px;
	margin-left: 70px;
	text-align: right;
	margin-bottom: 15px;
	align-items: center;
    display: flex;
    justify-content: space-between;
}

header.header .logo{
	flex: 0 0 var(--col2);
	max-width: var(--col3);	
}
header.header .logo .link{
	display: block;
	/*margin-top: -40px;*/
}
header.header .logo a img{
	max-width: 100%;
}


header.header .slogan {
    font-size: 0.75em;
    letter-spacing: 0.025em;
    line-height: 1.35em;
    color: #000;
    display: inline-block;
}
.slogan .brand {
    font-size: 28px;
    padding-bottom: 10px;
    margin-bottom: 5px;
    border-bottom: 2px solid #4c83c4;
}
.slogan .brand-subtitle {
    font-size: 12px;
    white-space: nowrap;
    text-transform: uppercase;
}
body.main header.header .slogan {
    color: #fff;
}

header.header .contacts{	
	flex: 0 0 var(--col3);
	max-width: var(--col3);	
	margin-top: -30px;
}

header.header .header-search{
	flex: 0 0 var(--col4);
	max-width: var(--col4);		
}

header.header .header-callback{	
	flex: 0 0 var(--col3);
	max-width: 220px;	
	margin-left: 70px;
}

header.header .header-menu{	
	flex: 0 0 var(--col12);
	max-width: var(--col12);	
	padding-top: 40px;
}

.header .work-time {
	font-family: 'Roboto Regular';
	color: #6e6e6e;
	font-size: 14px;
}

.header .work-time .work-region{
	display: inline-block;
	margin-left: 30px;
}

.header .btn-place{
	font-family: 'Roboto Regular';
	font-size: 14px;
	padding: 0;
	background-color: transparent;
	color: #1d1d1d;
	border-bottom: 1px dashed;
    line-height: 1;
    border-radius: 0;
}
.header-social{display: flex; margin-left: 30px; margin-bottom: 15px;}
.header_social_tg {background: url(images/tg.png) no-repeat 0 50%; display: block; min-height: 22px; min-width: 22px; margin-right: 10px;}
.header_social_viber {background: url(images/viber.png) no-repeat 0 50%; display: block; min-height: 22px; min-width: 22px; margin-right: 10px;}
.header_social_vk {background: url(images/vk.png) no-repeat 0 50%; display: block; min-height: 22px; min-width: 22px; margin-right: 10px;}
.header-phone {margin-bottom: 10px;margin-left: 30px;}
.header-phone a{
	font-family: 'Roboto Black';
	font-size: 25px;
	color:#1d1d1d;
}

.header-email{margin-left: 30px;}
.header-email a{
	font-family: 'Roboto Regular';
	font-size: 15px;
	color:#1d1d1d;
	text-decoration: underline;
}

.main .header-phone a,
.main .header-email a,
.main .header .work-time,
.main .work-region,
.main .header .btn-place
{color:#fff;}


.header-search input{
	display: block;
	width: 100%;
	border:none;
	border-bottom: 2px solid transparent;
	line-height: 45px;
	padding: 0 20px 0 70px;
	font-size: 16px;
	font-family: 'Roboto Medium';
	color:#a7a7a7;
	background: #fff url(images/search-icon.png) no-repeat 30px 50%;
	outline: none!important;
	border-radius: 5px;
}
.main .header-search input{
	background-color:transparent;
	border-bottom-color: #888;
	border-radius: 0;
}

.header button.callback{
	display: block;
	width: 100%;
	font-family: 'Roboto Black';
	font-size: 14px;
	line-height: 40px;
	border:2px solid #3283cc;
	border-radius: 5px;
	background-color: transparent;
	text-transform: uppercase;
	transition: .5s;
    color: #fff!important;
    background-image:linear-gradient(to bottom,#3575c4 0,#3b89e9 100%);
}
.btn-lk{
	font-family: 'Roboto Regular';
    font-size: 14px;
    padding: 0;
    background-color: transparent;
    color: #1d1d1d;
    border-bottom: 1px solid;
    line-height: 1;
    border-radius: 0;
	color: #fff;
	float: left;

}
.btn-lk:hover{color:#fff; text-decoration: none; cursor: pointer;}
.main .header button.callback{background-image: none;color:#fff!important;}
.header button.callback:hover{background-color: #3283cc;color:#fff!important;}


.main-nav {
	font-family: 'Roboto Medium';
	font-size: 20px;
	line-height: 65px;
	background-color: #fff;
	border-radius: 5px;
	box-shadow: 0 0 30px 1px rgba(0,0,0,.1);
}

.main-nav li, .main-nav li a{
	padding: 0;
	color: #1d1d1d;
	transition: .5s;
}
.main-nav li:hover > a,.main-nav li:focus > a{background-color: #3b89e9;}

.main-nav ul ul{
	display: none;
	position: absolute;
	left:0;
	background-color: #fff;
	padding-left: 0;
}
.main-nav ul li{position: relative;margin-bottom: 0;}


.main-nav ul ul li a{
	display: block;
	padding: 0 20px;
}

.main-nav ul ul ul{
	top:0;
	left:100%;
}

.offer{
	background-color: #f6f6f6;
	color:#fff;
}


.offer .swiper-slide{
	padding-top: 270px;
	padding-bottom: 75px;
	height: 700px;
}

.offer .tags {margin-bottom: 40px;}
.offer .tags a{
	font-family: 'Roboto Black';
	font-size: 14px;
	color: #fff;
	text-transform: uppercase;
}
.offer .tags a+a{margin-left: 30px;}
.offer header{
	font-family: 'Roboto Black';
	font-size: 42px;
	line-height: 48px;
	color:#fff;
	margin-bottom: 30px;
}

.offer p{
	font-size: 18px;
	line-height: 23px;
}

.offer .btn{
	text-transform: uppercase;
    font-family: 'Roboto Black';
    padding: 0 42px;
    line-height: 58px;
    border-radius: 5px;
    position: absolute;
    left: 15px;
    bottom: -80px;
    background-image:linear-gradient(to bottom,#3575c4 0,#3b89e9 100%);
	color:#fff;
	border-color: none;
}
.offer .btn:hover,.offer .btn:visited{
	color:#fff;
}

.offer .swiper-pagination{    
	display: inline-block;
    width: auto;
    position: absolute;
    bottom: 100px;
    left: calc(50% - 320px);
}

.swiper-pagination-bullet{
	display: inline-block;
	width:12px;
	height: 12px;
	background: transparent url(images/dots.png) no-repeat 0 -12px;
	opacity: 1;
}

.swiper-pagination-bullet+.swiper-pagination-bullet{
	margin-left: 22px;
}
.swiper-pagination-bullet-active{
	background-position: 0 0;
}

.offer .additional-pagination{
	display: none;
	position: absolute;
	z-index: 10;
	top:270px;
	right:calc(50% - 570px);
}

.offer .additional-pagination a{
	display: block;
	width: 270px;
	height: 120px;
	background-color: transparent;
	background-position: 100% 50%;
	padding: 30px 40px;
	font-family: 'Roboto Medium';
	font-size: 18px;
	line-height: 24px;
	color:#1d1d1d;
	background-color: #e9e9e9;
}

.offer .additional-pagination a.active{
	background-color: #3283cc;
}

.offer .additional-pagination a.active:before{
	display: block;
	content: '';
	margin-top: -30px;
	left: -28px;
	width:0;
	height:0;
	border:20px solid transparent;
	border-width: 60px 14px;
	border-right-color: #3283cc;
	position: absolute;
}
/* HEADER END */

/* MAIN */
.main h1, .main h2{
	font-family: 'Roboto Light';
	font-size: 32px;
	line-height: 32px;
	margin-top: 0;
	margin-bottom: 45px;
}
.portfolio-block{
	margin-top: 70px;
    margin-bottom: -40px;
    padding: 60px 60px 70px;
    background-color: #fff;
    box-shadow: 0 0 50px 0 rgb(0 0 0 / 20%);
}
.main h2{
	text-align: center;
}

.main-catalog {background-color: #f6f6f6;padding: 60px 0;}
.main-catalog .catalog-section-container{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0 -15px;
}

.main-catalog .catalog-section-item{
	padding: 0 15px;
	width: 25%;
}

.main-catalog .item{
	display: block;
	border-top: 2px solid #3b89e9;
	border-bottom: 2px solid #3b89e9;
	transition: .5s;
	font-family: 'Roboto Light';
	font-size: 16px;
	line-height: 24px;
	padding: 30px 20px;
	color: #1d1d1d;
	margin-bottom: 30px;
	overflow: hidden;
	text-decoration: none; 
}

.main-catalog .img-container{
	height: 50px;
	float: left;
}

/*.main-catalog .item.big-title{padding: 20px;}*/

.main-catalog .item:hover{background-color: #3b89e9}

.main-catalog .item img{max-height: 50px;width: auto;}
.main-catalog .item span{
	display: block;
	margin-left: 80px;
}

.main-catalog .btn-primary{
    display: block;
    margin: 0 auto;
    width: 200px;
    text-transform: uppercase;
}

.btn-primary{
    font-family: 'Roboto Black';
    color: #fff!important;
    background-image:linear-gradient(to bottom,#3575c4 0,#3b89e9 100%)!important;
    border:0;
    line-height: 60px;
    padding: 0;
}

main{padding-bottom: 90px;}
main.description{
	position: relative;
	padding-top:60px;
	padding-bottom: 0;
}
main.description:before{
	display: block;
	content: '';
	position: absolute;
	top:0;
	right:0;
	width: 100%;
	height: 100%;
	background: #f9f9f9 url(images/content/main/background.png) no-repeat 100% 0;
}
.principles_block{
	padding: 50px 100px;
    margin: 50px 0;
    background: #3b89e9;
    color: #fff;
}
.principles_block button{
padding: 10px 25px;
    font-size: 14px;
    text-transform: uppercase;
    margin-right: 30px;
	border: 2px solid #3b89e9;
}
.principles_block button:hover{
	color: #fff;
	background-color: transparent;
	border: 2px solid #fff;
}
.principles_block a{
	padding: 20px 45px;
    border: 2px solid #fff;
    border-radius: 6px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    text-decoration: none;
    text-transform: uppercase;
}
.principles_block a:hover{
	color:#fff;
}
.iframe_block{
	padding: 0 100px;
	
}
.iframe_block iframe{
	height: 545px;
}
.partners-block{
	margin-top: 70px;
	margin-bottom: -40px;
	padding:60px 60px 70px;
	background-color: #fff;
	box-shadow: 0 0 50px 0 rgba(0,0,0,0.2);
}

.partners-block h2{
	margin-bottom: 60px;
}
.partners-block img{margin-bottom: 0;}

.partners-block .swiper-container{padding: 0 10px;}
.partners-block .swiper-button-prev,
.partners-block .swiper-button-next{
	display: block;
	width:10px;
	height: 17px;
	background: transparent url(images/arrows.png) no-repeat 0 -19px;
	margin-top: -8px;
}

.partners-block .swiper-button-prev{
	left:0;
}
.partners-block .swiper-button-next{
	right:0;
	transform: rotate(180deg);
}

.partners-block .swiper-button-prev:hover{
	background-position: 0 0;
	transform: rotate(180deg);
}
.partners-block .swiper-button-next:hover{
	background-position: 0 0;
	transform: rotate(0deg);
}

.files-galery{
	margin-top: 130px;	
	margin-left: 10px;
}

.files-galery .item{
	display: inline-block;
    padding-top: 95px;
    font-size: 18px;
    color: #1d1d1d;
    width: 80px;
    text-align: center;
    text-decoration: none;
}

.files-galery .item:hover{
	/*text-decoration: underline;*/
}

.files-galery .item+.item{margin-left: 50px;}

.files-galery .pdf{background: transparent url(images/pdf.png) no-repeat 50% 0}
.files-galery .ies{background: transparent url(images/ies.png) no-repeat 50% 0}

.main-news{padding:100px 0 70px;}
.main-news h2{text-align: left;}

.news-list .item{
	box-shadow: 0 0 2px 0 rgba(0,0,0,0.1);
	padding: 85px 40px 50px;
	font-family: 'Roboto Medium';
	line-height: 22px;
	position: relative;
	height: 350px;
	transition: .5s;
	margin-bottom: 30px;
	overflow: hidden;
}

.news-list .item label{
	display: block;
	left:0;
	top:30px;
	position: absolute;
	font-family: 'Roboto Black';
	font-size: 13px;
	line-height: 26px;
	width:90px;
	background-color: #3b89e9;
	text-transform: uppercase;
	text-align: center;
}

.news-list .item .date{
	display: block;
    position: absolute;
    top: 30px;
    right: 40px;
    font-size: 14px;
    color: #a7a7a7;
    font-family: 'Roboto Light';
}

.news-list .item:hover{
	box-shadow: 0 0 50px 0 rgba(0,0,0,0.2);
	background-color: #fff;
}

.news-list a{
	display: inline-flex;
    position: absolute;
    color: #a7a7a7;
    font-family: 'Roboto Medium';
    text-transform: uppercase;
    transition: .5s;
    text-decoration: none;
    font-size: 14px;
    line-height: 14px;
    padding: 50px 40px;
    width: 100%;
    height: 100%;
    justify-content: flex-start;
    align-items: flex-end;
    top: 0;
    left: 0;
}

.news-list .item a:before{
    display: inline-block;
    content: '';
    background-image: linear-gradient(to bottom,#3b89e9 0,#3b89e9 100%);
    background-size: 1px 2px;
    background-position: 0 50%;
    background-repeat: repeat-x;
    transition: .5s;
    width: 0px;
    height: 13px;
}

.news-list .item:hover a{
	/*padding-left: 25px;*/
	color:#1d1d1d;
}

.news-list .item:hover a:before{
	width: 15px;
	margin-right: 10px;
}

.news-list .item p{
	position: relative;
}

.news-list .item a{

}
.news-list .item *{z-index: 10;}
.news-list .item .bg{
	display: block;
	position: absolute;
	top:0;
	left:0;
	z-index: 5;
	width: 100%;
	height: 100%;
	opacity: .2;
	transition: .5s;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 50%;
}

.news-list .item:hover .bg{
	opacity: 1;
	/*transform: scale(1.5);*/
}
.news-list .item .bg:before{
	display: block;
	content: '';
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	opacity: 0;
}
.news-list .item:hover .bg:before{
	opacity: .4;
}

.pagination a{
	font-size: 16px;
	color:#1d1d1d!important;
	text-decoration: underline!important;
	background-color: transparent!important;
	border:none!important;
	border-radius: 0!important;
	margin: 0 10px;
	font-family: 'Roboto Medium';
}

.pagination li{background-image: none;padding-left: 0;
	border-radius: 0;}
.pagination li a{display: block;}
.pagination li:before{display: none;}

.pagination li.active a{
	text-decoration: none!important;
	color:#1d1d1d!important;
	background-color: #3575c4!important;
}
/* MAIN END */

/* FOOTER */
footer {
	background-color: #262626;
	padding:60px 0 40px;
}

footer .fast-link{
	font-family: 'Roboto Bold';
	font-size: 14px;

	text-transform: uppercase;
	text-decoration: none;
	margin-bottom: 50px;
	color: #fff;
}

footer .fast-link li{display:inline-block}
footer .fast-link li+li{margin-left: 50px;}
footer .fast-link a{
	display:inline-block;
	color:#fff;
	font-family: 'Roboto Bold';
	border-bottom: 1px solid transparent;
}
footer .fast-link li:hover a{background-color: transparent;}
footer .fast-link a:hover{border-bottom-color: #3283cc;}
.footer-phone a{
	display: inline-block;
	font-family: 'Roboto Black';
	font-size: 35px;
	line-height: 35px;
	color:#fff;
	margin-bottom: 0;
	text-decoration: none;
	border-bottom: 1px solid transparent;
}
footer .work-region{
	text-align: left;
	margin-bottom: 20px;
	color: #fff;
}
.footer-phone a:hover{
	border-bottom-color: #3283cc;
}

.footer-address,.footer-email a,.footer-worktime{
	font-family: 'Roboto Regular';
	font-size: 18px;
	color:#fff;
}

.footer-address{margin-bottom: 30px;}

.footer-email {display: inline-block;margin-right: 40px;margin-bottom: 60px;}
.footer-email a{
	border-bottom: 1px solid #3283cc;
	text-decoration: none;
}

.footer-worktime{
	display: inline-block;
}

.footer-copyright,.footer-created-by{
	font-family: 'Roboto Regular';
	font-size: 14px;
	color:#656565;
	line-height: 25px;
}
.footer-copyright a,
.footer-created-by a{color:#656565;text-decoration: underline;}

footer .nav-header{
	font-family: 'Roboto Black';
	font-size: 25px;
	line-height: 25px;
	color:#3283cc;
	margin-bottom: 35px;
}

.footer-nav{
	-webkit-column-width: 150px;
    -moz-column-width: 150px;
    column-width: 150px;
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 0px;
    -moz-column-gap: 0px;
    column-gap: 0px;
}

.footer-nav .title{
	display: none;
}

.footer-nav .heading{
	font-family: 'Roboto Black';
	font-size: 15px;
	margin-bottom: 20px;
	color:#3283cc;
	margin-top: 0;
}

.footer-nav a{
	font-family: 'Roboto Regular';
	font-size: 15px;
	color:#fff;
	line-height: 25px;
	display: inline-block!important;
	border-bottom: 1px solid transparent;
	padding: 0!important;
	background-color: transparent!important;
	transition: .5s;
}

.footer-nav a:hover{
	border-bottom-color: #3283cc;
}
/* FOOTER END */

.contacts-block{
	background-color: #262626;
	padding:40px 60px 10px;
	color: #fff;
	font-family: 'Roboto Light';
	text-align: center;
	margin-top: 60px;
}

.contacts-block a{color:#3283cc;}
.contacts-block a.mail{text-decoration: underline;}
.contacts-block .phone-ico{
	display: block;
	width: 100%;
	height: 29px;
	background: transparent url(images/phone.png) no-repeat 50% 50%;
	margin: -10px 0 10px;
}

.contacts-block a.phone{
	text-decoration: none;
	font-family: 'Roboto Black';
	font-size: 25px;
	line-height: 25px;
}

.contacts-block .phone-text{
	margin-bottom: 10px;
}

aside .selection{
	background-color: #e7e7e7;
	padding: 40px 30px;
	margin-bottom: 50px;
}
body.catalog aside .selection{
	padding: 0;
}

aside .selection .header{
	font-family: 'Roboto Regular';
	font-size: 18px;
	color: #474747;
	margin-bottom: 40px;
}

aside .selection .collapse-btn{
	font-family: 'Roboto Medium';
	color:#474747;
	font-size: 18px;
    display: block;
    position: relative;
    text-decoration: none;
}

aside .selection .collapse-btn:after{
	display: block;
	content: '';
	position: absolute;
	top:50%;
	margin-top: -4px;
	left: 150px;
	width: 14px;
	height: 8px;
	background: transparent url(images/arrows_text.png) no-repeat 0 -10px;
}

aside .selection .collapse-btn.collapsed:after{
	background-position: 0 0;
	top:25%;
}
aside .selection .collapse-btn.collapsed{
	margin-bottom: 25px;
	padding-bottom: 25px;
}
aside .selection .collapse-btn.collapsed:before{
	display: block;
	content: '';
	position: absolute;
	left:-45px;
	bottom: 0px;
	width: calc(100% + 90px);
	height: 1px;
	background-color: #fff;
	bottom: 0;
}

aside .selection label{
	display: block;
	font-family: 'Roboto Black';
	font-size: 13px;
	line-height: 22px;
	color:#474747;
	text-transform: uppercase;
	cursor: pointer;
	padding-left: 30px;
}

aside .selection label input[type="checkbox"]{
	display: inline-block;
	width: 20px;
	height: 22px;
	background: transparent url(images/checkbox.png) no-repeat 0 0;
	margin-right: 15px;
	margin-top: 0;
	position: absolute;
	vertical-align: middle;
	margin-top: -3px;
	left: 0;
}

body.catalog aside .selection label input[type="checkbox"]{
	left:15px;	

}

aside .selection label input[type="checkbox"]:after{
	display: block;
	content: '';
	position: absolute;
	top:0;
	left: 0;
	width: 20px;
	height: 22px;
	background: transparent url(images/checkbox.png) no-repeat 0 0;
}

aside .selection label input[type="checkbox"]:checked:after{
	background-position: 0 -22px;
}

.checkbox-group{
	padding: 30px 0;
	position: relative;
	margin-bottom: 25px;
}
.checkbox-group label{margin-bottom: 15px;}
.checkbox-group:after{
	display: block;
	content: '';
	position: absolute;
	bottom:0;
	left:-45px;
	width:calc(100% + 90px);
	height: 1px;
	background-color: #fff;
}

aside .selection .range{
	overflow: hidden;
	position: relative;
}

input,button {
	font-family: 'Roboto Medium';
	font-size: 18px;
	line-height: 45px;
	border: 0;
	border-radius: 5px;
	box-shadow: none!important;
	outline: none!important;
	color:#1d1d1d;
}

aside .selection .range input{
	width: calc(50% - 3px);
	padding: 0 20px 0 45px;
	background-color:#fff;
	text-align: right;
}
aside .selection .range .input-from{float: left;}
aside .selection .range .input-to{float: right;}
aside .selection .range:before,
aside .selection .range:after{
	display: block;
	content: 'от';
	position: absolute;
	z-index: 10;
	font-family: 'Roboto Black';
	font-size: 13px;
	line-height: 45px;
	color: #bbb;
    top: 25px;
    left: 10px;
}
aside .selection .range:after{
	content: 'до';
    left: calc(50% + 13px);
}

aside .selection select{
	width: 100%;
	font-family: 'Roboto Medium';
	font-size: 18px;
	line-height: 45px;
    border: none;
    height: 45px;
    background-color: #fff;
    border-radius: 5px;
}

aside .btn-primary{
	line-height: 45px;
	width: 100%;
	margin-top: 20px;
    border: none!important;
    text-transform: uppercase;
}

aside .callback-form{
	padding: 35px;
	box-shadow: 0 0 30px 0 rgba(0,0,0,.2);
	text-align: center;
	margin-bottom: 50px;
}

aside .callback-form .header{
	font-family: 'Roboto Regular';
	font-size: 18px;
	color: #1d1d1d;
	margin-bottom: 30px;
}

aside .callback-form input[type=text]{
    border: 1px solid #e7e7e7;
    width: 100%;
    margin-bottom: 15px;
    padding: 0 20px;
    font-family: 'Roboto Black';
    font-size: 14px;
    text-align: center;
    text-transform: uppercase;
}

aside .callback-form .btn-primary{
	margin-top: 0;
}

/* CONTACTS BEGIN */
#contacts-map{
	display: block;
	width:100%;
	height:700px;
	position: relative;
}
.contacts main{padding-bottom: 0;}

#contacts-description {
    position: absolute;
    z-index: 10;
    left: calc(50% - 570px);
    top:80px;
    width:370px;
    /*height: 370px;*/
    background-color: #fff;
    box-shadow: 0 0 30px 0 rgba(0,0,0,.2);
    padding: 0 35px 45px;
	font-family: 'Roboto Regular';
	line-height: 25px;
}

#contacts-description .btn{
	width: 100%;
	line-height: 40px;
	text-transform: uppercase;
}

#contacts-switcher{
	margin-bottom: 25px;
	text-align: center;
}
#contacts-switcher a{
	font-family: 'Roboto Medium';
	color: #1d1d1d;
	text-decoration: none;
	display: inline-block;
	width: 100px;
	line-height: 46px;
	border-bottom: 4px solid #fff;
	background-color: #e9e9e9;
}
#contacts-switcher a+a{margin-left: -4px;}
#contacts-switcher a.active{
	border-bottom-color: #3b89e9;
	background-color: #3b89e9;
}

#contacts-description .title{
	font-family: 'Roboto Medium';
	font-size: 22px;
	line-height: 22px;
	margin-bottom: 30px;
}

#contacts-description .phone{
	display: block;
	font-family: 'Roboto Black';
	font-size: 30px;
	line-height: 30px;
	color: #1d1d1d;
	margin-bottom: 35px;
}

#contacts-description .subtitle{
	font-family: 'Roboto Black';
	font-size: 10px;
	line-height: 10px;
	color: #a7a7a7;
	margin-bottom: 5px;
	text-transform: uppercase;
}

#contacts-description .email{
	color: #1d1d1d;
	display: block;
	margin-right: -30px;
}

.ymaps-2-1-60-events-pane{
	background: transparent url(images/clouds.png) no-repeat 50% 50%;
}
/* CONTACTS END */

/* CATALOG BEGIN */
.catalog h2.section-title{
	font-family: 'Roboto Light';
	font-size: 32px;
	line-height: 80px;
	background-color:#3b89e9;
	padding: 0 30px 0 40px;
}

.catalog h2 .btn-default{
	float: right;
    display: block;
    width: 145px;
    margin-top: 20px;
    padding: 0;
    font-family: 'Roboto Black';
    font-size: 14px;
    line-height: 40px;
    border: 2px solid #fff;
    border-radius: 5px;
    background-color: transparent;
    text-transform: uppercase;
    transition: .5s;
    color: #1d1d1d!important;
    text-decoration: none;
}

.product-list .item{
	margin-bottom: 40px;
	text-align: center;
	padding-bottom:15px;
}
.product-list .item .btn-primary {
	line-height: 30px;
	padding: 0 15px;
	margin-top: 10px;
}

.product-list .item a.img-link{
	display: block;
	width: 100%;
	height: 220px;
	box-shadow: 0 0 2px 0 rgba(0,0,0,0.1);
	margin-bottom: 30px;
	overflow: hidden;
	display: flex;
	align-items: center;
	/*background: white;*/
}

.product-list .item:hover{
	box-shadow: 0 0 30px 0 rgba(0,0,0,0.2);
}

.product-list.hover-all .item:hover a.img-link{
	box-shadow: none;
}

.product-list.hover-all .item:hover{
	box-shadow: 0 0 30px 0 rgba(0,0,0,0.2);
}

.product-list .item a.title{
	display: block;
	font-family: 'Roboto Medium';
	font-size: 18px;
	text-align: center;
	text-decoration: none;
	color:#1d1d1d;
}
.fx_container{
	display: flex;
    align-items: center;
    justify-content: center;
    max-width: 90%;
    margin: 0 auto;
}
.catalog .contacts-block {font-size: 18px;}
.catalog .contacts-block .phone{
	font-size: inherit;
}
.catalog .contacts-block span{color: #3283cc;font-family: 'Roboto Medium'}
/* CATALOG END */

/* SEARCH BEGIN */
.search .result{
	float: right;
	width: 300px;
	height: 80px;
	line-height: 25px;
	font-family: 'Roboto Medium';
	font-size: 18px;
	text-align: center;
	background-color: #262626;
	padding: 16px;
	color: #fff;
	margin-bottom: 30px;
}
.search .result p{margin-bottom: 0}
.search .result span{
	display: block;
	color:#3283cc;
}
.search .form{
	position: relative;
	overflow: hidden;
}
.search .clear-result{
	display: block;
	position: absolute;
	width: 65px;
	height: 80px;
	right:300px;
	top:0;
	background: transparent url(images/x_search.png) no-repeat 50% 50%;
	outline: none;
	border: none;
}
.search input.search-input{
	line-height: 80px;
	width: calc(100% - 300px);
	border:none;
	padding: 0 70px 0 80px;
	background: #e7e7e7 url(images/loupe2.png) no-repeat 25px 50%;
	font-family: 'Roboto Light';
	font-size: 32px;
	color: #1d1d1d;
}

.product-list .item p{
	text-align: center;
	padding: 0 5px 25px;
	margin-bottom: 0;
}

.search .product-list .item .title{
	margin-bottom: 20px;
}

.product-list .item .tags{
	border-top:1px solid #e7e7e7;
	padding-top: 15px;
}

.product-list .item .tags a{
	display: block;
	font-family: 'Roboto Black';
	text-transform: uppercase;
	color: #bbb;
	font-size: 13px;
}

.product-list .item .tags a:before{
	display: inline;
	content: '#';
}

.catalog aside nav{
    padding: 20px;
    box-shadow: 0 0 10px 1px rgba(0, 0, 0, .1);	
    margin-bottom: 30px;
}

.catalog aside nav .title{
    font-size: 13px;
    line-height: 13px;
    font-family: 'Roboto Black';
    text-transform: uppercase;
    color: #474747;
    display: block;
    margin-bottom: 10px;
}

.catalog aside nav li{
	background-image: none;
	padding: 0;
	margin-bottom: 0;
}

.catalog aside nav li a{
	padding: 10px;
	color:#1d1d1d;
	font-size: 14px;
	line-height: 18px;
	font-family: 'Roboto Medium';
	text-decoration: none;
}
.catalog aside nav li.active a,
.catalog aside nav li a:hover{
	background-color: #3283cc;
}

.catalog .main-form{
	margin-bottom: 2px;
}
.catalog .main-form .item{
	margin-bottom: 15px;
}
.catalog .main-form label{
	font-size: 13px;
	line-height: 13px;
	font-family: 'Roboto Black';
	text-transform: uppercase;
	color:#474747;
	display: block;
	margin-bottom: 10px;
}

.catalog .main-form .ui-input {
	display: inline-block;
	width: calc(50% - 2px);
	position: relative;
	vertical-align: middle;
}
.catalog .main-form .ui-input.one {
	width: 100%;
}
.catalog .main-form .ui-input.one .btn{
	margin-top: 23px;
}

.catalog .main-form .ui-input.full {
	width: 100%;
}

.catalog .main-form .ui-input label{
	position: absolute;
	z-index: 10;
	width: 100%;
	background-color: #fff;
	border-radius: 4px;
	color: #bbb;
	line-height: 45px;
	padding-left: 15px;
}

.catalog .main-form .ui-input input[type="text"],
.catalog .main-form .ui-input .dropdown button,
.bx-filter-select-text
{
	position: relative;
	z-index: 20;
	border: none;
	background-color: transparent;
	text-align: right;
	line-height: 45px;
	padding: 0 13px 0 40px;
	width: 100%;
	font-weight: 400;
}

.bx-filter-select-text:after{
    display: block;
    content: '';
    background: transparent url(images/arrows_text.png) no-repeat 0 0;
    width: 14px;
    height: 9px;
    border: 0;
    position: absolute;
    top: 50%;
    margin-top: -4px;
    right: 10px;
}

.catalog .main-form .ui-input input[type="submit"]{
	line-height: 45px;
	width: calc(100% - 10px);
	margin-left: 10px;
	text-transform: uppercase;
}

.catalog .main-form, .catalog .add-form{
	padding: 25px 20px 0;
	background-color: #e6e6e6;
}

.smartfilter{
	position: relative;
}

.catalog .footer-form{
	background-color: transparent;
	font-size: 18px;
	font-family: 'Roboto Medium';
	line-height: 18px;
	color:#3283cc;
	padding: 20px;
	text-align: center;
	/*top: 132px;*/
    /*position: absolute;*/
    /*right: 0;*/
}

.catalog .footer-form .clear{
	/*padding-left: 35px;*/
	/*float: right;*/
	display: inline-block;
	margin-top: 15px;
	text-decoration: none;
	color: #1d1d1d;
	font-size: 16px;
	line-height: 16px;
	/*background: transparent url(images/x.png) no-repeat 0 50%;*/
	position: relative;
	background: transparent;

 	border-bottom: 1px dashed;
    border-radius: 0;
    padding: 0;
}

.catalog .footer-form .clear:after{
	display: inline-block;
	position: absolute;
	content: '';
	left:-20px;
	width: 16px;
	height: 16px;
	background: transparent url(images/x.png) no-repeat 0 50%;
}

.catalog .footer-form .clear span{
	border-bottom: 1px dashed;
}

.catalog .add-form .heading{
	font-family: 'Roboto Medium';
	font-size: 18px;
	/*margin-bottom: 20px;*/
}

.catalog .add-form label{
	padding-left: 30px;
	line-height: 20px;
	font-size: 13px;
	font-family: 'Roboto Black';
	text-transform: uppercase;
	color:#474747;
	vertical-align: middle;
	margin-bottom: 10px;
	cursor: pointer;
}
.catalog .add-form .heading a{
	color:#1d1d1d!important;
	position: relative;
	text-decoration: none;
	display: block;
}

.catalog .add-form .bx-filter-parameters-box{
	padding-top: 20px;
}

.catalog .add-form .heading a:after{
	display: block;
	content: '';
	position: absolute;
	top:10px;
	left:110px;
	width: 14px;
	height: 9px;
	background: transparent url(images/arrows_text.png) no-repeat 0 -9px;
}
.catalog .add-form .heading a.collapsed:after{
	background-position: 0 0;
}

.col-middle{
	padding: 0 10px!important;
}

.catalog .main-form .ui-input .dropdown button,
.bx-filter-select-text{
	text-align: left;
	background-color: #fff;
	border-radius: 4px;
	padding-left: 15px;
	font-size: 18px;
}
.catalog .main-form .ui-input .dropdown .caret{
    display: block;
    background: transparent url(images/arrows_text.png) no-repeat 0 0;
    width: 14px;
    height: 9px;
    border: 0;
    position: absolute;
    top: 50%;
    margin-top: -4px;
    right: 10px;
}
.catalog .main-form .ui-input .dropdown.open .caret{
	background-position: 0 -9px;
}

.dropdown .dropdown-menu{
	width: 100%;
	min-width: auto;
}
.dropdown li{
	background: none;
	padding: 0;
	margin-bottom: 0;
}
.dropdown li a{
	padding: 0 15px;
	font-size: 18px; 
	line-height: 40px;
	font-family: 'Roboto Medium';
	cursor: pointer;
	text-decoration: none;
}
.dropdown li a:hover{
	background-color: #3283cc;
}

.selection{
	margin-bottom: 30px;
}

.product-list .labels{
	font-family: 'Roboto Light';
	margin: 20px 0;
	padding-left: 20px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.product-list .labels span{
	font-size: 14px;
	white-space: nowrap;
	display: inline-block;
	line-height: 30px;
	padding-left: 40px;
	background-size: 30px 30px!important;
}

.product-list .labels span+span{	
	margin-top: 10px;
}

.product-list .labels .power{background: transparent url(images/power.png) no-repeat 0 50%;}
.product-list .labels .light{background: transparent url(images/light.png) no-repeat 0 50%;}
.product-list .labels .protect{background: transparent url(images/ip.png) no-repeat 0 50%;}
.product-list .article{font-size: 12px; text-transform: uppercase;line-height: 12px;}

.product-list .instock{
    font-size: 13px;
    text-transform: uppercase;
	color: #52a133;
	font-weight: bold;
}

.product-list .instock span{
    padding-left: 0;
    text-align: center;
    margin-right: 5px;
    color: #86ff20;
}
.product-list .price{font-weight: bold;}

.block-callback{
	display: block;
	background-color: #2a2a2a;
	padding: 40px 20px;
	color:#fff;
	text-align: center;
	margin-bottom: 30px;
}

.block-callback .heading{
	font-size: 20px;
	margin-bottom: 30px;
	font-family: 'Roboto Regular';
}

.block-callback p{
	font-family: 'Roboto Light';
	margin-bottom: 0;
}

.block-callback .phone{
	font-family: 'Roboto Medium';
	font-size: 18px;
	color:#3283cc;
	margin-top: 15px;
	margin-bottom: 25px;
	display: block;
}

.block-callback button{
	margin-top: 20px;
}

.selection.selection-page .main-form{
	margin-bottom: 0;
	padding: 0;
}
.selection.selection-page .add-form{
	padding: 25px;
}
.selection.selection-page .other-form{
	padding: 25px;
}

.selection.selection-page .main-form > .row > div+div{
	border-left: 2px solid #fff;
}

.other-form .ui-input{
	margin-bottom: 15px;
}

.catalog .other-form .ui-input  input[type="submit"]{
	margin-left: 0;
	width: 100%;
}

.catalog .selection.selection-page .add-form label{
	margin-bottom: 20px;
}

.title-line {overflow: hidden;}
.title-line .btn,
.title-line .tags{
	float: right
}

.title-line h1{
	margin-bottom: 10px;
}

.title-line .article{
	font-size: 12px;
	text-transform: uppercase;
	margin-right: 5px;
	display: inline-block;
}
.title-line .article label{margin-right: 5px}

.title-line .instock{
	display: inline-block;
    font-size: 12px;
    text-transform: uppercase;
}

.title-line .instock span{
    padding-left: 0;
    text-align: center;
    margin-right: 5px;
    color: #86ff20;
}
.title-line .price{font-weight: bold;}

.title-line .tags{
	display: block;
	margin-top: 50px;
	line-height: 32px;
	font-size: 14px;
	font-family: 'Roboto Black';
	text-transform: uppercase;
}

.title-line .tags a{
	color:#a7a7a7;
	text-decoration: none;
}
.title-line .tags a span:before{
	display: inline-block;
	content: '#';
}
.title-line .tags a:hover span{
	border-bottom: 1px solid #3283cc;
}
.title-line .tags a+a{
	margin-left: 30px;
}
.title-line button{
	width: 190px;
	line-height: 50px;
	padding: 0;
	text-transform: uppercase;
	margin-top: 41px;
	margin-left: 30px; 
}

#product-slider img{
	max-width: 90%;
	height: 100%;
}
#product-slider .swiper-navigation-icon {
	display: none;
}

#product-slider .swiper-slide{
	height: 400px;
	display: flex;
    align-items: center;
    justify-content: center;
}

#product-slider .swiper-button-prev,
#product-slider .swiper-button-next{
	background-image: url(images/arrows.png);
	background-size: auto;
	height: 18px;
	width: 10px;
	background-position: 0 -18px;
}

#product-slider .swiper-button-next{	
	transform: rotate(180deg);
}

#product-slider .swiper-button-prev:hover,
#product-slider .swiper-button-next:hover{
	background-position: 0 0;
}

#product-slider .swiper-button-prev:hover{	
	transform: rotate(180deg);
}
#product-slider .swiper-button-next:hover{	
	transform: rotate(0);
}

#product-slider .swiper-button-prev:after, #product-slider .swiper-button-next:after{
	display: none;
}

#product-slider .swiper-pagination{bottom:30px;}
#product-slider .swiper-pagination-bullet{
	vertical-align: middle;
	height: 8px;
	width: 8px;
	background-position: -200px 0; 
	background-color: #c6c6c6;
}
#product-slider .swiper-pagination-bullet-active{
	width: 12px;
	height: 12px;
	background-color: transparent;
	background-position: 0 0;
}
@media (max-width: 565px) {
#product-slider img {
height: auto;
}
}


.short-chars{
	background-color: #fff;
	box-shadow: 0 0 30px 1px rgba(0,0,0,.1);
	margin-bottom: 60px;
 	position: relative;
    z-index: 10;
}

.short-chars .item{
	text-align: center;
	font-family: 'Roboto Light'	;
	font-size: 16px;
	padding: 40px 20px;
}

.short-chars .item .vals{
	background-position: 50% 0;
	background-repeat: no-repeat;
	padding: 65px 0 20px;
	border-bottom: 1px solid #3283cc;
}

.short-chars .item .vals.power{background-image: url(images/icon1.png);}
.short-chars .item .vals.light{background-image: url(images/icon2.png);}
.short-chars .item .vals.led{background-image: url(images/icon3.png);}
.short-chars .item .vals.protect{background-image: url(images/icon4.png);}
.short-chars .item .vals.period{background-image: url(images/icon5.png);}
.short-chars .item .vals.warranty{background-image: url(images/icon6.png);}

.short-chars .item .title{
	font-family: 'Roboto Black';
	font-size: 15px;
	line-height: 18px;
	padding-top: 25px;
	text-transform: uppercase;
}

.text-partner-block{
    margin-bottom: 40px;
    display: flex;
    /*align-items: center;*/
}

.text-partner-block img{
	margin-bottom: 0;
}

.attention-block{
	font-family: 'Roboto Regular';
	font-size: 22px;
	margin-bottom: 90px;
	text-align: center;
}

.attention-block img{
	margin-bottom: 40px;
}

.table-chars{
	margin-bottom: 65px;
}

.table-chars th{
	font-family: 'Roboto Bold';
	font-size: 13px;
	line-height: 15px;
	vertical-align: bottom;
}


.table-chars tr.general > td:nth-child(1){
	white-space: nowrap;
}

.table-chars tr.general > td > a{
	color:#1d1d1d;
	text-decoration: none;
	display: inline-block;
	text-decoration: none;
	border-bottom: 1px solid;
}

.table-chars tr.general.active{
	font-family: 'Roboto Medium';
}

.table-chars tr.general.active > td:nth-child(1) > a{
	border-bottom: transparent;
}

.table-chars tr{
	background-color: #fff!important;
}

.table-chars tr:nth-child(odd){
	background-color: #efefef!important;
}

.table-chars .mod-content h2{
	margin-top: 0;
}

.table-chars .mod-content .param{
	display: flex;
    justify-content: space-between;
	max-width: 100%;
	border-bottom: 1px solid #eee;
	padding: 5px 10px;
}
.table-chars .mod-content .param:nth-child(odd){
	background-color: #fafafa;
}

.table-chars .mod-content .param:hover{
	background-color: #f0f0f0;
}

.mod-content-nav .file{
	display: flex;
	align-items: center;
	float: right;
	width: 150px;
	height: 56px;
	padding-left:60px;
	background: transparent no-repeat 15px 50%;
	border-radius: 4px;
	border: 1px solid #e3e3e3;
	line-height: 18px;
	margin-left: 7px;
	color: #1d1d1d!important;
	text-decoration: none;
}

.mod-content-nav .file.ies{background-image: url(images/ies_product.png);}
.mod-content-nav .file.pdf{background-image: url(images/pdf_product.png);}

.mod-content-nav .nav,
.text-partner-block .nav 
{border: none;}
.text-partner-block .nav{
	margin-bottom: 10px;
} 
.mod-content-nav .nav li,
.text-partner-block .nav li
{
	background-image: none;
	padding: 0;
}
.mod-content-nav .nav li+li,
.text-partner-block .nav li+li
{
	margin-left: 7px;
}
.mod-content-nav .nav li a,
.text-partner-block .nav li a{
	border: 1px solid #3283cc;
	border-radius: 4px;
	color:#1d1d1d!important;
	text-decoration: none;
	width: 170px;
	height: 56px;
	line-height: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.mod-content-nav .nav li a:hover,
.text-partner-block .nav li a:hover
{
	background-color: #3283cc;
}
.mod-content-nav .nav li.active a,
.text-partner-block .nav li.active a
{
	background-color: #3283cc;
	font-family: 'Roboto Medium';
}

.mod-content .tab-pane{
	padding: 40px 0 100px;
}

.clamping h2{
	margin: 0 0 70px;
}

.clamping img+img{
	margin-left: 100px;
}

.bx-filter-container-modef{
	position: relative;
}

.bx-filter-popup-result.left{
	position: absolute;
    z-index: 100;
    width: 120px;
    height: 60px;
    background: #ffc529;
    padding: 5px 10px;
    top: 60px;
    border-radius: 6px;
    display: none!important;
}
.bx-filter-popup-result.left a{
	color:#0b3e80;
}

.search-page p{margin-bottom: 0;}
.search-page .items{margin-bottom: 20px;padding-bottom: 20px;border-bottom: 1px solid #eee}
.search-page small{font-size: 12px;display: block;}
.search-page .tags a{
	color:#a7a7a7;
	text-decoration: none;
	border-bottom: 1px solid #3283cc;
	font-size: 12px;
}
.search-page .tags a+a{
	margin-left: 10px
}

.search-page .tags a:before{
	display: inline;
	content: '#';
}

.modal-title{
    font-family: 'Roboto Regular';
    font-size: 20px;
    color: #1d1d1d;
}

.modal input, .modal textarea{
    border: 1px solid #e7e7e7;
    width: 100%;
    margin-bottom: 15px;
    padding: 0 20px;
    font-family: 'Roboto Black';
    font-size: 14px;
    text-align: center;
    text-transform: uppercase;
    resize: none;
}

.modal label{
	display: none;
}

.modal .btn-primary{
    line-height: 45px;
    width: 100%;
    border: none!important;
    text-transform: uppercase;
    margin-bottom: 0;
}

.modal-header{
	text-align: center;
	border-bottom: 0;
}

.modal-body{
	padding: 0 15px;
}

.modal .close{
	width: 42px;
	height: 42px;
	background: transparent url(images/close.png) no-repeat 50% 50%;
     right: -50px;
    position: absolute;
    top: 0;
}


.dim{
	overflow-x: scroll;
	position: relative;
}

.dim td{
	vertical-align: top;
}

.mouse-block{
    display: block;
    position: absolute;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
    text-align: center;
    font-weight: bold;
    border: 2px solid;
    padding: 40px 20px;
    background-color: rgba(255,255,255,.9);
}

.mouse-block img{
	width: 40%;
    margin: 30px auto;
}
.mouse-block a{
	color: #000;
    text-transform: uppercase;
    padding: 10px 20px;
    border: 2px solid;
    display: block;
}

/* SEARCH END */


.error-status{
	display: flex;
	flex-direction: column;
	width: 200px;
	height: 200px;
	border-radius: 50%;
	margin: 0 auto;
	/*background-color: #f00;*/
	color:#fff;
	justify-content: center;
	align-items: center;
	font-size: 40px;
	font-weight: bold;
	margin-bottom: 30px;
    background: linear-gradient(to right, #3283cc 0%,#3283cc 100%);
}

.error-status .sub{
	font-size: 12px;
	text-transform: uppercase;
	margin-top: 5px;
}

.catalog-404 .item{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    border-bottom: 1px solid #efefef;
    margin-bottom: 10px;
    padding-bottom: 10px;
}
.catalog-404 .item .img-container {margin-right: 20px;width: 60px;}
.btn-lazy{
	padding: 0 15px;
	text-transform: uppercase;
}

#popup-area .modal-body{
	padding: 30px;
}

.area-items{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.area-items .item{
    display: inline-block;
    color: #000;
    margin-right: 10px;
    max-width: 31%;
    flex: 0 0 31%;
    line-height: 15px;
    margin-bottom: 20px;
}

.area-items .item a{
	display: inline-block;
	color: #000;
	border-bottom: 1px dashed;
	text-decoration: none;
}

.swiper-container{
	position: relative;
	overflow: hidden;
}

main .nav-tabs li{
	background-image: none;
	padding-left: 0;
}
.portfolio-block .center-block.img-responsive{
	height: 200px;
}
#tab-delivery .city{
	margin-bottom: 30px;
}
#tab-delivery .city-title{
	font-weight: bold;
    font-size: 18px;
}
#tab-delivery .point{
	margin-bottom: 10px;	
    font-size: 14px;
}
.swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after, .swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after{display: block;}
/*xs*/

@media (max-width: 767px) {
	header.header{padding-top: 10px;}
	header.header .work-time{	
		display: none;
	    flex: 0 0 var(--col12);
	    max-width: var(--col12);
	}

	header.header .place{
		display: none;
		flex: 0 0 var(--col12);
		
	}

	header.header .logo{
		position: relative;
		order:2;
		flex: 0 0 var(--col12);
		max-width: var(--col12);
	}	
	header.header .logo .link{margin-top: 0;margin-right: 70px;}

	header.header .contacts{
		order: 3;
		flex: 0 0 var(--col12);
		max-width: var(--col12);	
		text-align: center;
		padding-top: 10px;
		padding-top: 50px;
		display: flex;
		
	}
	.header-social{
		margin-right: 30px;
		margin-left: 0;
	}
	header.header .header-phone{
		margin-left: 0;
	}

	header.header .header-email{
		display: none;
	}

	header.header .header-search{
		order:3;
		flex: 0 0 var(--col12);
		max-width: var(--col12);		
	}

	header.header .header-callback{	
		display: none;
		/*flex: 0 0 var(--col2);*/
		/*max-width: var(--col2);	*/
	}

	header.header .header-menu{
		order:4;
		flex: 0 0 var(--col12);
		max-width: var(--col12);			
	}

	.header-search input{background-position: 10px 50%;padding-left: 40px;font-size: 15px;}

	.mobile-menu-btn{
	    display: block;
	    position: absolute;
		top: 0;
		right: 30px;
	    width: 40px;
	    height: 40px;
	    text-align: center;
	    background-color: transparent;
	    background-image: linear-gradient(to right, #3283cc 0%,#3283cc 100%),linear-gradient(to right, #3283cc 0%,#3283cc 100%),linear-gradient(to right, #3283cc 0%,#3283cc 100%);
	    background-size: 70% 2px, 70% 2px, 70% 2px;
	    background-position: 50% 25%, 50% 50%, 50% 75%;
	    background-repeat: no-repeat;
	    border: 2px solid #3283cc;
	    z-index: 100;
	    cursor: pointer;
	}
	.mobile-sub {    
		display: block;
		position: relative;
	    z-index: 100;
	    cursor: pointer;
	    font-weight: bold;
	    text-align: center;
	    line-height: 40px;
	    font-size: 20px;
	    color: #fff;
	    /*background-color: #df2e0b;*/
	    width: 48px;
	    float: right;
	}
	.mobile-sub:before{
		display: inline;
		position: relative;
		content: '-';
	}
	.mobile-sub.collapsed:before{
		content: '+';
	}
	.header nav {margin: 0 10px;}
	.header nav > ul ul{
		position: relative;
	}
	.header nav > ul ul li{border-bottom: none}
	.header .main-nav > ul > li{border-bottom: 1px solid #fff;}
	.header .main-nav > ul > li a{text-align: left;line-height: 40px;background-color: #3b89e9; padding: 0 10px;margin-bottom: 0;font-size: 16px;}
	#mobile-menu{
	    background-color: #fff;
	    z-index: 100;
	    position: relative;
		margin-top: -20px;
		padding-top: 20px;
		padding-bottom: 10px;
		border-radius: 0 0 5px 5px;
	}
	#mobile-menu a{color:#000;}
	#mobile-menu .callback{
		color:#000!important;
		width: calc(100% - 20px);
		margin: 0 auto 10px;
	}
	.main-nav li:last-child{border-radius: 0;}
	header.header{padding-top: 10px;padding-bottom: 20px;}
	.header .callback{margin-bottom: 20px;}
	.header .logo{}
	.header .cleft{height: 80px;}
	.header .cleft:before{width: calc(100% - 30px)}
	.header .cright{margin-top: 0;}
	.header .fast-link {text-align: center;}
	.header .fast-link li:nth-child(n+2):before{margin:0;background: none;color:#3283cc;content: ' / ';display: inline;}
	.header .fast-link a {font-size: 11px;line-height: 12px;}
	.offer .swiper-slide{padding-top: 180px;min-height: 100%;height: auto;}
	.offer .btn{bottom: 10px;}
	.offer .description{padding-top: 30px;padding-bottom: 80px;}
	.offer .tags a+a{margin-left: 15px;}
	main.description:before{opacity: .1;}
	.breadcrumb{white-space: nowrap;overflow: scroll;}
	.breadcrumb>li+li:before{margin: 0;}
	.breadcrumb li{display: inline-block;margin-bottom: 5px;}

	footer .fast-link li+li{margin-left: 20px;}
	.footer-nav{column-count: 1;}
	footer{padding: 20px 0;}
	footer .fast-link{margin-bottom: 20px;}
	footer .fast-link a{font-size: 15px;}
	.footer-nav{margin-bottom: 20px;}
	.partners-block{padding: 40px 30px;}
	.files-galery a+a{margin-left: 30px;}
	.news-list a{bottom:30px;}
	.contacts-block a.phone{font-size: 21px}	
	.catalog h2.section-title{padding: 23px 100px 23px 10px;font-size: 17px;line-height: 24px;position: relative;}
	.catalog h2 .btn-default{position:absolute;margin-top: 0;width: 70px;line-height: 30px;font-size: 10px;right: 10px;top:20px;}
	.col-middle{padding: 0!important;}
	.main-form .item{margin-bottom: 15px;}
	.catalog .footer-form{padding: 20px 25px;font-size: 15px;}
	.catalog .footer-form .clear{font-size: 15px;line-height: 18px;}

	#contacts-map{height: 350px;margin-top: 340px;}
	#contacts-description{top:-340px;left:0;width: 100%;position: absolute;font-size: 14px;}
	.toggle-filter{margin-bottom: 20px;width: 100%;display: block;line-height: 40px;text-align: left; padding-left: 10px;position: relative;text-decoration: none;}
	.toggle-filter:after{
		display: block;
		content: '';
		width: 14px;
		height: 9px;
		position: absolute; 
		top:16px;
		right: 10px;
		background: transparent url(images/arrows_text.png) no-repeat 0 -9px;
	}
	.toggle-filter.collapsed:after{
		background-position: 0 0;
	}
	.title-line .tags{margin-top: 20px;font-size: 12px; float: left;}
	.title-line .tags a+a {margin-left: 15px;}
	#product-slider .swiper-slide{height: 300px;}

	.short-chars {box-shadow: none;margin-bottom: 30px;}
	.short-chars .item{font-size: 14px;padding: 40px 0px;}
	.text-partner-block{display: block;}
	.partners-link{margin-top: 30px;display: block;}
	.attention-block{font-size: 18px;margin-bottom: 40px;}
	.attention-block img{margin-bottom: 10px;}
	.attention-block .item{margin-bottom: 30px;}
	.clamping{text-align: center;}
	.clamping img{display: block;margin: 0 auto 20px!important;}
	#table-chars-block{margin-bottom: 20px;max-width: 100%; overflow-x: auto}
	/*.table-chars .mod-content{padding: 10px 0 0;}*/
	main table td, main table th{padding: 10px;}
	.table-chars tr td{display: block;padding: 0;}
	.table-chars tr :last-child{margin-bottom: 10px;}
	.mod-content-nav .file{float: left;margin-bottom: 20px;margin-left: 0}
	.mod-content-nav .file+.file{margin-left: 20px;}
	.mod-content-nav .nav li a{width: 100px;font-size: 12px;padding: 0;height: 40px;}
	.mod-content .tab-pane{padding: 10px 0;}
	.mod-content .tab-pane h2{margin-top: 0;}
	.table-chars .common > td{padding: 0;}
	span.xs-label {
	    display: inline!important;
	    font-family: 'Roboto Regular';
	}
	.main-catalog .catalog-section-item{padding: 0 15px; width: 100%; }
	footer .fast-link .nav{
		white-space: normal;
	}
	#contacts-description .phone{font-size: 26px;margin-bottom: 20px;}
	.mod-content-nav .nav li+li, .text-partner-block .nav li+li{margin-left: 0;}
	.mod-content-nav .nav li, .text-partner-block .nav li{width: 50%;}
	.mod-content-nav .nav li a, .text-partner-block .nav li a{width: 100%;}
	.title-line .btn, .title-line .tags{float: none;}
	.product-list .item a.img-link{height: auto!important;}
	.row.catalog-section{		
		display: flex;
	    flex-direction: column-reverse;
	}
	.bx-touch .product-item{
		padding: 15px 30px 0;
	}
	.principles_block{
		padding: 50px 30px;
	}
	.principles_block button{
		padding: 5px 10px;
    	font-size: 12px;
		margin-right: 0;
	}
	.iframe_block {
		padding: 0 20px;
		display: flex;
		justify-content: center;
	}
	.iframe_block iframe{
		height: 100%;
	}
	.product-list .item{
		padding-left: 30px;
		padding-right: 30px;
	}
}

/*sm*/
@media (min-width: 768px) and (max-width: 991px) {
	#mobile-menu{display: block}
	.main-nav{font-size: 18px;}
	header.header .work-time{font-size: 12px;}
	.header .work-time .work-region{margin-left: 0;}
	/*header.header .logo .link{margin-top: -25px;margin-right: -15px;}	*/
	.header-phone,.header-email{margin-left: 0;}
	header.header .contacts{padding-right: 0;}
	header.header .header-phone{margin-bottom: 5px;}
	.header-search input{background-position: 10px 50%;padding-left: 40px;}
	.header button.callback{line-height: 20px;}
	.header-phone a{font-size: 18px;}
	.header-email a{font-size: 14px;}
	.offer .swiper-pagination {left: calc(50% - 150px);}
	.offer .additional-pagination {right: calc(50% - 360px);}
	#contacts-map{height: 350px;margin-top: 330px;}
	#contacts-description{top:-330px;left:0;width: 100%;position: absolute;height: 330px;}
	.main-catalog .item{font-size: 15px;}
	.catalog h2.section-title{font-size: 24px;}
	main.description:before{opacity: .1;}
	.files-galery{text-align: center;margin-left: auto;}
	.main .news-list > :last-child{display: none}
	footer{padding: 20px 0;}
	footer .fast-link{margin-bottom: 20px;}
	.footer-nav{margin-bottom: 30px;}
	.main-nav ul li:hover > ul{display: block;}
	.short-chars{box-shadow: none}
	.short-chars .col-item{padding: 0 10px;}
	.short-chars .item{font-size: 14px;padding: 40px 0px;}
	.short-chars .item .title{font-size: 12px;}
	.attention-block{font-size: 18px;}
	/*.table-chars .mod-content{padding: 0;}*/
	main table td, main table th{padding: 10px;}
	.mod-content-nav .nav li a{width: 120px;font-size: 14px;padding: 0;}
	.table-chars .common > td{padding: 0;}
	#filter{display: block;}
	.main-catalog .catalog-section-item{padding: 0 15px; width: 50%; }
}

/*md*/
@media (min-width: 992px) and (max-width: 1199px) {	
	#mobile-menu{display: block}
	/*header.header .logo .link{margin-top: -30px;}*/
	.header-phone,.header-email{margin-left: 0;}
	.header-phone a{font-size: 20px;}
	header.header .work-time{font-size: 13px;}
	.header .work-time .work-region{margin-left: 2px;}
	.header-search input{padding: 0 10px 0 40px;background-position: 10px 50%;}
	.offer .swiper-pagination{left:calc(50% - 250px);}
	.offer .additional-pagination{right:calc(50% - 470px);}
	#contacts-description{left:calc(50% - 470px);}
	.main-catalog .item{font-size: 14px;}
	main.description:before{opacity: .5;}
	.news-list .item{font-size: 15px;}
	.news-list a{bottom:30px;}
	footer .fast-link li+li{margin-left: 30px}
	.main-nav ul li:hover > ul{display: block;}
	.contacts-block a.phone{font-size: 21px;}
	#filter{display: block;}
	.short-chars .item{font-size: 15px;padding: 40px 10px;}
	main table td, main table th{padding: 20px;}
	/*.table-chars .mod-content{padding: 10px;}*/
	.main-catalog .catalog-section-item{padding: 0 15px; width: 33.3%; }
}

/*lg*/
@media (min-width: 1200px) {
	#mobile-menu{display: block}
	.main-nav ul li:hover > ul{display: block;}
	#filter{display: block;}
}

.bx-core-window input{line-height: 100%;}

.container{position: relative;}
.portfolio-block{
	    margin-top: initial;
}

.swiper-nav__left{
right: auto;
position: absolute;
margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
z-index: 10;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
color: var(--swiper-navigation-color,var(--swiper-theme-color));
margin-left: -30px;
margin-top: -10px;
width: 80px;
height: 200px;
top: 87px;
left: -33px;
}
.swiper-nav__right{
right: auto;
position: absolute;
margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
z-index: 10;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
color: var(--swiper-navigation-color,var(--swiper-theme-color));
margin-left: -30px;
margin-top: -10px;
width: 80px;
height: 200px;
top: 87px;
    left: 100%;
    margin-left: -17px;
}
.swiper-nav__left:hover{
background: #DCECFF;
}
.swiper-nav__right:hover{
background: #DCECFF;
}
/*.swiper-nav__right{
right: auto;
position: absolute;
width: calc(var(--swiper-navigation-size)/ 44 * 27);
height: var(--swiper-navigation-size);
margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
z-index: 10;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
color: var(--swiper-navigation-color,var(--swiper-theme-color));
left: 100%;
top: 50%;
margin-left: 0;
margin-top: -10px;
}*/
.swiper-nav__left:after{
	/*
    position: relative;
    left: 0;
    content: 'prev';
    font-family: swiper-icons;
    font-size: 15px;
    font-weight: bold;
    text-transform: none!important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1;
    display: block;
	 */

	content: '';
	display: block;
	width: 16px;
	height: 16px;
	transform: rotate(45deg);
	border: 2px solid;
	position: relative;
	right: -4px;
	border-right: 0;
	border-top: 0;
}
.swiper-nav__right:after{
	content: '';
	display: block;
	width: 16px;
	height: 16px;
	transform: rotate(45deg);
	border: 2px solid;
	position: relative;
	left: -4px;
	border-left: 0;
	border-bottom: 0;
	/*
	content: 'next';
	font-family: swiper-icons;
	font-size: 15px;
	font-weight: bold;
	text-transform: none!important;
	letter-spacing: 0;
	font-variant: initial;
	line-height: 1;
	display: block;

	 */
}
.portfolio-block .swiper-button-prev,
.portfolio-block .swiper-button-next{
	display: none;
}
.portfolio-block .swiper-slide p{
    color: #000;
    margin-top: 25px;
}
.portfolio-block{
    background: #F1F7FF;
}
.main-catalog{
    background: #fff;
}

.custom-filter {
	margin-top: 40px;
	margin-bottom: 30px;
	padding: 20px;
	box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.1);
	background-color: #fff;
	border-radius: 6px;
}
.custom-filter-wrapper-title {
	display: none;
	cursor: pointer;
	user-select: none;
	padding: 10px;
	background: #f5f5f5;
	border: 1px solid #ddd;
	justify-content: space-between;
	align-items: center;
	font-weight: bold;
}

.custom-filter-wrapper-title .arrow {
	width: 0;
	height: 0;
	margin-left: 8px;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 5px solid #000;
	border-bottom: 0;
	transition: transform 0.3s ease;
}

.custom-filter-wrapper.is-active .custom-filter-wrapper-title .arrow {
	transform: rotate(180deg);
	border-top-color: #000;
}

.custom-filter .btn {
	margin-top: 20px;
	height: 42px;
	line-height: 42px;
	width: 100%;
}
.custom-filter-item {
	margin-bottom: 20px;
}

.custom-filter-item-title {
	font-size: 1.1em;
	font-weight: bold;
	margin-bottom: 5px;
}

.custom-filter label {
	display: flex;
	align-items: flex-start;
	font-weight: normal;
	font-size: 1em;
	cursor: pointer;
	user-select: none;
	line-height: 22px;
}

.custom-filter input[type="checkbox"] {
	position: relative;
	width: 22px;
	height: 22px;
	margin: 0;
	margin-right: 10px;
	flex-shrink: 0;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	outline: none;
	cursor: pointer;
}

.custom-filter input[type="checkbox"]:before {
	content: '';
	display: block;
	width: 22px;
	height: 22px;
	margin-top: 0;
	background: url('./images/checkbox.png') no-repeat 0 0;
	background-size: auto;
	border: 1px solid #ccc;
	border-radius: 4px;
	box-shadow: none;
}

.custom-filter input[type="checkbox"]:checked:before {
	background-position: 0 -22px;
	border-color: transparent;
}

.custom-filter input[type="checkbox"]:focus-visible:before {
	outline: 2px solid #007cba;
	outline-offset: 2px;
}

@media (max-width: 991px) {
	.custom-filter-wrapper-title {
		display: flex;
	}
	.custom-filter-wrapper form {
		display: none;
	}
	.custom-filter-wrapper.is-active form {
		display: block;
	}
}

.loader {
	width: 40px;
	height: 40px;
	border: 4px solid #f3f3f3;
	border-top: 4px solid #3498db;
	border-radius: 50%;
	animation: spin 1s linear infinite;
	margin: 30px auto;
	display: block;
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

.product-item-list-col-4 {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 1rem; /* или какое у вас расстояние между карточками */
	padding: 0;
	margin: 0;
}
.product-item-list-col-4:before,
.product-item-list-col-4:after {
	display: none;
}

@media (min-width: 576px) {
	.product-item-list-col-4 {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 768px) {
	.product-item-list-col-4 {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (min-width: 992px) {
	.product-item-list-col-4 {
		grid-template-columns: repeat(4, 1fr);
	}
}

@media (min-width: 1200px) {
	.product-item-list-col-4 {
		grid-template-columns: repeat(4, 1fr);
	}
}

.product-item-small-card {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
}
.product-item-small-card .product-item-container,
.product-item-small-card .product-item{
	height: 100%;
}