/* плавное изменение прозрачности placeholder-а при фокусе */
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 {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;}
.nopadding_left {
	padding-left: 0;
}

body.modal-open { /* Bootstrap fix */
    overflow-y: visible!important;
    padding-right: 0px!important;
}



/* МОДАЛЬНОЕ ОКНО */
.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-header h4 {
	margin: 20px 0 16px;
	font: 24px 'Play-Bold';
	color: #263238;
}

.modal-content .btn,
.modal-content .btn:focus {
	width: auto;
	padding: 18px 30px;
}

.modal-content label {
	font: 14px 'Lato-Regular';
}

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;
}
/* END МОДАЛЬНОЕ ОКНО */



/* Common style */

.btn,
.btn:focus {
	padding: 10px 24px;
	background-color: #ff6d00;
	font: 12px 'Play-Bold';
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 2px;
	border-radius: 32px;
	outline: none;
}

.btn:hover,
.btn:active:hover,
.btn:active:focus,
.btn:active {
	background-color: #ce5800;
	transition: .5s;
	color: #eee;
	outline: none;
}

body {
	font: 14px 'Lato-Regular';
	color: #212121;
}

.bold {
	font-family: 'Lato-Bold';
}

h2 {
	font: 24px 'Play-Bold';
	text-transform: uppercase;
	margin: 44px 0 30px;
	position: relative;
	text-align: center;
}

h2:after {
	content: "";
	border-bottom: 3px solid #ff6d00;
	border-radius: 9px;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 66px;
	bottom: -16px;
}

.btn_center {
	text-align: center;
	padding-bottom: 20px;
}

.last_element {
	margin-right: 0 !important;
}



/* Header */

.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);
}

.logo {
	background-image: url(../img/logo.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	font: 20px 'Play-Bold';
	color: #ff6d00;
	width: 100%;
	padding-left: 60px;
}

.logo:hover,
.logo:active:hover,
.logo:active:focus,
.logo:active,
.logo:focus {
	text-decoration: none;
	color: #ff6d00;
}

.gauging_btn,
.gauging_btn:focus {
	background-color: #fff;
	border: 2px solid #ff6d00;
	color: #ff6d00;
	background-image: url(../img/roulette_construction_icon.png);
	background-repeat: no-repeat;
	background-position: left 20px center;
	padding-left: 54px;
}

.gauging_btn:hover,
.gauging_btn:active:hover,
.gauging_btn:active:focus,
.gauging_btn:active {
	background-color: #eee;
	border-color: #ce5800;
	color: #ce5800;
}

.btn_phone,
.btn_phone:focus {
	margin-top: 8px;
	background-color: #fff;
	color: #ff6d00;
}

.btn_phone:hover,
.btn_phone:active:hover,
.btn_phone:active:focus,
.btn_phone:active {
	background-color: #eee;
	color: #ce5800;
}

.top_menu {
	background-color: #fff;
}

.navbar{
	margin-bottom: 0px;
}

.navbar_custom {
	padding: 8px 0;
	background-color: #ff6d00;
	color: #fff;
}

.minpadding {
	background: rgba(21,21,21,.95);
}

.container_absolute {
	position: absolute;
	left: 0;
	right: 0;
	z-index: 999;
}

.navbar_fh {
	height: 80px;
}

.nav_list {
	padding-left: 0;
	margin-bottom: 0;
}

.nav_list li {
	display: inline-block;
	padding: 6px 43px 6px 0;
}

.nav_list li a,
.nav_list li a:focus {
	text-decoration: none;
	text-transform: uppercase;
	font-size: 12px;
	color: #fff;
}

.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: #ddd;
}

.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 .fa {
	color: #ff6d00;
}

.phone_cnt p {
	margin-bottom: 0;
	font-size: 16px;
}

.phone_cnt a,
.phone_cnt a:focus {
	display: block;
	color: inherit;
	width: 100%;
	text-decoration: none !important;
}

.phone_cnt a:hover,
.phone_cnt a:active:hover,
.phone_cnt a:active:focus,
.phone_cnt a:active {
	color: #ff6d00;
}

.phonenum {
	margin-bottom: 4px;
}

.btn_cnt {
	width: 100%;
}



/*Preview*/

.bg_preview {
	background-repeat: no-repeat;
	background-size: cover!important;
	background-position: center;
}

.bg_preview .container {
	position: relative;
}

h1,
.preview_heading {
	font: 44px 'Play-Bold';
	text-transform: uppercase;
	position: relative;
	margin-top: 0;
}

#preview .subheading {
	font: 34px 'Play';
	margin-bottom: 30px;
}

.heading_note {
	position: absolute;
	top: -16px;
	font-family: 'Play-Bold';
	text-transform: uppercase;
}



/*Our services*/

#services {
	padding-bottom: 100px;
}

.all_services {
	margin-top: 72px;
}

.service_img {
	height: 100px;
	max-width: 100px;
	width: 100%;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 40px;
}

.service_img img {
	position: absolute;
	top: 0;
	right: 0;
}

.orange_circle {
	display: block;
	height: 60px;
	width: 60px;
	background-color: #ff6d00;
	border-radius: 60px;
}

.service_text {
	text-align: center;
	font: 12px 'Lato-Bold';
	text-transform: uppercase;
	letter-spacing: 2px;
}



/*Catalog*/

#catalog {
	background-image: url(../img/bg_catalog.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.nav_catalog {
	background-color: #fff;
	border-radius: 8px;
	padding: 20px 48px;
	margin-bottom: 30px;
}

.nav_catalog li {
	float: left;
	font: 16px 'Play-Bold';
	text-transform: uppercase;
	margin-right: 10%;
}

.nav_catalog li:last-child {
	margin-right: 0;
}

.nav_catalog li a,
.nav_catalog li a:focus {
	color: #d0d0d0;
	background: none;
	padding: 0;
}

.nav_catalog li.active a,
.nav_catalog li a:hover {
	color: #ff6d00;
	background: none;
}

.production {
	max-width: 263px;
	width: 100%;
	background-color: #fff;
	border-radius: 8px;
	padding: 10px 40px;
	margin: 0 auto 30px;
}

.production h3 {
	font: 18px 'Play-Bold';
	text-align: center;
	text-transform: uppercase;
}

.production_img {
	height: 160px;
	width: 100%;
	background-position: center;
	background-repeat: no-repeat;
}

.production_price {
	font: 24px 'Play-Bold';
	text-align: center;
	margin: 32px 0 24px;
}

.raiting_cnt {
	display: inline-block;
	width: 100%;
}

.raiting {
	display: block;
	width: 9px;
	height: 9px;
	background-color: #e0e0e0;
	float: left;
	border-radius: 9px;
}

.raiting + .raiting {
	margin-left: 5%;
}

.thermal_insulation,
.soundproofing {
	margin-bottom: 16px;
}

.thermal_insulation .raiting_point {
	background-color: #e57373;
}

.soundproofing .raiting_point {
	background-color: #7cb342;
}

.production .btn_center {
	margin-top: 12px;
}



/*Design*/

#design h2 {
	margin-bottom: 48px;
}

.dynamic_img_cnt {
	background-image: url(../img/window_bg.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	margin-bottom: 32px;
}

.window_color {
	background-image: url(../img/window_colors/color1.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 54px;
	height: 54px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 16px;
	margin-bottom: 8px;
	float:left;
}

.window_color.active .color_checked {
	background-image: url(../img/color_checked.png);
	height: 23px;
	width: 23px;
	display: block;
}

#design .btn_center {
	margin-top: 30px;
}



/*Kits*/

#kits {
	background-image: url(../img/bg_catalog.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.kit {
	padding: 28px 0;
	max-width: 362px;
	width: 100%;
	background-color: #fff;
	border-radius: 8px;
	margin: 0 auto 30px;
}

.kit_img {
	height: 300px;
	width: 100%;
	background-position: center;
	background-repeat: no-repeat;
}

.kit_price {
	font: 34px 'Play-Bold';
	text-align: center;
}

.installment_plan {
	font: 14px 'Lato-Regular';
	color: #757575;
	text-align: center;
}



/* About Company */

.company_advantages {
	padding-left: 0;
	margin-bottom: 20px;
}

.company_advantages + .btn {
	margin-bottom: 30px;
}

.company_advantages li {
	list-style-type: none;
	font: 16px 'Lato-Bold';
}

.company_advantages li+li {
	margin-top: 16px;
}

.company_advantages li:before {
	margin-right: 5px;
	font-family: FontAwesome;
	content: "\f00c";
	color: #ff6d00;
}

.document {
	height: 230px;
	max-width: 163px;
	width: 100%;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	margin: 0 auto;
	margin-bottom: 20px;
}

.document a {
	display: block;
	height: inherit;
}



/*Our works*/

#our_works {
	background-image: url(../img/bg_catalog.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.our_works_media {
	height: 426px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	margin: 0 auto 30px;
}

.our_works_media a {
	display: block;
	height: inherit;
}



/*Calculator*/

#calculator {
	background-image: url(../img/bg_calculator.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	color: #fff;
	padding-bottom: 50px;
}

.inp_calc {
	width: 68px;
	color: #212121;
	font: 20px 'Play-Bold';
	height: 49px;
	text-align: center;
	border-radius: 4px;
	background-color: #ebeeee;
	border: none;
	margin-bottom: 6px;
}

.inp_calc_select{
	width: 160px;
	font: 16px 'Play-Bold';
}

.inp_calc_cnt {
	text-align: center;
}

.inp_calc:focus {
	border: 2px solid #ff6d00;
	transition: .3s;
}

.calc_cnt [class*="col-"] {
	padding: 8px;
}

.calc_cnt [class*="col-"] .inp_heading {
	width: max-content;
	margin: 0 auto;
}

.or {
	font: 14px 'Play-Bold';
	text-transform: uppercase;
	text-align: center;
	margin-top: 20px;
}

.calc_form_page .btn_clear{
	margin: 0 auto;
}

.btn_clear {
	display: block;
	width: 41px;
	height: 41px;
	border-radius: 99px;
	background-color: #ff6d00;
	background-image: url(../img/bin_icon.png);
	background-repeat: no-repeat;
	background-position: center;
	cursor: pointer;
}

.btn_clear:hover {
	background-color: #ce5800;
	transition: .5s;
}

.add_window_block_index{
	position: relative;
}

.error_text_valid_enter_params_modal,
.error_text_valid_enter_params{
	color: red;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	text-align: center;
	display: none;
}{
	color: red;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	text-align: center;
	display: none;
}

.add_window_block{
	text-align: center;
}

.add_window,
.add_window:focus {
	color: #ff6d00;
	font: 18px 'Play-Bold';
	border-bottom: 1px dashed;
	display: inline-block;
	position: relative;
	margin-left: 16px;
	margin-bottom: 20px;
	transition: .3s;
	text-decoration: none;
	cursor: pointer;
	margin-top: 8px;
}

.add_window:before {
	content: '+';
	position: absolute;
	left: -16px;
}

.add_window:hover,
.add_window:active:hover,
.add_window:active:focus,
.add_window:active {
	text-decoration: none;
	color: #ce5800;
}

.calc_btn,
.calc_btn:focus {
	background-image: url(../img/btn_arrow.png);
	background-repeat: no-repeat;
	background-position: right 30px top 18px;
	padding: 18px 72px 16px 48px;
}



/* Contacts */

#contacts {
	position: relative;
}

#map {
	height: 410px;
}

#map .container {
	position: relative;
}

[class*="ymaps-2"][class*="-ground-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 */

.footer_left {text-align:left;}
.footer_center {text-align:center;}
.footer_right {text-align:right;}

a.link_dev,
a.link_dev:focus {
	color: #ff6d00;
	text-transform: uppercase;
	font-family: 'Lato-Bold';
	text-decoration: none;
}

a.link_dev:hover {
	text-decoration: underline;
	color: #ff6d00;
}

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;
}

.social_network:hover {
	color: #fff;
}

.social_network+.social_network {
	margin-left: 34px;
}
/* END FOOTER */



/* Checkbox and input */
.inp_checkbox {
	position: absolute;
	left: -9999px;
}

.inp_checkbox + .consent:before {
	display: inline-block;
	position: absolute;
	left: 48px;
	top: 0;
	background-image: url(../img/checkbox_unchecked.png);
	height: 27px;
	width: 27px;
	content: "";
	background-size: cover;
}

.inp_checkbox:checked + .consent:before {
	background-image: url(../img/checkbox_checked.png);
	height: 27px;
	width: 27px;
	content: "";
}

.consent {
	float:left;
	margin:0 70px;
	margin-bottom: 28px;
	font: 14px 'Lato-Regular';
}

.inp_text {
	height: 48px;
	background-color: #eceff1;
	border: none;
	padding: 12px;
}

/* END CONTENT */



/* OWL Logos */

.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_btn {
	height: 51px;
	width: 51px;
	border: 3px solid #ff6d00;
	border-radius: 99px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url(../img/arrow.png);
	background-repeat: no-repeat;
	background-position: center;
}

.owl_btn .fa {
	color: #4c4d52;
	font-size: 20px;
}

.owl-prev,
.owl-next {
	position: absolute;
}

#our_partners_owl .owl-prev,
#our_partners_owl .owl-next {
	top: 32px;
}

#our_works_owl .owl-prev,
#our_works_owl .owl-next {
	top: 176px;
}

.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;
}



/* Preview */

.owl-carousel {
	position: relative;
}

#preview_owl .item section {
	/*margin-top: 125px;*/
	padding: 135px 0 0;
	position: relative;
	height: 485px;
}

.owl-dots {
	position: absolute;
	right: 0;
	left: 0;
	bottom: 20px;
}

.owl-theme .owl-dots .owl-dot span {
	width: 10px;
	height: 10px;
	transition: .3s;
	margin: 0 5px;
	border: 1px solid #ff6d00;
	background: none;
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
	background: #ff6d00;
}



/*__________________Медиа запросы___*/

@media (max-width: 1199px) { /*_0-md_*/

	.gauging_btn {
		background: none;
	}

	.top_menu .btn {
		padding: 12px;
	}

	.nav_catalog li {
		margin-right: 4.6%;
	}

}

@media (max-width: 991px) { /*_0-sm_*/

	.owl-prev {
		left: 0;
	}

	.owl-next {
		right: 0;
	}

	.top_menu .btn {
		width: 100%;
		padding: 8px;
	}

	.top_menu .btn +.btn {
		margin-top: 4px;
	}

	.nav_catalog li {
		width: 50%;
		margin: 0;
		text-align: center;
		margin-bottom: 12px;
	}

	.nav_catalog {
		padding-bottom: 8px;
	}

	.calc_cnt [class*="col-"] {
		padding: 0 8px;
	}

	.calc_cnt [class*="col-"] .inp_heading {
		font-size: 12px;
	}

	.inp_calc {
		width: 64px;
		height: 46px;
	}

	.window_color {
		width: 40px;
		height: 40px;
	}

	.window_cnt {
		margin-top: 16px;
	}

	.add_window,
	.add_window:focus {
		margin-top: 16px;
	}

	#services {
		padding-bottom: 0;
	}

	.all_services {
		margin-top: 30px;
	}

	.service {
		margin-bottom: 30px;
	}

	.service_img {
		margin-bottom: 20px;
	}

	#calculator {
		padding-bottom: 30px;
	}
}

@media (max-width: 767px) { /*_0-xs_*/

	#preview_owl .item section {
		padding: 100px 0 0;
		height: 400px;
	}

	button.navbar-toggle {
		border-color: #fff;
	}

	button.navbar-toggle span {
		background-color: #fff;
	}

	.top_menu {
		background-color: #ff6d00;
		padding: 8px 0;
	}

	.logo {
		background-image: url(../img/logo_xs.png);
		color: #fff;
	}

	.logo:hover,
	.logo:active:hover,
	.logo:active:focus,
	.logo:active,
	.logo:focus {
		color: #fff;
	}

	.top_menu .btn {
		width: auto;
		padding: 8px 16px;
	}

	.navbar_custom {
		padding: 0;
	}

	.nav_list {
		padding: 0 15px 12px;
	}

	.nav_list li {
		display: block;
		text-align: right;
		padding: 4px 0;
	}

	.navbar_fh {
		height: 46px;
	}

	h1,
	.preview_heading {
		font-size: 36px;
	}

	footer {
		padding: 16px;
	}

	#map {
		height: 640px;
	}

	.contacts_cnt {
		margin-top: 16px;
	}

	.service {
		margin-bottom: 48px;
	}

	.service_img {
		margin-bottom: 0;
	}

	.nav_catalog li {
		width: 100%;
	}

	.sn_cnt {
		margin: 12px 0;
	}

	.calc_cnt [class*="col-"] {
		padding: 0 2px;
	}

	.or {
		font-size: 9px !important;
	}

	.our_works_media {
		height: 256px;
	}

	#our_works_owl .owl-prev, #our_works_owl .owl-next {
		top: 96px;
	}

	.modal-header {
		padding: 15px;
	}

	.consent {
		margin-left: 36px;
		margin-right: 0;
	}

	.inp_checkbox + .consent:before {
		left: 15px;
	}

	.modal-content .btn,
	.modal-content .btn:focus {
		padding: 12px;
		letter-spacing: 0;
	}

	#calculator {
		text-align: center;
	}



	.display_flex {
		display: block;
	}
	.footer_left,
	.footer_center,
	.footer_right {
		text-align:center;
	}

	.nomargin_xs {
		margin: 0;
	}
}

.page_404_title{
	text-align: center;
	margin:150px 0 150px;
}

.cont_404{
	height: 45%;
}

.mfeedback{
	position: relative;
}

.valid_text_block .errortext,
.valid_text_block .mf-ok-text{
	position: absolute;
	text-align: center;
	left: 0;
	right: 0;
}

.valid_text_block p{
	margin: 0;
}

.valid_text_block p:nth-child(2) .errortext,
.valid_text_block .mf-ok-text{
	top: -10px;
}
.valid_text_block p:nth-child(1) .errortext{
	top: -26px;
}

/*   calculate modal   */

.modal_product_img{
	height: 120px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.modal-body .inp_calc{
	width: 70px;
}

.modal-body .window_cnt{
	margin-top: 30px;
}

.btn_calc_sent_block{
	text-align: center;
}

@media(min-width: 768px){
	.modal_product_img{
		height: 200px;
	}
	.modal-body .inp_calc{
		width: 140px;
	}
}

/* end calculate modal */