input[type="text"]::-webkit-input-placeholder {opacity: 1; transition: opacity 0.3s ease;}
input[type="text"]::-moz-placeholder {opacity: 1; transition: opacity 0.3s ease;}
input[type="text"]:-moz-placeholder {opacity: 1; transition: opacity 0.3s ease;}
input[type="text"]:-ms-input-placeholder {opacity: 1; transition: opacity 0.3s ease;}
input[type="text"]:focus::-webkit-input-placeholder {opacity: 0; transition: opacity 0.3s ease;}
input[type="text"]:focus::-moz-placeholder {opacity: 0; transition: opacity 0.3s ease;}
input[type="text"]:focus:-moz-placeholder {opacity: 0; transition: opacity 0.3s ease;}
input[type="text"]:focus:-ms-input-placeholder {opacity: 0; transition: opacity 0.3s ease;}
body {
    padding-right: initial !important;
	margin: 0
}
:focus {outline: none}
.nopadding {padding: 0 !important}
.nomargin {margin: 0 !important}
.text-white {color: #fff}
.display_flex {display: flex;align-items: center;}
.display_flex_imp {display: flex !important;align-items: center;}
a:hover {text-decoration: none;}
.navbar-fixed-bottom, .navbar-fixed-top {z-index: 990;}
body.modal-open {
    overflow-y: visible!important;
    padding-right: initial !important;
}
input.error {border: 1px solid red}
.content_404_error {
	position: relative;
	overflow: hidden;
	font-size: 550px;
	line-height: 480px;
	color: #c6c8cb;
	font-family: 'BebasNeue-bold', 'Arial';
}
.content_404_error_text {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	color: #5c5e69;
	font-size: 88px;
	text-shadow: 0px -4px 0px #fff, 4px 4px 0px #fff, -4px 4px 0px #fff, 4px -4px 0px #fff, -4px -4px 0px #fff;
}
.content_404_error_detail {
	margin-bottom: 30px;
	font-size: 16px;
}
.content_404_error_links a,
.content_404_error_links a:focus {
	display: inline-block;
	margin: 0 15px 20px 15px;
	padding: 20px 45px;
	border-radius: 10px;
	color: #fff;
	text-decoration: none;
	background-color: #62646e;
}
.content_404_error_links a:hover {
	color: #fff;
	background-color: #c6c8cb;
}
.modal-body input,
.modal-body textarea {
	width: 100%;
	margin-bottom: 20px;
}
.modal-footer input {
	width: 100%;	
}
.modal-header {
	border: none;
	padding: 30px 30px 0;
}
.modal-header p {
	text-align: center;
}
.modal-content h4 {
	margin: 20px 0 16px;
	font: 24px 'Lato-Bold';
	color: #263238;
}
.modal-content .btn,
.modal-content .btn:focus {
	width: 100%;
	padding: 18px 30px;
}
.modal-content label {
	font: 14px 'Lato';
}
button.close,
button.close:focus {
	opacity: 1;
	transition: .4s;
}
button.close:hover,
button.close:active:hover,
button.close:active:focus,
button.close:active {
	opacity: .5;
}
.application_cnt {
	border-top: 1px solid #eee;
	margin-top: 30px;
	padding-top: 15px;
}
.application {
	font: 20px 'Lato-Bold';
	color: #263238;
	text-align: center;
	margin-bottom: 30px;
}
.btn,
.btn:focus {
	padding: 20px 36px;
	background-color: #1e88e5;
	font: 12px 'Lato-Bold';
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 2px;
	border-radius: 32px;
	outline: none;
	transition: .5s;
}
.btn:hover,
.btn:active:hover,
.btn:active:focus,
.btn:active {
	background-color: #166db9;
	color: #eee;
	outline: none;
}
body {
	font: 14px 'Lato';
	color: #212121;
}
.bold {
	font-family: 'Lato-Bold';
}
.text_blue {
	color: #1e88e5;
}
h2 {
	font: 28px 'Geometria-Bold';
	text-transform: uppercase;
	margin: 80px 0 50px;
	text-align: center;
}
.btn_center {
	text-align: center;
	padding-bottom: 20px;
}
.last_element {
	margin-right: 0 !important;
}
.minpadding {
	-webkit-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.75);
}
.top_menu {
	background-color: #fff;
	height: 83px;
	font-size: 12px;
}
.container_absolute {
	position: absolute;
	left: 0;
	right: 0;
	z-index: 999;
}
.navbar_fh {
	height: 83px;
	margin: 0;
}
.logo img,
.logo img:focus {
	opacity: 1;
	margin-bottom: 8px;
	transition: .4s;
}
.logo img:hover {
	opacity: .6;
}
.address {
	color: #b0bec5;
	font-size: 13px;
	margin-bottom: 0;
}
.nav_list {
	padding-left: 0;
	margin-bottom: 0;
}
.nav_list li {
	display: inline-block;
	padding: 6px 26px 6px 0;
}
.nav_list li a,
.nav_list li a:focus {
	text-decoration: none;
	text-transform: uppercase;
	font-family: 'Lato-Bold';
	color: #212121;
}
.nav_list li a:hover,
.nav_list li a:active:hover,
.nav_list li a:active:focus,
.nav_list li a:active {
	text-decoration: none;
	color: #555;
}
.nav_list li:last-child {
	padding-right: 0;
}
button.navbar-toggle {
	border: 1px solid black;
	margin: 0;
}
.navbar-toggle {
	position: relative;
	float: right;
	padding: 9px 10px;
	margin-top: 8px;
	margin-right: 15px;
	margin-bottom: 8px;
	background-color: transparent;
	background-image: none;
	border: 1px solid transparent;
	border-radius: 4px;
}
.navbar-toggle .icon-bar+.icon-bar {
	margin-top: 4px;
}
button.navbar-toggle span {
	background-color: black;
}
.navbar-collapse {
	padding: 0;
	box-shadow: none;
}
.phone_cnt {
	width: 100%;
	float: right;
	text-align: right;
}
.phone_cnt a,
.phone_cnt a:focus {
	display: block;	width: 100%;
	text-decoration: none !important;
	color: inherit;
	outline: none;
}
.phone_cnt a:hover,
.phone_cnt a:active:hover,
.phone_cnt a:active:focus,
.phone_cnt a:active {
	color: inherit;
	opacity: .7;
}
.phonenum {
	font: 20px 'Lato-Bold';
	margin-bottom: 4px;
}
.back_call,
.back_call:focus {
	font-family: 'Lato-Bold';
	text-transform: uppercase;
	color: #1e88e5 !important;
}
.back_call a:hover,
.back_call a:active:hover,
.back_call a:active:focus,
.back_call a:active {
	color: #166db9;
	opacity: 1;
}
#preview {
	background-image: url(../img/preview.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	padding-top: 193px;
	text-align: center;
	height: 606px;
}
h1,
.preview_heading {
	font-size: 48px;
	font-family: 'Geometria-Bold';
	margin: 0 0 40px;
	color: #fff;
}
#preview .subheading {
	font-size: 24px;
	color: #ccc;
}
#services {
	background-image: url(../img/bg_services.png);
	background-position: center;
	padding-bottom: 70px;
	position: relative;
}
#services .bg_img {
	position: absolute;
	pointer-events: none;
}
#services .bg_img1 {
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
}
#services .bg_img2 {
	bottom: -30px;
	right: 0;
}
.service {
	background-color: #fff;
	border-radius: 6px;
	text-align: center;
	padding: 15px;
	margin: 0 auto 30px;
	max-width: 360px;
	width: 100%;
}
.service_img {
	height: 200px;
	width: 100%;
	background-repeat: no-repeat;
	background-position: center;
}
.service_text {
	height: 43px;
	margin: 20px 0;
}
.service_text p {
	margin-bottom: 0;
}
.service h3 {
	margin: 0;
	font: 24px 'Lato-Bold';
}
.service .subheading {
	color: #595959;
}
#working {
	padding-bottom: 70px;
}
/*///*/
.client_logo {
    display: block;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 80px;
	height: 100px;
    margin: 0 auto;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    transition: all 0.3s;
}
.owl-carousel .owl-item .client_logo:hover{
    -webkit-filter: none;
    filter: none;
}
#marks_owl.owl-theme .owl-nav {
    margin-top: 0px;
    position: absolute;
    top: 50%;
    left: -30px;
    right: -30px;
    height: 0px;
    transform: translateY(-50%);
}
#marks_owl.owl-theme .owl-nav>* {
    top: -33px;
}
/*///*/
#about_company {
	background-image: url(../img/bg_about_company.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	padding-bottom: 190px;
	position: relative;
	color: #b4b4b4;
	font-size: 16px;
}
#about_company .bg_images {
	position: absolute;
	width: 100%;
	height: 100%;
	background-image: url(../img/about_company_img.png);
	background-position: bottom 64px left;
	background-repeat: no-repeat;
	-webkit-filter: brightness(15%);
}
#about_company h2 {
	margin-top: 100px;
	color: #fff;
	text-align: left;
}
.announcement {
	font: 18px 'Lato-Bold';
	color: #fff;
}
.gallery_cnt {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	width: 50%;
	height: 100%;
}
@media (min-width: 768px) {
    #about_company .text_cnt {
        margin-right: 50px;
    }
}
#contacts {
	position: relative;
}
#map {
	height: 410px;
}
#map .container {
	position: relative;
}
.ymaps-layers-pane {
    filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
    -webkit-filter: grayscale(100%);
}
.contacts_cnt {
	max-width: 360px;
	width: 100%;
	margin: 45px 0;
	background-color: #fff;
	padding: 24px 32px;
	font-size: 16px;
	position: absolute;
	left: 0;
	right: 0;
	z-index: 99;
}
.contacts_cnt a {
	color: inherit;
}

.contacts_cnt a:hover {
	text-decoration: underline;
}
.footer_left {text-align:left;}
.footer_center {text-align:center;}
.footer_right {text-align:right;}
a.link_dev,
a.link_dev:focus {
	color: #1e88e5;
	text-transform: uppercase;
	font-family: 'Lato-Bold';
	text-decoration: none;
}
a.link_dev:hover {
	text-decoration: underline;
	color: #1e88e5;
}
footer {
	background-image: url(../img/bg_footer.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	color: #fff;
	padding: 30px 0;
}
.social_network,
.social_network:focus {
	color: #bdbdbd;
	font-size: 16px;
	transition: .3s;
}
.social_network:hover {
	color: #fff;
}
.social_network+.social_network {
	margin-left: 34px;
}
footer p {
	margin-bottom: 0;
}
footer p + p {
	margin-top: 8px;
}
.inp_checkbox {
	position: absolute;
	left: -9999px;
}
.consent input[type="checkbox"] + div:before {
	font-family: FontAwesome;
	display: inline-block;
	content: "\f096";
	letter-spacing: 10px;
	font-size: 16px;
	color: #166db9;
	position: absolute;
	margin-left: -24px;
}
.consent input[type="checkbox"]:checked + div:before {
	content: "\f046";
	letter-spacing: 5px;
}
.consent {
	margin-left: 48px;
	margin-top: 20px;
	font: 14px 'Lato';
}
.inp_text {
	height: 48px;
	background-color: #eceff1;
	border: none;
	padding: 12px;
}
.logo_style {
	height: 140px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.owl-carousel .owl-item {
	margin: 0 auto;
}
.owl-carousel .owl-item img {
	width: auto;
}
.owl-carousel {
	position: relative;
}
.owl-nav, .slick-arrow {
	display: none!important;
}
@media (min-width: 768px) {
    .owl-nav, .slick-arrow {
        display: inline-block!important;
    }
}
.owl_btn {
	height: 51px;
	width: 51px;
	background-color: #1e88e5;
	border-radius: 99px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.owl-prev,
.owl-next {
	position: absolute;
}
#gallery_owl .owl-prev,
#gallery_owl .owl-next {
	bottom: 0;
}
#gallery_owl .owl-next {
	left: 70px;
	right: unset;
}
#our_works_owl .owl-prev,
#our_works_owl .owl-next,
#auto_owl .owl-prev,
#auto_owl .owl-next {
	top: 0;
	bottom: 0;
	display: flex;
	align-items: center;
}
#our_works_owl .owl-prev,
#our_works_owl .owl-next {
	margin-bottom: 100px;
}
.owl-prev {
	left: 0;
}
.owl-next {
	right: 0;
	transform: scaleX(-1);
}
.owl-theme .owl-nav [class*=owl-],
.owl-theme .owl-nav [class*=owl-]:hover {
	background: none;
}
#gallery_owl,
#gallery_owl .owl-stage-outer,
#gallery_owl .owl-stage,
#gallery_owl .owl-item,
#gallery_owl .item,
#our_works_owl,
#our_works_owl .owl-stage-outer,
#our_works_owl .owl-stage,
#our_works_owl .owl-item,
#our_works_owl .item,
#auto_owl,
#auto_owl .owl-stage-outer,
#auto_owl .owl-stage,
#auto_owl .owl-item,
#auto_owl .item {
	height: inherit;
}
#toTop {
	display: none;
	text-align:center;
	position:fixed;
	bottom:50px;
	right:10px;
	cursor:pointer;
	z-index: 999;
	height: 51px;
	width: 51px;
	background-color: #1e88e5;
	border-radius: 99px;
	opacity: .5;
	font-size: 25px;
	color: #fff;
}

#toTop:hover {
	opacity: 1;
}
.totop_cnt {
	width: 100%;
	height: inherit;
	display: flex;
	align-items: center;
	justify-content: center;
}

@media (min-width: 1325px) {
	#our_works_owl .owl-prev {
		left: -89px;
	}
	#our_works_owl .owl-next {
		right: -89px;
	}
}
@media (max-width: 1199px) {

	.nopadding_left_md {
		padding-left: 0;
	}
	#preview {
		padding-top: 160px;
		height: 500px;
	}
	.phonenum {
		font-size: 19px;
	}
	h2 {
		margin: 60px 0 30px !important;
	}
	#about_company {
		padding-bottom: 80px;
	}
	.content_404_error {
		font-size: 460px;
		line-height: 400px;
	}
	.content_404_error_text {
		font-size: 70px;
	}

}
@media (max-width: 991px) {

	.owl-prev {
		left: 0;
	}

	.owl-next {
		right: 0;
	}

	#working {
		padding-bottom: 80px;
	}

	.nav_list li {
	    padding: 6px 10px 6px 0;
	    font-size: 11px;
	}

	.phonenum {
		font-size: 14px;
	}

	.address {
		font-size: 10px;
	}

}
@media (max-width: 767px) {
	#toTop {
		display: none !important;
	}
	button.navbar-toggle {
		border-color: #212121;
	}
	button.navbar-toggle span {
		background-color: #212121;
	}
	.top_menu {
		padding: 12px 0;
		height: auto;
	}
	.nav_list {
		padding: 12px 0;
	}
	.nav_list li {
		display: block;
		text-align: right;
		padding: 10px 0;
		font-size: 12px;
	}
	h1
	.preview_heading {
		font-size: 32px;
	}
	footer {
		padding: 50px 15px;
	}
	.contacts_cnt {
		margin-top: 16px;
	}
	.sn_cnt {
		margin: 12px 0;
	}
	.modal-header {
		padding: 15px;
	}
	.consent {
		margin-left: 36px;
		margin-right: 0;
	}
	.modal-content .btn,
	.modal-content .btn:focus {
		padding: 12px;
		letter-spacing: 0;
	}

	#about_company {
		padding-bottom: 315px;
	}
	.gallery_cnt {
		width: 100%;
		top: unset;
		height: 300px;
	}
	.service {
		padding: 12px;
	}
	.service_text {
		margin: 10px 0;
	}
	h2 {
		margin: 30px 0 !important;
		font-size: 22px;
	}
	#services {
		padding-bottom: 0;
	}
	.ymaps-2-1-56-zoom {
		height: 64px !important;
	}
	#preview {
		padding-top: 128px;
		height: 400px;
	}
	.btn,
	.btn:focus {
		padding: 10px 18px;
	}
	.contacts_cnt {
		padding: 12px 16px;
	}
	#working {
		padding-bottom: 30px;
	}
	.bg_img {
		display: none;
	}
	.address {
		font-size: 11px;
	}
	.display_flex {
		display: block;
	}
	.footer_left,
	.footer_center,
	.footer_right {
		text-align:center;
	}
	.nomargin_xs {
		margin: 0;
	}
	.nopadding_xs {
		padding: 0;
	}
	.navbar_fh {
		height: auto;
	}
	.content_404_error {
		font-size: 200px;
		line-height: 180px;
	}
	.content_404_error_text {
		font-size: 30px;
	}
}
@media (min-width: 768px) and (max-width: 991px) {
    .top_menu .container, .top_menu .address, .top_menu a, .top_menu img {
        width:100%;
    }
}