/*
Theme Name: Дубрава
Author: aka_Koren
Author URI: https://vk.com/aka_koren
Description: Дубрава
Tags: Дубрава
Text Domain: Дубрава
*/
@font-face { font-family: Manrope; font-style: normal; font-weight: 200 800; font-display: swap; src: url(fonts/Manrope.ttf) format("truetype"); }
button:hover, input[type="submit"]:hover { cursor: pointer; }
input, button, select, textarea, a, img {
	transition: 250ms;
	text-decoration: none !important;
}
p { margin: 0 0 10px 0; }
.tac { text-align: center; }
.tal { text-align: left; }
.tar { text-align: right; }
.ttu { text-transform: uppercase; }
.m0 { margin: 0; }
.p0 { padding: 0; }
.posr { position: relative; }
.mb0 { margin-bottom: 0 !important; }
.db { display: block; }
.dib { display: inline-block; }
img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	vertical-align: middle;
}
:root {
	--main: #1A1917;
	--text: #6D675C;
	--brown: #A4612F;
	--green: #2B3327;
	--white: #ECE7DD;
	--bg: #F6F3EC;
	--link: #33302B;
	--border: #CFC9C1;
	--page: #42352A;
}
body {
	font-family: Manrope;
	font-weight: 400;
	overflow-x: hidden !important;
	color: var(--main);
	background-color: var(--white);
}
*, *:hover, *:focus, *:active, *:before, *:after {
	outline: none !important;
	box-sizing: border-box;
}
.row {
	display: flex;
	flex-flow: row wrap;
}

header {
	transition: 250ms;
	border-bottom: 1px solid var(--border);
}

body.home header { margin-bottom: 40px; }

header .row {
	min-height: 84px;
	align-items: center;
}

header ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 40px;
}

header ul li { position: relative; }

header ul li.menu-item-has-children > a {
	padding-right: 12px;
	position: relative;
}

header ul li.menu-item-has-children > a:after {
	position: absolute;
	content: url(img/submenu.svg);
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 8px;
	height: 6px;
	line-height: 0;
	transition: 250ms;
}

header ul li.menu-item-has-children:hover > a:after {
	top: 4px;
	transform: rotate(180deg);
}

header ul a {
	color: var(--link);
	font-size: 14px;
	font-weight: 500;
	display: flex;
	min-height: 44px;
	align-items: center;
}

header ul a:hover { color: var(--brown); }

header ul ul {
	position: absolute;
	flex-flow: column;
	gap: 0;
	background-color: var(--bg);
	padding: 8px;
	border-radius: 10px;
	border: 1px solid var(--border);
	z-index: 99999;
	width: 250px;
	left: 50%;
	transform: translateX(-50%);
	display: none;
}

header ul li:hover > ul { display: flex; }

header ul ul li { width: 100%; }

header ul ul a {
	min-height: 40px;
	padding: 4px 14px;
	border-radius: 7px;
}

header ul ul a:hover { background-color: #1A19170D; }

header .info {
	display: flex;
	justify-content: flex-end;
	gap: 30px;
}

header .info button {
	width: 120px;
	height: 42px;
	color: var(--white);
	background-color: var(--main);
	border: 1px solid var(--main);
	border-radius: 7px;
	font-size: 13.5px;
	font-weight: 600;
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0;
}

header .info button:hover {
	color: var(--main);
	background-color: var(--white);
}

header .info button:hover img { filter: brightness(0.2); }

header .tel {
	width: calc(100% - 136px);
	display: flex;
	flex-flow: column;
	gap: 2px;
	text-align: right;
}

header .tel a {
	font-size: 15.5px;
	font-weight: 700;
	color: var(--main);
}

header .tel a:hover { color: var(--brown); }

header .tel span {
	color: var(--text);
	font-size: 11px;
	font-weight: 500;
}

header .menu_button {
	margin-right: 4px;
	width: 32px;
	height: 20px;
	flex-flow: column;
	cursor: pointer;
	justify-content: space-between;
}

header .menu_button span {
	display: block;
	height: 3px;
	width: 100%;
	border-radius: 2px;
	background-color: var(--brown);
}

#mobile_menu {
	position: fixed;
	left: 0;
	top: -100%;
	width: 100vw;
	height: calc(100% - 60px);
	background-color: var(--bg);
	transition: 300ms;
	z-index: 999;
	padding: 16px;
	overflow-y: auto;
}

body.mobile-menu header { background-color: var(--bg); }

body.mobile-menu #mobile_menu { top: 60px; }

#mobile_menu ul {
	margin: 0 0 24px 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-flow: column;
	gap: 8px;
}

#mobile_menu ul li.menu-item-has-children { position: relative; }

#mobile_menu ul li.menu-item-has-children.active button img { transform: rotate(180deg); }

#mobile_menu ul ul {
	gap: 6px;
	padding-left: 16px;
	height: 0;
	overflow: hidden;
	transition: 250ms;
	margin: 0 0 0 -100vw;
}

#mobile_menu ul li.menu-item-has-children.active ul {
	height: auto;
	margin: 6px 0;
}

#mobile_menu a {
	font-size: 18px;
	font-weight: 600;
	color: var(--main);
}

#mobile_menu a:hover { color: var(--brown); }

#mobile_menu ul ul a { font-size: 16px; }

#mobile_menu ul button {
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	background-color: transparent;
	width: 20px;
	height: 20px;
}

#mobile_menu .info {
	position: absolute;
	bottom: 12px;
	width: calc(100% - 32px);
}

#mobile_menu .info, #mobile_menu .tel {
	display: flex;
	flex-flow: column;
	justify-content: center;
	text-align: center;
	gap: 10px;
}

#mobile_menu .tel a { font-size: 18px; }

#mobile_menu .open_request {
	width: 90%;
	margin: auto;
	height: 40px;
	color: var(--white);
	background-color: var(--main);
	border: 1px solid var(--main);
	border-radius: 7px;
	font-size: 13.5px;
	font-weight: 600;
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0;
}

#mobile_menu .open_request:hover { 
	color: var(--main);
	background-color: white;
}

#mobile_menu .open_request:hover img { filter: brightness(0.2); }

h1, h2, h3, h4, h5, h6 {
	line-height: 1.1;
	margin: 0 0 20px 0;
}

h1 {
	font-size: 44px;
	font-weight: 800;
}

h2 {
	font-size: 36px;
	font-weight: 800;
}

h3, h4, h5, h6 { font-weight: 700; }

h3 { font-size: 32px; }

h4 { font-size: 28px; }

h5 { font-size: 24px; }

h6 { font-size: 20px; }

h1 span, h2 span, h3 span, h4 span, h5 span, h6 span { color: var(--brown); } 

section#first { padding: 34px 0 80px 0; }

#first h1 {
	font-size: 52px;
	letter-spacing: -2px;
	margin-bottom: 26px;
}

#first .text {
	font-size: 20px;
	color: var(--text);
	line-height: 1.5;
	margin-bottom: 26px;
}

#first .text p:last-child { margin-bottom: 0; }

#first a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	border-radius: 7px;
	border: 1px solid var(--brown);
	background-color: var(--brown);
	font-size: 14.5px;
	font-weight: 600;
	padding: 16px 30px;
	color: var(--white);
	margin-bottom: 48px;
}

#first a:hover {
	color: var(--brown);
	background-color: var(--white);
}

#first a:hover img { filter: brightness(0.2); }

.numbers {
	display: flex;
	gap: 60px;
	flex-flow: row wrap;
	align-items: flex-start;
	justify-content: flex-start;
}

.numbers .block { position: relative; }

.numbers .block:after {
	position: absolute;
	content: '';
	width: 1px;
	height: 44px;
	margin: auto;
	right: -30px;
	top: 0;
	bottom: 0;
	background-color: var(--border);
}

.numbers .block:last-child:after { content: none; }

.numbers .block p {
	margin-bottom: 4px;
	letter-spacing: -3%;
	font-size: 30px;
	font-weight: 800;
}

.numbers .block span {
	color: var(--text);
	font-size: 12px;
	font-weight: 500;
}

#first .images {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: center;
	height: 100%;
}

#first .images .big {
	width: 66%;
	position: relative;
	height: 100%;
}

#first .images .big > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
}

#first .images .big span {
	position: absolute;
	bottom: 20px;
	left: 20px;
	background-color: #00000066;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	gap: 14px;
	color: white;
	font-size: 13.5px;
	font-weight: 500;
	padding: 10px 15px;
}

#first .images .imgs {
	width: 32%;
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	height: 100%;
}

#first .images .imgs img {
	width: 100%;
	height: calc(50% - 7px);
	object-fit: cover;
	border-radius: 10px;
}

section#we_work { padding: 80px 0; }

.section_title {
	margin-bottom: 44px;
	overflow: hidden;
}

.section_title span {
	text-transform: uppercase;
	font-size: 12px;
	line-height: 1;
	letter-spacing: 16%;
	font-weight: 600;
	position: relative;
}

.section_title span:after {
	position: absolute;
	content: '';
	height: 1px;
	width: 100vw;
	background-color: var(--border);
	top: 0;
	bottom: 0;
	left: calc(100% + 15px);
	margin: auto;
}

.we_work_text {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 44px;
	gap: 24px;
}

.we_work_text h2 {
	width: 45%;
	margin: 0;
	font-size: 30px;
	line-height: 1.2;
	font-weight: 500;
}

.we_work_text p {
	width: 50%;
	margin: 0;
	line-height: 1.5;
	color: var(--text);
	font-size: 18px;
}

.grab, .material_buttons {
	white-space: nowrap;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.grab::-webkit-scrollbar, .material_buttons::-webkit-scrollbar {
	display: none;
	width: 0;
	height: 0;
}

.grab.is-overflow {
	cursor: grab;
	user-select: none;
}

.grab.is-overflow * { cursor: grab; }

.grab.is-overflow a, .grab.is-overflow a * { cursor: pointer; }

.grab.is-grabbing, .grab.is-grabbing *, html.is-grabbing, html.is-grabbing * { cursor: grabbing; }

.grab.is-grabbing a, .grab.is-grabbing a *, html.is-grabbing .grab a, html.is-grabbing .grab a * { cursor: pointer; }

.grab * { white-space: normal; }

.we_work_blocks { border-top: 1px solid var(--border); }

.we_work_blocks .block {
	width: 245px;
	display: inline-block;
	vertical-align: top;
	padding: 32px 28px 0 28px;
	border-right: 1px solid var(--border);
	min-height: 244px;
}

.we_work_blocks .block:first-child { padding-left: 0; }

.we_work_blocks .block:last-child {
	padding-right: 0;
	border-right: none;
}

.we_work_blocks .block .icon {
	width: 28px;
	height: 28px;
	object-fit: contain;
	margin-bottom: 14px;
	display: block;
}

.we_work_blocks .block .info {
	min-height: 134px;
	margin-bottom: 14px;
}

.we_work_blocks .block .title {
	margin-bottom: 14px;
	font-weight: 700;
	letter-spacing: -1%;
	line-height: 1.25;
	font-size: 15px;
}

.we_work_blocks .block .text {
	margin: 0;
	color: var(--text);
	line-height: 1.5;
	font-size: 13.5px;
}

.we_work_blocks .block a {
	color: var(--text);
	font-size: 12.5px;
	line-height: 1;
	font-weight: 600;
}

.we_work_blocks .block a:hover { color: var(--brown); }

section#about {
	background-color: var(--bg);
	padding: 80px 0;
}

.about_wrap {
	display: flex;
	flex-flow: row wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
}

.about_wrap > img {
	width: 505px;
	object-fit: contain;
	border-radius: 4px;
}

.about_wrap .info { width: calc(100% - 570px); }

#about .text {
	margin-bottom: 30px;
	line-height: 1.5;
	font-size: 18px;
	color: var(--text);
}

#about .numbers { margin-bottom: 28px; }

#about .link {
	color: var(--main);
	font-size: 13.5px;
	line-height: 1;
	font-weight: 600;
}

#about .link:hover { color: var(--brown); }

section#production { padding: 80px 0; }

.production_title {
	margin-bottom: 44px;
	display: flex;
	justify-content: space-between;
	flex-flow: row wrap;
	align-items: flex-end;
	gap: 24px;
}

.production_title h1, .production_title h2 {
	width: 42%;
	margin: 0;
}

.production_title .content {
	width: 53%;
	margin: 0;
	color: var(--text);
	font-size: 18px;
	line-height: 1.5;
}

.row_gap { gap: 24px 0; }

.cat_block {
	background-color: #FAF8F2;
	border-radius: 4px;
	border: 1px solid var(--border);
}

.cat_block .img {
	display: block;
	width: 100%;
	height: 400px;
}

.cat_block .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cat_block .img:hover img { opacity: 0.8; }

.cat_block .info {
	border-top: 1px solid var(--border);
	padding: 22px 26px;
	position: relative;
}

.cat_block .title {
	display: inline-block;
	margin-bottom: 5px;
	color: var(--main);
	font-size: 20px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: -2%;
}

.cat_block .title:hover { color: var(--brown); }

.cat_block .text {
	margin: 0;
	color: var(--text);
	line-height: 1;
	font-size: 13.5px;
}

.cat_block .link {
	position: absolute;
	right: 26px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 38px;
	height: 38px;
	border-radius: 100%;
	border: 1px solid var(--border);
	display: flex;
	align-items: center;
	justify-content: center;
}

.cat_block .link:hover { border-color: var(--brown); }

.cat_block .link:hover img { opacity: 0.8; }

section#paint {
	background-color: var(--green);
	color: var(--white);
	padding: 80px 0;
}

.paint_wrap {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}

.paint_wrap .images {
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	gap: 20px;
	width: 460px;
}

.paint_wrap .images img {
	width: 100%;
	height: 270px;
	object-fit: cover;
	border-radius: 4px;
	border: 1px solid #ECE7DD29;
}

.paint_wrap .info { width: calc(100% - 520px); }

.paint_wrap span {
	text-transform: uppercase;
	margin-bottom: 24px;
	font-weight: 600;
	font-size: 12px;
	line-height: 1;
	letter-spacing: 16%;
	display: block;
}

.paint_wrap .info > p {
	margin-bottom: 24px;
	opacity: 0.72;
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: 0.2px;
}

.paint_blocks {
	border-top: 1px solid #ECE7DD29;
	margin-bottom: 24px;
}

.paint_blocks .block {
	border-bottom: 1px solid #ECE7DD29;
	padding: 18px 0 18px 36px;
	position: relative;
}

.paint_blocks .block img {
	position: absolute;
	left: 0;
	top: 18px;
	width: 20px;
	height: 20px;
	object-fit: contain;
}

.paint_blocks .block .title {
	font-weight: 600;
	font-size: 15px;
	line-height: 1;
	margin-bottom: 2px;
}

.paint_blocks .block .text {
	margin: 0;
	opacity: 0.66;
	font-size: 13.5px;
	line-height: 1;
}

.paint_links {
	display: flex;
	flex-flow: row wrap;
	gap: 24px;
}

.paint_links a {
	color: var(--white);
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1;
}

.paint_links a:hover { color: var(--brown); }

section#materials {
	background-color: var(--bg);
	padding: 80px 0;
}

#materials .content {
	margin-bottom: 26px;
	font-size: 17px;
	line-height: 1.5;
	color: var(--text);
}

.material_buttons {
	overflow-x: auto;
	white-space: nowrap;
	padding-bottom: 6px;
}

.material_buttons button {
	height: 36px;
	padding: 0 16px;
	color: var(--link);
	border: 1px solid var(--border);
	border-radius: 6px;
	font-size: 13.5px;
	font-weight: 600;
	margin-right: 6px;
}

.material_buttons button:last-child { margin-right: 0; }

.material_buttons button:hover, .material_buttons button.active { border-color: var(--main); }

.material_buttons button.active {
	background-color: var(--main);
	color: var(--white);
}

.material_wrap {
	padding: 32px;
	border-radius: 4px;
	border: 1px solid var(--border);
}

.material_block {
	display: none;
	align-items: center;
	justify-content: center;
	gap: 26px;
}

.material_block.active { display: flex; }

.material_block img {
	width: 132px;
	height: 132px;
	object-fit: cover;
}

.material_block .info { width: calc(100% - 158px); }

.material_block span {
	text-transform: uppercase;
	display: block;
	margin-bottom: 8px;
	line-height: 1;
	font-size: 11px;
	font-weight: 700;
	color: var(--brown);
	letter-spacing: 14%;
}

.material_block .title {
	margin-bottom: 8px;
	line-height: 1;
	font-size: 26px;
	letter-spacing: -2%;
	font-weight: 800;
}

.material_block .text {
	margin: 0;
	color: var(--text);
	font-size: 14.5px;
	line-height: 1.5;
}

section#steps { padding: 80px 0; }

#steps h2 { margin-bottom: 0; }

.steps_wrap {
	margin: 44px 0;
	border-top: 1px solid var(--border);
}

.steps_wrap .step_block {
	width: 306px;
	display: inline-block;
	vertical-align: top;
	padding: 32px 28px 0 28px;
	border-right: 1px solid var(--border);
	min-height: 180px;
}

.steps_wrap .step_block:first-child { padding-left: 0; }

.steps_wrap .step_block:last-child {
	padding-right: 0;
	border-right: none;
}

.steps_wrap .step_block .number {
	margin-bottom: 22px;
	line-height: 1;
	color: var(--brown);
	font-weight: 600;
	font-size: 18px;
}

.steps_wrap .step_block .title {
	line-height: 1;
	font-size: 18px;
	font-weight: 600;
}

.steps_wrap .step_block .text {
	margin: 0;
	color: var(--text);
	font-size: 14px;
	line-height: 1.5;
}

#steps button {
	height: 54px;
	padding: 0 30px;
	color: var(--white);
	background-color: var(--main);
	border: 1px solid var(--main);
	border-radius: 7px;
	font-size: 14.5px;
	font-weight: 600;
	display: flex;
	gap: 10px;
	align-items: center;
}

#steps button:hover {
	background-color: var(--white);
	color: var(--main);
}

#steps button:hover img { filter: brightness(0.2); }

section#our_works {
	background-color: var(--bg);
	padding: 80px 0;
}

#our_works.our_works_lkm, #our_works.our_works_page { background-color: var(--white); }

.our_works_page .works_wrap {
	border-top: 1px solid var(--border);
	padding-top: 40px;
}

.works_title {
	margin-bottom: 44px;
	display: flex;
	justify-content: space-between;
	flex-flow: row wrap;
	align-items: flex-end;
	gap: 24px;
}

.works_title h2 {
	width: 37%;
	margin: 0;
}

.works_title p {
	width: 58%;
	margin: 0;
	color: var(--text);
	font-size: 18px;
	line-height: 1.5;
}

body.category .works_title p { width: 100%; }

.our_works_page .works_title {
	margin-bottom: 0;
	gap: 0;
}

.works_title h1 {
	width: 100%;
	margin-bottom: 18px;
	font-size: 48px;
}

.works_title .text {
	color: var(--text);
	font-size: 18px;
	line-height: 1.5;
	margin-bottom: 40px;
}

.works_title .text p:last-child { margin-bottom: 0; }

.lkm_title {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 44px;
	gap: 44px;
}

.lkm_title .info { width: calc(100% - 338px); }

.lkm_title .content {
	color: var(--text);
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: -1%;
}

.lkm_title .content p { margin-bottom: 0; }

.lkm_title .links {
	width: 100%;
	max-width: 294px;
	display: flex;
	flex-flow: column;
	gap: 10px;
}

.lkm_title .links a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 52px;
	border-radius: 7px;
	background-color: var(--green);
	border: 1px solid var(--green);
	color: var(--white);
	font-size: 14px;
	font-weight: 600;
}

.lkm_title .links a:hover {
	color: var(--green);
	background-color: white;
}

.work_card {
	background-color: #FAF8F2;
	border-radius: 4px;
	border: 1px solid var(--border);
	position: relative;
}

a.work_card { display: block; }

.work_card > span {
	position: absolute;
	top: 14px;
	left: 14px;
	min-height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 4px 10px;
	border-radius: 4px;
	background-color: #1A1917D9;
	color: #ECE7DD;
	font-weight: 600;
	font-size: 11px;
	letter-spacing: 7%;
	line-height: 1;
	font-weight: 600;
	text-transform: uppercase;
	z-index: 99999;
}

.work_card img {
	width: 100%;
	height: 236px;
	object-fit: contain;
}

body.category .work_card img { height: 325px; }

.work_card .info {
	border-top: 1px solid var(--border);
	padding: 16px 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 6px;
}

.our_works_lkm .work_card .info {
	flex-flow: column;
	padding: 23px 26px;
}

.our_works_lkm .work_card img { height: auto; }

.work_card .info p {
	color: var(--main);
	margin: 0;
	font-size: 14px;
	line-height: 1;
	font-weight: 600;
	min-height: 30px;
	display: flex;
	align-items: center;
	width: calc(100% - 86px);
}

body.category .work_card .info p, .our_works_lkm .work_card .info p { width: 100%; }

.work_card .info .title {
	font-size: 20px;
	font-weight: 600;
}

.work_card .info .text {
	font-size: 13.5px;
	color: var(--text);
	min-height: 40px;
}

.work_card .info span {
	text-align: right;
	min-width: 80px;
	text-transform: uppercase;
	font-size: 11px;
	font-weight: 600;
	color: var(--text);
}

a.work_card p { transition: 250ms; }

a.work_card:hover { border-color: var(--main); }

a.work_card:hover img { opacity: 0.8; }

a.work_card:hover p { color: var(--brown); }

section#why_we { padding: 80px 0; }

.we_title {
	margin-bottom: 44px;
	display: flex;
	justify-content: space-between;
	flex-flow: row wrap;
	align-items: flex-end;
	gap: 24px;
}

.we_title h2 {
	width: 37%;
	margin: 0;
}

.we_title p {
	width: 58%;
	margin: 0;
	color: var(--text);
	font-size: 18px;
	line-height: 1.5;
}

.advants {
	border-top: 1px solid var(--border);
	display: flex;
	flex-flow: row wrap;
}

.advant_block {
	width: 50%;
	position: relative;
	min-height: 178px;
	padding: 38px 56px 38px 94px;
	border-bottom: 1px solid var(--border);
}

.advants .advant_block:nth-child(odd) {
	padding-left: 38px;
	border-right: 1px solid var(--border);
}

.advant_block span {
	position: absolute;
	left: 56px;
	top: 38px;
	text-transform: uppercase;
	color: var(--brown);
	font-size: 13px;
	font-weight: 700;
}

.advants .advant_block:nth-child(odd) span { left: 0; }

.advant_block .title {
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -2%;
}

.advant_block .text {
	margin: 0;
	color: var(--text);
	font-size: 14.5px;
	line-height: 1.5;
}

section#contact {
	background-color: var(--bg);
	padding: 80px 0;
}

.col_black {
	background-color: var(--main);
	color: var(--white);
}

.col_black .wrap {
	max-width: 570px;
	padding: 56px 32px;
}

.col_black .title {
	text-transform: uppercase;
	display: block;
	margin-bottom: 16px;
	letter-spacing: 16%;
	line-height: 1;
	font-weight: 600;
	font-size: 12px;
}

.col_black h2 {
	color: white;
	margin-bottom: 16px; 
}

.col_black .text {
	opacity: 0.7;
	font-size: 15.5px;
	line-height: 1.5;
	margin-bottom: 16px;
}

.col_black .links {
	margin-bottom: 16px;
	border-top: 1px solid #ECE7DD24;
}

.col_black .links p {
	border-bottom: 1px solid #ECE7DD24;
	display: flex;
	height: 50px;
	align-items: center;
	gap: 14px;
	color: #ECE7DDE5;
	font-size: 14.5px;
	font-weight: 500;
}

.col_black .links p img {
	width: 18px;
	height: 18px;
	object-fit: contain;
}

.col_black .links p a { color: #ECE7DDE5; }

.col_black .links p a:hover { color: white; }

.col_black .sub {
	display: inline-flex;
	height: 44px;
	padding: 4px 20px;
	color: white;
	gap: 10px;
	align-items: center;
	border-radius: 5px;
	background-color: #FFFFFF1A;
}

.col_white { background-color: white; }

.col_white form {
	max-width: 570px;
	padding: 48px 24px;
}

form { position: relative; }

form .title {
	margin-bottom: 6px;
	letter-spacing: -2%;
	line-height: 1;
	font-weight: 700;
	font-size: 22px;
}

form .text {
	margin-bottom: 40px;
	color: var(--text);
	font-size: 14px;
}

form .input_label {
	display: block;
	margin-bottom: 16px;
}

form .input_label .input_span {
	display: block;
	margin-bottom: 7px;
	line-height: 1;
	font-size: 12.5px;
	font-weight: 600;
}

form input, form select {
	width: 100%;
	height: 48px;
	padding: 0 15px;
	font-size: 15px;
	border-radius: 6px;
	border: 1px solid var(--border);
	appearance: none;
	color: var(--main);
}

form select {
	cursor: pointer;
	background-repeat: no-repeat;
	background-image: url(img/select.svg);
	background-position: calc(100% - 20px) center;
}

form .wpcf7-not-valid { border-color: red; }

form .wpcf7-not-valid-tip { display: none !important; }

form button {
	width: 100%;
	height: 48px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	color: var(--white);
	background-color: var(--brown);
	border: 1px solid var(--brown);
	border-radius: 7px;
	font-size: 14.5px;
	font-weight: 600;
	margin-bottom: 16px;
}

form button:hover {
	background-color: white;
	color: var(--brown);
}

form button:hover img { filter: brightness(0.2); }

form .accept {
	font-size: 13px;
	color: var(--text);
	line-height: 1.5;
}

form .accept a { color: var(--main); }

form .accept a:hover { color: var(--brown); }

form .wpcf7-response-output {
	margin: 0 auto !important;
	text-align: center;
	font-size: 14px;
	font-weight: 500;
	position: absolute;
	width: 90%;
	bottom: 12px;
	left: 0;
	right: 0;
}

.popup form .wpcf7-response-output {
	width: 100%;
	bottom: -36px;
}

footer {
	background-color: var(--main);
	color: #ECE7DD99;
	padding: 80px 0 34px 0;
}

footer .text {
	margin: 14px 0 18px 0;
	color: #ECE7DD8C;
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: -0.1px;
}

footer .socials {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-flow: row wrap;
}

footer .socials a {
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #ECE7DD29;
	border-radius: 8px;
}

footer .socials a:hover { opacity: 0.7; }

footer .menus {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 0 40px;
}

footer .title {
	text-transform: uppercase;
	line-height: 1;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 14%;
	color: var(--white);
}

footer ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-flow: column;
	gap: 8px;
}

footer a { color: #ECE7DD99; }

footer a:hover { color: white; }

footer ul a {
	padding: 2px 0;
	font-size: 14px;
	line-height: 1;
	font-weight: 500;
}

footer .info p {
	display: flex;
	align-items: center;
	font-size: 14px;
	gap: 10px;
	margin-bottom: 14px;
}

footer .info p:last-child { margin-bottom: 0; }

footer .last {
	padding-top: 26px;
	margin-top: 56px;
	border-top: 1px solid #ECE7DD24;
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: #ECE7DD73;
	font-size: 14px;
	letter-spacing: 0.2px;
}

footer .last p { margin-bottom: 0; }

#cookies {
	display: none;
	position: fixed;
	z-index: 99999;
	bottom: 60px;
	left: 0;
	right: 0;
	width: 90%;
	max-width: 560px;
	margin: auto;
	background-color: var(--main);
	padding: 20px 22px;
	border-radius: 8px;
	align-items: center;
	justify-content: space-between;
	box-shadow: 0 30px 70px -30px #00000059;
}

#cookies p {
	margin: 0;
	color: #ECE7DDC7;
	font-size: 13px;
	line-height: 1.5;
	width: calc(100% - 120px);
}

#cookies button {
	width: 102px;
	height: 44px;
	color: white;
	font-size: 14px;
	font-weight: 600;
	border-radius: 7px;
	background-color: var(--brown);
	border: 2px solid var(--brown);
}

#cookies button:hover {
	color: var(--brown);
	background-color: white;
}

.popup {
	display: none;
	z-index: 99999999;
	position: fixed;
	background-color: rgba(0,0,0,0.7);
	width: 100vw;
	height: 100vh;
	left: 0;
	top: 0;
}

.popup .wrap {
	position: absolute;
	width: 100%;
	max-width: 480px;
	height: 100%;
	max-height: 700px;
	overflow-y: auto;
	margin: auto;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 20px 40px 0 40px;
	border-radius: 8px;
	background-color: #F6F3EC;
	box-shadow: 0 40px 90px -30px #00000080;
}

#popup_zamer .wrap { max-height: 720px; }

.popup .popup_close {
	position: absolute;
	top: 40px;
	right: 40px;
	width: 38px;
	height: 38px;
	background-color: white;
	border: 1px solid var(--border);
	border-radius: 7px;
	z-index: 99999;
}

.popup .popup_close:hover { border-color: var(--main); }

.popup .popup_close:hover img { filter: brightness(0.2); }

.popup .title {
	padding-right: 40px;
	margin-bottom: 6px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -2%;
	font-size: 22px;
}

.popup .text {
	padding-right: 40px;
	margin-bottom: 16px;
	color: var(--text);
	font-size: 14px;
	line-height: 1;
}

#popup_thanks .wrap {
	max-height: 320px;
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	gap: 20px;
}

#popup_thanks .wrap * { margin-bottom: 0; }

#popup_thanks .title, #popup_thanks .text { padding-right: 0; }

#popup_thanks .text { font-size: 15px; }

#popup_thanks button {
	width: 116px;
	height: 50px;
	border-radius: 7px;
	border: 1px solid #1A191729;
	background-color: white;
	font-weight: 600;
	font-size: 14.5px;
	font-weight: 600;
}

#popup_thanks button:hover {
	background-color: var(--brown);
	color: white;
}

section#site_page { padding-bottom: 40px; }

#site_page .head {
	border-bottom: 1px solid var(--border);
	padding: 40px 0;
}

#site_page .sub {
	font-size: 18px;
	line-height: 1.5;
	color: var(--text);
}

#site_page .sub p { margin-bottom: 0; }


#site_page .content h1, #site_page .content h2, #site_page .content h3, #site_page .content h4, #site_page .content h5, #site_page .content h6 {
	margin-top: 30px;
	color: var(--main);
}

#site_page .content {
	padding: 40px 0;
	max-width: 800px;
	color: var(--page);
	font-size: 16px;
	line-height: 1.6;
}

#site_page .content a {
	font-weight: 500;
	color: var(--main);
}

#site_page .content a:hover { color: var(--brown); }

#site_page .content p { margin-bottom: 12px; }

#site_page .content p.update {
	color: var(--text);
	font-size: 14px;
	line-height: 1;
	font-weight: 500;
	margin-bottom: 30px;
}

#site_page .content ul {
	margin: 0 0 12px 0;
	padding-left: 20px;
}

#site_page .content ul li::marker { color: var(--brown); }

section#page404 .wrap {
	padding: 80px 0 120px 0;
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
	gap: 24px;
	max-width: 440px;
	margin: auto;
	text-align: center;
}

#page404 .wrap * { margin: 0 !important; }

#page404 h1 {
	line-height: 1;
	font-size: 150px;
}

#page404 .title {
	font-size: 34px;
	line-height: 1;
	font-weight: 800;
	letter-spacing: -3%;
}

#page404 .text {
	color: var(--text);
	font-size: 17px;
	line-height: 1.5;
}

#page404 .links {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

#page404 .links a {
	color: white;
	background-color: var(--brown);
	border: 1px solid var(--brown);
	height: 54px;
	padding: 0 28px;
	font-size: 14.5px;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	border-radius: 7px;
}

#page404 .links a:hover {
	color: var(--brown);
	background-color: white;
}

#page404 .links a:hover img { filter: brightness(0.2); }

#page404 .links a:last-child {
	background-color: white;
	color: var(--main);
	border-color: var(--border);
}

#page404 .links a:last-child img { filter: invert(1); }

#page404 .links a:last-child:hover {
	background-color: var(--main);
	color: white;
}

#page404 .links a:last-child:hover img { filter: invert(0); }

.filter {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	margin-bottom: 40px;
}

.filter .count {
	color: var(--text);
	line-height: 1;
	font-size: 13.5px;
	font-weight: 500;
	flex-shrink: 0;
	white-space: nowrap;
	text-align: right;
}

.filter .buttons {
	flex: 1;
	display: flex;
	flex-flow: row wrap;
	gap: 10px;	
}

.filter .buttons a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-color: transparent;
	white-space: nowrap;
	border-radius: 999px;
	border: 1px solid var(--border);
	padding: 0 18px;
	height: 40px;
	color: #33302B;
	font-size: 14px;
	font-weight: 600;
}

.filter .buttons a:hover {
	color: var(--main);
	border-color: var(--main);
}

.filter .buttons a.active {
	border-color: var(--main);
	color: var(--white);
	background-color: var(--main);
}

.pagination {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 24px;
}

.pagination * {
	width: 46px;
	height: 46px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background-color: white;
	color: #33302B;
	font-size: 15px;
	font-weight: 600;
	border: 1px solid var(--border);
}

.pagination .arrow {
	font-weight: 400;
	font-size: 24px;
}

.pagination a:hover {
	border-color: var(--main);
	color: var(--main);
}

.pagination span {
	color: var(--white);
	background-color: var(--main);
}

.pagination span.gap {
	width: auto;
	padding: 0 2px;
	border: none;
	background: transparent;
	color: var(--text);
	font-weight: 500;
}

.crumbs {
	margin-bottom: 18px;
	color: #CCC7BD;
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
}

.crumbs a { color: #6D675C; }

.crumbs a:hover { color: var(--brown); }

.crumbs .current-item { color: var(--main); }

.crumbs .mark { padding: 0 6px; }

section#delivery {
	padding: 40px 0;
	border-bottom: 1px solid var(--border);
}

#delivery h1 { margin-bottom: 18px; }

#delivery .text {
	max-width: 720px;
	color: var(--text);
	font-size: 18px;
	line-height: 1.5;
}

#delivery .text p:last-child { margin-bottom: 0; }

section#setup {
	color: var(--white);
	background-color: var(--green);
	padding: 80px 0;
}

#setup h2 {
	max-width: 560px;
	margin-bottom: 10px;
}

#setup .info {
	max-width: 640px;
	margin-bottom: 50px;
	font-size: 18px;
	line-height: 1.5;
}

.setup_block {
	position: relative;
	text-align: center;
}

.setup_block:after {
	position: absolute;
	content: '';
	height: 2px;
	width: 300px;
	background-color: #ECE7DD47;
	top: 39px;
	left: 50%;
	z-index: 1;
}

.setup_wrap .col-xs-12:last-child .setup_block:after { content: none; }

.setup_block .icon {
	display: flex;
	width: 78px;
	height: 78px;
	border-radius: 100%;
	border: 1px solid var(--border);
	position: relative;
	background-color: var(--green);
	overflow: hidden;
	align-items: center;
	justify-content: center;
	margin: 0 auto 22px auto;
	z-index: 2;
}

.setup_block .icon span {
	position: absolute;
	top: -6px;
	left: 0;
	right: 0;
	width: 26px;
	height: 26px;
	margin: auto;
	border-radius: 100%;
	color: white;
	background-color: var(--brown);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	padding-top: 2px;
}

.setup_block .title {
	margin-bottom: 8px;
	color: white;
	font-size: 18px;
	letter-spacing: -1%;
	font-weight: 600;
}

.setup_block .text {
	margin-bottom: 0;
	font-size: 14px;
	line-height: 1.5;
	color: #ECE7DD;
}

section#include { padding: 80px 0; }

.include_block {
	background-color: #FAF8F2;
	padding: 34px 32px;
	border-radius: 8px;
	border: 1px solid var(--border);
}

.include_block .icon {
	width: 52px;
	height: 52px;
	margin-bottom: 20px;
	border-radius: 12px;
	background-color: var(--brown);
	display: flex;
	align-items: center;
	justify-content: center;
}

.include_block p {
	margin-bottom: 16px;
	font-size: 22px;
	font-weight: 600;
	letter-spacing: -2%;
	line-height: 1;
}

.include_block ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-flow: column;
	gap: 11px;
}

.include_block ul li {
	padding-left: 28px;
	height: 20px;
	display: flex;
	align-items: center;
	font-size: 14.5px;
	line-height: 1;
	color: #42352A;
	position: relative;
}

.include_block ul li:before {
	position: absolute;
	content: url(img/li.svg);
	width: 17px;
	height: 17px;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	display: flex;
	align-items: center;
	justify-content: center;
}

section#location {
	background-color: var(--bg);
	padding: 80px 0;
}

#location .row { align-items: center; }

#location img {
	border-radius: 10px;
	border: 1px solid var(--border);
}

#location h2 {
	font-size: 28px;
	margin-bottom: 14px;
}

#location .text {
	margin-bottom: 30px;
	line-height: 1.5;
	font-size: 17px;
	color: var(--text);
}

.location_blocks {
	display: flex;
	flex-flow: row wrap;
	gap: 18px;
}

.location_blocks .block {
	width: calc(50% - 9px);
	padding: 22px 24px;
	background-color: #FAF8F2;
	border: 1px solid var(--border);
	border-radius: 8px;
}

.location_blocks .block p {
	margin-bottom: 7px;
	font-size: 27px;
	font-weight: 700;
	letter-spacing: -3%;
	line-height: 1;
}

.location_blocks .block span {
	font-size: 13.5px;
	line-height: 1;
	color: var(--text);
}

section#faq { padding: 80px 0; }

#faq h2 {
	text-align: center;
	font-size: 36px;
	margin-bottom: 32px;
	line-height: 1.1;
}



.faq_item {
	cursor: pointer;
	position: relative;
	padding: 24px 0;
	border-bottom: 1px solid var(--border);
}

.faq_item:first-child { border-top: 1px solid var(--border); }

.faq_item:before {
	position: absolute;
	content: '';
	top: 24px;
	right: 0;
	width: 26px;
	height: 26px;
	border-radius: 100%;
	border: 1px solid var(--border);
	display: flex;
	transition: 250ms;
}

.faq_item:hover:before, .faq_item.active:before { border-color: var(--brown); }

.faq_item.active:before { background-color: var(--brown); }

.faq_item:after {
	position: absolute;
	content: url(img/faq.svg);
	right: 0;
	top: 24px;
	width: 26px;
	height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: 250ms;
}

.faq_item.active:after {
	transform: rotate(180deg);
	filter: brightness(0) invert(1);
}

.faq_item .title {
	margin: 0;
	font-size: 18px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -1%;
	padding-right: 30px;
}

.faq_item:hover .title { color: black; }

.faq_item .text {
	height: 0;
	opacity: 0;
	transition: 250ms;
	margin: 0;
	color: var(--text);
	font-size: 15.5px;
	line-height: 1.6;
	padding-right: 30px;
}

.faq_item.active .text {
	opacity: 1;
	height: auto;
	margin-top: 18px;
}

section#workshop, section#experience { padding: 80px 0; }

#workshop .row, #experience .row { align-items: center; }

#workshop .img { border-radius: 10px;				 }

#workshop h2, #workshop p { width: calc(100% - 40px); }

#workshop p {
	font-size: 16.5px;
	line-height: 1.6;
	margin-bottom: 24px;
	color: var(--text);
}

#workshop .info {
	color: var(--white);
	background-color: var(--green);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 56px;
	padding: 0 24px;
	border-radius: 12px;
	gap: 10px;
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1;
}

#workshop .info img {
	margin-right: 3px;
	width: 24px;
	height: 24px;
	object-fit: contain;
}

#workshop .info span:last-child {
	font-size: 12px;
	font-weight: 400;
}

section#experience { background-color: var(--bg); }

#experience h2, #experience .text { width: calc(100% - 90px); }

#experience .text {
	font-size: 16.5px;
	line-height: 1.6;
	margin-bottom: 0;
	color: var(--text);
}

.exp_blocks {
	display: flex;
	flex-flow: row wrap;
	gap: 20px;
}

.exp_blocks .exp_block {
	width: calc(50% - 10px);
	padding: 26px;
	border-radius: 14px;
	border: 1px solid var(--border);
	background-color: var(--white);
	display: flex;
	flex-flow: column;
	gap: 18px;
}

.exp_blocks .exp_block .icon {
	background-color: white;
	width: 46px;
	height: 46px;
	border-radius: 100%;
	border: 1px solid var(--border);
	display: flex;
	align-items: center;
	justify-content: center;
}

.exp_blocks .exp_block p {
	margin: 0;
	line-height: 1;
	font-size: 52px;
	font-weight: 800;
	letter-spacing: -3%;
}

.exp_blocks .exp_block p span { color: var(--brown); }

.exp_blocks .exp_block > span {
	line-height: 1;
	font-size: 14.5px;
	font-weight: 500;
	color: var(--text);
}

.exp_blocks .exp_block:first-child {
	background-color: var(--brown);
	border-color: var(--brown);
	color: white;
}

.exp_blocks .exp_block:first-child .icon { background-color: #FFFFFF24; }

.exp_blocks .exp_block:first-child > span { color: white; }

section#principles { padding: 80px 0; }

#principles h2 { margin-bottom: 44px; }

.principle {
	background-color: var(--white);
	padding: 34px;
	border-radius: 10px;
	border: 1px solid var(--border);
}

.principle .icon {
	border-radius: 14px;
	width: 54px;
	height: 54px;
	background-color: var(--brown);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
}

.principle .title {
	font-size: 22px;
	line-height: 1;
	letter-spacing: -2%;
	font-weight: 600;
}

.principle .text {
	margin-bottom: 0;
	color: var(--text);
	font-size: 15px;
	line-height: 1.5;
}

section#we_do {
	padding: 80px 0;
	background-color: var(--bg);
}

#we_do h2 {
	margin-bottom: 14px;
	max-width: 560px;
}

#we_do .text {
	max-width: 640px;
	margin-bottom: 44px;
	color: var(--text);
	font-size: 18px;
	line-height: 1.5;
}

.do_steps {
	white-space: nowrap;
	margin-bottom: 44px;
}

.do_steps .do_step {
	white-space: normal;
	display: inline-flex;
	margin-right: 14px;
	position: relative;
	width: 192px;
	flex-flow: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.do_steps .do_step:after {
	position: absolute;
	content: '';
	height: 2px;
	width: 200px;
	left: 50%;
	top: 33px;
	background-color: var(--border);
}

.do_steps .do_step:last-child { margin-right: 0; }

.do_steps .do_step:last-child:after { content: none; }

.do_steps .do_step .icon {
	margin: 0 auto 16px auto;
	position: relative;
	z-index: 2;
	background-color: #FAF8F2;
	width: 68px;
	height: 68px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	border: 1px solid var(--border);
}

.do_steps .do_step p {
	margin-bottom: 4px;
	line-height: 1;
	letter-spacing: -1%;
	font-size: 14.5px;
	font-weight: 600;
}

.do_steps .do_step span {
	color: var(--text);
	font-size: 12.5px;
	line-height: 1.3;
}

.do_block {
	position: relative;
	border-radius: 8px;
	overflow: hidden;
	height: 300px;
}

.do_block img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.do_block p {
	position: absolute;
	bottom: 14px;
	padding: 0 16px;
	color: var(--white);
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1;
}

section#history { padding: 80px 0; }

#history h2 {
	text-align: center;
	margin-bottom: 44px;
}

.history_wrap {
	margin: auto;
	max-width: 860px;
}

.history_block {
	padding-bottom: 50px;
	position: relative;
	overflow: hidden;
}

.history_block:last-child { padding-bottom: 0; }

.history_block .date {
	display: inline-block;
	vertical-align: top;
	width: 125px;
	text-align: right;
	color: var(--brown);
	font-size: 30px;
	line-height: 1;
	letter-spacing: -3%;
	font-weight: 800;
	position: relative;
}

.history_block .date:before {
	position: absolute;
	content: '';
	z-index: 2;
	width: 16px;
	height: 16px;
	border-radius: 100%;
	border: 2px solid var(--brown);
	background-color: #F6F3EC;
	top: 0;
	right: -40px;
}

.history_block .date:after {
	position: absolute;
	content: '';
	z-index: 1;
	width: 2px;
	height: 200px;
	background-color: var(--border);
	top: 10px;
	right: -33px;
}

.history_block:last-child .date:before { background-color: var(--brown); }

.history_block:last-child .date:after { content: none; }

.history_block .info {
	display: inline-block;
	vertical-align: top;
	width: calc(100% - 130px);
	padding-left: 66px;
}

.history_block .sub {
	margin-bottom: 9px;
	letter-spacing: 14%;
	line-height: 1;
	font-size: 11px;
	font-weight: 700;
	color: var(--brown);
}

.history_block .title {
	margin-bottom: 9px;
	line-height: 1;
	letter-spacing: -2%;
	font-size: 21px;
	font-weight: 600;
}

.history_block .text {
	margin-bottom: 0;
	color: var(--text);
	line-height: 1.5;
	font-size: 15px;
}

.work_card .images .slick-arrow {
	right: 0;
    width: 24px;
    height: 32px;
	opacity: 1 !important;
}

.work_card .images .slick-arrow.slick-prev {
	right: unset;
	left: 0;
}

.captcha_wrap { margin-bottom: 16px; }

@media(min-width: 1270px) {
	footer .col-md-3 { width: 28%; }
	footer .col-md-5 { width: 38.66666667%; }
}

@media(min-width: 992px) and (max-width: 1269px) {
	.work_card .info .title { font-size: 16px; }
	.work_card .info .text { font-size: 12px; }
	header ul { gap: 10px; }
	header ul a {
		font-size: 12px;
		letter-spacing: -0.1px
	}
	section#first { padding-bottom: 60px; }
	section#we_work, section#about, section#production, section#paint, section#materials,
	section#steps, section#our_works, section#why_we, section#contact { padding: 60px 0; }
	footer { padding-top: 60px; }
	h1, h2 { font-size: 34px; }
	.we_work_blocks .block { padding: 28px 20px 0 20px; }
	.about_wrap > img { width: 400px; }
	.about_wrap .info { width: calc(100% - 424px); }
	.material_buttons button {
		height: 32px;
		padding: 0 14px;
	}
	.material_wrap { padding: 16px; }
	footer .info { margin-left: -10px; }
	footer .info p {
		font-size: 12px;
		letter-spacing: -0.2px;
	}
	footer .menus { padding: 0 30px; }
	.setup_block:after { width: 210px; }
	.include_block { padding: 30px 20px; }
	#workshop p { line-height: 1.4; }
}

@media(min-width: 768px) and (max-width: 991px) {
	h1, h2 { font-size: 32px; }
	h3 { font-size: 28px; }
	h4 { font-size: 24px; }
	h5 { font-size: 22px; }
	h6 { font-size: 20px; }
	h1 br, h2 br, h3 br, h4 br, h5 br, h6 br { display: none; }
	header { padding-top: 10px; }
	header nav { padding: 5px 0; }
	header { margin-bottom: 0; }
	.section_title { margin-bottom: 32px; }
	section#first { padding-bottom: 44px; }
	#first h1 { font-size: 44px; }
	#first .info {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 24px;
	}
	#first a { margin: 0; }
	#first .numbers { gap: 30px; }
	#first .numbers .block:after { right: -15px; }
	section#we_work, section#about, section#production, section#paint, section#materials,
	section#steps, section#our_works, section#why_we, section#contact { padding: 44px 0; }
	footer { padding-top: 44px; }
	#first .text, #about .text, .we_work_text p, .production_title .content, .paint_wrap .info > p, .works_title p, .we_title p { font-size: 16px; }
	.we_work_text, .production_title, .paint_wrap, .works_title, .we_title {
		flex-flow: column;
		margin-bottom: 24px;
		gap: 16px;
	}
	.we_work_text h2, .we_work_text p, .production_title h1, .production_title h2, .production_title .content, .paint_wrap .info,
	.paint_wrap .images, .works_title h2, .works_title p, .we_title h2, .we_title p { width: 100%; }
	.we_work_blocks .block { padding: 28px 20px 0 20px; }
	.about_wrap {
		flex-flow: column;
		justify-content: center;
		align-items: center;
	}
	.about_wrap > img {
		width: auto;
		height: 400px;
	}
	.about_wrap .info { width: 100%; }
	.cat_block .info { padding: 22px 12px; }
	.cat_block .link { right: 12px; }
	.cat_block .title { font-size: 18px; }
	.cat_block .text { font-size: 11px; }
	.paint_wrap .images {
		flex-flow: row;
	}
	.paint_wrap .images img {
		height: auto;
		width: 49%;
	}
	.material_wrap { margin-top: 16px; }
	.work_card .info { padding: 16px; }
	.advant_block, .advants .advant_block:nth-child(odd) {
		padding: 24px 24px 24px 38px;
		min-height: 1px;
	}
	.advant_block span, .advants .advant_block:nth-child(odd) span {
		top: 24px;
		left: 10px;
	}
	.advant_block .title { font-size: 16px; }
	.advant_block .text { font-size: 12px; }
	#contact .row {
		max-width: 580px;
		margin: auto;
	}
	.col_black .wrap, .col_white form {
		max-width: 100%;
		margin: auto;
		padding: 32px;
	}
	footer .container { position: relative; }
	footer .socials {
		position: absolute;
		right: 15px;
		top: 0;
	}
	footer .menus {
		margin: 12px 0 24px 0;
		padding: 0;
	}
	footer nav { width: 50%; }
	footer .last { margin-top: 26px; }
	section#page404 .wrap { padding: 40px 0 60px 0; }
	#site_page .head { padding: 30px 0; }
	#site_page .sub { font-size: 16px; }
	#site_page .content {
		padding: 30px 0 0 0;
		font-size: 14px;
	}
	.our_works_lkm .work_card .info { padding: 16px; }
	.work_card .info .title { font-size: 16px; }
	.work_card .info .text { font-size: 12px; }
	.lkm_title {
		flex-flow: column;
		gap: 16px;
	}
	.lkm_title .info, .lkm_title .links { width: 100%; }
	.lkm_title .links {
		max-width: 100%;
		flex-flow: row wrap;
	}
	.lkm_title .links a {
		height: 44px;
		width: auto;
		padding: 0 12px;
	}
	.works_title h1 { font-size: 40px; }
	.setup_wrap .col-xs-12:nth-child(even) .setup_block:after { content: none; }
	.setup_block:after { width: 400px; }
	.include_block { padding: 24px 16px; }
	.include_block p { font-size: 18px; }
	.include_block ul li {
		font-size: 12px;
		padding-left: 16px;
	}
	.include_block ul li:before { left: -10px; }
	#location .text { font-size: 16px; }
	.location_blocks { margin-top: 16px; }
	.faq_item { padding: 20px 0; }
	.faq_item:before, .faq_item:after { top: 20px; }
	.faq_item .text {
		font-size: 15px;
		padding-right: 0;
	}
	section#setup, section#include, section#location, section#faq, section#workshop, section#experience,
	section#principles, section#we_do, section#history { padding: 60px 0; }
	#workshop .info, #experience .text { margin-bottom: 16px; }
	.do_block { height: 240px; }
	.do_block p {
		bottom: 12px;
		padding: 0 12px;
	}
}

@media(min-width: 1px) and (max-width: 767px) {
	.works_title h1 { font-size: 32px; }
	.our_works_lkm .work_card .info { padding: 16px; }
	.lkm_title .content { font-size: 16px; }
	.work_card .info .title { font-size: 16px; }
	.work_card .info .text { font-size: 12px; }
	.lkm_title {
		flex-flow: column;
		gap: 16px;
	}
	.lkm_title .info, .lkm_title .links { width: 100%; }
	.lkm_title .links { max-width: 100%; }
	.lkm_title .links a { height: 44px; }
	header {
		position: relative;
		z-index: 9999;
	}
	header .row { min-height: 60px; }
	header .menu_button { display: flex !important; }
	h1, h2, .we_work_text h2 { font-size: 24px; }
	h3 { font-size: 20px; }
	h4 { font-size: 20px; }
	h5 { font-size: 20px; }
	h6 { font-size: 18px; }
	h1 br, h2 br, h3 br, h4 br, h5 br, h6 br { display: none; }
	#first h1 { font-size: 32px; }
	header nav { padding: 5px 0; }
	header { margin-bottom: 0; }
	.section_title { margin-bottom: 24px; }
	section#first { padding-bottom: 36px; }
	section#we_work, section#about, section#production, section#paint, section#materials,
	section#steps, section#our_works, section#why_we, section#contact { padding: 32px 0; }
	footer { padding-top: 32px; }
	#first .text, #about .text, .we_work_text p, .production_title .content, .paint_wrap .info > p, .works_title p, .we_title p { font-size: 12px; }
	.we_work_text, .production_title, .paint_wrap, .works_title, .we_title {
		flex-flow: column;
		margin-bottom: 24px;
		gap: 16px;
	}
	.we_work_text h2, .we_work_text p, .production_title h1, .production_title h2, .production_title .content, .paint_wrap .info,
	.paint_wrap .images, .works_title h2, .works_title p, .we_title h2, .we_title p { width: 100%; }
	.we_work_blocks .block { min-height: 200px	; }
	.we_work_blocks .block .info { min-height: 100px; }
	.numbers {
		justify-content: space-between;
		gap: 10px 0;
	}
	.numbers .block {
		width: 33%;
		text-align: center;
	}
	.numbers .block:after { right: -1px; }
	.numbers .block p { font-size: 24px; }
	.numbers .block span { font-size: 10px; }
	#first .text, #first a, #first .numbers { margin-bottom: 20px; }
	#first .images {
		flex-flow: column;
		gap: 6px;
	}
	#first .images .big { width: 100%; }
	#first .images .big span {
		left: 10px;
		gap: 12px;
		font-size: 12px;
		padding: 8px 10px;
	}
	#first .images .imgs {
		width: 100%;
		flex-flow: row;
		justify-content: space-between;
	}
	#first .images .imgs img {
		height: auto;
		width: 48%;
	}
	.we_work_blocks .block { padding: 16px 16px 0 16px; }
	.about_wrap {
		flex-flow: column;
		justify-content: center;
		align-items: center;
	}
	.about_wrap > img {
		width: 100%;
		height: auto;
		max-height: 280px;
	}
	.about_wrap .info { width: 100%; }
	.cat_block .img { height: 200px; }
	.cat_block .info { padding: 12px; }
	.cat_block .title { font-size: 16px; }
	.cat_block .text { font-size: 10px; }
	.cat_block .link { display: none; }
	.paint_wrap .images {
		gap: 2px;
		flex-flow: row;
	}
	.paint_wrap .images img {
		height: auto;
		width: 49%;
	}
	.paint_blocks .block { padding: 16px 0 16px 30px; }
	.paint_blocks .block .title {
		display: flex;
		min-height: 20px;
		align-items: center;
		margin-bottom: 8px;
		font-size: 14px;
	}
	.paint_blocks .block .text {
		font-size: 12px;
		margin-left: -30px;
	}
	.paint_links { gap: 16px; }
	.paint_links a { font-size: 12px; }
	.material_buttons button {
		margin-right: 2px;
		height: 30px;
		font-size: 12px;
		padding: 0 12px;
	}
	.material_wrap {
		margin-top: 16px;
		padding: 10px;
	}
	.material_block {
		flex-flow: column;
		position: relative;
		padding-top: 112px;
	}
	.material_block img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100px;
		height: 100px;
	}
	.material_block .info { width: 100%; }
	.material_block span, .material_block .title {
		position: absolute;
		right: 4px;
		top: 4px;
		font-size: 10px;
	}
	.material_block .title {
		font-size: 20px;
		top: 24px;
	}
	.material_block .text { font-size: 14px; }
	.steps_wrap .step_block {
		width: 245px;
		padding: 16px 16px 0 16px;
	}
	.work_card .info { padding: 14px 8px; }
	.advant_block, .advants .advant_block:nth-child(odd) {
		width: 100%;
		border-right: none;
		min-height: 1px;
		padding: 16px 16px 16px 38px;
	}
	.advant_block span, .advants .advant_block:nth-child(odd) span {
		left: 0;
		top: 16px;
	}
	.advant_block .title { font-size: 18px; }
	.advant_block .text {
		font-size: 14px;
		margin-left: -38px;
	}
	.col_black .wrap, .col_white form {
		max-width: 100%;
		padding: 24px 6px;
	}
	.col_black .text { font-size: 14px; }
	footer .logo {
		display: block;
		width: 180px;
	}
	footer .container { position: relative; }
	footer .socials {
		position: absolute;
		right: 15px;
		top: 0;
	}
	footer .menus {
		margin: 8px 0 24px 0;
		padding: 0;
	}
	footer ul { gap: 4px; }
	footer ul a, footer .info p { font-size: 11px; }
	footer .last {
		margin-top: 26px;
		flex-flow: column;
		gap: 10px;
		font-size: 12px;
	}
	.popup .wrap {
		padding: 32px 16px;
		border-radius: 0;
	}
	.popup .popup_close {
		top: 30px;
		right: 14px;
	}
	.popup .title {
		font-size: 18px;
		margin-bottom: 10px;
	}
	.popup .text { font-size: 12px; }
	.popup form .wpcf7-response-output {
		font-size: 12px;
		padding: 2px 4px;
}
	form .accept { font-size: 12px; }
	#first a, #about .link, #steps button, .col_black .sub {
		display: flex;
		width: 100%;
		text-align: center;
		justify-content: center;
	}
	.steps_wrap .step_block { min-height: 140px; }
	.steps_wrap .step_block .number { margin-bottom: 10px; }
	.steps_wrap .step_block .title { font-size: 16px; }
	.steps_wrap .step_block .text { font-size: 12px; }
	section#page404 .wrap {
		max-width: 300px;
		padding: 40px 0 60px 0;
	}
	#page404 h1 { font-size: 100px; }
	#page404 .title { font-size: 24px; }
	#page404 .text { font-size: 14px; }
	#page404 .links { flex-flow: column; }
	#page404 .links a { width: 100%; }
	#site_page .head { padding: 30px 0; }
	#site_page .sub { font-size: 15px; }
	#site_page .content {
		padding: 30px 0 0 0;
		font-size: 14px;
	}
	.works_title .text {
		margin-bottom: 30px;
		font-size: 16px;
	}
	.our_works_page .works_wrap { padding-top: 30px; }
	.filter {
		flex-flow: column;
		margin-bottom: 24px;
	}
	.filter .count {
		width: auto;
		text-align: left;
		font-size: 14px;
	}
	.filter .buttons {
		width: 100%;
		display: block;
		padding-bottom: 6px;
		white-space: nowrap;
		overflow-x: auto;
	}
	.filter .buttons a {
		font-size: 12px;
		padding: 0 12px;
		height: 32px;
		border-radius: 16px;
		margin-right: 8px;
	}
	.filter .buttons a:last-child { margin-right: 0; }
	.pagination .arrow, .pagination .gap { display: none; }
	.setup_block { text-align: left; }
	.setup_block:after { content: none; }
	.setup_block .icon {
		display: inline-flex;
		vertical-align: middle;
		margin: 0 16px 0 0;
		width: 60px;
		height: 60px;
	}
	.setup_block .icon span {
		width: 20px;
		height: 20px;
		font-size: 10px;
		padding-top: 4px;
		top: -8px;
	}
	.setup_block .title {
		display: inline-block;
		margin: 0;
		width: calc(100% - 90px);
	}
	.setup_block .text { margin-top: 12px; }
	.include_block { padding: 24px 16px; }
	.include_block .icon {
		width: 50px;
		height: 50px;
		margin: 0 16px 0 0;
		display: inline-flex;
		vertical-align: middle;
	}
	.include_block p {
		font-size: 18px;
		display: inline-block;
		margin: 0;
		width: calc(100% - 80px);
	}
	.include_block ul { margin-top: 12px; }
	.include_block ul li { font-size: 12px; }
	#location h2 {
		margin-top: 16px;
		font-size: 24px;
	}
	#location .text {
		font-size: 14px;
		margin-bottom: 20px;
	}
	.location_blocks { gap: 12px; }
	.location_blocks .block {
		width: calc(50% - 6px);
		padding: 12px 8px;
	}
	.location_blocks .block p {
		font-size: 14px;
		margin-bottom: 0;
	}
	.location_blocks .block span { font-size: 10px; }
	#faq h2 { font-size: 24px; }
	.faq_item { padding: 16px 0; }
	.faq_item:before, .faq_item:after { top: 16px; }
	.faq_item .title, #delivery .text, #workshop p, #we_do .text { font-size: 16px; }
	.faq_item .text {
		font-size: 14px;
		line-height: 1.4;
		padding-right: 0;
	}
	.faq_item.active .text { margin-top: 12px; }
	section#setup, section#include, section#location, section#faq, section#workshop, section#experience,
	section#principles, section#we_do, section#history { padding: 40px 0; }
	#workshop .info {
		margin-bottom: 16px;
		width: 100%;
	}
	#experience h2, #experience .text { width: 100%; }
	#experience .text {
		font-size: 16px;
		margin-bottom: 16px;
	}
	.exp_blocks { gap: 10px; }
	.exp_blocks .exp_block {
		width: calc(50% - 5px);
		padding: 12px;
	}
	.exp_blocks .exp_block .icon {
		height: 40px;
		width: 40px;
	}
	.exp_blocks .exp_block p { font-size: 36px; }
	.exp_blocks .exp_block > span { font-size: 12px; }
	.principle { padding: 16px; }
	.principle .icon {
		display: inline-flex;
		width: 44px;
		height: 44px;
		margin: 0 12px 0 0;
		vertical-align: middle;
		border-radius: 12px;
	}
	.principle .title {
		font-size: 16px;
		margin: 0;
		width: calc(100% - 60px);
		display: inline-block;
		vertical-align: middle;
	}
	.principle .text {
		font-size: 14px;
		margin-top: 12px;
	}
	.do_block { height: 240px; }
	.history_block .date {
		position: absolute;
		padding-left: 20px;
		font-size: 24px;
		text-align: left;
	}
	.history_block .info {
		width: 100%;
		padding-left: 20px;
	}
	.history_block .sub {
		height: 24px;
		display: flex;
		align-items: center;
		padding-left: 130px;
	}
	.history_block .title { font-size: 18px; }
	.history_block .text { font-size: 14px; }
	.history_block .date:before, .history_block .date:after {
		left: 0;
		top: 0;
	}
	.history_block .date:after {
		top: 14px;
		left: 7px;
	}
}