--mainblue: #5da3f5;
--mainred: #f80a0d;

.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;

  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: 'liga';
}
.btn {
	display: inline-block;
	padding: 5px 20px;
	font-size: 16px;
	color: #FFF;
	border-bottom: none;
	box-shadow: 0px 0px 10px -2px rgba(0,0,0,0.3);
	transition: all linear 0.2s;	
}
.btn--blue {background:#5da3f5;}
.btn-submit { 
	display: inline-block;
	padding: 9px 20px;
	font-size: 16px;
	color: #FFF;
	transition: all linear 0.2s;
	border: 1px solid #AAA;
	cursor: pointer;
 }
.btn-submit--red {
	background: #f80a0d;
}
.btn--more { margin: 20px 0;}
.btn--modalsubmit { width: 100%; }

h1, .h1 { margin-bottom: 2rem; }
h2, .h2 { margin-bottom: 2rem; }
.h--largemargin { margin-bottom: 3rem; }

body {
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
}
header {padding:25px 0 5px 0; border-bottom: 1px solid #e8e8e8}
.header-logoblock { display:flex; align-items: center; }
.header-utpaddress { font-size: 0; }
.header__utp { font-size:16px; font-weight: 600; display: block; }
.header__address {font-size: 14px;display: block;cursor: pointer;color: #1868c5;}
.header-contacts { 
	display: flex;
	align-items: center;
	justify-content: top;
	height: 100%;
	flex-direction: column;
}
.header-contacts span {display: block; margin-bottom:10px;}
.header-contacts span a {color: inherit;}
.header-contacts span .material-icons { vertical-align: middle; margin-right:10px; color:#5da3f5; font-size: 20px;}

.breadcrumbs ul{
	margin: 25px 0px 0px;
	padding: 0px;
	font-size: 0px;
	height: 40px;	
	display: flex;
}
.breadcrumbs ul li {
	display: inline-block;
}
.breadcrumbs ul li:not(.active):after {
	display: inline-block;
	content:'/';
	font-size: 14px;
}
.breadcrumbs ul li a {
	font-size:14px;
	padding:10px 16px;
	color:#000;
}	
.breadcrumbs ul li.active a { color:#5da3f5 }
.breadcrumbs ul li:first-child a { padding-left:0; }
main { padding-bottom: 230px; min-height: 80vh; }
main.page { margin:0 0 40px; }

.mainnav { border-bottom: 1px solid #e8e8e8 }
.mainnav-list { display: flex; justify-content: space-between; }
.mainnav__itemblock { position: relative; }
.mainnav__itemblock.active .mainnav__item { color:#5da3f5 }
.mainnav__item { color:#000; padding:18px 20px; font-size: 15px; font-weight:600; display: block;}
.mainnav__itemblock:hover .mainnav-sub {display: block;}

.mainnav-sub { background: #5da3f5; position: absolute; display: none; width: 320px; z-index:100;}
.mainnav-sub__item { font-size: 14px; color:#fff; display: block; padding:8px 15px; text-shadow: 1px 1px 0px #6A6A6A}
.mainnav-sub__item:hover { text-shadow: none; }

.mainnav-mob {}
.mainnav-mob__but { padding:10px 20px; display: block; text-transform:uppercase; }
.mainnav-mob-block { display: none; position: fixed; left:0; top:0; width: 320px; border-right: 2px solid #e3e3e3; border-bottom: 2px solid #e3e3e3; z-index:1000;}
.mainnav-mob-block.opened { display: block; }
.mainnav-mob__header { background:#f80a0d; }
.mainnav-mob__hidemenu { color:#fff; display: block; padding: 10px; cursor: pointer; }
.mainnav-mob__hidemenu .material-icons { vertical-align: bottom; }

.mainnav-mob-list {}
.mainnav-mob__item { padding: 5px 10px; display: block; background: #f8f9fb; border-bottom: 1px solid; }
.mainnav-mob__itemblock:last-of-type .mainnav-mob__item {border-bottom: none;}

 
.main-slider {  }
.main-slider__item  { height:450px;}

.text-block { margin-bottom: 40px; }

.categories { margin-bottom:40px; }
.categories__item { padding: 10px; }
.caterogies__item-link { color: inherit; }
.caterogies__item-link:hover svg .fil0{ fill:#5da3f5; }
.caterogies__item-iconblock { height:150px; }
.caterogies__item-iconblock svg{ width:100%;}
.categories__item span { text-align:center; display: block; text-transform: uppercase; }

.adventages { background:#f8f9fb; border-bottom:2px solid #e3e3e3; padding: 20px 0; margin-bottom: 40px; }
.adventages__list { display: flex; justify-content: space-around; }
.adventages__item {}
.adventages__item svg { height: 50px; margin-right: 20px; fill:#f80a0d;}
.adventages__item span { font-size: 18px; }

.form-block { background: #5da3f5; padding:30px 0;}
.form-block__heading { color:#fff; text-align:center; display: block; margin-bottom:30px; }

.thankful { margin:30px 0; }
.thankful__item a {display: table; margin:0 auto;}
.thankful__item img { width: 70%; margin: 0 auto; border: 5px solid #5da3f5; border-radius: 10px;}
.thankful-prev, .thankful-next { top: calc(50% - 16px); position: absolute; cursor: pointer; z-index:100 }
.thankful-prev {left:-40px;}
.thankful-next {right:-40px;}

.clients { margin:60px 0 30px; }
.clients-slider__item {border: 2px solid #5da3f5; margin:0 10px;}
.clients-slider__item a{display: flex !important; justify-content:center; align-items: center; }
.clients-slider__item a{ height: 170px;}
.clients-slider__item span { text-align:center; display: block; padding:5px 0;}

.applicability { margin:60px 0 30px;  }
.applicability__item { margin-bottom: 40px; }
.applicability__item-link { color:inherit; }
.applicability__item-link:hover img { 
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: url(desaturate.svg#greyscale);
    filter: gray;
    -webkit-filter: grayscale(1);
}
.applicability__item-iconblock { height:130px; }
.applicability__item-iconblock img {height: 100%; margin:0 auto; display: table; transition: all 0.3s ease;}
.applicability__item span { text-align:center; text-transform: uppercase; display: block; padding:20px 0; }

.album {}
.album-list {display: flex; flex-wrap: wrap; }
.album__item {  width: 200px; border:1px solid #5da3f5; margin: 0 15px 15px 15px; }
.album__item a {color: inherit;}
.album__item-imageblock { height: 120px; overflow: hidden; }
.album__item-imageblock  img { width: 100%; }
.album__item span {display: block; text-align:center; padding:20px 20px;}
.album_page__description {margin-bottom: 30px;}

.articles {}
.arcticle__item { margin-bottom: 30px; padding:20px; border:2px solid #5da3f5; }
.arcticle__headingblock { margin-bottom: 20px; }
.arcticle__date {font-weight: bold; margin-right: 20px; color:#000;}
.article__date--page {display:block; margin-bottom:20px;}
.arcticle__heading {font-weight: bold; font-size: 18px;}

.contacts {}
.contacts__item { margin-bottom: 20px; }
.contacts__item:after {content:''; display: block; clear: both;}
.contacts__ico {float:left; margin-right: 20px;}
.contacts__ico i { color: #5da3f5}

footer { padding:30px 0; background:#f8f9fb; border-top:2px solid #e3e3e3; height:230px; margin-top: -230px; }
.footer-logoblock { width:100%; }
.footer-menu {  }
.footer-menu__line {
	display: flex;
}
.footer-menu__item { font-size:14px; color: inherit;  padding:10px 20px;}
.footer-contacts { 
	display: flex;
	flex-direction: column;
	align-items: end;
 }
.footer-contacts span {display: block; margin-bottom:10px;}
.footer-contacts span a {color: inherit;}
.footer-contacts span .material-icons { vertical-align: middle; margin-right:10px; color:#5da3f5; font-size: 20px;}
.footer-company, .footer-devcopyright { font-size: 14px; margin:20px 0 0; }

#button-up {
	position: fixed;
	bottom: 5%;
	right: 30px;
	cursor: pointer;
	display: none;	
	width:50px;
	height: 50px;
	padding:5px;
	border-radius:50%;
	border:1px solid #5da3f5;
}
#button-up svg {
	width:100%;
	fill: #5da3f5;
}

/* FORMS */
.form {
    font-size: 0
}
.form-flex {display: flex; justify-content: space-around;}
.form-flex .form__field { width: 32%; margin-right: 2% }
.form-flex .form__field button { width: 100%; }
.form__field {
    font-size: 14px;
    margin-bottom: 20px
}

.error_input {
    border: 1px solid red!important
}


.form__line .form__field {
    display: inline-block;
    width: 32%;
    margin-right: 2%
}

.form__line .form__field:nth-child(3n) {
    margin-right: 0
}

.form__inp,
.form__textarea {
    display: block;
    width: 100%;
    height: 44px;
    background: #E6E6E6;
    border: 1px solid #AAA;
    padding: 15px 20px;
    font-size: 14px
}

.form__textarea {
    height: 110px;
    margin-bottom: 20px
}

.form .check {
    display: inline-block;
    font-size: 12px;
    margin-left: 35px;
    color: #AAA
}

.form .check.checkmodal {
    display: block;
    font-size: 12px;
    margin: 25px 0;
    color: #AAA
}

.form .check .text {
    font-weight: 400!important
}

.form .checkbox {
    position: relative;
    padding-left: 0;
    cursor: pointer
	 
}
.form input[type="checkbox"] {
	margin-right: 20px;
}

.form .check .status {
    position: absolute;
    top: 10px;
    left: 0;
    display: inline-block;
    margin-right: 15px;
    width: 14px;
    height: 14px;
    border: 1px solid #AAA;
    background: #E6E6E6
}

.form .check input:checked~.status:before {
    content: "";
    position: absolute;
    top: 2px;
    right: 2px;
    bottom: 2px;
    left: 2px;
    background: #1F317F
}

.modal {
 background:rgba(32,40,56,0.8)
}
.modal-content {
 box-shadow:none;
 border-radius:0
}
.modal-dialog {
 width:700px;
 margin:50px auto 0
}
.modal-header {
 padding:45px 60px 25px;
 text-align:center;
 border-bottom:none
}
.modal-header-in {
	margin: 0 auto;
 font-size:26px;
 font-weight:bold;
 text-transform:uppercase
}
.modal-body {
 padding:15px 0 30px
}
.modal .form {
 padding:0 60px;
 margin-bottom:40px
}
.modal .form .form__field {
 margin-bottom:10px
}

.modal__bottom {
 padding-top:25px;
 text-align:center;
 border-top:1px solid #dfe2e8;
 font-style:italic
}
.modal__bottom-text {
 color:#979899
}
.modal-close {
 position:absolute;
 right:-55px;
 top:-3px;
 display:inline-block;
 width:30px;
 height:30px;
 border-bottom:none
}
.modal-close:before,.modal-close:after {
 content:"";
 position:absolute;
 top:0;
 right:0;
 bottom:0;
 left:0;
 margin:auto;
 width:30px;
 height:2px;
 background:#FFF;
 transform:rotate(45deg)
}
.modal-close:after {
 transform:rotate(-45deg)
}
.modal-close:hover {
 transform:rotate(-90deg)
}
@media(max-width:992px) {
 .modal-dialog {
  width:80%
 }
}
@media(max-width:767px) {
 .modal-header {
  padding:45px 20px 25px
 }
 .modal .form {
  padding:0 20px
 }
 .modal-close {
  right:0;
  top:-50px
 }
}
@media(max-width:500px) {
 .modal-dialog {
  width:95%
 }
}

.modal .error_input {
 box-shadow:0px 0px 4px #f00
}


/* MEDIA */
@media(max-width:992px) {
	main {padding-bottom: 400px;}
	
	.header-logoblock { margin-bottom:20px;}
	.adventages__item { width: 50%; text-align: center; }
	.adventages__item span { display: block; }
	
	footer { height: 400px; margin-top: -400px; }
	.footer-logoblock {text-align: center;}
	.footer-menu { margin: 20px 0; }
	.footer-menu__line { justify-content: center; }
	.footer-contacts { flex-direction: row; margin: 20px 0; justify-content:space-between;}
}

@media (max-width:768px) {
	.header-contacts { margin-bottom: 30px; }
	.breadcrumbs { margin-bottom: 30px;}
	.breadcrumbs ul li a { padding:5px 10px; font-size: 13px; }
	.form-flex { flex-direction: column; }
	.form-flex .form__field { width: 100%; }
	
	.categories__item { margin-bottom: 30px; }
	.caterogies__item-iconblock { height: 180px; }
}
@media (max-width:576px) {
	.header-logoblock { display: block; align-items: none; text-align:center; }
	.header-utpaddress { margin:20px 0; }
	.header__address { margin: 15px 0;  }
	.caterogies__item-iconblock { text-align: center; height: 100px; margin-bottom: 20px; }
	.caterogies__item-iconblock svg { width: auto; height: 100%; }
	
	.footer-contacts { flex-direction: column; align-items: center; }
}
.album-list.forbigpic.lightgallery {
    justify-content: space-around;
}

.album__item.biqpic {
    width: 30%;
    min-width: 300px;
    border: none !important;
}

div.section{float:left;position:relative;margin:10px 5px 10px 5px;overflow:hidden;-webkit-backface-visibility: hidden; backface-visibility: hidden; }
div.section img{width:100%;height:auto;}
div.section:hover{cursor:pointer;}


.section .overlay{width:40px;height:40px;background:rgba(209,980,33,0.8); text-align:center;position:absolute;left:40%;top:40%;border-radius:100%;transition:0.5s ease;opacity:0;}
.section .icon-2x{position:absolute;left:42%;top:40%;transition:0.5s ease;-webkit-transition:0.5s ease;display:none;}
.section h1{position:absolute;top:25%;left:-100%;}
.section:hover .overlay{transform:scale(20);-webkit-transform:scale(20);transition:0.5s ease;opacity:9;}
.section:hover .icon-2x{bottom:45%;left:45%;display:block;transition:0.5s ease;-webkit-transition:0.5s ease;}
.section:hover h1{left:0%;transition:0.5s ease;}

.album__item-imageblock.biqpic {
height: 100% !important;
max-height: 170px !important;
}
div.album__item-imageblock{float:left;position:relative;overflow:hidden;-webkit-backface-visibility: hidden;backface-visibility: hidden;}
div.album__item-imageblock img{width:100%;height:auto;}
div.album__item-imageblock:hover{cursor:pointer;}


.album__item-imageblock .overlay{width:40px;height:40px;background: rgba(2, 2, 2, 0.28);text-align:center;position:absolute;left:40%;top:40%;border-radius:100%;transition:0.5s ease;opacity:0;}
.album__item-imageblock .icon-2x{position:absolute;left:42%;top:40%;transition:0.5s ease;-webkit-transition:0.5s ease;display:none;}
.album__item-imageblock h1{position:absolute;top:25%;left:-100%;}
.album__item-imageblock:hover .overlay{transform:scale(20);-webkit-transform:scale(20);transition:0.5s ease;opacity:9;}
.album__item-imageblock:hover .icon-2x{bottom:45%;left:45%;display:block;transition:0.5s ease;-webkit-transition:0.5s ease;}
.album__item-imageblock:hover h1{left:0%;transition:0.5s ease;}
i.icon-zoom-in.icon-2x {background-image: url(/assets/images/zoom-icon.png);width:34px;height:34px;}
div.overl-text {
    padding: 17px 15px;
    margin: auto;
    color: white;
    vertical-align: baseline;
}

.main-slider__item.slick-slide.slick-current.slick-active {
    filter: grayscale(.3);
}
.main-slider__item:hover {
    filter: grayscale(0) !important;
}
.slideHead {
    text-shadow: 4px 3px 7px #000;
    font-size: 43px;
    font-weight: bold;
    line-height: 1;
}

.slideText {
    line-height: 1;
    font-size: 21px;
    text-shadow: -1px 3px 7px #000;
    font-weight: bold;
}

.overl-text {
    height: 50%;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
.row.jcenter {
    justify-content: center;
}