#license { background: #f0f6f9; }

.reviews-wrap { display: table; border-spacing: 30px 15px; width: 100%; }
.reviews-item { display: table-cell; width: 50%; padding: 20px; vertical-align: middle; background: #fff; overflow: hidden; }
.reviews-img { width: 170px; float: left; margin-right: 20px; border: 1px solid #eee; overflow: hidden; }
.reviews-img img { max-width: 100%; max-height: 100%; }
.reviews-desc .title { margin-top: 0; font-weight: bold; font-size: 20px; margin-bottom: 20px; }
.reviews-desc .text { font-size: 14px; }
.reviews-desc .fio { margin-top: 20px; }
.reviews-img-show { display: block; position: relative; }
.reviews-img-show .overlay { display: block; position: absolute; width: 100%; height: 100%; z-index: 12; background: rgba(0, 102, 153, 0.2); opacity: 0; transition: all 0.2s; }
.reviews-img-show:hover .overlay { opacity: 1; }
.reviews-img-show .overlay:before { font-family: FontAwesome; content: "\f00e"; text-align: center; font-size: 45px; color: #ffffff; position: absolute; width: 100%; top: 50%; margin-top: -22px; left: 0; }
.reviews-wrap.for-page .reviews-item { background: #f0f6f9; }


.license-wrap { display: table; border-spacing: 40px 15px; width: calc(100% + 80px); margin-left: -40px; 	}
.license-item { display: table-cell; width: 20%; vertical-align: top; background: #fff; overflow: hidden; }
.license-item a { border: 1px solid #eee; overflow: hidden; }
.license-item img { width: 100%; }


.adv-wrap { display: table; }
.adv-item { display: inline-block; vertical-align: top; width: 46%; text-align: justify; padding: 0 2% 10px 2%; }
p.adv-title { font-weight: bold; font-size: 22px; margin-top: 0; }
p.adv-title:before { font-family: FontAwesome; content: "\f06b"; margin-right: 10px; color: #006699; font-weight: normal; } 

.work img.left { float: left; margin-right: 30px; margin-bottom: 15px; width: 400px; }
.work img.right { float: right; margin-left: 30px; margin-bottom: 15px; width: 400px; }
.work { text-align: justify; }

.order-link-wrap {  margin-top: 10px; text-align: right; }
.order-link { background: #006699; color: #fff !important; text-decoration: none !important; padding: 15px 70px; display: inline-block; font-weight: bold; text-transform: uppercase; letter-spacing: 2px; transition: all 0.2s; } 
.order-link:hover { background: #00537d; color: #fff !important; }

.separator { border-bottom: 2px solid #ffe0dd; position: relative; z-index: 2; clear: both; }
.separator:after { font-family: FontAwesome; content: "\f041"; position: absolute; top: -31px; left: 50%; margin-left: -30px; font-size: 30px; background: #ffe0dd; color: #fff; border: 5px solid #fff; border-radius: 50px; padding: 4px 17px; } 

#advantage, #work2, #work4, #work6, #work8  { background: #fbf6f6; }

#numerals { background: url(/image/numerals-bg.jpg) #ccc; background-size: cover; background-repeat: no-repeat; padding: 0; }
#numerals h2 { color: #fff; }
.numerals-overlay { background-color: rgba(0,0,0,0.5); padding: 75px 0; }
.numerals-wrap { display: table; width: 100%; }
.numerals-item { display: table-cell; width: 20%; vertical-align: top; text-align: center; color: #fff; font-size: 22px; }
.numerals-item i { font-size: 64px; margin-bottom: 20px; }
.numerals-target { font-size: 56px; font-weight: bold; }
.numerals-target small { font-size: 25px; }

.contacts-wrap { display: table; width: 100%; }
.contacts-item { display: table-cell; width: 33%; vertical-align: top; text-align: center; }
.contacts-item i { display: inline-block; font-size: 45px; color: #006699; vertical-align: top; margin-top: 10px; margin-right: 20px; } 
.contacts-item p { display: inline-block; text-align: left; }

.footer-map { position: relative; height: 400px; }
.footer-map-overlay { position: absolute; background: rgba(0, 102, 153, 0.15); z-index: 1; height: 100%; width: 100%; cursor: pointer; } 
.footer-desc { line-height: 70px; background: #fff7f7; text-align: center; font-size: 16px; } 

.form-wrap { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,10,0,0.7); z-index: 2000; }
.form-block { width: 700px; height: auto; max-height: 80%; background: #fff; position: absolute; left: 50%; top: 10%; margin-left: -350px; padding: 20px; box-shadow: 1px 1px 4px 0px #0a2b04; overflow: auto; }

.form-title { font-size: 20px; font-weight: bold; margin-top: 0; margin-bottom: 20px; text-align: center; }
.order-form input, .order-form textarea { width: 100%; box-sizing: border-box; margin-bottom: 15px; font-size: 14px; padding: 7px 10px; line-height: 1.4; outline: none; border: 1px solid #ccc; transition: all 0.2s; }
.order-form input:focus, .order-form textarea:focus { border-color: #727b5d; }
.order-form { }
.order-form .title { margin: 0 0 15px 0; font-weight: bold; font-size: 18px; text-align: center; }
.order-form .form-result { text-align: center; }

.form-service ul { list-style: none; padding-left: 50px; margin: 15px 0; }
.form-service li { padding-bottom: 10px; }
.form-service li:before { font-family: FontAwesome; content: "\f046"; display: inline-block; margin-left: -25px; width: 25px; color: #006699; vertical-align: middle; }

.service-img { float: right; margin: 0 0 10px 10px; }

.wrap-btn { text-align: center; }
.btn-primary { background: #006699; color: #fff; padding: 10px 20px; display: inline-block; border: none; transition: all 0.2s; cursor: pointer; text-decoration: none;}
.btn-primary i { margin-right: 5px; }
.btn-primary:hover { background: #00537d; color: #fff !important; }

.wrap-img { position: absolute; width: 450px; height: 90%; top: 5%; left: 50%; margin-left: -225px; padding: 10px; overflow: hidden; background: #fff; text-align: center; box-shadow: 1px 1px 4px 0px #0a2b04; }
.wrap-img img { max-width: 100%; max-height: 100%; } 

#achieves { background: url(/image/site/achieves-bg.jpg) #ccc center 0 repeat fixed; background-size: cover; padding: 0; }
#achieves .overlay { padding: 55px 0; color: #fff; background: rgba(0, 102, 153, 0.6); }
#achieves h2 { margin-bottom: 30px; margin-top: 0; }
.achieves-list-wrap { display: table; width: 100%; margin-top: 40px; }
.achieves-list-item { display: table-cell; width: 31%; }
.achieves-list-item:last-child { width: 38%; }
.achieves-list-item .title { font-weight: bold; font-size: 22px; }

footer { text-align: center; margin: 0; border-top: 5px solid #006699; background: #333; font-size: 16px; color: #fff; padding-top: 30px;
    padding-bottom: 20px; margin-top: 30px; }

.wrap-input-callback { position: relative; }
.wrap-input-callback input { padding-left: 40px; }
.wrap-input-callback.name:before { font-family: FontAwesome; content: "\f007"; color: #aaa; position: absolute; display: block; height: 44px; width: 40px; line-height: 44px; font-size: 18px; }
.wrap-input-callback.tel:before { font-family: FontAwesome; content: "\f095"; color: #aaa; position: absolute; display: block; height: 44px; width: 40px; line-height: 44px; font-size: 18px; }

.wrap-input-order { position: relative; display: inline-block; }
.wrap-input-order.name { width: 100%; }
.wrap-input-order.tel { width: 100%; }
.wrap-input-order.coments { width: 100%; }
.wrap-input-order input, .wrap-input-order textarea { padding-left: 35px; }
.wrap-input-order.name:before { font-family: FontAwesome; content: "\f007"; color: #aaa; position: absolute; display: block; height: 35px; width: 35px; line-height: 35px; font-size: 14px; text-align: center; }
.wrap-input-order.tel:before { font-family: FontAwesome; content: "\f095"; color: #aaa; position: absolute; display: block; height: 35px; width: 35px; line-height: 35px; font-size: 14px; text-align: center; }
.wrap-input-order.coments:before { font-family: FontAwesome; content: "\f044"; color: #aaa; position: absolute; display: block; height: 35px; width: 35px; line-height: 35px; font-size: 14px; text-align: center; }


/* Magnific Popup */
.white-popup { position: relative; background: #fff; padding: 20px 20px 10px 20px; width: auto; max-width: 500px; margin: 20px auto; }
.mfp-fade.mfp-bg { opacity: 0; -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; transition: all 0.2s ease-out; }
.mfp-fade.mfp-bg.mfp-ready { opacity: 0.8; }
.mfp-fade.mfp-bg.mfp-removing { opacity: 0; }
.mfp-fade.mfp-wrap .mfp-content { opacity: 0; -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; transition: all 0.2s ease-out; }
.mfp-fade.mfp-wrap.mfp-ready .mfp-content { opacity: 1; }
.mfp-fade.mfp-wrap.mfp-removing .mfp-content { opacity: 0; }
/* /Magnific Popup */


ul.services-list { list-style: none; background: rgba(255, 255, 255, 0.8); padding: 0; margin-top: 25px; margin-bottom: 25px; transition: all 0.2s; 	}
ul.services-list li { padding-bottom: 15px; }
ul.services-list li:before { font-family: FontAwesome; content: "\f054"; margin-right: 10px; color: #006699; vertical-align: middle; }

.subtitle { font-size: 24px; text-align: left; margin-bottom: 25px; }
h1.subtitle { text-transform: uppercase; }


.category-img { float: right; margin: 0 0 20px 20px; }

.description h1 { font-size: 30px; color: #006699; }
.description ul { list-style: none; padding: 0; padding-left: 20px; margin-top: 20px; margin-bottom: 20px; transition: all 0.2s; }
.description ul li { padding-bottom: 8px; }
.description ul li:before { font-family: FontAwesome; content: "\f046"; margin-right: 10px; color: #006699; vertical-align: middle; }
.description .price { font-weight: bold; color: #555; }

.product-right-block { float: right; margin: 0 0 20px 20px; max-width: 350px; }
.product-right-block img{ width: 100%; }
.product-right-block a { display: block; margin-top: 10px; margin-bottom: 10px; text-align: center; }
.product-right-block a i { margin-right: 5px; } 
.product-right-block .price { padding: 8px 20px; text-align: center; border: 2px solid #709917; }
.product-right-block .price i { font-size: 14px; }

.our-clients { background: #f0f6f9; padding-top: 20px; }
.description .our-clients { margin: 30px 0; margin-left: calc((100vw - 1160px) / -2); margin-right: calc((100vw - 1160px) / -2); clear: both; }
.our-clients-images { width: 104%; margin-left: -2%; display: table; }
.our-clients-images .item { display: inline-block; width: 21%; vertical-align: middle; margin: 0 2% 30px 2%; background: #fff; text-align: center; padding: 10px; }
.our-clients-images .item img { max-width: 90%; height: 80px; }
.our-clients .title { margin-bottom: 20px; margin-top: 0; color: #555; text-transform: uppercase; font-size: 22px; font-weight: bold; }
.our-clients .subtitle { font-size: 18px; padding-bottom: 10px; margin-top: 5px; }
.our-clients.main { background: none; padding: 0; }

.fixed-bg-overlay { background: rgba(255, 255, 255, 0.85); width: 100%; height: 100%; display: block; position: fixed; z-index: -1; margin-top: -165px; }
.fixed-bg { width: 100%; height: 100%; display: block; position: fixed; z-index: -2; margin-top: -165px; background-size: cover !important; }

.reviews-product { text-align: center; margin-bottom: 40px; }
.reviews-product .title { text-align: left; font-size: 30px; }
.reviews-product .reviews-img-show { display: inline-block; margin: 10px 30px; }

.footer-blocks { display: table; width: 100%; }
.footer-blocks .footer-left { display: table-cell; width: 50%; text-align: left; }
.footer-blocks .footer-right { display: table-cell; width: 50%; text-align: right; }
.footer-blocks .footer-right i { font-size: 30px; }

.smartsearch-wrap { position: relative; }
.smartsearch-btn i { margin-left: 10px; position: relative; }
.smartsearch-btn span { border-bottom: 1px dashed !important; }
.smartsearch { position: absolute; right: 0; top: 19px; width: 330px; padding: 10px 13px; padding-right: 35px; box-sizing: border-box; font-size: 14px; line-height: 1; transition: all 0.2s; outline: none; border: 1px solid #ccc; box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.2); }
#nav-main .smartsearch { top: 10px; }
.smartsearch:focus { border-color: #727b5d; }
.smartsearch_form { position: absolute; top: 0; right: 0; width: 330px; }
.ajax_search_result { position: absolute; padding: 0; top: 60px; left: 0; z-index: 10; text-align: left; box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.2); }
.ajax_search_result li { border-left: 1px solid #ccc; border-right: 1px solid #ccc; }
.ajax_search_result li:first-child { border-top: 1px solid #ccc; }
.ajax_search_result li:last-child { border-bottom: 1px solid #ccc; }

#nav-main .ajax_search_result { top: 50px; }
.ajax_search_result li a { background: #fff; text-align: left; width: 328px; padding: 6px 10px !important; text-transform: none; font-weight: normal; }
.ajax_search_result li a:hover { background: #ececec; color: #333 !important; }

.smartsearch_form.page-search { position: relative; width: 100%; }
.smartsearch_form.page-search .smartsearch { position: relative; top: 0; display: inline-block !important; box-shadow: none; vertical-align: top; }
.smartsearch_form.page-search button { height: 38px; vertical-align: top; font-size: 14px; }
.ajax_search_result.page_search_result { top: 25px; list-style: none; }
.ajax_search_result.page_search_result li a { display: block; }
.btn-search-min { position: absolute; right: 4px; top: 29px; background: none; border: none; font-size: 16px; transition: all 0.2s; cursor: pointer; }
.btn-search-min:hover { color: #006699; }
#nav-main .btn-search-min { top: 19px; }


/* new styles */
.top-header { padding: 8px 0; font-size: 14px; color: #333; }
.top-header .left { display: inline-block; position: relative; }
.top-header .right { display: inline-block; text-align: right; float: right; }
.top-header a { font-size: 14px; font-weight: bold; text-decoration: none; color: #333; }
.top-header .left a { margin-right: 10px; }
.top-header .right a { margin-left: 10px; }
.grey-line { border-bottom: 1px solid #f0f0f0; }
.blue-line { border-bottom: 5px solid #006699; }
.bottom-header { display: table; width: 100%; padding: 20px 0; }
.logo { display: table-cell; vertical-align: middle; width: 40%; }
.logo .left { display: table-cell; vertical-align: top; }
.logo .right { display: table-cell; vertical-align: top; }
.logo a { text-decoration: none; color: #333; }
.logo .left a { font-weight: bold; font-size: 60px; line-height: 1; vertical-align: top; }
.logo .right a { padding-left: 10px; display: inline-block; }
.logo .right a span { font-size: 18px; font-weight: normal; border-bottom: 2px solid #006699; margin-bottom: 7px; margin-top: 4px; display: block; }
.logo.white a { color: #fff; }
.logo.white .right a span { border-color: #fff; }
.bottom-header .main-menu { display: table-cell; vertical-align: middle; width: 70%; padding: 0; margin: 0; text-align: right; }
.bottom-header .main-menu li { display: inline-block; padding: 0 8px; }
.bottom-header .main-menu li:last-child { padding-right: 0px; }
.bottom-header .main-menu a { text-decoration: none; color: #333; font-size: 16px; padding: 5px 0px; border-bottom: 3px solid transparent; }
.bottom-header .main-menu a:hover { border-bottom: 3px solid #006699; color: #006699; }

#services { padding-top: 10px; }
.services-wrap { display: table; width: 100%; width: 102%; margin-left: -1%; }
.services-wrap .services-link { display: inline-block; width: 23%; min-height: 60px; margin: 0 1% 25px 1%; position: relative; background-size: 50px !important; background-position: 20px !important; background-repeat: no-repeat !important; vertical-align: top; border: 1px solid #006699; padding: 10px; text-decoration: none; color: #000; transition: all 0.2s; }
.services-wrap .services-link:hover { color: #006699; }

.services-wrap .services-link .title { display: table-cell; vertical-align: middle; height: 80px; padding-left: 80px; }
.services-wrap .services-link .title span { display: table-cell; vertical-align: middle; }
.services-wrap .services-link .overlay { position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; transition: background 0.2s; }
.services-wrap .services-link:hover .overlay { background: rgba(0, 102, 153, 0.2); }
.services-wrap .services-link-icon { display: table-cell; width: 16.6%; text-align: center; padding: 0 10px; }
.services-wrap .services-link-icon:hover { opacity: 0.8; }
.services-wrap .services-link-icon .image-wrap { width: 80%; margin: 0 10% 20px 10%; height: 100px; background-size: contain !important; background-position: center !important; background-repeat: no-repeat !important; }

.footer-wrap { display: table; width: 100%; }
.footer-wrap .footer-item { display: table-cell; text-align: left; padding-right: 20px; vertical-align: top; width: 50%; }
.footer-wrap .footer-item.link { width: 25%; }
.footer-wrap .footer-item.link a { font-size: 14px; display: block; color: #fff; margin-bottom: 5px; }
.footer-wrap .footer-item.link a:hover { color: #006699; }

.teaser { background: url(/image/site/teaser-bg.jpg) #006699 center 0 repeat fixed; margin-bottom: 20px; }
.teaser-wrap { display: table; width: 100%; padding: 30px 0; }
.teaser-wrap .item { display: table-cell; vertical-align: top; height: 100%; }
.teaser-wrap .item .teaser-block { display: block; height: 100%; position: relative; text-decoration: none; color: #333; }
.teaser-wrap .item.left .teaser-block { background-image: url(/image/site/ban01.jpg); background-size: cover; background-position: center; width: 300px; min-height: 240px; }
.teaser-wrap .item .teaser-block .line { position: absolute; display: block; bottom: 0; width: 100%; text-align: center; background: rgba(0, 102, 153, 0.85); padding: 15px 10px; color: #fff; font-size: 14px; text-transform: uppercase; z-index: 1; }
.teaser-wrap .item .teaser-block .line i { margin-left: 10px; }
.teaser-wrap .item .teaser-block:hover .overlay { background: rgba(0, 102, 153, 0.2); }
.teaser-wrap .item .teaser-block .overlay { position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; transition: background 0.2s; }
.teaser-wrap .teaser-sep { display: table-cell; width: 30px; }
.teaser-wrap .item.middle .teaser-block { background-color: #fff; }
.teaser-wrap .item .info { padding: 15px 15px 15px 60px; background-image: url(/image/site/info.png); background-repeat: no-repeat; background-size: 30px; background-position: 15px 15px; 	}
.teaser-wrap .item .info .title { margin-top: 0; font-size: 16px; font-weight: bold; line-height: 1; margin-bottom: 5px; }
.teaser-wrap .item .info .subtitle { margin-top: 0; margin-bottom: 15px; font-size: 14px;   }
.teaser-wrap .item.right .teaser-block { background-image: url(/image/site/consult.jpg); background-size: cover; background-position: center; width: 300px; min-height: 240px; }

.slick-prev { left: -20px; z-index: 1; }
.slick-next { right: -2px; z-index: 1; }
.slick-prev:before, .slick-next:before { background: #006699; font-family: monospace; border-radius: 100px; height: 40px; width: 40px; display: block; line-height: 40px; font-size: 32px; transition: all 0.2s; }
.slick-prev::before { content: '<' !important; } 
.slick-next::before { content: '>' !important; }

.action-slider .slick-slide { border: 1px solid #006699; padding: 20px; }
.action-slider .slick-slide .desc { display: table-cell; padding: 20px 40px 0 30px; vertical-align: top; color: #006699; text-transform: uppercase; font-size: 24px; }
.action-slider .slick-slide .desc .btn-consul { display: inline-block; background: #006699; color: #fff; text-decoration: none; font-size: 16px; padding: 15px 25px; margin-top: 30px; transition: all 0.2s; }
.action-slider .slick-slide .desc .btn-consul:hover { background: #00537d; }
.action-slider .slick-slide .img { display: table-cell; width: 40%; height: 300px; background-size: cover; vertical-align: top; }
.action-slider .slick-slide .img { display: table-cell; width: 40%; height: 300px; background-size: cover; vertical-align: top; }
.slick-dots li { margin: 0; }
.slick-dots { bottom: 15px; width: 60%; }
.slick-dots li button::before { color: #000; border: 1px solid transparent; border-radius: 100px; font-size: 8px; padding: 2px !important; line-height: 12px; width: 10px; height: 10px; }
.slick-dots li.slick-active button:before { color: #006699; border: 1px solid #006699; border-radius: 100px; font-size: 8px; padding: 2px !important; line-height: 12px; width: 10px; height: 10px; }

.services-column-wrap { display: table; width: 100%; }
.services-column { display: inline-block; width: 50%; vertical-align: top; }
.services-column .services-link { display: inline-block; width: 80%; min-height: 60px; margin: 0 1% 25px 1%; position: relative; background-size: 50px !important; background-position: 20px !important; background-repeat: no-repeat !important; vertical-align: top; border: 1px solid #006699; padding: 10px; text-decoration: none; color: #000; transition: all 0.2s; }
.services-column .services-link:hover { color: #006699; }
.services-column .services-link .title { display: table-cell; vertical-align: middle; height: 60px; padding-left: 80px; }

img.mfp-img { max-width: 700px; }

#city_select_list { position: absolute; margin: 0; padding: 0; list-style: none; top: 27px; box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.23); }
#city_select_list a { margin: 0; display: block; padding: 10px 15px; background: #f0f0f0; transition: all 0.2s; }
#city_select_list a:hover { background: #cddce4; }
#city_select_link span { border-bottom: 1px dashed #333; }