/**
 * Ал-Хорс — все стили темы в одном файле
 */

*,
*::before,
*::after {
	box-sizing: border-box;
}

* {
	font-family: 'Roboto', sans-serif;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	padding: 0;
	color: #1c1c1c;
	background: #fff;
	line-height: 1.4;
}

img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: middle;
}

a {
	color: inherit;
	text-decoration: none;
}

ul {
	margin: 0;
	padding: 0;
}

.site ul {
	margin: 0 0 1rem;
	padding-left: 40px;
	list-style: disc;
}

.site ul li {
	margin: 0;
}

h1 {
	font-size: 2.5rem;
	font-weight: 600;
	line-height: 1.2;
	margin-top: 0;
	margin-bottom: 0.5rem;
}

.page-template-layout-product .container.site > h1 {
	text-align: center;
}

h2 {
	font-size: 2.3rem;
	line-height: 1.2;
	text-align: center;
	font-weight: 700;
}

button {
	font-family: inherit;
}

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

.container {
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
}

@media (min-width: 1200px) {
	.container {
		padding-left: 0;
		padding-right: 0;
	}
}

.breadcrumbs {
	margin-bottom: 20px;
}

.breadcrumbs a {
	color: rgba(183, 100, 34, 1);
}

/* ========== Кнопка «наверх» ========== */
#totop {
	position: fixed;
	left: 84px;
	bottom: 30px;
	color: #1A87C5;
	font-size: 4em;
	cursor: pointer;
	display: none;
	z-index: 90;
}

#totop:hover {
	color: #0056B3;
	transition: .3s;
	transform: scale(1.1);
}

/* ========== Cookie ========== */
.cookie-wrapper {
	max-width: 540px;
	padding: 20px;
	text-align: center;
	background-color: #fff;
	border: 2px solid #2B2835;
	position: fixed;
	bottom: 20px;
	margin: 0 auto;
	left: 50%;
	transform: translateX(-50%);
	z-index: 999;
}

.cookietext {
	padding: 0;
	margin: 0;
	color: #2b2835;
}

.cookietext a {
	color: #1A87C5;
	text-decoration: underline;
}

#cookiebutton {
	margin-top: 10px;
	background-color: #1A87C5;
	color: #fff;
	border: 0;
	padding: 8px 20px;
	cursor: pointer;
	font-size: 16px;
}

#cookiebutton:hover {
	background-color: #0056b3;
}

/* ========== exform: popup «Заказать звонок» и виджет ========== */
.exform-wrapper.widget {
	padding: 60px !important;
	max-width: 902px !important;
}

.exform-wrapper.widget .exform-header {
	text-align: center !important;
	margin-bottom: 40px !important;
	font-family: 'Roboto', sans-serif !important;
	font-size: 36px !important;
	font-weight: 700 !important;
	line-height: 120% !important;
	color: rgba(28, 28, 28, 1) !important;
	text-transform: none !important;
}

.exform-wrapper.widget .form-body {
	margin: 0 !important;
	max-width: 100% !important;
}

.exform-wrapper.widget .form-body input[type='text'],
.exform-wrapper.widget .form-body textarea {
	border: 1px solid rgba(217, 217, 217, 1);
	border-radius: 100px;
	font-family: 'Roboto', sans-serif;
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
	height: 53px;
}

.exform-wrapper.widget .form-body input[type='text']::placeholder {
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	font-weight: 400;
}

.exform-wrapper.widget .form-body .input-item {
	margin-bottom: 40px !important;
}

.widget .form-body .two_block {
	gap: 20px;
}

.form_title {
	margin-bottom: 10px;
	color: rgba(28, 28, 28, 1);
	font-family: 'Roboto', sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 140%;
}

.widget .form-body .communication_options_block_img {
	margin-right: 10px;
}

.widget .form-body .communication_options_block_title {
	color: rgba(28, 28, 28, 1);
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
}

.form_bottom {
	display: flex;
	width: 100%;
	align-items: flex-start;
	justify-content: space-between;
}

.form_bottom .policy {
	display: flex;
	max-width: 590px;
	margin: 0;
}

.form_bottom .policy label {
	color: rgba(28, 28, 28, 1);
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 140%;
	text-align: left;
}

.form_bottom .policy a {
	color: rgba(28, 28, 28, 1);
}

.send-btn {
	border: none;
	border-radius: 100px;
	background: rgba(183, 100, 34, 1);
	text-align: center;
	padding: 16px 40px;
	color: rgba(255, 255, 255, 1);
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	font-weight: 600;
	transition: all .3s;
	cursor: pointer;
}

.send-btn:hover {
	background: rgba(28, 28, 28, 1);
}

.widget .form-body .communication_options_block_wrap {
	margin-bottom: 40px;
}

.widget .form-body .communication_options_block {
	align-items: center;
	gap: 0;
}

.widget .form-body .communication_options_block input[type=checkbox] {
	margin-left: 10px;
}

.widget input[type=checkbox] {
	margin-top: 3px;
	display: block;
}

.exform-wrapper.widget .close-btn {
	width: 30px !important;
	height: 30px;
	position: absolute;
	top: 40px;
	right: 40px;
	background: url('/exform/imgs/close.svg') no-repeat;
	background-size: 100%;
	border: none;
	cursor: pointer;
	padding: 0;
}

.exform-wrapper.widget .close-btn:focus {
	outline: none;
}

.exform-wrapper.callback_popup {
	max-width: 594px !important;
	padding: 60px !important;
}

.exform-wrapper.callback_popup .close-btn {
	width: 30px !important;
	height: 30px;
	background-image: url(../img/close.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-color: transparent;
	border: 0;
	top: 40px !important;
	right: 40px !important;
	padding: 0;
	cursor: pointer;
}

.exform-wrapper.callback_popup form .form-body {
	margin-top: 40px;
	margin-bottom: 0;
}

.exform-wrapper.callback_popup .exform-header {
	color: rgba(28, 28, 28, 1) !important;
	font-size: 36px !important;
	font-weight: 700 !important;
	line-height: 120% !important;
	font-family: 'Roboto', sans-serif !important;
	text-transform: none !important;
}

.exform-wrapper.callback_popup form input[type='text'] {
	height: 53px;
	color: rgba(28, 28, 28, 1);
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
	border: 1px solid rgba(217, 217, 217, 1);
	border-radius: 100px;
}

.exform-wrapper.callback_popup form input[type='text']::placeholder {
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
}

.exform-wrapper.callback_popup .policy {
	margin-top: 20px;
	max-width: 100%;
	display: flex;
	text-align: left;
}

.exform-wrapper.callback_popup .policy label {
	color: rgba(28, 28, 28, 1);
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 140%;
    margin-bottom: .5rem;
}

.exform-wrapper.callback_popup .send-btn {
	border: none;
	width: 100%;
	padding-top: 16px;
	padding-bottom: 16px;
	text-align: center;
	border-radius: 100px;
	background: rgba(183, 100, 34, 1);
	color: rgba(255, 255, 255, 1);
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	font-weight: 600;
	line-height: 21px;
	transition: all .3s;
}

.exform-wrapper.callback_popup .send-btn:hover {
	background: rgba(28, 28, 28, 1);
}

.exform-wrapper.callback_popup input[type=checkbox] {
	margin-top: 3px;
}

/* Плавающая кнопка формы — как на эталоне */
.btn_fix_aweb {
	background: rgba(183, 100, 34, 1) !important;
	right: 8% !important;
}

.btn_fix_aweb:hover {
	cursor: pointer;
	transition: all .3s;
	background: rgba(28, 28, 28, 1) !important;
}

.btn_fix_aweb_btn_1 {
	cursor: pointer;
}

/* ========== Шапка ========== */
.header {
	align-items: center;
	padding: 30px 0;
}

.header_top {
	display: flex;
	justify-content: space-between;
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
	align-items: center;
}

.header_logo {
	display: flex;
	align-items: center;
}

.header_logo:hover {
	text-decoration: none;
}

.header_logo img {
	margin-right: 10px;
}

.header_logo_text-top {
	margin-bottom: 10px;
	font-size: 18px;
	line-height: 140%;
	color: rgba(28, 28, 28, 1);
}

.header_logo_text-top span {
	font-weight: 700;
}

.header_logo_text-bottom {
	color: rgba(183, 100, 34, 1);
	font-size: 16px;
	line-height: 140%;
}

.header_address {
	padding-left: 30px;
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
	background-repeat: no-repeat;
	background-image: url(../img/icon-marker.svg);
	background-position: top 2.5px left 4px;
}

.header_contacts a {
	display: block;
	padding-left: 26px;
	background-repeat: no-repeat;
	background-position: left center;
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	font-weight: 600;
	line-height: 21px;
	transition: all .3s;
    margin-top: 10px;
}

.header_email {
	margin-bottom: 10px;
	background-image: url(../img/icon-email.svg);
}

.header_phone {
	background-image: url(../img/icon-phone.svg);
	color: #808080;
	font-size: 1.13em;
	text-decoration: none;
}

.header_contacts .header_phone {
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
}

.header_contacts a:hover {
	color: #818181;
	text-decoration: none;
}

.header_calculate {
	color: rgba(183, 100, 34, 1);
	font-size: 18px;
	font-weight: 700;
	line-height: 21px;
	text-decoration-line: underline;
}

.header_calculate:hover {
	text-decoration: none;
	color: rgba(183, 100, 34, 1);
}

.header_button {
	padding: 16px 40px;
	text-align: center;
	color: rgba(255, 255, 255, 1);
	font-size: 18px;
	font-weight: 600;
	border-radius: 100px;
	background: rgba(183, 100, 34, 1);
	transition: all .3s;
	cursor: pointer;
}

.header_button:hover {
	color: rgba(255, 255, 255, 1);
	background: rgba(28, 28, 28, 1);
}

/* ========== Меню ========== */
.menu1 {
	margin-bottom: 20px;
	font-size: 1em;
	font-weight: 600;
}

.menu1 .navbar {
	padding: 0 20px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

.navbar-toggler {
	display: none;
	margin-left: auto;
	margin-right: 0;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	align-items: center;
	justify-content: center;
}

.navbar-toggler__icon,
.navbar-toggler__icon::before,
.navbar-toggler__icon::after {
	display: block;
	width: 24px;
	height: 2px;
	background: #1c1c1c;
	position: relative;
	transition: transform .2s ease, opacity .2s ease;
}

.navbar-toggler__icon::before,
.navbar-toggler__icon::after {
	content: '';
	position: absolute;
	left: 0;
}

.navbar-toggler__icon::before {
	top: -7px;
}

.navbar-toggler__icon::after {
	top: 7px;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler__icon {
	background: transparent;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler__icon::before {
	top: 0;
	transform: rotate(45deg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler__icon::after {
	top: 0;
	transform: rotate(-45deg);
}

#navbarNav {
	border-radius: 100px;
	background: rgba(230, 234, 238, 1);
	width: 100%;
}

#navbarNav .navbar-nav {
	width: 1440px;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	justify-content: space-between;
	display: flex;
	flex-wrap: nowrap;
	list-style: none;
	padding: 0 20px;
	align-items: center;
	gap: 8px;
}

.menu1 .nav-link,
.menu1 .navbar-nav > .menu-item > a {
	display: block;
	text-transform: none;
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	line-height: 21px;
	padding: 20px 0;
	font-weight: 400;
	transition: all .3s;
	white-space: nowrap;
}

.menu1 .nav-link:hover,
.menu1 .navbar-nav > .menu-item > a:hover {
	color: #818181 !important;
}

.menu1 .current-menu-item > a {
	color: rgba(28, 28, 28, 1);
}

.nav-item {
	color: dimgray;
	padding-left: 3px;
	padding-right: 3px;
	position: relative;
	list-style: none;
}

/* Подменю 2–3 уровня (на будущее; в шапке сейчас не используются) */
.menu1 .sub-menu {
	list-style: none;
	margin: 0;
	padding: 10px 0;
	min-width: 220px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 8px 24px rgba(28, 28, 28, 0.12);
}

.menu1 .navbar-nav > .menu-item > .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 100;
	display: none;
}

.menu1 .navbar-nav > .menu-item:hover > .sub-menu,
.menu1 .navbar-nav > .menu-item.focus > .sub-menu {
	display: block;
}

.menu1 .sub-menu .menu-item {
	padding: 0;
}

.menu1 .sub-menu .menu-item > a {
	display: block;
	padding: 10px 18px;
	font-size: 16px;
	font-weight: 400;
	line-height: 21px;
	color: #1c1c1c;
	white-space: nowrap;
}

.menu1 .sub-menu .menu-item > a:hover {
	color: rgba(183, 100, 34, 1);
	background: rgba(230, 234, 238, 0.6);
}

.menu1 .sub-menu .sub-menu {
	position: absolute;
	top: 0;
	left: 100%;
	margin-left: 4px;
	display: none;
}

.menu1 .sub-menu .menu-item:hover > .sub-menu,
.menu1 .sub-menu .menu-item.focus > .sub-menu {
	display: block;
}

.menu1 .menu-item-has-children > a {
	position: relative;
}

/* ========== Футер ========== */
.footer {
	border-radius: 20px;
	background: rgba(230, 234, 238, 1);
	max-width: 97.917%;
	margin: 0 auto 20px;
	padding-top: 60px;
	padding-bottom: 60px;
	margin-top: 100px;
}

.footer_wrapper {
	display: flex;
	justify-content: space-between;
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
}

.footer_column:first-child {
	max-width: 23%;
}

.footer_column:nth-child(2) {
	max-width: 15%;
}

.footer_column:last-child {
	max-width: 54%;
}

.footer_logo {
	display: flex;
	margin-bottom: 10px;
}

.footer_logo_text {
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
}

.footer_logo_text span {
	font-weight: 700;
}

.footer_logo img {
	margin-right: 10px;
}

.footer_slogan {
	margin-bottom: 40px;
	color: rgba(183, 100, 34, 1);
	font-size: 16px;
	font-weight: 400;
	line-height: 140%;
}

.footer .header_email {
	margin-bottom: 40px;
}

.footer .header_phone {
	margin-bottom: 20px;
}

.footer .header_address {
	margin-bottom: 20px;
}

.footer_copyright {
	margin-top: 40px;
	max-width: 210px;
	color: rgba(44, 44, 44, 1);
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
	opacity: 0.6;
}

.footer_menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer_menu li {
	margin-bottom: 20px;
}

.footer_menu li:last-child {
	margin-bottom: 40px;
}

.footer_menu li a {
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	font-weight: 400;
	line-height: 21px;
}

.footer_menu li a:hover {
	color: rgba(28, 28, 28, 1);
	text-decoration: underline;
}

.footer_title {
	color: rgba(28, 28, 28, 1);
	font-size: 20px;
	font-weight: 700;
	line-height: 23px;
	margin-bottom: 20px;
}

.footer_title a,
.footer_title a:hover {
	color: #212529;
	text-decoration: none;
}

.footer_column:last-child ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	gap: 20px 40px;
	margin-bottom: 40px;
	padding: 0;
}

.footer_column:last-child ul:last-child {
	margin-bottom: 0;
}

.footer_menu2 li a {
	color: inherit;
}

.footer_menu2 li a:hover {
	color: inherit;
	text-decoration: underline;
}

.footer_politics {
	margin-top: 100px;
}

.footer_politics .footer_copyright {
	margin-top: 0;
	max-width: none;
	opacity: 0.6;
}

/* Placeholder контента до вёрстки главной */
.page-stub {
	max-width: 1440px;
	margin: 40px auto 80px;
	padding: 0 20px;
	text-align: center;
	color: #818181;
}

/* ========== Адаптив ========== */
@media (max-width: 1544px) {
	.header_top {
		max-width: 95.313%;
	}

	#navbarNav .navbar-nav {
		width: 95.313%;
	}

	.header_logo_text-top {
		font-size: 16px;
	}

	.header_logo_text-bottom {
		font-size: 14px;
	}

	.header_address {
		font-size: 16px;
	}

	.header_contacts a {
		font-size: 16px;
	}

	.header_calculate {
		font-size: 16px;
	}

	.main_slide_wrapper {
		max-width: 95.313%;
	}

	.steps {
		max-width: 97.917%;
	}

	.faq__container {
		max-width: 97.917%;
	}

	.clients_wrapper {
		max-width: 97.917%;
	}
}

@media (max-width: 1399px) {
	.footer_column:first-child {
		margin-left: 20px;
	}

	.footer_column:last-child {
		margin-right: 20px;
	}

	.footer_logo_text {
		font-size: 16px;
	}

	.footer_slogan {
		font-size: 14px;
	}

	.footer_menu li a {
		font-size: 16px;
	}

	.our-projects__wrap {
		grid-template-columns: repeat(2, calc(50% - 20px));
	}

	.main-about__bottom {
		grid-template-columns: 100%;
	}
}

@media (max-width: 1199px) {
	.header_top {
		flex-wrap: wrap;
	}

	.header_calculate {
		width: 50%;
	}

	.btn_fix_aweb {
		right: 5px !important;
	}

	.navbar-toggler {
		display: flex;
		margin: 0 0 12px auto;
	}

	.menu1 .navbar {
		justify-content: flex-end;
		padding: 0 2.3435%;
	}

	#navbarNav {
		border-radius: 0;
		display: none;
		width: 100%;
	}

	#navbarNav.is-open {
		display: block;
	}

	#navbarNav .navbar-nav {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
		padding: 10px 20px 20px;
	}

	.menu1 .nav-link,
	.menu1 .navbar-nav > .menu-item > a {
		padding: 14px 0;
		border-bottom: 1px solid rgba(28, 28, 28, 0.08);
	}

	/* На мобиле подменю раскрываются кликом */
	.menu1 .navbar-nav > .menu-item > .sub-menu {
		position: static;
		box-shadow: none;
		border-radius: 0;
		background: transparent;
		padding: 0 0 0 16px;
		display: none;
		min-width: 0;
	}

	.menu1 .navbar-nav > .menu-item.is-submenu-open > .sub-menu {
		display: block;
	}

	.menu1 .sub-menu .sub-menu {
		position: static;
		margin-left: 0;
		padding-left: 16px;
		box-shadow: none;
	}

	.footer_wrapper {
		flex-wrap: wrap;
	}

	.footer_column:last-child {
		max-width: 100%;
		margin-top: 30px;
	}

	.footer_column:first-child {
		max-width: 50%;
	}

	.footer_column:nth-child(2) {
		max-width: 50%;
		margin-right: auto;
	}
}

@media (max-width: 1169px) {
	#totop {
		opacity: 0;
		pointer-events: none;
	}
}

@media (max-width: 979px) {
	.header_calculate {
		width: auto;
	}

	.sale {
		flex-direction: column;
	}

	.sale_left {
		width: 100%;
		background-position: center top;
		height: 252px;
	}

	.sale_right {
		padding: 20px;
	}

	.sale_title {
		margin-bottom: 20px;
		font-size: 28px;
	}

	.steps_wrapper {
		flex-wrap: wrap;
		gap: 20px;
		text-align: center;
	}

	.steps_item {
		width: 33%;
		margin: 0 auto;
	}

	.clients_wrapper {
		flex-wrap: wrap;
		gap: 20px;
	}

	.clients_item {
		width: 100%;
	}

	.our-projects__wrap {
		grid-template-columns: 100%;
		padding: 0 20px;
	}

	.our-projects__left {
		max-width: 100%;
	}

	.our-projects__right {
		grid-row: 2;
		grid-column: 1;
		height: auto;
	}

	.our-projects__slider a img {
		aspect-ratio: 1/1;
	}

	.our-projects-controls {
		grid-row: 3;
		justify-content: center;
	}

	.main-about-adv {
		grid-template-columns: 100%;
	}

	.main-about-adv__item {
		grid-template-columns: 100px 1fr;
	}
}

@media (max-width: 767px) {
	.cookie-wrapper {
		width: 95%;
		padding: 10px;
	}

	.exform-wrapper.callback_popup {
		padding: 30px !important;
	}

	.exform-wrapper.callback_popup .close-btn {
		top: 10px !important;
		right: 10px !important;
	}

	.header_logo {
		margin-bottom: 20px;
	}

	.header_button {
		margin-top: 20px;
	}

	.footer {
		padding-top: 30px;
	}

	.footer_column {
		width: 100%;
		max-width: 100% !important;
		padding: 0 20px;
	}

	.footer_column:nth-child(2) {
		margin-top: 30px;
	}

	.footer_column:first-child {
		margin-left: 0;
	}

	.footer iframe {
		display: block;
		margin: 0 auto;
	}

	.footer_copyright {
		margin: 20px auto 0;
	}

	.footer ul {
		text-align: center;
	}

	.footer_politics {
		margin-top: 40px;
		text-align: center;
	}

	.steps_item {
		width: 100%;
	}

	.faq-item,
	.faq-item:not(:last-child) {
		margin-bottom: 20px !important;
	}

	.faq__wrap {
		gap: 0;
	}

	.faq_title {
		font-size: 30px;
	}

	.faq__container {
		padding: 0 20px;
	}
}

@media (max-width: 479px) {
	.header_logo_text-top {
		font-size: 14px;
	}

	.header_logo_text-bottom {
		font-size: 12px;
	}

	.header_address {
		max-width: 205px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 20px;
	}

	.header_contacts {
		max-width: 211px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 20px;
	}

	.header_calculate {
		width: 100%;
		text-align: center;
	}

	.header_button {
		margin-left: auto;
		margin-right: auto;
	}

	.exform-wrapper.callback_popup .exform-header {
		font-size: 26px !important;
	}

	.exform-wrapper.callback_popup .form-body .input-item {
		padding: 0;
	}

	.exform-wrapper.callback_popup .policy {
		margin-top: 0;
	}

	.btn_fix_aweb {
		right: 5px !important;
		    z-index: 5;
	}
	._orientationRight__zbLg8 .button__HAoex{
		margin-right: 5px !important;
	}
}

/* ========== Главная (блоки) ========== */
.btn-grey {
	cursor: pointer;
	width: fit-content;
	height: fit-content;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	transition: ease all .3s;
	font-weight: 600;
	font-size: 18px;
	color: #1c1c1c;
	border-radius: 100px;
	padding: 16px 40px;
	background: #b8c8d5;
}

.btn-grey:hover {
	box-shadow: 0 0 30px 0 rgba(255, 255, 255, 0.25);
	background: #1c1c1c;
	text-decoration: none;
	color: #fff;
}

.main_slide {
	background-repeat: no-repeat;
	background-position: center top;
	background-image: url(../img/bg-main-slide.png);
	padding-top: 286px;
	padding-bottom: 286px;
	border-radius: 20px;
	max-width: 97.917%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 100px;
}

.main_slide_wrapper {
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
}

@media (max-width: 1544px) {
	.main_slide_wrapper {
		max-width: 95.313%;
	}
}

.main_slide_container {
	border-radius: 20px;
	background: rgba(255, 255, 255, 1);
	padding: 40px;
	max-width: 840px;
}

.main_slide_title {
	margin-bottom: 60px;
	font-size: 42px;
	font-weight: 700;
	line-height: 120%;

}

.main_slide_title span {
	color: rgba(183, 100, 34, 1);
}

.main_slide_container ul {
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	font-weight: 400;
	line-height: 200%;
	margin: 0;
	padding-left: 40px;
	list-style: disc;
}

.main_slide_buttons {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.main_slide_buttons .exform {
	border-radius: 100px;
	background: rgba(183, 100, 34, 1);
	font-weight: 600;
	text-align: center;
	padding: 16px 40px;
	font-size: 18px;
	line-height: 21px;
	color: #fff;
	transition: all .3s;
	z-index: 1;
}

.main_slide_buttons .exform:hover {
	cursor: pointer;
	background: rgba(28, 28, 28, 1);
}

.main_slide_buttons a {
	padding: 16px 40px 16px 60px;
	border-radius: 0 100px 100px 0;
	text-decoration: underline;
	font-size: 16px;
	color: #fff;
	font-weight: 600;
	background: rgba(28, 28, 28, 1);
	margin-left: -25px;
}

.main_slide_buttons a:hover {
	text-decoration: none;
}

.main_slide_middle {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: flex-start;
	margin-bottom: 60px;
	gap: 10px;
}

.sale {
	border-radius: 20px;
	background: rgba(230, 234, 238, 1);
	max-width: 97.917%;
	margin-left: auto;
	margin-right: auto;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	overflow: hidden;
	margin-bottom: 100px;
}

.sale_left {
	background-repeat: no-repeat;
	background-position: right top;
	background-image: url(../img/sale.png);
	width: 1164px;
}

.sale_right {
	padding-left: 40px;
	padding-top: 60px;
	padding-bottom: 60px;
}

.sale_title {
	margin-bottom: 40px;
	color: var(--Text, rgba(28, 28, 28, 1));
	font-size: 36px;
	font-weight: 700;
	line-height: 42px;
}

.sale p {
	margin: 0;
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
	max-width: 456px;
}

@media (max-width: 767px) {
	.main_slide {
		padding-top: 30px;
		padding-bottom: 30px;
		max-width: 93.8%;
		margin-bottom: 30px;
	}

	.main_slide_title {
		font-size: 22px;
		margin-bottom: 20px;
	}

	.main_slide_container {
		padding: 20px;
	}

	.main_slide_container ul {
		padding-left: 20px;
		font-size: 16px;
	}

	.main_slide_middle img {
		display: none;
	}

	.main_slide_middle {
		margin-bottom: 20px;
	}

	.main_slide_buttons {
		flex-direction: column;
		gap: 20px;
	}

	.main_slide_buttons .exform {
		font-size: 14px;
	}

	.main_slide_buttons a {
		margin-left: 0;
		font-size: 14px;
		padding: 16px 20px;
		border-radius: 100px;
		text-align: center;
	}

	.sale {
		max-width: 93.8%;
		margin-bottom: 30px;
	}
}

.steps {
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
	padding: 80px 0;
}

.steps_title {
	text-align: center;
	margin-bottom: 40px;
	color: rgba(28, 28, 28, 1);
	font-size: 36px;
	font-weight: 700;
	line-height: 120%;
}

.steps_wrapper {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}

.steps_item {
	width: 17.778%;
}

.steps_item_number {
	margin-bottom: 20px;
	color: rgba(184, 200, 213, 1);
	font-size: 50px;
	font-weight: 700;
	line-height: 70%;
}

.steps_item p {
	margin: 0;
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
}

.steps_item a {
	display: block;
	margin-top: 10px;
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	font-weight: 600;
	line-height: 21px;
}

.steps_form {
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
	display: block;
	width: 302px;
	padding-top: 16px;
	padding-bottom: 16px;
	text-align: center;
	border-radius: 100px;
	background: rgba(183, 100, 34, 1);
	transition: all .3s;
	color: rgba(255, 255, 255, 1);
	font-size: 18px;
	font-weight: 600;
	line-height: 21px;
}

.steps_form:hover {
	background: rgba(28, 28, 28, 1);
	cursor: pointer;
}


.faq__container {
	max-width: 1440px;
	width: 100%;
	margin: 0 auto 100px;

}

.faq_title {
	margin-bottom: 40px;
	text-align: center;
	color: rgba(44, 44, 44, 1);
	font-size: 36px;
	font-weight: 700;
	line-height: 120%;
}

.faq__wrap {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.faq__title {
	font-size: 40px;
	font-weight: 600;
	line-height: 100%;
}

.faq__desc {
	margin-top: 30px;
	color: #212121;
	font-size: 18px;
	line-height: 140%;
}

.faq__desc span {
	cursor: pointer;
	color: #A95094;
	text-decoration: underline;
	transition: 200ms linear;
}

.faq__desc span:hover {
	text-decoration: none;
}

.faq-item {
	border-radius: 40px;
	background: rgba(230, 234, 238, 1);

}

.faq_column {
	width: 48.612%;
}

.faq-item:not(:last-child) {
	margin-bottom: 40px;
}

.faq-item__head {
	color: rgba(28, 28, 28, 1);
	font-size: 20px;
	font-weight: 700;
	display: flex;
	justify-content: space-between;
	padding: 16px 20px;
	align-items: center;
}

.faq-item__head:hover {
	cursor: pointer;
}

.faq-item__head.active .faq-item__btn {
	transform: rotate(90deg);
}

.faq-item__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	border: none;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: rgba(183, 100, 34, 1);
	transition: 200ms linear;
}

.faq-item__btn.active {
	transform: rotate(45deg)
}

.faq-item__desc {
	box-sizing: content-box;
	max-height: 0px;
	overflow: hidden;
	transition: 300ms linear;
	color: #212121;
	font-size: 18px;
	font-weight: 400;
	line-height: normal;
}

.faq-item__desc > div {
	padding: 20px;
}

.clients_title {
	text-align: center;
	margin-bottom: 40px;
	color: rgba(44, 44, 44, 1);
	font-size: 36px;
	font-weight: 700;
	line-height: 120%;
}

.clients_wrapper {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 100px;
}

.clients_item {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 31.459%;
	border-radius: 20px;
	background: rgba(230, 234, 238, 1);
	padding-top: 40px;
	padding-bottom: 40px;
}

.page-sale h1 {
	text-align: center;
	margin-bottom: 60px;
}

.sale_item {
	max-width: 700px;
	border-radius: 20px;
	background: rgba(230, 234, 238, 1);
	overflow: hidden;
}

.sale_item img {
	display: block;
	width: 100%;
	height: auto;
}

.sale_item_bottom {
	padding: 40px;
}

.sale_item_title {
	margin-bottom: 20px;
	color: rgba(28, 28, 28, 1);
	font-size: 28px;
	font-weight: 700;
	line-height: 33px;
}

.sale_item p {
	color: var(--Text, rgba(28, 28, 28, 1));
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
}

.contacts_wrapper {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	gap: 60px;
	margin-bottom: 40px;
}

.contacts_subtitle {
	margin-bottom: 20px;
	color: rgba(28, 28, 28, 1);
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
}

.contacts_column a {
	display: block;
	margin-bottom: 10px;
}

.profit {
	height: 240px;
	background-color: tomato;
	display: block;
}

.profits {
	height: 240px;
	background-color: tomato;
	transition: .3s;
}

.profits:hover {
	transform: scale(1.7);
	transition: .3s;
	z-index: 99;
}

.pd30u {
	padding-top: 50px;
}

.pd30d {
	padding-bottom: 50px;
}

.projects a,
.calc.projects a {
	border-radius: 20px;
}

.calc.projects .row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	gap: 0;
}

.calc.projects .col-md-3 {
	flex: 0 0 25%;
	max-width: 25%;
	display: block;
}

.calc.projects .col-md-1 {
	flex: 0 0 8.333%;
	max-width: 8.333%;
}

/* Ряды проектов внутри .site (страница /vorota/ и др. без .calc.projects) */
.site .row.justify-content-center {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	margin-left: 0;
	margin-right: 0;
}

.site .row.justify-content-center > .col-md-3,
.site .row.justify-content-center > a.col-md-3 {
	flex: 0 0 25%;
	max-width: 25%;
	display: block;
}

.site .row.justify-content-center > .col-md-1 {
	flex: 0 0 8.333%;
	max-width: 8.333%;
}

.site .row.rolstavni-projects {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	margin-left: 0;
	margin-right: 0;
}

.site .rolstavni-projects .col-md-3 {
	flex: 0 0 25%;
	max-width: 25%;
}

.site .rolstavni-projects .col-md-1 {
	flex: 0 0 8.333%;
	max-width: 8.333%;
}

@media (max-width: 767px) {
	.site .rolstavni-projects.pd30u {
		padding-top: 0;
	}

	.site .rolstavni-projects .col-md-3 {
		flex: 0 0 50%;
		max-width: 50%;
	}

	.site .rolstavni-projects .col-md-1 {
		flex: 0 0 100%;
		max-width: 100%;
		height: 0;
		overflow: hidden;
		padding: 0;
		margin: 0;
	}
}

.btn-border {
	outline: none;
	border: none;
	text-decoration: none !important;
	background: none;
	cursor: pointer;
	transition: 200ms linear;
	display: flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	border: 2px solid #B76422;
	border-radius: 100px;
	padding: 14px 38px;
	font-weight: 600;
	font-size: 18px;
	line-height: 21px;
	color: #B76422;
}

.btn-border:hover {
	background: #1C1C1C;
	border-color: #1C1C1C;
	color: #fff;
}

.our-projects {
	padding: 20px;
}

.our-projects__wrap {
	display: grid;
	grid-template-columns: 1fr minmax(640px, 840px);
	grid-template-rows: 1fr auto;
	align-items: stretch;
	grid-gap: 40px;
	background: #E6EAEE;
	border-radius: 20px;
	padding-left: 40px;
}

.our-projects__left {
	grid-column: 1;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	gap: 40px;
	padding-top: 60px;
	max-width: 780px;
	margin-left: auto;
}

.our-projects__title {
	font-weight: 700;
	font-size: 36px;
	line-height: 120%;
	color: #1C1C1C;
}

.our-projects-adv {
	display: flex;
	flex-direction: column;
	gap: 40px;
	font-size: 18px;
	line-height: 140%;
	color: #1C1C1C;
}

.our-projects-adv__item {
	display: grid;
	grid-template-columns: 40px auto 1fr;
	align-items: center;
	gap: 20px;
}

.our-projects-adv__item img:nth-child(3) {
	margin-top: -5px;
	margin-bottom: -5px;
	margin-left: -15px;
}

.our-projects__right {
	grid-column: 2;
	grid-row: 1 /3;
}

.our-projects__slider {
	width: 100%;
	height: 100%;
}

.our-projects__slider .slick-list {
	width: 100%;
	height: 100%;
	border-radius: 20px;
}

.our-projects__slider .slick-track {
	height: 100%;
}

.our-projects__slider .slick-slide * {
	height: 100%;
}

.our-projects__slider a {
	display: block;
}

.our-projects__slider a img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.our-projects-controls {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 40px;
	padding-bottom: 60px;
}

.our-projects-controls__btns {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
}

.slick-dots {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.slick-dots li {
	width: 10px;
	height: 10px;
	border-radius: 50px;
	background: #1C1C1C;
	opacity: 0.5;
	cursor: pointer;
	transition: all ease 0.3s;
	list-style: none;
	overflow: hidden;
	position: relative;
	padding: 0;
	margin: 0;
	line-height: 0;
	font-size: 0;
}

.slick-dots li::marker {
	content: none;
	display: none;
}

.slick-dots li.slick-active {
	width: 80px;
	opacity: 1;
}

.slick-dots button,
.slick-dots span {
	display: none !important;
}

.slick-dots button::before,
.slick-dots button::after {
	content: none !important;
	display: none !important;
}

.slick-arrow {
	outline: none !important;
	border: none !important;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: #B8C8D5;
	font-size: 0px;
	background-image: url("data:image/svg+xml,%3Csvg width='10' height='20' viewBox='0 0 10 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.26709 1L1.26709 10L8.26709 19' stroke='%231C1C1C' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 10px 20px;
}

.slick-arrow:hover {
	opacity: 0.5;
}

.slick-arrow.slick-next {
	transform: rotate(180deg);
}

.main-about {
	padding: 20px;
}

.main-about__inner {
	position: relative;
	padding: 232px 20px 60px 20px;
	background-image: url(../img/main-about-bg.png);
	background-position: center;
	background-size: cover;
	border-radius: 20px;
	overflow: hidden;
}

.main-about__inner:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background-color: #000;
	opacity: 0.4;
}

.main-about__wrap {
	position: relative;
	z-index: 5;
	background: #FFFFFF;
	max-width: 1440px;
	width: 100%;
	margin: 0 auto;
	border-radius: 20px;
	padding: 40px;
}

.main-about__title {
	margin-bottom: 40px;
	font-weight: 700;
	font-size: 36px;
	line-height: 120%;
	color: #1C1C1C;
}

.main-about__text {
	margin-bottom: 40px;
	font-size: 18px;
	line-height: 140%;
	color: #1C1C1C;
}

.main-about__text p {
	margin-bottom: 10px;
}

.main-about__text p:last-child {
	margin-bottom: 0;
}

.main-about__bottom {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	grid-gap: 36px;
}

.main-about-adv {
	display: grid;
	grid-template-columns: repeat(3, auto);
	align-items: center;
	grid-gap: 36px;
}

.main-about-adv__item {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	grid-gap: 10px;
}

.main-about-adv__numb {
	font-weight: 700;
	font-size: 50px;
	line-height: 120%;
	color: #B76422;
	text-align: center;
}

.main-about-adv__text {
	font-size: 18px;
	line-height: 140%;
	color: #1C1C1C;
}

@media (max-width: 1180px) {
	.faq__wrap {
		grid-gap: 50px;
	}
}

@media (max-width: 991px) {
	.faq__wrap {
		grid-template-columns: 100%;
	}

	.faq__left {
		text-align: center;
	}

	.faq__desc {
		max-width: 380px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media (max-width: 768px) {
	.faq__title {
		font-size: 30px;
	}

	.faq__desc {
		max-width: 350px;
		font-size: 16px;
	}

	.faq-item__head {
		padding: 15px 20px;
		font-size: 18px;
	}

	.faq-item__desc {
		font-size: 14px;
	}

	.faq-item__desc > div {
		padding: 0 20px 15px 20px;
	}
}


.partners {
	max-width: 1440px;
	width: 100%;
	margin: 0 auto;
	padding: 80px 0;
}

.partners__wrap {
	display: flex;
	align-items: stretch;
	justify-content: center;
	gap: 30px;
}

.partners-item {
	width: calc((100% - 60px) / 3);
	display: flex;
	align-items: center;
	justify-content: center;
	background: #E6EAEE;
	padding: 40px;
	border-radius: 20px;
}

.partners-item img {
	height: 90px;
	width: 100%;
	object-fit: contain;
}

.reviews {
	padding: 20px;
	margin-bottom: 80px;
}

.reviews__outer {
	background: #E6EAEE;
	border-radius: 20px;
	padding: 60px 20px;
}

.reviews__inner {
	max-width: 1440px;
	width: 100%;
	margin: 0 auto;
}

.reviews__wrap {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	align-items: stretch;
	grid-gap: 40px;
}

.reviews__wrap > * {
	width: 100% !important;
}

.reviews__item img {
	width: 100%;
}

@media (max-width: 1200px) {
	.partners {
		padding: 80px 20px;
	}

	.partners-item {
		width: calc((100% - 30px) / 2);
	}

	.reviews__wrap {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.partners-item {
		width: 100%;
	}

	.reviews__wrap {
		grid-template-columns: repeat(1, 1fr);
	}
}

@media (min-width: 1200px) {
	.streets-gate-wrapper {
		padding-left: 0;
		padding-right: 0;
	}
}

.streets-gate-section {
	margin-bottom: 100px;
}

.streets-gate-wrapper {
	overflow: hidden;
}

.streets-gate-inner {
	margin-top: 40px;
}

.streets-gate-slider .slick-slide:not(.slick-active) {
	opacity: 0.6;
	transition: all ease 0.3s;
}

.streets-gate-wrapper * {
	margin-bottom: 0;
}

.streets-gate-header-wrapper {
	display: flex;
	flex-flow: row nowrap;
	gap: 20px;
	justify-content: space-between;
	align-items: center;
}

.streets-gate-controls {
	display: flex;
	flex-flow: wrap;
	gap: 20px;
	flex-shrink: 0;
	align-items: center;
}

.streets-gate-header-wrapper .streets-gate-title {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	text-align: center;
}

.streets-gate-item {
	display: flex;
	flex-flow: column;
	position: relative;
	border-radius: 20px;
	overflow: hidden;
}

.streets-item-image img {
	width: 100%;
	object-fit: cover;
	height: 100%;
	height: 440px;
}

.streets-gate-item-inner {
	position: absolute;
	height: max-content;
	bottom: 20px;
	background: #fff;
	border-radius: 10px;
	padding: 20px;
	display: flex;
	flex-flow: column;
	gap: 40px;
	right: 0;
	left: 0;
	margin-left: 20px;
	margin-right: 20px;
}

.streets-gate-item-top {
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
	gap: 10px;
}

.streets-gate-name {
	font-weight: 700;
	font-size: 20px;
	line-height: 1.4;
	transition: all ease 0.3s;
	color: #1c1c1c;
}

.streets-gate-price {
	font-weight: 400;
	font-size: 20px;
	line-height: 1.4;
	color: #1c1c1c;
}

.btn-gate {
	width: 100%;
	position: relative;
}

.streets-gate-slider .slick-slide {
	margin: 0 40px 0 0;
	width: 452px;
	max-width: 452px;
}

.streets-gate-slider .slick-list {
	margin: 0 -40px 0 0;
}

.streets-gate-dots {
	margin-top: 40px;
}

.streets-gate-item:hover .streets-gate-name {
	color: #b76422;
}

.streets-img-link {
	position: absolute;
	inset: 0;
}

@media (max-width: 1200px) {
	.streets-gate-slider {
		overflow: hidden;
		padding-left: 15px;
		padding-right: 15px;
	}

	.streets-gate-item-inner {
		align-items: center;
	}

	.streets-gate-slider .slick-slide {
		max-width: max-content;
	}

	.btn-gate {
		padding: 15px;
	}
}

@media (min-width: 1200px) {
	.shutters-wrapper {
		padding-left: 0;
		padding-right: 0;
	}
}

.shutters-section {
	margin-bottom: 100px;
}

.shutters-inner {
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
	gap: 40px;
}

.shutters-item {
	flex: 1 1 452px;
}


@media (min-width: 1200px) {
	.different-wrapper {
		padding-left: 0;
		padding-right: 0;
	}
}

.different-section {
	margin-bottom: 100px;
}

.different-inner {
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
	gap: 40px;
}

.different-item {
	flex: 1 1 452px;
}

.about-page-section {
	margin-top: 100px;
	margin-bottom: 100px;
}

.wrap-vrat-cat {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 50px;
}

.just-butt {
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
	display: block;
	width: 302px;
	padding-top: 16px;
	padding-bottom: 16px;
	text-align: center;
	border-radius: 100px;
	background: rgba(183, 100, 34, 1);
	transition: all .3s;
	color: #ffffff;
	font-size: 18px;
	font-weight: 600;
	line-height: 21px;
}

.just-butt:hover {
	background: rgba(28, 28, 28, 1);
	color: #ffffff;
	text-decoration: none;

}

.wrap-vrat-side {
	display: flex;
	gap: 50px;
	margin: 50px 0px;
}

.wrap-vrat-side h2 {
	text-align: left;
	margin-bottom: 30px;
}

.side-right {
	flex-direction: row-reverse;
}

.wrap-vrat-side img {
	/* min-width: 625px; */
	max-width: 625px;
	height: 350px;
}

.streets-gate-title a, .shutters-title a, .footer_title a, .in-vrat-side a {
	color: #212529;
	text-decoration: none;
}

.streets-gate-title a:hover, .shutters-title a:hover, .in-vrat-side a:hover {
	color: #b76422;
	text-decoration: underline;
}

.vrat-side-main {
	flex-direction: row-reverse;
	display: flex;
	gap: 50px;
	margin: 80px 0px;
	justify-content: space-between;
}

.vrat-side-main img {
	width: 800px;

}

.vrat-side-main h2 {
	margin-top: -10px;
	margin-bottom: 30px;
	text-align: left;
}

.vrat-side-main p {
	font-size: 2.3rem;
	line-height: 1.2;
	font-weight: 300;
	margin: 0;
}

.streets-gate-item-inner p,
.streets-gate-item-top p {
	margin: 0;
}

.shutters-section .streets-gate-title,
.shutters-title,
.different-title {
	margin: 0 0 40px;
	text-align: center;
}

.vrat-side-main .in-vrat-side {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.reviews__wrap-new > div {
	width: 450px;
}

.reviews__wrap-new {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 30px;
}

@media screen and (max-width: 900px) {
	.wrap-vrat-cat {
		grid-template-columns: repeat(1, 1fr);
	}

	.wrap-vrat-side, .vrat-side-main {
		flex-wrap: wrap;
	}

	.wrap-vrat-side img, .vrat-side-main img {
		width: 100%;
		height: auto;
	}

	.h1, h1 {
		font-size: 2rem;
	}

	.side-right {
		flex-direction: row;
	}

}

@media screen and (max-width: 500px) {
	.reviews__wrap-new > div {
		width: 100%;
	}
}

.stages h2 {
	padding-bottom: 15px;
}

.stages-gallery {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.stages-gallery-item {
	height: 300px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: #f5f5f5;
}

.stages-gallery-item:hover {
	transform: scale(1.7);
	transition: .3s;
	z-index: 99;
	cursor: pointer;
}

.stages-gallery-item img {
	width: 100%;
	display: block;
}

@media screen and (max-width: 1024px) {
	.stages-gallery {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 768px) {
	.stages-gallery {
		grid-template-columns: repeat(1, 1fr);
	}

	.stages-gallery-item {
		height: 500px;
	}
}

.proplus-price,
.proplus-about {
	margin: 50px 0;
}

.proplus-price {
	text-align: center;
}

.proplus-about h2 {
	padding-bottom: 15px;
}

@media screen and (max-width: 1199px) {
	.proplus-main {
		flex-direction: column;
	}

	.proplus-main img {
		height: auto;
		margin: 0 auto;
		display: block;
	}
}

.streets-gate-name.shutters-name a {
	color: #1c1c1c;
}

.streets-gate-name.shutters-name a:hover {
	color: #b76422;
	text-decoration: none;
}

/* Повтор адаптива после базовых стилей блоков (иначе перебивается cascade) */
@media (max-width: 1544px) {
	.steps {
		max-width: 97.917%;
	}
}

@media (max-width: 979px) {
	.sale {
		flex-direction: column;
	}

	.sale_left {
		width: 100%;
		background-position: center top;
		height: 252px;
	}

	.sale_right {
		padding: 20px;
	}

	.sale_title {
		margin-bottom: 20px;
		font-size: 28px;
	}

	.sale_item {
		max-width: 100%;
	}

	.sale_item_bottom {
		padding: 20px;
	}

	.steps_wrapper {
		flex-wrap: wrap;
		gap: 20px;
		text-align: center;
	}

	.steps_item {
		width: 33%;
		margin: 0 auto;
	}
}

@media (max-width: 767px) {
	.steps_item {
		width: 100%;
	}

	.steps {
		padding-left: 15px;
		padding-right: 15px;
	}
}

@media (max-width: 1544px) {
	.faq__container {
		max-width: 97.917%;
	}
}

@media (max-width: 1199px) {
	.faq_column {
		width: 100%;
	}
}

@media (max-width: 767px) {
	.faq-item,
	.faq-item:not(:last-child) {
		margin-bottom: 20px !important;
	}

	.faq__wrap {
		gap: 0;
	}

	.faq_title {
		font-size: 30px;
	}

	.faq__container {
		max-width: 93.8%;
		padding-left: 0;
		padding-right: 0;
	}
}

@media (max-width: 1544px) {
	.clients_wrapper {
		max-width: 97.917%;
	}
}

@media (max-width: 1399px) {
	.our-projects__wrap {
		grid-template-columns: repeat(2, calc(50% - 20px));
	}

	.main-about__bottom {
		grid-template-columns: 100%;
	}
}

@media (max-width: 979px) {
	.clients_wrapper {
		flex-wrap: wrap;
		gap: 20px;
	}

	.clients_item {
		width: 100%;
	}

	.contacts_wrapper {
		flex-wrap: wrap;
		gap: 20px;
	}

	.our-projects__wrap {
		grid-template-columns: 100%;
		padding: 0 20px;
	}

	.our-projects__left {
		max-width: 100%;
	}

	.our-projects__right {
		grid-row: 2;
		grid-column: 1;
		height: auto;
	}

	.our-projects__slider a img {
		aspect-ratio: 1/1;
		height: auto;
	}

	.our-projects-controls {
		grid-row: 3;
		justify-content: center;
	}

	.main-about-adv {
		grid-template-columns: 100%;
	}

	.main-about-adv__item {
		grid-template-columns: 100px 1fr;
	}
}

@media (max-width: 767px) {
	.clients_wrapper {
		max-width: 93.8%;
	}

	.projects a,
	.calc.projects a.profits {
		flex: 100%;
		height: 220px;
		max-width: 90%;
		margin-bottom: 20px;
	}

	.projects .pd30u,
	.calc.projects .pd30u {
		padding-top: 0;
	}

	.calc.projects .col-md-3 {
		flex: 0 0 90%;
		max-width: 90%;
	}

	.calc.projects .col-md-1 {
		display: none;
	}

	.site .row.justify-content-center > .col-md-3,
	.site .row.justify-content-center > a.col-md-3 {
		flex: 0 0 90%;
		max-width: 90%;
		height: 220px;
		margin-bottom: 20px;
	}

	.site .row.justify-content-center > .col-md-1 {
		display: none;
	}
}

@media (max-width: 479px) {
	.our-projects-controls {
		flex-direction: column;
	}

	.our-projects-adv__item {
		grid-template-columns: 40px 1fr;
	}

	.our-projects-adv__item img:nth-child(3) {
		grid-column: 2;
		margin: 0;
	}

	.main-about__wrap {
		padding: 20px;
	}
    
    .vrat-side-main .in-vrat-side{
        width: 100%;
    }
	.exform-wrapper.widget .close-btn{
		right:5px;
		top: 5px;
	}
	.exform-wrapper.widget .exform-header{
		margin-bottom:10px !important;
	}
	.exform-wrapper.widget .form-body .input-item{
		margin-bottom:10px !important;
	}
	.exform-wrapper.widget .form-body input[type='text']{
		height: 40px !important;
	}
	.form_title{
		max-width: 80%;
    	margin: 0 auto;
		font-size: 16px;
	}
	.communication_options_block_wrap{
		gap: 5px !important;
	}
	.form_bottom{
		flex-direction: column;
	}
	.form_bottom .policy{
		flex-direction: row !important;
    	align-items: flex-start !important;
	}
	.widget .form-body .communication_options_block_wrap{
		margin-bottom: 10px !important;
	}
	.exform-wrapper.widget{
		padding: 30px 0 20px 0 !important;
	}
	.policy{
		padding-left:20px !important;
		padding-right:20px !important;
	}
	.send-btn{
		margin-left:20px;
		margin-top:10px;
	}
	.form_bottom{
		padding-bottom:20px;
	}
}

.calc-form {
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
	display: block;
	width: 302px;
	padding-top: 16px;
	padding-bottom: 16px;
	text-align: center;
	border-radius: 100px;
	background: rgba(183, 100, 34, 1);
	transition: all .3s;
	color: rgba(255, 255, 255, 1);
	font-size: 18px;
	font-weight: 600;
	line-height: 21px;
}

.calc-form a {
	color: rgba(255, 255, 255, 1);
}

.calc-form:hover {
	background: rgba(28, 28, 28, 1);
}

.calc-form a:hover {
	color: rgba(255, 255, 255, 1);
	text-decoration: none;
}

