:root {
	--main_font: 'Onest', sans-serif;
	--main_black: #000000;
	--white_color: #FFFFFF;
	--green_color: rgba(37, 86, 71, 1);
	--light_green_color: rgba(67, 117, 97, 1);
	--brown_color: rgba(174, 147, 123, 1);
	--border_color: rgba(255, 255, 255, 0.3);
	--border_color_focus: rgba(255, 255, 255, 1);
	--checkbox_color: rgba(243, 241, 239, 1);
	--grey_color: rgba(243, 241, 239, 1);
	--placeholder_color: rgba(146, 145, 143, 1);
}
/* Site development START */
.site_dev {
	position: fixed;
	overflow: hidden;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: var(--green_color);
	padding-top: 38px;
	color: var(--white_color);
	display: flex;
	align-items: center;
	justify-content: center;
	& img {
		position: absolute;
		left: 0;
		top: 38px;
		object-fit: cover;
		z-index: 1;
	}
	& .logo {
		position: absolute;
		z-index: 2;
		width: 116px;
		height: 32px;
		background: url(../icons/logo.svg) center / contain no-repeat;
		left: 50%;
		transform: translateX(-50%);
		top: 32px;
	}
	& h2 {
		position: relative;
		z-index: 2;
	}
}

@media (max-width: 992px) {
    .site_dev {
		padding-top: 0;
		& .logo {
			width: 87px;
			height: 24px;
			top: 24px;
		}
		& img {
			top: 0;
		}
	}
}
/* Site development END */
* {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

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

html, body {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
}

body {
	font-family: var(--main_font);
	color: var(--main_black);
	font-size: 16px;
	line-height: 20px;
	font-weight: 400;
}

body.fixed {
	overflow: hidden;
}

.screen {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 20;
}

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

img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	image-rendering: optimizeQuality;
    image-rendering: -webkit-optimize-contrast;
}

p:not(:last-child) {
	margin-bottom: 20px;
}

h1 {
	font-weight: 400;
	font-size: 96px;
	line-height: 104px;
	text-align: center;
	margin-bottom: 48px;
}

h2 {
	font-weight: 400;
	font-size: 48px;
	line-height: 52px;
}

h3 {
	font-size: 36px;
	line-height: 40px;
	font-weight: 400;
	margin-bottom: 30px;
}

h4 {
	font-weight: 500;
	font-size: 24px;
	line-height: 28px;
	&:not(:last-child) {
		margin-bottom: 18px;
	}
	&.decor {
		padding-left: 36px;
		background: url(../icons/title_decor.svg) left 0 center / contain no-repeat;
		background-size: 20px 20px;
	}
	&.arrow_decor {
		width: fit-content;
		padding-right: 32px;
		background: url(../icons/link_d.svg) right 0 top 0 / contain no-repeat;
		background-size: 28px 28px;
	}
	&.arrow_decor_black {
		padding-right: 32px;
		&::after {
			display: inline-block;
			content: "";
			width: 28px;
			height: 28px;
			background: url(../icons/link_d_b.svg) center / contain no-repeat;
			vertical-align: middle;
			margin-left: 4px;
		}
	}
	&:not(:last-child) {
		margin-bottom: 24px;
	}
}

h6 {
	font-weight: 600;
	font-size: 14px;
	line-height: 20px;
	text-transform: uppercase;
	margin-bottom: 24px;
	&.decor {
		padding-left: 36px;
		background: url(../icons/title_decor.svg) left 0 center / contain no-repeat;
		background-size: 20px 20px;
	}
	&.decor_w {
		padding-left: 36px;
		background: url(../icons/title_decor_w.svg) left 0 center / contain no-repeat;
		background-size: 20px 20px;
	}
}

.label_link {
	padding-left: 24px;
	padding-right: 24px;
	display: block;
	position: relative;
	z-index: 3;
	margin-bottom: 24px;
	&.big_label {
		padding-top: 24px;
		padding-bottom: 24px;
		margin-bottom: 0;
	}
	& h4 {
		margin-bottom: 0;
	}
	& h6 {
		margin-bottom: 0;
	}
}

input[type="text"], textarea {
	font-family: var(--main_font);
	outline: none;
	font-weight: 400;
	font-size: 16px;
	line-height: 20px;
	color: var(--white_color);
	transition: border-color 0.3s ease;
	padding: 22px 0;
	border: 0;
	border-bottom: 2px solid var(--border_color);
	background: none;
	width: 100%;
	&::placeholder {
		font-weight: 400;
		font-size: 16px;
		line-height: 20px;
		color: var(--white_color);
	}
	&:focus {
		border-color: var(--border_color_focus);
	}
}

input[type="checkbox"] {
	display: none;
}

textarea {
	resize: none;
	height: 124px;
}

/* input[type="text"], textarea {
	border: 1px solid rgba(19, 24, 51, 0.1);
	outline: none;
	width: 100%;
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	line-height: 150%;
	color: #0A1435;
	background: rgba(246, 248, 252, 0.1);
	padding: 10px;
	border-radius: 4px;
}

input[type="text"]:focus, textarea:focus {
	border: 1px solid rgba(97, 165, 0, 0.7);
	background: rgba(246, 248, 252, 0.7);
}

input[type="text"].form {
	background: #FFFFFF;
	box-shadow: 0px 4px 24px rgba(10, 17, 52, 0.1);
	border-radius: 8px;
	border: 0;
	padding: 20px;
}

textarea {
	resize: none;
	height: 84px;
}

input[type="text"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: rgba(10, 20, 53, 0.5);
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	line-height: 150%;
}

input[type="text"].required {
	background: #fefeff url(../icons/asterisk.svg) center right 10px / contain no-repeat;
	background-size: 10px 10px;
}

input[type="text"].focus:focus, textarea.focus:focus {
	border: 1px solid rgba(97, 165, 0, 0.7);
	background: rgba(246, 248, 252, 0.7);
}

input[type="checkbox"] {
	display: none;
}

select {
	border: 1px solid #e7e8eb;
	outline: none;
	width: 100%;
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	line-height: 20px;
	color: #131833;
	background: #fefeff;
	padding: 11px 15px 10px 15px;
	border-radius: 4px;
	appearance: none;
	cursor: pointer;
	background: url(../icons/arrow_select.svg) center right 15px / contain no-repeat;
	background-size: 10px 10px;
}

label.check {
	display: block;
	position: relative;
	cursor: pointer;
	padding-left: 25px;
}

label.check::before {
	position: absolute;
	content: "";
	width: 15px;
	height: 15px;
	left: 0;
	top: 2px;
	border: 1px solid rgba(19, 24, 51, 0.1);
	box-sizing: border-box;
	border-radius: 2px;
}

input[type="checkbox"]:checked + label.check:before {
	border: 1px solid #005DA4;
	background: #005DA4 url(../icons/check.svg) center / contain no-repeat;
	background-size: 10px 10px;
}

label.check a {
	color: #005DA4;
}

@keyframes opacity {
    from {
        opacity: 0;
		filter: blur(4px);
    }
    to {
        opacity: 1;
		filter: blur(0);
    }
}

path {
	transition: all 0.3s ease;
}

 */

.wrap {
	padding: 0 124px;
	margin: 0 auto;
}

.button, button {
	display: inline-block;
	transition: all 0.3s ease;
	text-align: center;
	border: 0;
	outline: none;
	cursor: pointer;
	padding: 22px 32px;
	border-radius: 40px;
	font-weight: 500;
	font-size: 16px;
	line-height: 20px;
	width: fit-content;
	&.black_button {
		background-color: var(--main_black);
		color: var(--white_color);
	}
	&.shadow_button {
		box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
		background-color: var(--white_color);
	}
	&.white_button {
		background-color: var(--white_color);
		color: var(--main_black);
	}
}

.flex_wrap {
	display: flex;
	& .col {
		width: 50%;
		&.wrap_advantages {
			background-color: var(--green_color);
			padding: 40px 32px;
			color: var(--white_color);
			& .flex_column {
				display: flex;
				flex-direction: column;
				justify-content: space-between;
				width: 50%;
				height: 100%;
				& .head {
					margin-bottom: 124px;
				}
				& .list {
					margin-bottom: 64px;
				}
			}
		}
		&.flex_items {
			display: flex;
			flex-wrap: wrap;
			margin: 0 -8px -8px 0;
			color: var(--white_color);
			width: calc(50% - -8px);
			position: relative;
			hyphens: auto;
			& .item_flex {
				cursor: pointer;
				position: relative;
				width: calc(50% - 8px);
				margin: 0 8px 8px 0;
				background-color: var(--green_color);
				padding: 32px 32px 92px 32px;
				&::after {
					position: absolute;
					content: "";
					width: 28px;
					height: 28px;
					background: url(../icons/link_u.svg) center / contain no-repeat;
					left: 32px;
					bottom: 32px;
					transition: all 0.3s ease;
				}
			}
			& .item_click {
				cursor: pointer;
				position: absolute;
				width: 100%;
				height: 100%;
				z-index: 4;
				left: 0;
				top: 0;
			}
		}
	}
	&:not(.wrap) {
		min-height: 404px;
		& .col {
			&:not(:last-child) {
				padding-right: 4px;
				padding-left: 24px;
			}
			&:last-child {
				padding-left: 4px;
				padding-right: 24px;
			}
			&.flex_column {
				display: flex;
				flex-direction: column;
				justify-content: space-between;
				& .head {
					margin-bottom: 96px;
					width: 80%;
				}
				& .footer .button {
					display: none;
				}
			}
		}
	}
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

header {
	position: relative;
	z-index: 4;
	& .wrap_nav {
		display: flex;
		justify-content: center;
		padding: 8px;
		& .small_logo {
			display: none;
			background: url(../icons/logo_small_b.svg) center / contain no-repeat;
			background-size: 70px 28px;
			margin-right: 4px;
			border-radius: 44px;
			box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
			padding: 22px 32px;
			background-color: var(--white_color);
			width: 110px;
			height: 64px;
		}
		& nav {
			display: flex;
			align-items: center;
			border-radius: 40px;
			overflow: hidden;
			padding: 22px 32px;
			background-color: var(--white_color);
			margin-right: 4px;
			box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
			font-weight: 600;
			text-transform: uppercase;
			& a {
				display: block;
				padding-left: 28px;
				&:not(:last-child) {
					margin-right: 24px;
				}
				&.icon_1 {
					background: url(../icons/floor.svg) left 0 center / contain no-repeat;
					background-size: 20px 20px;
				}
				&.icon_2 {
					background: url(../icons/wall.svg) left 0 center / contain no-repeat;
					background-size: 20px 20px;
				}
			}
		}
	}
	& .menu_btn {
		cursor: pointer;
		width: 64px;
		height: 64px;
		border-radius: 50%;
		background: var(--white_color) url(../icons/burger.svg) center / contain no-repeat;
		background-size: 20px 20px;
		box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
	}
	& .menu_wrap {
		position: absolute;
		display: none;
		left: 50%;
		top: 0;
		transform: translateX(-50%);
		width: 100vw;
		max-width: 1060px;
		padding: 8px 76px 8px 8px;
		z-index: 2;
		& .menu {
			padding: 32px;
			border-radius: 32px;
			background-color: var(--white_color);
			box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
			min-height: calc(100vh - 412px);
			font-weight: 500;
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			& a {
				display: block;
				&:not(:last-child, .title_col) {
					margin-bottom: 16px;
				}
			}
		}
		& .menu_list {
			display: flex;
			margin-bottom: 100px;
		}
		& .col {
			flex: 1;
			&:not(:last-child) {
				margin-right: 24px;
			}
		}
		& .title_col {
			margin-bottom: 24px;
			padding-left: 28px;
			text-transform: uppercase;
			font-size: 14px;
			font-weight: 600;
			&.icon_1 {
				background: url(../icons/floor.svg) left 0 top 0 / contain no-repeat;
				background-size: 20px 20px;
			}
			&.icon_2 {
				background: url(../icons/wall.svg) left 0 top 0 / contain no-repeat;
				background-size: 20px 20px;
			}
		}
		& .link_list {
			& a {
				padding-left: 28px;
				position: relative;
				&::before {
					position: absolute;
					content: "";
					width: 5px;
					height: 5px;
					border-radius: 50%;
					background-color: var(--main_black);
					left: 7.5px;
					top: 7.5px;
				}
			}
		}
		& .image {
			border-radius: 16px;
			overflow: hidden;
			width: 200px;
			height: 200px;
			& img {
				display: block;
				object-fit: cover;
			}
		}
		& .footer_menu_list {
			display: flex;
			font-weight: 400;
			& .col:nth-child(2) a {
				text-decoration: underline;
			}
		}
		& .phone_link {
			font-size: 24px;
			line-height: 28px;
			font-weight: 500;
		}
		& .close {
			position: absolute;
			top: 8px;
			right: 8px;
			width: 64px;
			height: 64px;
			border-radius: 50%;
			background: var(--white_color) url(../icons/close.svg) center / contain no-repeat;
			background-size: 20px 20px;
			cursor: pointer;
			box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
		}
	}
	&.fixed {
		position: fixed;
		left: 50%;
		transform: translateX(-50%);
		top: 0;
		animation: fadeIn 0.3s forwards;
		transition: opacity 0.3s ease;
		& nav {
			display: none;
		}
		& .small_logo {
			display: block;
		}
		&.hidden {
			animation: none;
			opacity: 0;
			visibility: hidden;
		}
	}
}

.main_banner {
	height: 100vh;
	position: relative;
	margin-bottom: 124px;
	& .logo {
		position: absolute;
		z-index: 2;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		background: url(../icons/logo.svg) center / contain no-repeat;
		width: 492px;
		height: 168px;
	}
	& .images_container {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 1;
		& img {
			position: absolute;
			object-fit: cover;
			left: 50%;
			top: 50%;
			transform: translate(-50%, -50%);
			transition: opacity 1.5s ease;
			opacity: 1;
			&:not(.active) {
				opacity: 0;
			}
		}
	}
	& .nav_slider {
		position: absolute;
		left: 0;
		bottom: 0;
		z-index: 1;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 80px;
		overflow: hidden;
		padding: 8px 0;
		& .points_flex {
			display: flex;
			align-items: center;
			justify-content: space-between;
			width: calc(100% + 32px);
			position: relative;
			margin-left: -16px;
			margin-right: -16px;
			z-index: 2;
			opacity: 0;
			transition: opacity 0.5s ease, transform 1s ease;
			&::before {
				position: absolute;
				content: "";
				width: 100%;
				height: 2px;
				border-bottom: 2px solid rgba(255, 255, 255, 0.3);
				left: 0;
				top: 50%;
				transform: translateY(-50%);
			}
			&.active {
				opacity: 1;
			}
		}
		& .point {
			cursor: pointer;
			width: 16px;
			height: 16px;
			border-radius: 50%;
			background-color: var(--white_color);
			position: relative;
			z-index: 2;
		}
		& .wrap_small_slider {
			position: absolute;
			left: 50%;
			top: 50%;
			transform: translate(-50%, -50%);
			overflow: hidden;
			width: 176px;
			height: 64px;
			border-radius: 40px;
			background-color: var(--white_color);
			padding: 8px;
			z-index: 3;
			& .small_slider {
				display: flex;
				justify-content: center;
				transition-delay: 0.3s;
				margin-right: -8px;
				height: 48px;
				opacity: 0;
				transition: opacity 0.5s ease, transform 1s ease;
				&.active {
					opacity: 1;
				}
			}
		}
		& .slide {
			display: flex;
			align-items: center;
			min-width: 160px;
			max-width: 160px;
			margin-right: 8px;
			height: 48px;
			max-height: 48px;
			& .image_slide {
				width: 48px;
				height: 48px;
				border-radius: 50%;
				margin-right: 16px;
				overflow: hidden;
				& img {
					display: block;
					object-fit: cover;
				}
			}
			& .name {
				width: calc(100% - 64px);
				padding-right: 15px;
			}
			& span {
				font-size: 13px;
				line-height: 16px;
			}
			& .val_name {
				font-weight: 600;
				font-size: 14px;
				line-height: 20px;
				overflow: hidden;
				white-space: nowrap;
				text-overflow: ellipsis;
				width: 100%;
				text-transform: uppercase;
			}
		}
	}
}

.scroll_screen {
	display: none;
}

.wrap.padding_ud {
	padding-top: 64px;
	padding-bottom: 64px;
}

.small_wrap {
	padding: 0 8px;
	& .big_label {
		margin-bottom: 24px;
		display: inline-block;
	}
	& .wrap {
		padding-left: 116px;
		padding-right: 116px;
	}
}

.section {
	&:not(:last-child) {
		margin-bottom: 124px;
	}
	&.image_wrap {
		overflow: hidden;
		min-height: unset;
		position: relative;
		z-index: 1;
		& img {
			object-fit: cover;
			position: absolute;
			left: 8px;
			top: 0;
			z-index: -1;
			object-position: center;
			width: calc(100% - 16px);
		}
		& .flex_wrap {
			min-height: 740px;
			position: relative;
		}
	}
}

.section_full_image {
	position: relative;
	min-height: 740px;
	color: var(--white_color);
	display: flex;
	padding: 64px 0;
	& .wrap {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		margin: 0;
	}
	& img {
		position: absolute;
		left: 0;
		top: 0;
		object-fit: cover;
		z-index: -1;
	}
	& .wrap_links {
		padding: 24px;
		position: relative;
		z-index: 2;
	}
	& .small_link {
		margin-bottom: 8px;
		display: block;
	}
	&::after {
		position: absolute;
		content: "";
		width: 100%;
		height: 100%;
		left: 0;
		top: 0;
		background: linear-gradient(199.41deg, rgba(0, 0, 0, 0) 69.84%, rgba(0, 0, 0, 0.3) 87.59%);
		z-index: 1;
	}
}

.big_link {
	display: inline-block;
	position: relative;
	font-size: 96px;
	line-height: 104px;
	padding-right: 120px;
	&::after {
		position: absolute;
		content: "";
		width: 104px;
		height: 104px;
		top: 0;
		right: 0;
		background: url(../icons/link_u.svg) center / contain no-repeat;
		transition: all 0.3s ease;
	}
}

.section_1 {
	height: 100vh;
	overflow: hidden;
	min-height: 400px;
	max-height: 940px;
	& .wrap {
		display: flex;
		align-items: flex-start;
		height: 100%;
		position: relative;
	}
	& .catalog {
		display: block;
		overflow: hidden;
		height: 100%;
		width: 100%;
		position: relative;
		padding-bottom: 72px;
		transition: all 1s ease;
		& .label_link {
			position: absolute;
			z-index: 1;
			top: 0;
			left: 0;
		}
		& img {
			object-fit: cover;
			display: block;
			object-position: center;
		}
		.mobile_title {
			display: none;
		}
	}
	& .title {
		width: calc(100% - (100% / 3));
		transition: all 1s ease;
		text-align: right;
		position: absolute;
		top: 64px;
		right: -100vh;
	}
	& .flex_links {
		position: absolute;
		bottom: 64px;
		right: 124px;
		width: 50%;
		height: calc(100% - 264px);
		background-color: var(--white_color);
		display: flex;
		color: var(--white_color);
		border-top: 8px solid var(--white_color);
		border-left: 8px solid var(--white_color);
		transition: all 1s ease;
		z-index: 1;
		& .link {
			display: block;
			position: relative;
			&:nth-child(1) {
				flex: 2;
				margin-right: 8px;
			}
			&:nth-child(2) {
				flex: 1;
				margin-bottom: 72px;
			}
			& img {
				display: block;
				object-fit: cover;
			}
		}
		& .label_link {
			position: absolute;
			bottom: 0;
			left: 0;
			z-index: 1;
			& h4 {
				padding-top: 36px;
				&.icon_1 {
					background: url(../icons/floor_w.svg) left 0 top 0 / contain no-repeat;
					background-size: 20px 20px;
				}
				&.icon_2 {
					background: url(../icons/wall_w.svg) left 0 top 0 / contain no-repeat;
					background-size: 20px 20px;
				}
			}
		}
	}
	&.active_section {
		& .catalog {
			width: calc(100% / 3);
		}
		& .title {
			right: 124px;
		}
		& .flex_links {
			width: calc(100% - (100% / 3) + 40px);
		}
	}
}

.link_arrow {
	display: inline-block;
	padding-right: 24px;
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 0.5px;
	position: relative;
	z-index: 3;
	&::after {
		position: absolute;
		content: "";
		width: 20px;
		height: 20px;
		top: 0;
		right: 0;
		transition: all 0.3s ease;
	}
	&.up {
		&.w_color::after {
			background: url(../icons/link_u.svg) center / contain no-repeat;
		}
		&.b_color::after {
			background: url(../icons/link_u_b.svg) center / contain no-repeat;
		}
	}
	&.down {
		&.w_color::after {
			background: url(../icons/link_d.svg) center / contain no-repeat;
		}
		&.b_color::after {
			background: url(../icons/link_d_b.svg) center / contain no-repeat;
		}
	}
}

.rain {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	& .drop {
		position: absolute;
		bottom: 100%;
		width: 15px;
		height: 120px;
		pointer-events: none;
		animation: drop 0.5s linear infinite;
	}
}

@keyframes drop {
	0% {
		transform: translateY(0vh);
	}
	75% {
		transform: translateY(90vh);
	}
	100% {
		transform: translateY(90vh);
	}
}

.stem {
	width: 1px;
	height: 60%;
	margin-left: 7px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.25));
	animation: stem 0.5s linear infinite;
}

@keyframes stem {
	0% {
		opacity: 1;
	}
	65% {
		opacity: 1;
	}
	75% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

.rain.back-row {
	z-index: 1;
	bottom: 60px;
	opacity: 0.5;
}

.wrap_collection_slider {
	overflow: hidden;
	width: 100%;
	& .collection_slider {
		display: flex;
		flex-wrap: nowrap;
		padding-left: 124px;
		padding-right: 124px;
		/* transition: transform 1s ease; */
	}
	& .item_slider {
		width: calc((50vw - 128px) / 2 - 4px);
		min-width: calc((50vw - 128px) / 2 - 4px);
		transition: all 1s ease;
		& .wrap_image {
			position: relative;
			height: calc(50vw - 336px);
			& img {
				position: absolute;
				left: 0;
				top: 0;
				object-fit: cover;
				transition: opacity 1s ease;
				opacity: 1;
				height: calc(100% - 72px);
				pointer-events: none;
				user-select: none;
				&:not(.active) {
					opacity: 0;
				}
			}
			& .nav_image {
				position: absolute;
				z-index: 1;
				left: 24px;
				bottom: 24px;
				display: flex;
				flex-wrap: nowrap;
				background-color: var(--white_color);
				padding: 8px;
				border-radius: 40px;
				height: 64px;
				overflow: hidden;
				box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
				margin-right: -8px;
				width: 100px;
				max-width: calc(100% - 48px);
				transition: all 0.3s ease;
				opacity: 0;
				visibility: hidden;
				&::after {
					position: absolute;
					content: "";
					z-index: 1;
					width: 40px;
					height: 100%;
					background: var(--white_color) url(../icons/link_u_b.svg) center right 16px / contain no-repeat;
					background-size: 20px 20px;
					top: 0;
					right: 0;
					cursor: pointer;
					transition: all 0.3s ease;
				}
				& .item_nav {
					cursor: pointer;
					width: 48px;
					min-width: 48px;
					height: 48px;
					overflow: hidden;
					order: 2;
					margin-right: 8px;
					display: flex;
					align-items: center;
					justify-content: center;
					& img {
						position: static;
						width: 44px;
						height: 44px;
						opacity: 1;
						object-fit: cover;
						display: block;
						border-radius: 50%;
						transition: all 0.3s ease;
					}
					&.active {
						order: 1;
						& img {
							width: 100%;
							height: 100%;
						}
					}
				}
			}
		}
		& .header_item {
			padding: 24px;
			height: 136px;
			display: flex;
			flex-direction: column;
			justify-content: flex-end;
			user-select: none;
			& .title {
				display: block;
				font-size: 20px;
				line-height: 28px;
				margin-bottom: 8px;
				transition: all 1s ease;
			}
			& .footnote_title {
				display: block;
			}
		}
		& .footer_item {
			padding: 24px 24px 0 24px;
			opacity: 0;
			visibility: hidden;
			max-height: 0;
			transition: all 1s ease;
			& .flex_row {
				display: flex;
				flex-wrap: wrap;
				margin-right: -32px;
			}
			& .item_flex {
				margin: 0 32px 24px 0;
			}
			& .val_item {
				font-size: 20px;
				line-height: 28px;
			}
			& .price_val {
				font-size: 20px;
				line-height: 28px;
				margin-bottom: 24px;
			}
		}
		&.active {
			width: calc(50vw - 128px);
			min-width: calc(50vw - 128px);
			& .wrap_image {
				& img {
					height: 100%;
				}
				& .nav_image {
					opacity: 1;
					visibility: visible;
				}
			}
			& .header_item {
				& .title {
					margin-bottom: 16px;
					font-size: 48px;
					line-height: 52px;
				}
			}
			& .footer_item {
				opacity: 1;
				visibility: visible;
				max-height: unset;
			}
		}
		&:not(.active) {
			& .wrap_image {
				cursor: pointer;
			}
		}
		&:not(:last-child) {
			margin-right: 8px;
		}
	}
}

.bg_section {
	background-color: var(--brown_color);
}

.flex_three_columns {
	display: flex;
	flex-wrap: nowrap;
	color: var(--white_color);
	margin-right: -8px;
	padding-bottom: 52px;
	& .item_column {
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		margin-right: 8px;
		height: 468px;
		cursor: pointer;
		& img {
			position: absolute;
			left: 0;
			top: 0;
			object-fit: cover;
			z-index: 1;
		}
		&:nth-child(1) {
			width: calc(42.068% - 8px);
		}
		&:nth-child(2) {
			width: calc(25.241% - 8px);
		}
		&:nth-child(3) {
			width: calc(32.691% - 8px);
		}
	}
	& .wrap_content {
		padding: 40px 32px;
		position: relative;
		z-index: 2;
		max-width: 257px;
	}
	& .icon {
		width: 20px;
		height: 20px;
		margin-bottom: 16px;
		&.type_1 {
			background: url(../icons/armchair.svg) center / contain no-repeat;
		}
		&.type_2 {
			background: url(../icons/table.svg) center / contain no-repeat;
		}
		&.type_3 {
			background: url(../icons/chair.svg) center / contain no-repeat;
		}
	}
}

footer {
	background-color: var(--green_color);
	padding-top: 116px;
	padding-bottom: var(--padding_bottom);
	position: relative;
	overflow: hidden;
	width: 100%;
	color: var(--white_color);
	& .footer_bg {
		position: absolute;
		left: 0;
		top: 346px;
		z-index: 2;
		width: 100%;
		min-height: calc(100vh - 346px);
		transition: all 1s ease;
		display: flex;
		flex-direction: column;
		& img {
			display: block;
			object-fit: cover;
			object-position: top;
			flex-grow: 1;
		}
	}
	& .logo {
		display: block;
		width: 100%;
		margin-bottom: 188px;
		& img {
			display: block;
			height: auto;
		}
	}
	& .rain {
		height: 100vh;
	}
	&.fixed {
		& .footer_bg {
			position: fixed;
			top: 360px;
		}
		& .rain {
			position: fixed;
		}
		&.sticky {
			& .footer_bg {
				position: absolute;
				top: unset;
				bottom: 0;
			}
		}
	}
	& .clickable_element {
		position: relative;
		&.active_click {
			z-index: 3;
		}
	}
}

.wrap_footer_form {
	display: flex;
	flex-wrap: nowrap;
	background-color: var(--light_green_color);
	margin-bottom: 188px;
	& .col {
		width: 50%;
		&:first-child {
			padding: 48px 32px;
			& .button {
				display: none;
			}
		}
		&:last-child {
			padding: 40px 140px 40px 0;
			& h6, & h2 {
				display: none;
			}
			& .close {
				display: none;
			}
		}
	}
	& .wrap_selector {
		display: flex;
		margin-bottom: 38px;
		& label {
			display: block;
			cursor: pointer;
			flex: 1;
			padding-left: 52px;
			position: relative;
			&:not(:last-child) {
				margin-right: 20px;
			}
			&::before {
				position: absolute;
				content: "";
				width: 40px;
				height: 20px;
				left: 0;
				top: 0;
				border-radius: 28px;
				border: 2px solid var(--white_color);
				transition: all 0.3s ease;
			}
			&::after {
				position: absolute;
				content: "";
				width: 12px;
				height: 12px;
				top: 4px;
				left: 4px;
				background-color: var(--white_color);
				border-radius: 50%;
				transition: all 0.3s ease;
			}
		}
		& input[type="checkbox"]:checked + label {
			&::before {
				background-color: var(--white_color);
			}
			&::after {
				background-color: var(--green_color);
				left: 24px;
			}
		}
	}
	& .input_section {
		margin-bottom: 38px;
	}
}

.agree {
	margin-bottom: 38px;
	& label {
		display: block;
		cursor: pointer;
		padding-left: 32px;
		position: relative;
		&::before {
			position: absolute;
			content: "";
			width: 20px;
			height: 20px;
			border-radius: 4px;
			background-color: var(--checkbox_color);
			left: 0;
			top: 0;
		}
		&::after {
			position: absolute;
			content: "";
			width: 11.39px;
			height: 8.52px;
			background: url(../icons/check.svg) center / contain no-repeat;
			left: 4.04px;
			top: 5.45px;
			opacity: 0;
			visibility: hidden;
			transition: opacity 0.3s ease;
		}
		& a {
			text-decoration: underline;
			text-decoration-thickness: 0.5px;
			text-underline-offset: 2px;
		}
	}
	& input[type="checkbox"]:checked + label::after {
		opacity: 1;
		visibility: visible;
	}
}

.wrap_footer_menu {
	display: flex;
	flex-wrap: nowrap;
	padding: 0 24px;
	& .col {
		width: 50%;
		&:first-child {
			padding-right: 4px;
		}
		&:last-child {
			padding-left: 4px;
			display: flex;
			flex-wrap: nowrap;
		}
	}
	& .header_col {
		margin-bottom: 48px;
	}
	& .phone {
		display: block;
		margin-bottom: 24px;
		font-weight: 500;
		font-size: 24px;
		line-height: 28px;
	}
	& .item_header {
		& a {
			display: block;
			text-decoration: underline;
			text-decoration-thickness: 0.5px;
			text-underline-offset: 4%;
		}
		&:not(:last-child) {
			margin-bottom: 24px;
		}
	}
	& .footer_col {
		& .copyright {
			margin-bottom: 8px;
		}
		& .links {
			margin-right: -16px;
			display: flex;
			flex-wrap: wrap;
			& a {
				display: block;
				margin: 0 16px 8px 0;
				text-decoration: underline;
				text-decoration-thickness: 0.5px;
				text-underline-offset: 4%;
			}
		}
	}
	& .catalog_links {
		width: 50%;
		padding-right: 4px;
		& .list_link {
			margin-bottom: 48px;
			& a {
				display: block;
				padding-left: 28px;
				position: relative;
				&:not(:last-child) {
					margin-bottom: 16px;
				}
				&::before {
					position: absolute;
					content: "";
					width: 5px;
					height: 5px;
					border-radius: 50%;
					background-color: var(--white_color);
					left: 7.5px;
					top: 7.5px;
				}
			}
		}
	}
	& .title_catalog {
		display: block;
		padding-left: 28px;
		text-transform: uppercase;
		&:not(:last-child) {
			margin-bottom: 24px;
		}
		&.icon_1 {
			background: url(../icons/floor_w.svg) left 0 top 0 / contain no-repeat;
			background-size: 20px 20px;
		}
		&.icon_2 {
			background: url(../icons/wall_w.svg) left 0 top 0 / contain no-repeat;
			background-size: 20px 20px;
		}
	}
	& .links_page {
		width: 50%;
		padding-left: 4px;
		& a {
			display: block;
			&:not(:last-child) {
				margin-bottom: 16px;
			}
		}
	}
}

.nav_bar {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	position: fixed;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	padding: 8px;
	z-index: 3;
	white-space: nowrap;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease;
	& .button:first-child {
		margin-right: 8px;
	}
	& .wrap_shadow {
		display: flex;
		align-items: center;
		padding: 22px 32px;
		background-color: var(--white_color);
		margin-right: 8px;
		border-radius: 40px;
		box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
		& a {
			display: block;
			margin-right: 24px;
		}
	}
	&.active {
		opacity: 1;
		visibility: visible;
		&.hidden {
			opacity: 0;
			visibility: hidden;
		}
	}
}

.drop_list {
	position: relative;
	& .name {
		padding: 22px 32px 22px 0;
		cursor: pointer;
		border-bottom: 2px solid var(--border_color);
		background: url(../icons/drop_arrow_w.svg) right 0 center / contain no-repeat;
		background-size: 16px 16px;

	}
	& .list {
		display: none;
		position: absolute;
		left: 0;
		top: calc(100% - 2px);
		width: 100%;
		padding: 8px 0;
		background-color: var(--light_green_color);
	}
	& .scroll_wrap {
		padding-right: 8px;
		max-height: 160px;
		overflow: hidden;
		overflow-y: auto;
	}
	& .item_list {
		cursor: pointer;
		padding: 14px 60px 14px 24px;
		position: relative;
		&::after {
			position: absolute;
			content: "";
			width: 16px;
			height: 16px;
			background: url(../icons/check_drop_w.svg) center / contain no-repeat;
			right: 24px;
			top: 50%;
			transform: translateY(-50%);
			opacity: 0;
			visibility: hidden;
			transition: opacity 0.3s ease;
		}
		&.active {
			opacity: 1;
			visibility: visible;
		}
	}
}

.popup {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: url(../img/popup_bg.webp) center / cover no-repeat;
	z-index: 4;
	display: none;
	justify-content: flex-end;
	color: var(--white_color);
	padding: 8px 0;
	& .wrap_popup {
		width: 50%;
		max-height: 100%;
		overflow: hidden;
		overflow-y: auto;
		padding: 0 8px;
	}
	& .content_popup {
		background-color: var(--green_color);
		padding: 48px 184px 48px 64px;
		min-height: 100%;
		& h2 {
			margin-bottom: 80px;
		}
		& form {
			margin-bottom: 80px;
		}
	}
	& .drop_list {
		margin-bottom: 16px;
	}
	& .input_section {
		margin-bottom: 16px;
	}
	& textarea {
		margin-bottom: 38px;
	}
	& .footnote {
		opacity: 0.5;
	}
	& .close {
		position: absolute;
		width: 28px;
		height: 28px;
		cursor: pointer;
		top: 56px;
		right: 192px;
		&::before, &::after {
			position: absolute;
			content: "";
			width: 16px;
			height: 2px;
			border-bottom: 2px solid var(--white_color);
			left: 50%;
			top: 50%;
		}
		&::before {
			transform: translate(-50%, -50%) rotate(-45deg);
		}
		&::after {
			transform: translate(-50%, -50%) rotate(45deg);
		}
	}
}

select.drop {
	display: none;
}

.error_page {
	position: relative;
	min-height: 100vh;
	background-color: var(--green_color);
	overflow: hidden;
	color: var(--white_color);
	padding-top: 32px;
	text-align: center;
	padding-bottom: calc(273px - -187 * ((100vw - 360px) / (1920 - 360)));
	& .logo {
		display: block;
		background: url(../icons/logo.svg) center / contain no-repeat;
		width: 116px;
		height: 32px;
		margin: 0 auto calc(58px - -128 * ((100vw - 360px) / (1920 - 360))) auto;
		position: relative;
		z-index: 4;
	}
	& img {
		display: block;
	}
	& .error_image {
		max-width: 1180px;
		width: calc(222px - -958 * ((100vw - 360px) / (1920 - 360)));
		margin: 0 auto;
	}
	& .footer_info {
		position: absolute;
		padding: 24px;
		left: 50%;
		transform: translateX(-50%);
		bottom: 0;
		z-index: 4;
		& .copyright {
			margin-bottom: 8px;
		}
		& .links {
			margin-right: -16px;
			display: flex;
			flex-wrap: wrap;
			& a {
				display: block;
				margin: 0 16px 8px 0;
				text-decoration: underline;
                text-decoration-thickness: 0.5px;
                text-underline-offset: 4%;
			}
		}
	}
	& h2 {
		margin-bottom: 48px;
	}
	& .button {
		margin-bottom: calc(58px - -66 * ((100vw - 360px) / (1920 - 360)));
		position: relative;
		z-index: 4;
	}
	& .bg_image {
		position: absolute;
		width: 100%;
		height: calc(100% - 476px);
		bottom: 0;
		left: 0;
		& img {
			object-fit: cover;
			position: absolute;
			left: 0;
			top: 0;
		}
	}
	.rain {
		position: fixed;
	}
}

.page_banner {
	min-height: 100vh;
	display: flex;
	padding-bottom: 128px;
	position: relative;
	& .wrap {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	& header {
		& .wrap_nav {
			& .small_logo {
				display: block;
			}
		}
	}
	& .nav_bar {
		opacity: 1;
		visibility: visible;
		position: absolute;
		&.hide {
			opacity: 0;
			visibility: hidden;
		}
	}
	& .banner_image {
		position: fixed;
		left: 50%;
		transform: translateX(-50%);
		bottom: 0;
		z-index: 1;
		width: 100%;
		height: 100%;
		/* opacity: 0.2; */
		& img {
			display: block;
			object-fit: cover;
		}
		&::after {
			position: absolute;
			content: "";
			width: 100%;
			height: 100%;
			z-index: 1;
			background: radial-gradient(50% 50% at 50% 100%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
			left: 0;
			bottom: 0;
			transition: all 0.3s ease;
		}
		&.reduction::after {
			opacity: 0;
		}
	}
	& .wrap_content_banner {
		position: fixed;
		z-index: 2;
		color: var(--white_color);
		text-align: center;
		left: 50%;
		transform: translateX(-50%);
		bottom: 128px;
		& .small_title {
			margin-bottom: 8px;
		}
		& .big_tile {
			font-size: 96px;
			line-height: 104px;
			margin-bottom: 32px;
		}
		& .footnote {
			display: inline-block;
			padding-left: 28px;
			background: url(../icons/arrow_d_w.svg) left 0 center / contain no-repeat;
			background-size: 20px 20px;
			transition: opacity 0.3s ease;
			&.hide {
				opacity: 0;
				visibility: hidden;
			}
		}
	}
}

ul.breadcrumbs {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 32px;
	font-size: 13px;
	line-height: 16px;
	& li {
		list-style: none;
		margin-bottom: 16px;
		&:not(:last-child) {
			margin-right: 16px;
		}
		& a {
			display: block;
			padding-right: 32px;
			position: relative;
			&::after {
				position: absolute;
				content: "";
				width: 16px;
				height: 16px;
				right: 0;
				top: 0;
				background: url(../icons/title_decor.svg) center / contain no-repeat;
			}
		}
	}
}

.about_section {
	& .wrap {
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: flex-end;
	}
	& .wrap_bg_image {
		position: absolute;
		left: 124px;
		top: 0;
		width: calc(100% - 248px);
		height: 100%;
		z-index: -1;
		transition: width 1s ease;
		& img {
			display: block;
			object-fit: cover;
		}
		& .label_link {
			position: absolute;
			left: 0;
			top: 0;
			z-index: 1;
			color: var(--white_color);
		}
	}
	& .flex_about {
		display: flex;
		width: calc(50% - 4px);
		background-color: var(--white_color);
		padding: 0 0 8px 8px;
		transition: width 1s ease;
	}
	& .nav_wrap {
		background-color: var(--brown_color);
		flex: 2;
		padding: 48px 32px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-items: flex-end;
		text-align: right;
		margin-right: 8px;
		& .link_arrow {
			display: block;
			text-decoration: none;
			cursor: pointer;
			&:not(:last-child) {
				margin-bottom: 12px;
			}
		}
	}
	& .image {
		flex: 0;
		position: relative;
		transition: all 1s ease;
		& img {
			position: absolute;
			left: 0;
			top: 0;
			object-fit: cover;
		}
		&::after {
			display: block;
			content: "";
			padding-top: 100%;
		}
	}
	& .text_about {
		width: calc(50% - 4px);
		padding: 128px 24px 24px 24px;
		background-color: var(--white_color);
		font-size: 20px;
		line-height: 28px;
		opacity: 0;
		transition: opacity 0.5s ease 0s;
	}
	&.active_section {
		& .wrap_bg_image {
			width: calc(50% - 128px);
		}
		& .flex_about {
			width: 75%;
		}
		& .text_about {
			opacity: 1;
			transition-delay: 0.8s;
		}
		& .image {
			flex: 1;
		}
	}
}

.grey_section {
	background-color: var(--grey_color);
}

.column_list {
	display: flex;
	padding: 24px 0;
	flex-wrap: nowrap;
	& h4 {
		&:not(:last-child) {
			margin-bottom: 48px;
		}
	}
	& .item_column {
		padding: 0 24px;
		flex: 1;
		&:not(:last-child) {
			margin-right: 8px;
		}
	}
	& .wrap_value {
		&:not(:last-child) {
			margin-bottom: 32px;
		}
	}
	& .value {
		font-size: 20px;
		line-height: 28px;
	}
	& .file {
		display: block;
		padding-left: 36px;
		position: relative;
		&:not(:last-child) {
			margin-bottom: 32px;
		}
		&::before {
			position: absolute;
			content: "";
			width: 24px;
			height: 24px;
			left: 0;
			top: 0;
			background: url(../icons/download.svg) center / contain no-repeat;
		}
	}
	& .name {
		font-weight: 500;
	}
}

.catalog_list {
	padding-top: 24px;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: -24px;
	margin-right: -8px;
	overflow: hidden;
	& .item_catalog {
		width: calc(25% - 8px);
		margin: 0 8px 24px 0;
	}
	& .image_wrap {
		position: relative;
		margin-bottom: 16px;
		& img {
			position: absolute;
			left: 0;
			top: 0;
			object-fit: cover;
			transition: opacity 0.8s ease;
			opacity: 1;
			&:not(:first-child) {
				opacity: 0;
			}
		}
		&::after {
			display: block;
			content: "";
			padding-top: calc(100% - 120px);
		}
	}
}
.name_wrap {
	padding: 0 24px;
	& .name {
		margin-bottom: 4px;
	}
	& .copy_value {
		display: inline-block;
		padding-right: 20px;
		cursor: pointer;
		opacity: 0;
		visibility: hidden;
		transition: all 0.3s ease;
		position: relative;
		& svg {
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			right: 0;
			width: 16px;
			height: 16px;
			& path {
				transition: all 0.3s ease;
				&:last-child {
					display: none;
				}
			}
		}
		&.active {
			cursor: default;
			& svg {
				& path {
					&:first-child {
						display: none;
					}
					&:last-child {
						display: block;
					}
				}
			}
		}
	}
}

.inner_popup {
	display: none;
	position: absolute;
	left: 116px;
	top: 64px;
	width: calc(100% - 232px);
	height: calc(100% - 128px);
	background-color: var(--green_color);
	z-index: 4;
	color: var(--white_color);
	padding: 64px 48px;
	font-size: 20px;
	line-height: 28px;
	flex-direction: row-reverse;
	& .col_inner_popup {
		flex: 1;
		&:nth-child(3) {
			margin-right: 8px;
			padding-right: 64px;
			max-height: calc(100% - 32px);
			overflow: hidden;
			overflow-y: auto;
			padding-bottom: 32px;
		}
		& img {
			position: static;
			display: block;
			width: 100%;
		}
	}
	& .close_inner_popup {
		position: absolute;
		z-index: 6;
		width: 28px;
		height: 28px;
		left: 48px;
		bottom: 64px;
		background: url(../icons/close_w.svg) center / contain no-repeat;
		cursor: pointer;
	}
	& h3.mobile_title {
		display: none;
	}
}

.map_wrap {
	display: flex;
	justify-content: flex-end;
	position: relative;
	& .col {
		width: calc(50% - 4px);
		padding-left: 32px;
	}
	& .map {
		position: absolute;
		top: 0;
		left: 0;
		width: calc(50% - 4px);
		height: 100%;
		& .label_link {
			position: absolute;
			top: 64px;
			left: 116px;
			z-index: 2;
		}
	}
	& .select_city {
		cursor: pointer;
		padding-right: 32px;
		position: relative;
		display: inline-block;
		&::after {
			position: absolute;
			content: "";
			width: 28px;
			height: 28px;
			top: 0;
			right: 0;
			background: url(../icons/link_d_b.svg) center / contain no-repeat;
			transition: all 0.3s ease;
		}
	}
	& .wrap_nav_map {
		overflow: hidden;
		padding-top: 24px;
		padding-bottom: 24px;
		margin-bottom: 24px;
	}
	& .nav_map {
		display: grid;
		grid-template-rows: repeat(2, auto);
		grid-auto-flow: column;
		grid-auto-columns: calc(100% / 3);
		gap: 8px;
		& .item_nav {
			background-color: var(--white_color);
			padding: 32px 24px;
			min-height: 230px;
			cursor: pointer;
			& .title {
				font-size: 20px;
				line-height: 28px;
				margin-bottom: 16px;
			}
		}
	}
	& .nav_slider {
		display: flex;
		align-items: center;
		& .arrow {
			cursor: pointer;
			width: 20px;
			height: 20px;
			&.prev {
				margin-right: 24px;
				background: url(../icons/prev.svg) center / contain no-repeat;
			}
			&.next {
				background: url(../icons/next.svg) center / contain no-repeat;
			}
		}
	}
}

.col_popup {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	width: calc(50% - 4px);
	height: 100%;
	background-color: var(--grey_color);
	z-index: 2;
	padding: 64px 116px 64px 32px;
	& input.search_city {
		border-bottom: 0;
		color: var(--main_black);
		width: calc(100% - 28px);
		padding: 0;
		padding-bottom: 24px;
		&::placeholder {
			color: var(--placeholder_color);
		}
	}
	& .list_wrap {
		padding-top: 24px;
		overflow: hidden;
		overflow-y: auto;
		max-height: 100%;
		padding-right: 12px;
	}
	& .item_list {
		margin-bottom: 24px;
		cursor: pointer;
	}
	& .close_col_popup {
		position: absolute;
		width: 28px;
		height: 28px;
		background: url(../icons/close.svg) center / contain no-repeat;
		z-index: 1;
		top: 64px;
		right: 116px;
		cursor: pointer;
	}
}

.wrap_filter {
	display: flex;
	align-items: flex-start;
	margin-bottom: 24px;
	& .label_link {
		margin-bottom: 0;
		&:first-child {
			margin-right: 24px;
		}
		&:last-child {
			opacity: 0;
		}
	}
}

.filter {
	display: flex;
	justify-content: center;
	flex-grow: 1;
	margin-right: 24px;
	font-weight: 500;
	& .item_filter {
		cursor: pointer;
		text-align: center;
		padding-left: 24px;
		padding-right: 24px;
		&:not(:last-child) {
			margin-right: 8px;
		}
		& svg {
			display: block;
			width: 24px;
			height: 24px;
			margin: 0 auto 16px auto;
		}
	}
}

.wrap_slider {
	overflow: hidden;
	margin-left: -8px;
	margin-right: -8px;
	& .slider {
		display: flex;
		flex-wrap: nowrap;
		padding: 0 124px;
	}
	& .item_slider {
		margin-right: 8px;
		width: calc(36.4584vw - 8px);
		min-width: calc(36.4584vw - 8px);
	}
	& .wrap_image {
		position: relative;
		margin-bottom: 16px;
		cursor: pointer;
		& img {
			position: absolute;
			left: 0;
			top: 0;
			object-fit: cover;
			opacity: 0;
			transition: opacity 0.8s ease;
			&.active {
				opacity: 1;
			}
		}
		&::after {
			display: block;
			content: "";
			padding-top: calc(100% - 172px);
		}
		& .slider_dots {
			display: flex;
			align-items: center;
			position: absolute;
			left: 0;
			bottom: 0;
			z-index: 1;
			padding: 24px;
			width: 100%;
		}
		& .dot {
			width: 16px;
			height: 16px;
			border-radius: 50%;
			transition: all 0.3s ease;
			position: relative;
			&:not(:last-child) {
				margin-right: 16px;
			}
			&.active {
				background-color: var(--white_color);
			}
			&::after {
				position: absolute;
				content: "";
				width: 8px;
				height: 8px;
				left: 50%;
				top: 50%;
				transform: translate(-50%, -50%);
				border-bottom: 8px solid var(--white_color);
				border-radius: 50%;
			}
		}
	}
}

.nav_flex {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 32px;
	& .btn {
		width: 48px;
		height: 48px;
		border-radius: 50%;
		cursor: pointer;
		box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.5);
		&.zoom {
			background: url(../icons/zoom.svg) center / contain no-repeat;
			background-size: 20px 20px;
		}
		&.visualization_popup {
			background: url(../icons/360.svg) center / contain no-repeat;
			background-size: 20px 20px;
		}
	}
	& nav {
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 92px;
	}
	& .item_nav {
		width: 48px;
		height: 48px;
		overflow: hidden;
		border-radius: 50%;
		border: 2px solid var(--white_color);
		cursor: pointer;
		&:not(:last-child) {
			margin-right: 8px;
		}
		& img {
			display: block;
			object-fit: cover;
		}
		&.active {
			box-shadow: 0 0 0 2px var(--main_black);
		}
	}
}

.wrap_center_slider {
	width: 100%;
	overflow: hidden;
	& .center_slider {
		display: flex;
		flex-wrap: nowrap;
		justify-content: center;
		margin-bottom: 32px;
	}
	& .item_center_slider {
		margin-right: 8px;
		width: calc(25vw - 41px);
		min-width: calc(25vw - 41px);
		&.active {
			width: calc(50vw - 128px);
			min-width: calc(50vw - 128px);
		}
		& img {
			display: block;
			object-fit: cover;
		}
	}
	& .footer_center_slider {
		display: flex;
		justify-content: space-between;
		padding: 0 24px;
	}
	& .item_footer {
		&:not(:last-child) {
			margin-right: 24px;
		}
		& .val_item {
			font-size: 20px;
			line-height: 28px;
		}
		& .label {
			display: inline-block;
			font-size: 13px;
			line-height: 14px;
			border-radius: 4px;
			padding: 3px 7px;
			border: 1px solid var(--main_black);
			margin-left: 6px;
			vertical-align: middle;
		}
	}
}