.dark_overlay {
    background: #000;
    bottom: 0;
    display: none;
    height: 100%;
    left: 0;
    opacity: 0.7;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 20000;
}

.flex_column{
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.flex_row{
    align-items: top;
    display: flex;
    flex-direction: row;
    justify-content: center;
}

/* modal form */

.modal-form {
	background: #eee;
	border-radius: 6px;
	box-sizing: border-box;
	left: 50%;
	margin: 0 auto;
	opacity: 0;
	padding: 0 0 5px;
	position: absolute;
	transform: translateX(-50%) translateY(-40px);
	transition: opacity .4s, transform .4s, visibility .4s;
	visibility: hidden;
	width: 95%;
	z-index: 30000;
}
.modal-form.visible {
	transform: translateX(-50%) translateY(0px);
	opacity: 1;
	visibility: visible;
}
.modal-form h2 {
	border: 0;
	color: #fff;
	font-size: 22px;
	font-weight: normal;
	line-height: 30px;
	margin: 15px 0;
	padding: 0 20px;
	text-transform: none;
}
.modal-form .mf-form-close {
	align-items: center;
	box-sizing: border-box;
	color: #444;
	cursor: pointer;
	display: flex;
	font-size: 18px;
	height: 35px;
	justify-content: center;
	position: absolute;
	right: 10px;
	top: 10px;
	width: 35px;
	z-index: 10;
}
.modal-form .mf-input-wrapper {
	box-sizing: border-box;
	margin: 0 0 15px 0;
	padding: 0 20px;
	position: relative;
	width: 100%;
	z-index: 30001;
}
.modal-form .mf-input,
.modal-form .mf-textarea,
.modal-form select {
	background: #fff;
	border: 1px solid #fff;
	border-radius: 5px;
	box-sizing: border-box;
	color: #000;
	font-family: 'Tahoma';
	font-size: 14px;
	outline: none;
	padding: 6px 12px;
	width: 100%;
}
.modal-form .mf-input,
.modal-form select { height: 36px; }
.modal-form .mf-textarea { height: 175px; resize: none; }
.modal-form .mf-input-wrapper input.red-border,
.modal-form .mf-input-wrapper textarea.red-border,
.modal-form .mf-input-wrapper select.red-border {
	border: 1px solid #f00;
}
.modal-form .red-text::-webkit-input-placeholder { color: #f00; opacity: 1; }
.modal-form .red-text::-moz-placeholder { color: #f00; opacity: 1; }
.modal-form .red-text:-ms-input-placeholder { color: #f00; opacity: 1; }
.modal-form .mf-submit {
	background: #fff;
	border: 1px solid #aaa;
	border-radius: 5px;
	clear: both;
	color: #aaa;
	cursor: pointer;
	display: block;
	font-family: 'Tahoma';
	font-size: 18px;
	height: 43px;
	margin: 15px auto;
	overflow: hidden;
	position: relative;
	text-align: center;
	transition: .3s;
	width: 100%;
	z-index: 1;
}
.modal-form .mf-submit:hover {
	background: #aaa;
	color: #fff;
}
.modal-form .mf-submit.success {
	cursor: default;
	pointer-events: none;
}
.modal-form .mf-submit::after {
	align-items: center;
	background-color: #00a329;
	color: #fff;
	content: attr(data-success);
	display: flex;
	font-family: inherit;
	font-size: inherit;
	height: 100%;
	justify-content: center;
	left: 0;
	position: absolute;
	top: -100%;
	transition: 0.3s cubic-bezier(0.42, 0, 0.58, 1);
	width: 100%;
}
.modal-form .mf-submit.success::after {
	top: 0;
}

/* modal form end */


/* feedback form */

.fb-open {
	background: var(--ob-orange);
	border-radius: 25px 0 0 25px;
	cursor: pointer;
	height: 290px;
	position: fixed;
	right: -3px;
	top: 50%;
	transform: translateY(-50%);
	transform-origin: 100% 0%;
	transition: right .1s, transform .6s;
	width: 70px;
	z-index: 1000;
}
.fb-open:hover {
	right: 0px;
}
.fb-open.fb-hidden {
	transform: translateY(-50%) translateX(100%);
}
.fb-open-text {
	color: #fff;
	font-family: 'Tahoma';
	font-size: 26px;
	position: absolute;
	left: -66px;
	text-transform: uppercase;
	top: 115px;
	transform: rotate(-90deg);
	width: 200px;
}
.fb-open i.fa-envelope {
	bottom: 15px;
	color: #fff;
	font-size: 30px;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
}
.fb-hide {
	background: none;
	border: none;
	cursor: pointer;
	height: 50px;
	padding: 0;
	position: fixed;
	right: 5px;
	top: 50%;
	transform: translateY(-200px);
	transition: .6s;
	width: 50px;
	z-index: 1000;
}
.fb-hide i.fa-arrow-right {
    color: var(--ob-orange);
	font-size: 35px;
}

.fb-form {
	background: var(--ob-orange);
}
.fb-form .mf-submit {
	background: var(--ob-orange);
	border: 2px solid #fff;
	color: #fff;
}
.fb-form .mf-submit:hover {
	background: #fff;
	color: var(--ob-orange);
}

@media (max-width: 1000px) {
	.fb-open { transform: scale(0.8) translateY(-50%); }
	.fb-open.fb-hidden { transform: scale(0.8) translateY(-50%) translateX(100%); }
	.fb-hide { right: 0px; transform: translateY(-165px); }
	.fb-hide i.fa-arrow-right { font-size: 28px; }
}
@media (max-width: 640px) {
	.fb-open { transform: scale(0.6) translateY(-50%); }
	.fb-open.fb-hidden { transform: scale(0.6) translateY(-50%) translateX(100%); }
	.fb-hide {
		height: 40px;
		transform: translateY(-126px);
		width: 40px;
	}
	.fb-hide i.fa-arrow-right { font-size: 24px; }
}

/* feedback form end */

.redBorder{
	border: 1px solid #ff0000;
}

.requiredFieldError{
	color: #ff0000;
	display: none;
}

.requiredFieldError.show{
	display: flex;
}

/* stepform */

#call_stepform{
	cursor: pointer;
}

#stepform{
    background-color: #ffffff;
    height: 512px;
    max-width: 960px;
}

.stepform-header{
    background-color: #35405a;
    box-sizing: border-box;
	justify-content: space-between;
    padding: 45px 45px 35px 45px;
    width: 100%;
}

.stepform-header-text{
	color: #ffffff;
	font-family: 'Arial';
	gap: 0px 10px;
	justify-content: flex-start; 
}

.stepform-content{
    box-sizing: border-box;
	height: 100%;
    padding: 45px 45px 45px 45px;
	position: relative;
	width: 100%;
}

.stepform-content *{
	font-family: 'Arial';
}

.stepform-content ul{
	margin: 0px;
	padding: 0px;
}

.stepform-content ul li{
	font-size: 15px;
	list-style: none;
	margin: 15px 0px;
	padding: 0px;
}

.stepform-h4{
	font-size: 26px;
}

.stepform_tabs_tabs_label{
	align-items: center;
	background-color: #cbcbcb;
    border-radius: 30px;
	color: rgb(46, 46, 46);
	cursor: pointer;
	font-size: 14px;
	font-weight: bold;
	height: 45px;
	justify-content: center;
	padding: 0px 30px;
}

.stepform_tabs_tabs_label + .stepform_tabs_tabs_label{
	background-color: rgb(204, 168, 118);
}

.stepform_tabs_tabs_label input[type="submit"]{
	background: none;
	border: 0px;
	color: rgb(46, 46, 46);
	cursor: pointer;
	font-family: "Arial";
	font-size: 14px;
	font-weight: bold;
}

.stepform-navigation{
	bottom: 35px;
	justify-content: space-between;
	position: absolute;
	width: calc(100% - 90px);
}

/* stepform end */

/* stepform_tabs */

.stepform_tabs{
	box-sizing: border-box;
	height: 100%;
	width: 100%;
}

.stepform_tabs_radio{
	display: none;
}

.stepform_tabs_radio + label{
	box-sizing: border-box;
	font-weight: 700;
	padding: 10px 15px;
	text-transform: uppercase;
}

.stepform_tabs_radio + label > div{
	font-weight: 700;
}

.stepform_tabs_radio + label:hover > div{
	color: var(--color-vn-purple);
}

.stepform_tabs_radio:checked + label{
	border: 0px;
	border-bottom: 1px solid var(--color-vn-black);
	border-style: dashed;
}

.stepform_tabs_radio:checked + label > div{
	color: var(--color-vn-black);
}


.stepform_tabs_items{

}

.stepform_tabs_items, .stepform_tabs_items > div{
	height: 100%;
	width: 100%;
}

.stepform-hits-slider-section, .stepform-hits-slider{
	width: 1764px;
}

/* stepform_tabs end */

/* our_works-item */

.our_works-block{
	align-items: flex-start;
	background-color: #f0f0f0;
	display: flex; 
	flex-direction: row; 
	height: 580px;
	justify-content: center;
	padding-top: 40px;
}

.our_works {
	box-sizing: border-box;
	overflow: hidden;
	padding: 0 60px;
	width: 1300px;
}

.our_works-item{
	align-items: flex-start;
	background-color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	overflow: hidden;
	margin: auto;
	max-width: 360px;
	padding-bottom: 40px;
}

.our_works-item img{
	width: 100%;
}

.our_works-debt{
	box-sizing: border-box;
	color: #8c8c8c;
	font-size: 20px;
	font-family: 'Arial',Arial,sans-serif;
	font-weight: 600;
	letter-spacing: 2.5px;
	margin-top: 10px;
	padding-left: 20px;
	text-align: left;
	width: 100%;
}

.our_works-price{
	box-sizing: border-box;
	color: #000;
	font-family: 'Arial',Arial,sans-serif;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.35;
	margin: 10px 0px 10px 0px;
	padding-left: 20px;
	text-align: left;
	width: 100%;
}

.our_works-text{
	box-sizing: border-box;
	color: #000;
	font-family: 'Arial',Arial,sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.55;
	padding-left: 20px;
	text-align: left;
	width: 100%;
}

.our_works-link{
	align-items: center;
	color: #000000 !important;
	background-color: #cca876;
	border-radius: 5px;
	display: flex;
	flex-direction: row;
	font-family: "Arial", Arial, sans-serif;
	font-size: 13px;
	font-weight: bold;
	height: 35px;
	justify-content: center;
	margin: 10px 0px 0px 20px;
	padding: 0px 15px;
	text-transform: uppercase;
}

.our_works.owl-theme .owl-nav {
	width: calc(100% - 120px);
}

.our_works.owl-theme .owl-nav .owl-prev{
	background: url(/images/slider_arrow_left.png) no-repeat center;
	height: 100%;
	left: -60px;
	top: 0;
	width: 60px;
}

.our_works.owl-theme .owl-nav .owl-next{
	background: url(/images/slider_arrow_left.png) no-repeat center;
	height: 100%;
	top: 0;
	transform: rotate(180deg);
	right: -60px;
	width: 60px;
}

@media (max-width: 768px) {
	.our_works .owl-nav [class*="owl-"] { opacity: 1; }
	.our_works .owl-nav .disabled { opacity: 0.5; }
}
@media (max-width: 450px) {
	.our_works { padding: 0 20px 70px; }
	.our_works-item { padding-bottom: 20px; }
	.our_works.owl-theme .owl-nav { width: calc(100% - 40px); }
	.our_works.owl-theme .owl-nav .owl-prev {
		bottom: 0px;
		height: 60px;
		left: 50%;
		top: unset;
		transform: translateX(-100%);
	}
	.our_works.owl-theme .owl-nav .owl-next {
		bottom: 0px;
		height: 60px;
		right: 50%;
		top: unset;
		transform: rotate(180deg) translateX(-100%);
	}
}

/* our_works-item end */

.flex-row, .flex_row {
	align-items: flex-start;
	display: flex;
	flex-direction: row;
	justify-content: center;
}
.flex-column, .flex_column {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}

/* reviews_services */

.reviews_services{
	align-items: top;
	display: flex;
	flex-direction: row;
	justify-content: center;
	width: 100%;
}


	/* yandex_reviews-item */

	.yandex_reviews-block{
		height: 380px;
		width: 212px;
	}

	.yandex_reviews-item img{
		height: 380px;
		width: 212px;
	}

	.yandex_reviews.owl-theme .owl-nav .owl-prev{
		bottom: -40px;
		background: url(/images/slider_arrow_left.png) no-repeat;
		height: 44px;
		left: 45px;
		opacity: 1;
		width: 45px;
	}

	.yandex_reviews.owl-theme .owl-nav .owl-next {
		bottom: -40px;
		background: url(/images/slider_arrow_left.png) no-repeat;
		height: 44px;
		opacity: 1;
		right: 65px;
		transform: rotate(180deg);
		width: 45px;
	}

	/* yandex_reviews-item end */


/* reviews_services end */

/* menu-city */

.menu-city-section {
    background: #b3ad9a;
    height: 40px;
    width: 100%;
}
.menu-city {
	align-items: center;
	box-sizing: border-box;
	flex-wrap: wrap;
	gap: 12px 30px;
	height: 100%;
	width: 100%;
}
.menu-city-item {
	color: #343434;
	cursor: pointer;
    font-family: 'Arial', Arial, sans-serif;
    font-size: 13px;
}
.menu-city-item:hover {
	color: #000;
}
.menu-city-item.current {
	color: #000;
	font-weight: bold;
	text-decoration: underline;
}
.choose-your-city {
	color: #fff;
	cursor: pointer;
	margin-top: -6px;
	position: relative;
	text-align: center;
	text-transform: uppercase;
	width: 100%;
}
.choose-your-city::before,
.choose-your-city::after {
	border-top: 1px solid #b0b0b0;
	content: '';
	height: 0;
	position: absolute;
	top: 50%;
	width: calc(50% - 130px);
}
.choose-your-city::before { left: 0; }
.choose-your-city::after { right: 0; }
.choose-your-city > span {
	background: inherit;
	padding: 0 40px;
	position: relative;
	z-index: 1;
}

.current-city {
	color: #343434;
	cursor: pointer;
	display: none;
	font-family: 'Arial', Arial, sans-serif;
	font-size: 13px;
}
.current-city-name {
	color: #000;
	font-weight: bold;
	text-decoration: underline;
}

@media (max-width: 639px) {
	.menu-city-item { display: none; }
	.current-city { display: block; }
}

/* menu-city end */

/* form cityip */

#form_cityip {
	align-items: center;
	background: #FFFFFF;
	box-sizing: border-box;
	border-radius: 5px;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	font-family: 'tahoma';
	left: 50%;
	max-height: 100%;
	max-width: 1260px;
	padding: 20px 10px 20px 20px;
	position: fixed;
	top: 0%;
	width: 100%;
	z-index: 20001;
}
.cityip_header {
	font-size: 18px;
	text-transform: uppercase;
	margin-bottom: 20px;
}
.cityip_list {
	justify-content: flex-start;
	overflow-y: scroll;
	width: 100%;
}
.cityip_region {
	font-size: 14px;
	font-weight: bold;
	justify-content: flex-start;
	margin: 10px 0px;
	width: 100%;
}
.cityip_items {
	flex-wrap: wrap;
	gap: 0 20px;
	justify-content: flex-start;
	width: 100%;
}
.cityip_item {
	border: 1px solid #ffffff;
	box-sizing: border-box;
	cursor: pointer;
	font-family: 'Arial', Arial, sans-serif;
	font-size: 16px;
	padding: 5px 10px;
	transition: .2s;
	width: 180px;
}
.cityip_item:hover {
	border: 1px solid #cccccc;
}

@media (max-width: 799px) {
	.cityip_item { width: 165px; }
}
@media (max-width: 599px) {
	.cityip_item { width: 155px; }
}

/* form cityip end */

/* footer */

.t433__descr {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}
.t433__gallery {
	flex-wrap: wrap;
	gap: 25px;
	justify-content: flex-start;
	margin-top: 40px;
}
.footer-gallery-item {
	border: 1px solid #dbdbdb;
	border-radius: 10px;
	display: block;
	height: 130px;
	overflow: hidden;
	width: 130px;
}
.footer-gallery-item img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

@media (max-width: 1200px) {
	.t433__gallery { gap: 20px; }
	.footer-gallery-item { height: 100px; width: 100px; }
}
@media (max-width: 400px) {
	.t433__gallery { gap: 15px; }
	.footer-gallery-item { height: 94px; width: 94px; }
}

/* footer end */