/*!
Theme Name: teplopolis.ua
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: teplopolis-ua
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

teplopolis.ua is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

* {
	padding: 0;
	margin: 0;
	border: 0;
	
}

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

:focus,
:active {
	outline: none;
}

a:focus,
a:active {
	outline: none;
}

nav,
footer,
header,
aside {
	display: block;
}

html,
body {
	height: 100%;
	width: 100%;
	font-size: 100%;
	line-height: 1;
	font-size: 14px;
	-ms-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

input,
button,
textarea {
	font-family: inherit;
}

input::-ms-clear {
	display: none;
}

button {
	cursor: pointer;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

a {
	display: flex;
	align-items: center;
	justify-content: center;
}

a,
a:visited {
	text-decoration: none;
}

a:hover {
	text-decoration: none;
}

li {
	list-style: none;
}

img, svg {
	vertical-align: middle;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: 400;
}

html {
	scroll-behavior: smooth;
}
html.open-modal,
html.open-menu {
	overflow: hidden;
}
@media (width>768px) {
	html.open-modal,
	html.open-menu {
		padding-right: 15px;
	}
}
body {
	min-width: 100%;
	font-family: "Inter", serif;
	font-weight: 400;
	font-size: 20px;
	font-style: normal;
	line-height: 1.2;
	background-color: #F3F5F6;
}
.container {
	max-width: 1356px;
	margin: 0 auto;
	padding-inline: 30px;
	padding-top: 48px;
	margin-bottom: 144px;
}
[class*=__container] {
	padding-top: 144px;
}
h2 {
	font-weight: 500;
	font-size: 32px;
	line-height: 39px;
	text-align: center;
	color: #1E2723;
	margin-bottom: 48px;
}
.h2 {
	font-size: 40px;
	line-height: 48px;
	text-transform: uppercase;
	color: #418832;
}
.text-small {
	font-weight: 400;
	font-size: 16px;
	line-height: 19px;
	text-align: center;
	color: #1E2723;
}
.top__wrapper {
	background: #5BB947;
}
.header-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 0;
	margin-block: 0;
}
.header-top ul {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0px;
}
.header-top ul a {
	font-size: 18px;
	font-size: clamp(10px, 1.19vw + 0.87px, 18px);
	line-height: 22px;
	color: #FFFFFF;
}
.header-top .header-top-menu li+li {
	margin-left: 24px;
}
.header-top address {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
}
.header-top address svg {
	height: clamp(10px, 1.19vw + 0.87px, 18px);
}
.header-top address span {
	font-size: 18px;
	font-size: clamp(10px, 1.19vw + 0.87px, 18px);
	line-height: 22px;
	color: #FFFFFF;
	font-style: normal;
}
.header-top .header-top-tel li+li {
	margin-left: 24px;
}
.header-top .header-top-tel a {
	font-weight: 700;
}
.header-top .header-top-soc li+li {
	margin-left: 6px;
}
.header-top .header-top-soc img {
	width: clamp(24px, 1.19vw + 14.86px, 32px);
	height: clamp(24px, 1.19vw + 14.86px, 32px);
}
.header__container {
	padding-top: 0;
	margin-top: 24px;
	margin-bottom: 0;
}
.header-menu {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #f3f5ea;
	/* background: rgba(255, 255, 255, 0.5); */
	/* border: 1px solid #FFFFFF; */
	/* box-shadow: 0px 48px 19px rgba(195, 201, 115, 0.01), 0px 27px 16px rgba(195, 201, 115, 0.05), 0px 12px 12px rgba(195, 201, 115, 0.09), 0px 3px 7px rgba(195, 201, 115, 0.1); */
	box-shadow: 0px 48px 19px rgba(195, 201, 115, 0.01), 0px 27px 16px rgba(195, 201, 115, 0.05), 0px 12px 12px rgba(195, 201, 115, 0.09), 0px 3px 7px rgba(195, 201, 115, 0.1), inset -10px 10px 30px rgba(255, 255, 255, 1);
	border-radius: 50px;
	padding: 12px;
	padding-right: clamp(24px, 3.57vw - 3.42px, 48px);
}
.header__logo {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: clamp(90px, 3.87vw + 60.28px, 116px);
	width: 100%;
}
.header__logo img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}
.button-menu {
	display: none;
}
.header-menu .menu {
	display: flex;
	align-items: center;
	gap: clamp(6px, 3.6458vw - 22px, 48px);
	/* gap: clamp(24px, 3.57vw - 3.42px, 48px); */
}
.header-menu .menu a {
	font-weight: 500;
	font-size: 16px;
	font-size: clamp(14px, 0.30vw + 11.71px, 16px);
	line-height: 19px;
	color: #1E2723;
	padding-block: 12px;
}
.header-menu .menu .menu-item {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: clamp(0px, 2.3529vw - 18.09px, 6px);
}
.header-menu .menu .menu-item:has(.sub-menu)::after,
.header-menu .menu .menu-item:last-child::after {
	content: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5 7.5L10 12.5L15 7.5" stroke="%231E2723" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
	line-height: 1;
	font-size: 0;
	transform: scale(1);
	transition: transform .3s ease-in;
}
.header-menu .menu .menu-item .sub-menu {
	display: none;
	position: absolute;
	top: calc(100% + clamp(23px, 7.195px + 1.765vw, 32px));
	left: 50%;
	transform: translateX(-50%);
	width: max-content;
	flex-direction: column;
	gap: 24px;
	box-sizing: border-box;
	background: #FFFFFF;
	border-top: 1px solid #E0ECD3;
	box-shadow: 0px 48px 19px rgba(166, 165, 150, 0.01), 0px 27px 16px rgba(166, 165, 150, 0.05), 0px 12px 12px rgba(166, 165, 150, 0.09), 0px 3px 7px rgba(166, 165, 150, 0.1);
	border-radius: 12px;
	padding: 24px;
}
.header-menu .menu .active.menu-item>a {
	color: #418832;
}
.header-menu .menu .active.menu-item:has(.sub-menu)::after,
.header-menu .menu .active.menu-item:last-child::after {
	content: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5 7.5L10 12.5L15 7.5" stroke="%23418832" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
	transform: scale(-1);
}
.header-menu .submenu-contacts {
	position: absolute;
	top: calc(100% + 6px);
	right: clamp(24px, 3.57vw - 3.42px, 48px);
	max-width: 327px;
	width: 100%;
	display: none;
	flex-direction: column;
	gap: 12px;
	box-sizing: border-box;
	background: #FFFFFF;
	border-top: 1px solid #E0ECD3;
	box-shadow: 0px 48px 19px rgba(166, 165, 150, 0.01), 0px 27px 16px rgba(166, 165, 150, 0.05), 0px 12px 12px rgba(166, 165, 150, 0.09), 0px 3px 7px rgba(166, 165, 150, 0.1);
	border-radius: 12px;
	padding: 24px;
}
.header-menu .submenu-contacts address,
.header-menu .submenu-contacts .submenu-tel {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}
.header-menu .submenu-contacts address svg {
	min-width: 36px;
	max-width: 36px;
}
.header-menu .submenu-contacts address span {
	font-size: 18px;
	line-height: 22px;
	font-style: normal;
}
.header-menu .submenu-contacts .submenu-tel a {
	font-size: 18px;
	line-height: 22px;
	color: #1E2723;
	padding-block: 3px;
}
.header-menu .submenu-contacts .submenu-social {
	text-align: center;
	border-top: 1px solid rgba(153, 167, 149, 0.24);
}
.header-menu .submenu-contacts .submenu-social ul {
	display: inline-flex;
	justify-content: center;
}
.header-menu .menu .active.menu-item .sub-menu {
	display: flex;
}
.header-menu .submenu-contacts.active {
	display: flex;
}
#mob-menu {
	display: none;
}
.hero__container {
	display: flex;
	align-items: center;
	padding-top: 0;
	margin-top: 6px;
}
.hero__title {
	width: 50%;
	display: flex;
	flex-direction: column;
}
.hero__title h1 {
	font-weight: 700;
	font-size: 42px;
	line-height: 51px;
	text-transform: uppercase;
	color: #1E2723;
	margin-bottom: 6px;
}
.hero__title span {
	font-size: 32px;
	line-height: 39px;
	color: #1E2723;
	margin-bottom: 96px;
}
.hero__title-links {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: start;
	gap: 24px;
}
.btn {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	border-radius: 50px;
	font-weight: 700;
	font-size: 18px;
	line-height: 22px;
	text-transform: uppercase;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-tap-highlight-color: transparent !important;
}
.btn-primary {
	border: 2px solid #5BB947;
	color: #5BB947;
}
.btn-primary:hover {
	transform: scale(1.05);
	box-shadow: 5px 5px 10px rgba(91, 185, 71, 0.5);
}
.btn-secondary {
	border: 2px solid #F29509;
	color: #f29509;
}
.btn-secondary:hover {
	transform: scale(1.05);
	box-shadow: 5px 5px 10px rgba(242, 149, 9, 0.5);
}
.hero__title-links .btn {
	height: 63px;
	max-width: 244px;
	width: 100%;
}
.hero__image {
	max-width: 50%;
	width: 100%;
}
.hero__image img {
	max-width: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}
.why__wrapper {
	background: radial-gradient(90.9% 101.49% at 47.26% 31.38%, rgba(236, 226, 67, 0.2) 0%, rgba(91, 185, 71, 0.2) 100%);
	border-radius: 24px;
	padding-top: 96px;
	padding-bottom: 96px;
}
.why__flex {
	display: flex;
	align-items: flex-start;
	justify-content: space-around;
}
.why__flex-item {
	flex: 0 1 25%;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-left: 25px;
	padding-right: 25px;
}
.why__flex-item p {
	font-size: 20px;
	line-height: 24px;
	text-align: center;
	color: #1E2723;
}
.why__flex-item_image {
	max-width: 100px;
	width: 100%;
	margin-bottom: 24px;
}
.why__flex-item_image img {
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}

#consultation  {
	padding-top: 50px;
	margin-top: -50px;
}
.consultation__container {
	display: flex;
	gap: 48px;
}
.consultation__image {
	max-width: 612px;
	width: 100%;
}
.consultation__image img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}
.consultation__request .h2 {
	display: inline-block;
	max-width: 490px;
	width: 100%;
	margin-bottom: 24px;
}
.consultation__request>p {
	font-size: 20px;
	line-height: 24px;
	color: #1E2723;
	display: inline-block;
	max-width: 405px;
	width: 100%;
	margin-bottom: 48px;
}


.consultation-form {
	width: 100%;
}
.consultation-form form {
	width: 100%;
}
form .phone-msg,
form .wpcf7-not-valid-tip {
	position: absolute;
	top: 100%;
	left: 10px;
	font-size: 12px;
}
form .wpcf7-form-control-wrap:has(input[type="tel"]:not(:placeholder-shown)) .wpcf7-not-valid-tip {
	display: none;
}
.consultation-form form .form-inputs {
	margin-bottom: 12px;
}
.consultation-form form .form-inputs p {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 24px;
}
.consultation-form form .form-inputs p span {
	width: 100%;
}
.consultation-form form .form-inputs p input,
.consultation-form form .form-bottom>p textarea {
	width: 100%;
	font-size: 16px;
	line-height: 19px;
	background: #FFFFFF;
	border-radius: 12px;
	cursor: pointer;
	padding: 12px;
}
.consultation-form form .form-inputs p input::placeholder,
.consultation-form form .form-bottom>p textarea::placeholder {
	color: #878A89;
}
.consultation-form form .form-bottom {
	display: flex;
	gap: 24px;
}
.consultation-form form .form-option,
.consultation-form form .form-bottom>p {
	width: calc((100% - 24px) / 2);
}
.consultation-form form .form-option .coly {
	margin-bottom: 17px;
}
.consultation-form form .form-option .coly p>label {
	display: inline-flex;
	font-weight: 400;
	font-size: 16px;
	line-height: 19px;
	color: #878A89;
	margin-bottom: 10px;
}
.consultation-form form .form-option .coly p span {
	margin-left: 0;
}
.consultation-form form .form-option .coly p span label {
	position: relative;
	display: flex;
	align-items: center;
	cursor: pointer;
	user-select: none;
	font-weight: 400;
	font-size: 16px;
	line-height: 19px;
	color: #1E2723;
	margin-right: 12px;
}
.consultation-form form .form-option .coly p span label::before {
	content: '';
	display: block;
	box-sizing: border-box;
	width: 18px;
	height: 18px;
	border: 1px solid #F29509;
	border-radius: 2px;
	margin-right: 12px;
}
.consultation-form form .form-option .coly p span label::after {
	content: url('data:image/svg+xml,<svg width="16" height="16" viewBox="0 0 12 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4 9.4L0 5.4L1.4 4L4 6.6L10.6 0L12 1.4L4 9.4Z" fill="%235BB947"/></svg>');
	position: absolute;
	top: 1px;
	left: 1px;
	width: 16px;
	height: 16px;
	opacity: 0;
}
.consultation-form form .form-option .coly p span label:has(input:checked)::before {
	background-color: #ECE243;
}
.consultation-form form .form-option .coly p span label:has(input:checked)::after {
	opacity: 1;
}
.consultation-form form .form-option .coly p span label input[type="checkbox"] {
	position: absolute;
	width: 0;
	height: 0;
	opacity: 0;
}
.consultation-form form .select-wrapper .wpcf7-select {
	width: 100%;
	font-size: 16px;
	line-height: 19px;
	color: #878A89;
	background: #FFFFFF;
	border-radius: 12px;
	cursor: pointer;
	padding: 12px;
}
.consultation-form form .form-bottom>p textarea {
	max-height: 117px;
	resize: none;
}
.consultation-form form .buttons {
	margin-top: 24px;
}
.consultation-form form .buttons p {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}
.consultation-form form .buttons p .wpcf7-spinner {
	position: absolute;
	top: 0;
	right: 0;
}
.consultation-form form .buttons .btn {
	max-width: 215px;
	width: 100%;
	height: 63px;
}
.consultation-form form .wpcf7-response-output {
	font-size: 16px;
	color: #dc3232;
	text-align: center;
	border-radius: 10px;
	border-color: #F29509;
	padding: 12px;
}
#lend-consultation .consultation-form form .form-inputs p,
#lend-consultation .consultation-form form .form-bottom {
	flex-direction: column;
	gap: 12px;
}
#lend-consultation .consultation-form form .form-option,
#lend-consultation .consultation-form form .form-bottom>p {
	width: 100%;
}

.services__container h2 {
	margin-bottom: 12px;
}
.services__wrapper {
	padding: 96px 0px;
	background: radial-gradient(90.9% 101.49% at 47.26% 31.38%, rgba(236, 226, 67, 0.1) 0%, rgba(91, 185, 71, 0.1) 100%);
	border-radius: 24px;
}
.services__title-text {
	font-size: 20px;
	line-height: 24px;
	text-align: center;
	color: #1E2723;
	max-width: 350px;
	width: 100%;
	margin: 0 auto 58px auto;
}
.services__flex {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	padding-left: 122px;
	padding-right: 122px;
}
.services__flex-item {
	flex: 48%;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.services__flex-item:nth-child(1) {
	padding: 24px 48px 48px;
	background: linear-gradient(131.69deg, rgba(236, 226, 67, 0) 26.45%, rgba(236, 226, 67, 0.1) 100%), #FFFFFF;
	box-shadow: 0px 81px 32px rgba(56, 109, 44, 0.01), 0px 45px 27px rgba(56, 109, 44, 0.05), 0px 20px 20px rgba(56, 109, 44, 0.09), 0px 5px 11px rgba(56, 109, 44, 0.1);
	border-radius: 24px 200px 24px 150px;
}
.services__flex-item:nth-child(2) {
	padding: 24px 48px 48px;
	background: linear-gradient(228.31deg, rgba(236, 226, 67, 0) 26.45%, rgba(236, 226, 67, 0.1) 100%), #FFFFFF;
	box-shadow: 0px 81px 32px rgba(56, 109, 44, 0.01), 0px 45px 27px rgba(56, 109, 44, 0.05), 0px 20px 20px rgba(56, 109, 44, 0.09), 0px 5px 11px rgba(56, 109, 44, 0.1);
	border-radius: 200px 24px 150px;
}
.services__flex-item:nth-child(3) {
	padding: 24px 48px 48px;
	background: linear-gradient(131.69deg, rgba(236, 226, 67, 0) 26.45%, rgba(236, 226, 67, 0.1) 100%), #FFFFFF;
	box-shadow: 0px 81px 32px rgba(56, 109, 44, 0.01), 0px 45px 27px rgba(56, 109, 44, 0.05), 0px 20px 20px rgba(56, 109, 44, 0.09), 0px 5px 11px rgba(56, 109, 44, 0.1);
	border-radius: 200px 24px 150px;
}
.services__flex-item:nth-child(4) {
	padding: 24px 48px 48px;
	background: linear-gradient(228.31deg, rgba(236, 226, 67, 0) 26.45%, rgba(236, 226, 67, 0.1) 100%), #FFFFFF;
	box-shadow: 0px 81px 32px rgba(56, 109, 44, 0.01), 0px 45px 27px rgba(56, 109, 44, 0.05), 0px 20px 20px rgba(56, 109, 44, 0.09), 0px 5px 11px rgba(56, 109, 44, 0.1);
	border-radius: 24px 200px 24px 150px;
}
.services__flex-item p {
	line-height: 24px;
	text-align: center;
	color: #1E2723;
	min-height: 48px;
}
.services__flex-item_image {
	max-width: 276px;
	width: 100%;
}
.services__flex-item_image img {
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}
.steps__wrapper {
	display: flex;
	align-items: center;
	max-width: 1043.24px;
	margin: 0 auto;
}
.steps__panel {
	margin-right: -160px;
	z-index: 1;
}
.steps__panel-list {
	list-style: none;
	counter-reset: list-counter;
}
.steps__panel-list li {
	text-align: right;
	counter-increment: list-counter;
	position: relative;
	padding-right: 82px;
	margin-bottom: 48px;
	line-height: 24px;
	text-align: right;
	color: #1E2723;
}
.steps__panel-list li:nth-child(1) {
	margin-right: -43px;
}
.steps__panel-list li:nth-child(2) {
	margin-right: -12px;
}
.steps__panel-list li:nth-child(3) {
	margin-right: 0px;
}
.steps__panel-list li:nth-child(4) {
	margin-right: -11px;
}
.steps__panel-list li:last-child {
	margin-bottom: 0px;
	margin-right: -48px;
}
.steps__panel-list li::after {
	content: counter(list-counter) "";
	position: absolute;
	right: 0;
	line-height: 24px;
	text-align: center;
	color: #FFFFFF;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 44px;
	height: 44px;
	background: linear-gradient(0deg, rgba(91, 185, 71, 0.8), rgba(91, 185, 71, 0.8)), #FFFFFF;
	border: 1px solid #5BB947;
	border-radius: 50%;
}
.steps__panel-list li:nth-child(1)::after,
.steps__panel-list li:nth-child(3)::after,
.steps__panel-list li:nth-child(4)::after,
.steps__panel-list li:nth-child(5)::after {
	top: 5px;
}
.steps__panel-list li:nth-child(2)::after {
	top: -8px;
}
.steps__image {
	position: relative;
	width: 100%;
}
.steps__image img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}
.steps__image img[src*="steps.png"] {
	display: none;
}
.steps__image img[src*="steps_mobile.png"] {
	display: block;
}

.advantages__container {
	background: radial-gradient(50% 73.99% at 50% 26.01%, rgba(208, 208, 208, 0.04) 0%, rgba(243, 245, 246, 0.4) 100%);
	border-radius: 24px;
}
.advantages__flex {
	display: flex;
	align-items: stretch;
	gap: 12px;
}
.advantages__item {
	flex: calc(20% - 12px);
	display: flex;
	flex-direction: column;
	align-items: center;
	background: radial-gradient(90.9% 101.49% at 47.26% 31.38%, rgba(236, 226, 67, 0.1) 0%, rgba(91, 185, 71, 0.1) 100%);
	border-radius: 24px;
	padding-inline: 12px;
	padding-bottom: 18px;
}
.advantages__image {
	margin-block: 24px;
}
.advantages__item p {
	text-align: center;
	padding-bottom: 6px;
}

.quiz__container {
	background: radial-gradient(50% 73.99% at 50% 26.01%, rgba(208, 208, 208, 0.04) 0%, rgba(243, 245, 246, 0.4) 100%);
	border-radius: 24px;
}
.quiz-container {
	display: flex;
	flex-direction: column;
	background-color: transparent;
	width: 100%;
	max-width: 856px;
	position: relative;
	padding-block: 96px;
	margin: 0 auto;
}
.quiz-container form {
	height: 464px;
	display: flex;
	flex-direction: column;
}
.quiz-step {
	display: none;
	animation: fadeIn 0.5s forwards;
}
.quiz-step.active {
	display: block;
}
@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}
.quiz .h2 {
	text-align: center;
	margin-bottom: 48px;
}
#step-7>p {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}
#step-7>p>span {
	width: 100%;
}
#step-7>p>span input {
	margin-bottom: 0;
}
.options-group {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.options-group>span {
	margin-left: 0;
}
.options-group label {
	display: block;
	padding: 12px 16px;
	border-radius: 8px;
	cursor: pointer;
	background: rgba(91, 185, 71, 0.4);
	border-radius: 24px;
	transition: all 0.3s ease-in;
}
.options-group input[type="radio"] {
	margin-right: 14px;
	accent-color: #007bff;
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.options-group label span {
	display: flex;
	align-items: center;
	font-weight: 500;
	font-size: 16px;
	line-height: 19px;
	color: #1E2723;
	text-transform: uppercase;
}
.options-group label span::before {
	content: '';
	display: inline-block;
	width: 24px;
	min-width: 24px;
	height: 24px;
	border: 1px solid #E2E2E2;
	background: #fff;
	border-radius: 50%;
	margin-right: 14px;
	vertical-align: middle;
	transition: all 0.2s ease;
	box-sizing: border-box;
	border: 1px solid transparent;
}
.options-group label:hover span::before {
	content: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10 16.4L6 12.4L7.4 11L10 13.6L16.6 7L18 8.4L10 16.4Z" fill="%235BB947"/></svg>');
	background-color: #ECE243;
}
.options-group input[type="radio"]:checked+span::before {
	background-color: #007bff;
	border-color: #007bff;
	box-shadow: inset 0 0 0 5px white;
}
.options-group input[type="radio"]:checked+span {
	font-weight: bold;
	color: #007bff;
}
.options-group input[type="radio"]:checked~label {
	border-color: #007bff;
}
.text-input,
.contact-input {
	width: calc(100% - 20px);
	font-weight: 400;
	font-size: 16px;
	line-height: 19px;
	color: #878A89;
	background: #FFFFFF;
	border-radius: 12px;
	padding: 12px;
	box-sizing: border-box;
}
.text-input {
	margin-bottom: 6px;
}
.contact-input {
	margin-bottom: 12px;
}
.textInput-sub {
	display: inline-block;
	font-weight: 400;
	font-size: 16px;
	line-height: 19px;
	color: #1E2723;
}
.btn-next,
.btn-submit {
	width: 100%;
	height: 63px;
}
.btn-next {
	max-width: 176px;
	margin: 48px auto 0;
}
.btn-submit {
	max-width: 314px;
	margin: 36px auto 0;
}
.progress-container {
	width: 100%;
	background-color: #E2E2E2;
	border-radius: 6px;
	height: 9px;
	overflow: hidden;
	margin-top: auto;
}
.progress-bar {
	height: 100%;
	width: 0%;
	background-color: #ECE243;
	border-radius: 6px;
	transition: width 0.4s ease-in-out;
}
.hidden {
	display: none !important;
}
.error-message {
	color: red;
	margin-top: 10px;
	text-align: center;
}
.accordion-container {
	width: 100%;
	background-color: transparent;
	overflow: hidden;
}
.accordion-item {
	box-sizing: border-box;
	background: #F5F5F5;
	border: 1px solid #D9D9D9;
	border-radius: 24px;
	overflow: hidden;
	margin-bottom: 16px;
}
.accordion-item.active {
	background: radial-gradient(90.9% 101.49% at 47.26% 31.38%, rgba(236, 226, 67, 0.1) 0%, rgba(91, 185, 71, 0.1) 100%)
}
.accordion-item:last-child {
	margin-bottom: 0;
}
.accordion-header {
	font-weight: 600;
	font-size: 16px;
	line-height: 1.4;
	color: #1E1E1E;
	background-color: #F5F5F5;
	padding: 16px;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	transition: background-color 0.3s ease;
}
.accordion-item.active .accordion-header {
	background-color: transparent;
	padding-bottom: 8px;
}
.accordion-header:hover {
	background: radial-gradient(90.9% 101.49% at 47.26% 31.38%, rgba(236, 226, 67, 0.1) 0%, rgba(91, 185, 71, 0.1) 100%)
}
.accordion-item.active .accordion-header:hover {
	background: transparent;
}
.accordion-header::after {
	content: url('data:image/svg+xml,<svg width="12" height="8" viewBox="0 0 12 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.5L6 6.5L11 1.5" stroke="%231E1E1E" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
	font-size: 24px;
	line-height: 1;
	transform: translateY(-10%);
	transition: transform 0.3s ease;
}
.accordion-item.active .accordion-header::after {
	content: url('data:image/svg+xml,<svg width="12" height="8" viewBox="0 0 12 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11 6.5L6 1.5L1 6.5" stroke="%231E1E1E" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}
.accordion-content {
	font-weight: 400;
	font-size: 16px;
	line-height: 1.4;
	color: #1E1E1E;
	padding: 0 16px;
	max-height: 0;
	overflow: hidden;
}
.accordion-item.active .accordion-content {
	padding: 0 16px 16px 16px;
	max-height: fit-content;
}
.accordion-content p {
	margin: 0;
}
.about__wrapper {
	background: radial-gradient(90.9% 101.49% at 47.26% 31.38%, rgba(236, 226, 67, 0.2) 0%, rgba(91, 185, 71, 0.2) 100%);
	border-radius: 24px;
	padding: 96px 114px;
}
.about__flex {
	display: flex;
	gap: 48px;
}
.about__image {
	min-width: 376px;
	width: 100%;
	border-radius: 24px;
	overflow: hidden;
	position: relative;
	max-height: -moz-max-content;
	max-height: max-content;
}
.about__image img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}
.about__text p {
	line-height: 24px;
	color: #1E2723;
	margin-bottom: 12px;
}
.about__text p:last-child {
	margin-bottom: 0;
}
.about__text h3 {
	font-weight: 500;
	line-height: 24px;
	color: #1E2723;
}
.about__text ul {
	margin-bottom: 12px;
	padding-left: 24px;
}
.about__text ul li {
	list-style: disc;
}
#home .swiper-wrapper {
	margin-bottom: 24px;
	display: flex;
	align-items: stretch;
}
#home .swiper-slide {
	min-height: 350px;
	height: 350px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 24px;
	overflow: hidden;
	width: auto;
}
#home .swiper-image video {
	width: auto;
	height: 350px;
	object-fit: contain;
}
#home .swiper-slide img {
	min-width: 100%;
	height: 350px;
	object-fit: contain;
}
#home .swiper-scrollbar {
	background: var(--swiper-scrollbar-bg-color, #E2E2E2);
}
#home .swiper-scrollbar-drag {
	background: var(--swiper-scrollbar-drag-bg-color, #F29509);
	border-radius: var(--swiper-scrollbar-border-radius, 6px);
	cursor: pointer;
}
#home .swiper-horizontal>.swiper-scrollbar,
#home .swiper-scrollbar.swiper-scrollbar-horizontal{
	bottom: var(--swiper-scrollbar-bottom, 0px);
	height: var(--swiper-scrollbar-size, 9px);
}
.call__container {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.call__container .h2 {
	text-align: center;
	margin-bottom: 24px;
	max-width: 499px;
}
.call__container>p {
	line-height: 24px;
	text-align: center;
	color: #1E2723;
	margin-bottom: 48px;
	max-width: 545px;
}
.reviews__items {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 24px;
}
.reviews__item {
	flex: 30%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 24px;
	gap: 24px;
	background: #FFFFFF;
	border-radius: 12px;
}
.reviews__item-user {
	display: flex;
	align-items: center;
	gap: 24px;
}
.reviews__item-user_image {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	overflow: hidden;
}
.reviews__item-user_image img {
	max-width: 100%;
	width: 100%;
	object-fit: cover;
}
.reviews__item-user_text {
	display: flex;
	flex-direction: column;
}
.reviews__item-user_text h3 {
	line-height: 24px;
	color: #1E2723;
	margin-bottom: 3px;
}
.reviews__item-user_text p {
	font-size: 16px;
	line-height: 19px;
	color: #878A89;
}
.reviews__item-text {
	font-size: 16px;
	line-height: 19px;
	color: #1E2723;
}
footer {
	padding-bottom: 24px;
}
.footer__container {
	padding-top: 0;
	margin-bottom: 0;
}
.footer__wrapper {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	padding: 24px;
	background: #EAEAEA;
	border-radius: 12px;
}
.footer__text {
	line-height: 24px;
	color: #000000;
}
.footer__text-name {
	margin-bottom: 6px;
}
.footer__text-privacy {
	line-height: 24px;
	color: #000000;
}
.footer__text-privacy:hover {
	text-decoration: underline;
}
.footer__contacts {
	display: flex;
	align-items: center;
	gap: 36px;
}
.footer__contacts-contact {
	display: flex;
	flex-direction: column;
	align-items: end;
}
.footer__contacts-contact a:hover {
	text-decoration: underline;
}
.footer__contacts-contact a[href^="tel:"] {
	font-weight: 700;
	font-size: 16px;
	line-height: 19px;
	color: #1E2723;
}
.footer__contacts-contact a[href^="mailto:"] {
	font-size: 16px;
	line-height: 19px;
	color: #1E2723;
	display: flex;
	align-items: center;
	gap: 8px;
}
.footer__contacts-social {
	display: flex;
	align-items: center;
	gap: 12px;
}
.footer__contacts-social a {
	transition: transform 0.3s ease;
}
.footer__contacts-social a:hover {
	transform: scale(1.1);
}
.modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	align-items: center;
	justify-content: center;
	background-color: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(5px);
	padding-inline: 15px;
}
.modal.is-open {
	display: flex;
}
.modal-body {
	max-width: 732px;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 48px;
	background: #FFFFFF;
	border-radius: 24px;
	padding: 48px;
}
.modal-header {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
	text-align: center;
}
.button-close {
	position: absolute;
	top: 0;
	right: 0;
	left: auto;
	width: 24px;
	height: 24px;
	background: transparent;
	outline: none !important;
}
.modal-header h1 {
	max-width: 350px;
	font-size: 40px;
	line-height: 48px;
	text-transform: uppercase;
	color: #418832;
}
.modal-header p {
	font-size: 20px;
	line-height: 24px;
	color: #1E2723;
}
.modal-form {
	width: 100%;
}
.modal-form form {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
}
.modal-form form p {
	width: 100%;
	display: flex;
	flex-direction: column;
}
.modal-form form input:not(.btn) {
	width: 100%;
	box-sizing: border-box;
	padding: 12px;
	height: 43px;
	font-size: 16px;
	line-height: 19px;
	background: transparent;
	border: 1px solid rgba(193, 193, 193, 0.5);
	border-radius: 12px;
}
.modal-form form input::placeholder {
	color: #878A89;
}
/* .modal-form form .wpcf7-not-valid-tip {
	position: absolute;
	top: calc(100% + 10px);
	left: 10px;
	font-size: 12px;
} */
.modal-form form .buttons {
	width: 100%;
}
.modal-form form .buttons p {
	position: relative;
}
.modal-form form .btn {
	max-width: 215px;
	height: 63px;
	width: 100%;
	margin-inline: auto;
	margin-top: 12px;
}
.modal-form form .buttons .wpcf7-spinner {
	position: absolute;
	top: 0;
	right: 0;
}
.modal-form form .wpcf7-response-output {
	display: none !important;
}
.credit .btn-secondary {
	max-width: 328px;
	width: 100%;
}
.text-block .text-content {
	background: rgba(255, 255, 255, 0.5);
	border-radius: 12px;
	padding: 48px;
}
.text-block .text-content .block-content+.block-content {
	margin-top: 48px;
}
.text-block .text-content h3 {
	font-weight: 600;
	font-size: 24px;
	line-height: 120%;
	letter-spacing: -0.02em;
	color: #1E1E1E;
	margin-bottom: 12px;
}
.text-block .text-content p {
	font-size: 16px;
	line-height: 140%;
	color: #1E1E1E;
}
.text-block .text-content p+p {
	margin-top: 24px;
}
.breadcrumbs {
	display: flex;
	align-items: center;
	margin-bottom: 48px;
}
.blog-archive .breadcrumbs {
	margin-block: 12px;
}
.credit .breadcrumbs {
	max-width: 1356px;
	padding-inline: 30px;
	margin-inline: auto;
	margin-bottom: 15px;
}
.breadcrumbs a {
	font-weight: 400;
	font-size: 20px;
	line-height: 120%;
	color: #878A89;
}
.breadcrumbs span {
	font-weight: 400;
	font-size: 20px;
	line-height: 120%;
	color: #57605C;
}
.blog-archive .blog__container {
	padding-top: 48px;
}
.blog-archive h1 {
	font-weight: 600;
	font-size: 24px;
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: #1E1E1E;
}
.blog-archive .category-filters {
	display: flex;
	align-items: center;
	gap: 18px;
}
.blog-archive .category-filters .filter-link {
	font-weight: 600;
	font-size: 16px;
	line-height: 140%;
	color: #1E1E1E;
	padding: 6px 12px;
	background: rgba(217, 217, 217, 0.3);
	border-radius: 24px;
}
.blog-archive .category-filters .filter-link.active {
	color: #FFFFFF;
	background: #5BB947;
}
.blog-archive .blog-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: start;
	gap: 24px;
	padding-top: 32px;
}
.blog-archive .blog-item {
	width: calc((100% - 24px * 2) / 3);
	display: flex;
	flex-direction: column;
	background: rgba(255, 255, 255, 0.5);
	border-radius: 12px;
	gap: 24px;
	padding: 24px;
}
.blog-archive .blog-item:first-child {
	width: 100%;
	flex-direction: row-reverse;
	gap: 48px;
	padding: 48px;
}
.blog-archive .blog-item:first-child .blog-item-image,
.blog-archive .blog-item:first-child .blog-item-description {
	width: calc((100% - 48px) / 2);
}
.blog-archive .blog-item .blog-item-image {
	max-height: 272px;
	max-width: 100%;
	overflow: hidden;
	border-radius: 6px;
}
.blog-archive .blog-item .blog-item-image img {
	object-fit: cover;
}
.blog-archive .blog-item:not(:first-child) .blog-item-image img {
	max-width: 100%;
	height: 100%;
}
.blog-archive .blog-item:first-child .blog-item-image {
	max-height: 435px;
}
.blog-archive .blog-item .blog-item-description {
	display: flex;
	flex-direction: column;
	align-items: start;
}
.blog-archive .blog-item:first-child .blog-item-description {
	align-self: stretch;
}
.blog-archive .blog-item .blog-item-description .post-meta {
	margin-bottom: 24px;
}
.blog-archive .blog-item:first-child .blog-item-description .post-meta {
	margin-bottom: auto;
}
.blog-archive .blog-item .blog-item-description .post-meta span {
	font-size: 16px;
	line-height: 19px;
	color: #878A89;
}
.blog-archive .blog-item .blog-item-description h2 {
	text-align: left;
	margin-bottom: 6px;
}
.blog-archive .blog-item:first-child .blog-item-description h2 {
	margin-bottom: 12px;
}
.blog-archive .blog-item .blog-item-description h2 a {
	font-weight: 600;
	font-size: 20px;
	line-height: 24px;
	color: #1E2723;
}
.blog-archive .blog-item:first-child .blog-item-description h2 a {
	font-weight: 400;
	font-size: 32px;
	line-height: 39px;
}
.blog-archive .blog-item .blog-item-description .post-excerpt {
	font-size: 16px;
	line-height: 1.4;
	color: #1E1E1E;
}
.blog-archive .blog-item:not(:first-child) .blog-item-description .post-excerpt p {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}
.read-more {
	font-size: 20px;
	line-height: 24px;
	color: #418832;
	padding-top: 12px;
}
.blog-archive .blog-item:first-child .blog-item-description .read-more {
	align-self: end;
	padding-top: 24px;
}
.read-more svg {
	margin-left: 12px;
}
.blog-article {
	background: rgba(255, 255, 255, 0.5);
	border-radius: 12px;
	padding: 48px;
}
.blog-article .post-thumbnail {
	text-align: center;
	margin-bottom: 48px;
}
.blog-article .post-thumbnail img {
	max-width: 100%;
}
.blog-article h1 {
	font-weight: 400;
	font-size: 40px;
	line-height: 48px;
	color: #418832;
	margin-bottom: 12px;
}
.blog-article h3 {
	font-weight: 600;
	font-size: 24px;
	line-height: 120%;
	letter-spacing: -0.02em;
	color: #1E1E1E;
	margin-bottom: 12px;
}
.blog-article p {
	font-weight: 400;
	font-size: 16px;
	line-height: 140%;
	color: #1E1E1E;
	margin-bottom: 48px;
}
.blog-article .posted-on {
	display: inline-block;
	font-size: 20px;
	line-height: 120%;
	color: #757575;
	margin-bottom: 12px;
}
.blog-article .link-back a {
	width: fit-content;
	font-size: 20px;
	line-height: 24px;
	color: #418832;
}
.blog-article .link-back a svg {
	margin-right: 12px;
}
.projects-grid {
	display: flex;
	flex-wrap: wrap;
	align-items: start;
	gap: 24px;
}
.projects-item {
	align-self: stretch;
	width: calc((100% - (24px * 2)) / 3);
	display: flex;
	flex-direction: column;
	align-items: start;
	background: rgba(255, 255, 255, 0.5);
	border-radius: 12px;
	padding: 24px;
}
.projects-slider {
	min-width: 0;
	width: 100%;
	margin-bottom: 24px;
}
.projects-slider .swiper-slide {
	width: 100%;
	min-height: 272px;
	height: 272px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	overflow: hidden;
}
.projects-slider .swiper-slide a {
	min-width: 100%;
	min-height: 100%;
}
.projects-slider .swiper-slide img {
	min-height: 100%;
	min-width: 100%;
	height: 272px;
	width: auto !important;
	object-fit: cover;
}
.projects-slider .swiper-button-prev,
.projects-slider .swiper-button-next {
	transform: translateY(50%);
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	width: 24px;
	height: 24px;
	box-sizing: border-box;
	background: rgba(255, 255, 255, 0.75);
	border: 1px solid #FFFFFF;
	border-radius: 6px;
}
.projects-slider .swiper-button-prev::after,
.projects-slider .swiper-button-next::after {

	font-size: 0;
}
.projects-slider .swiper-button-next.swiper-button-disabled,
.project-slider .swiper-button-prev.swiper-button-disabled {
	opacity: 0.5;
}
.projects-slider .swiper-button-prev::after {
	content: url('data:image/svg+xml,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15 8H1M8 1L1 8L8 15" stroke="%2357605C" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}
.projects-slider .swiper-button-next::after {
	content: url('data:image/svg+xml,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 8H15M8 15L15 8L8 1" stroke="%2357605C" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}
.projects .projects-item h2 {
	font-weight: 600;
	font-size: 20px;
	line-height: 24px;
	margin-top: auto;
	margin-bottom: 6px;
}
.projects .projects-item h2 a {
	justify-content: start;
	color: #1E2723;
}
.projects-address {
	display: inline-block;
	font-size: 16px;
	line-height: 19px;
	color: #878A89;
	margin-bottom: 24px;
}
.projects .projects-item p {
	font-size: 16px;
	line-height: 140%;
	color: #1E1E1E;
}
.projects .read-more {
	justify-content: start;
	padding-top: 24px;
}

@media (max-width: 1071px) {
	h1, .h2 {
		font-size: 32px;
	}
	h2 {
		font-size: 28px;
	}
	.btn {
		font-size: 14px;
	}
	.services__flex-item:nth-child(1) {
		order: 2;
	}
	.services__flex-item:nth-child(2) {
		order: 1;
	}
	.services__flex-item:nth-child(3) {
		order: 3;
	}
	.services__flex-item:nth-child(3) {
		order: 4;
	}
	.about__image {
		min-width: clamp(180px, 24vw, 376px);
	}
}
@media (max-width: 1024px) {
	.advantages__flex {
		flex-wrap: wrap;
		justify-content: center;
	}
	.advantages__item {
		flex: 0 1 calc(33.33% - 24px);
	}
}
@media (width<991px) {
	.blog-archive .blog-item,
	.projects-item {
		width: calc((100% - 24px) / 2);
	}
	.blog-archive .blog-item:first-child {
		flex-direction: column;
		gap: 24px;
		padding: 24px;
	}
	.blog-archive .blog-item:first-child .blog-item-image,
	.blog-archive .blog-item:first-child .blog-item-description {
		width: 100%;
	}
	.blog-archive .blog-item:first-child .blog-item-image {
		max-height: 400px;
	}
	.blog-archive .blog-item:first-child .blog-item-description .post-meta {
		margin-bottom: 24px;
	}
}
@media (max-width: 768px) {
	.container {
		padding-top: 24px;
		margin-bottom: 96px;
	}
	[class$=__container] {
		padding-top: 96px;
	}
	.footer__container {
		margin-bottom: 0;
	}
	.top__wrapper,
	.header-menu .menu {
		display: none;
	}
	.header__container {
		position: relative;
		padding: 0 !important;
		margin: 0 !important;
	}
	.header-menu {
		background: rgba(255, 255, 255, 0.85);
		border-bottom: 1px solid #FFFFFF;
		border-radius: 0px;
		box-shadow: none;
		padding: 12px 24px;
	}
	.header__logo {
		max-width: 104px;
	}
	.button-menu {
		display: block;
		width: 32px;
		height: 32px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 4px;
		background: transparent;
		-webkit-tap-highlight-color: transparent;
	}
	.button-menu span {
		display: inline-block;
		width: 24px;
		height: 3px;
		background: #1E2723;
		border-radius: 5px;
	}
	
	#mob-menu {
		display: block;
		width: calc(100% - 4.5%);
		max-height: calc(100vh - 110px);
		overflow-y: auto;
		position: absolute;
		z-index: 5;
		top: calc(100% + 2px);
		right: 0;
		background: #FFFFFF;
		box-sizing: border-box;
		border-top: 1px solid #E0ECD3;
		box-shadow: 0px 48px 19px rgba(166, 165, 150, 0.01), 0px 27px 16px rgba(166, 165, 150, 0.05), 0px 12px 12px rgba(166, 165, 150, 0.09), 0px 3px 7px rgba(166, 165, 150, 0.1);
		border-radius: 0px 0px 12px 12px;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.5s ease, visibility 0.5s ease;
		pointer-events: none
	}
	#mob-menu *::-webkit-scrollbar {
		scrollbar-width: none;
		-ms-overflow-style: none;
	}
	#mob-menu::-webkit-scrollbar {
		width: 0;
		height: 0;
		background: transparent;
	}
	#mob-menu::-webkit-scrollbar-track {
		background: transparent;
	}
	#mob-menu::-webkit-scrollbar-thumb {
		background: transparent;
	}
	#mob-menu.active {
		opacity: 1;
		visibility: visible;
		pointer-events: all;
	}
	#mob-menu nav {
		padding: 24px;
	}
	#mob-menu .mob-menu-list {
		display: flex;
		flex-direction: column;
		align-items: start;
		gap: 24px;
		padding-bottom: 24px;
	}
	#mob-menu .mob-menu-list li:last-child {
		display: none;
	}
	#mob-menu .mob-menu-list a {
		font-weight: 500;
		font-size: 16px;
		line-height: 19px;
		color: #1E2723;
	}
	#mob-menu .mob-menu-list .menu-item:has(.sub-menu) {
		display: flex;
		flex-direction: column;
		align-items: start;
		gap: 12px;
	}
	#mob-menu .mob-menu-list .menu-item:has(.sub-menu)>a::after {
		content: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5 7.5L10 12.5L15 7.5" stroke="%231E2723" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
		font-size: 0;
		line-height: 1;
		transform: scale(1);
		transition: transform .3s ease-in;
		margin-left: 6px;
	}
	#mob-menu .mob-menu-list .menu-item:has(.sub-menu).active>a::after {
		transform: scale(-1);
	}
	#mob-menu .mob-menu-list .sub-menu {
		display: none;
		flex-direction: column;
		align-items: start;
		gap: 12px;
		padding-left: 12px;
	}
	#mob-menu .mob-menu-list .menu-item.active .sub-menu {
		display: flex;
	}
	#mob-menu .mob-menu-contacts {
		border-top: 1px solid #E0ECD3;
		border-bottom: 1px solid #E0ECD3;
		padding-block: 12px;
	}
	#mob-menu .mob-menu-contacts svg {
		min-width: 36px;
		min-height: 36px;
	}
	#mob-menu .mob-menu-contacts address {
		display: flex;
		align-items: center;
		gap: 12px;
		margin-bottom: 12px;
	}
	#mob-menu .mob-menu-contacts address span {
		font-size: 18px;
		font-style: normal;
		line-height: 22px;
		color: #1E2723;
	}
	#mob-menu .mob-menu-contacts button {
		display: inline-flex;
		align-items: center;
		gap: 12px;
		background: transparent;
	}
	#mob-menu .mob-menu-contacts button>span {
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap: 0px;
	}
	#mob-menu .mob-menu-contacts button>span span {
		font-size: 18px;
		line-height: 22px;
		color: #E31837;
	}
	#mob-menu .mob-menu-social {
		padding-bottom: 12px;
	}
	#mob-menu .mob-menu-social ul {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 24px;
	}
	#tel-modal .modal-body a {
		font-size: 18px;
		line-height: 22px;
		/* color: #E31837; */
		max-width: 250px;
		width: 100%;
		height: 63px;
	}
	.why__flex {
		flex-wrap: wrap;
		gap: 24px;
	}
	.why__flex-item {
		flex: 47%;
	}
	.steps__wrapper {
		flex-direction: column-reverse;
		align-items: center;
		gap: 48px;
	}
	.steps__image img {
		margin-left: 0px;
	}
	.steps__panel,
	.steps__panel-list li:nth-child(1),
	.steps__panel-list li:nth-child(2),
	.steps__panel-list li:nth-child(3),
	.steps__panel-list li:nth-child(4),
	.steps__panel-list li:nth-child(5) {
		margin-right: 0;
		padding-left: 36px;
		padding-right: 0px;
		margin-bottom: 36px;
	}
	.steps__panel-list li:nth-child(1)::after,
	.steps__panel-list li:nth-child(3)::after,
	.steps__panel-list li:nth-child(4)::after,
	.steps__panel-list li:nth-child(5)::after {
		top: -8px;
	}
	.steps__panel {
		margin-bottom: 0;
	}
	.steps__panel-list li {
		text-align: left;
	}
	.steps__panel-list li::after {
		right: 100%;
	}
	.quiz__container {
		padding-block: 0;
	}
	.quiz-container {
		padding-bottom: 0;
	}
	.about__wrapper {
		padding-left: 10vw;
		padding-right: 10vw;
	}
	.about__flex {
		flex-direction: column;
	}
	.about__text {
		font-size: 16px;
	}
	.reviews__items {
		flex-direction: column;
	}
	.hero__container {
		flex-direction: column-reverse;
		gap: 24px;
		padding-top: 0;
		margin-top: 0;
	}
	.hero__title {
		width: 100%;
		align-items: center;
		margin-bottom: 24px;
	}
	.hero__title h1,
	.hero__title span {
		text-align: center;
	}
	.hero__title span {
		margin-bottom: 64px;
	}
	.hero__title-links {
		justify-content: center;
	}
	.hero__image {
		max-width: 100%;
	}
	.services__flex {
		padding-left: 20px;
		padding-right: 20px;
	}
	.about__image {
		min-width: 0;
	}
	.call__container p,
	.steps__panel-list li,
	.services__wrapper p,
	.consultation__request p,
	.why__flex-item p {
		font-size: 18px;
	}
	.consultation__container {
		flex-direction: column;
	}
	.consultation__request,
	.call__container {
		text-align: center;
	}
	.consultation-form form .form-inputs p,
	.consultation-form form .form-bottom {
		flex-direction: column;
		gap: 12px;
	}
	.consultation-form form .form-option,
	.consultation-form form .form-bottom>p {
		width: 100%;
	}
	.footer__wrapper,
	.footer__contacts,
	.footer__contacts-contact {
		flex-direction: column;
		align-items: center;
	}
	.footer__contacts,
	.footer__contacts-social {
		gap: 24px;
	}
	.footer__contacts-contact {
		gap: 12px;
	}
	.footer__text {
		text-align: center;
		margin-bottom: 12px;
	}
}
@media (width<650px) {
	.consultation-form form .form-option .coly p .wpcf7-checkbox {
		display: flex;
		flex-wrap: wrap;
		gap: 24px;
	}
	.consultation-form form .form-option .coly p .wpcf7-checkbox>span {
		width: calc((100% - 24px) / 2);
		display: flex;
		justify-content: center;
	}
	.blog-archive .blog-item,
	.projects-item {
		width: 100%;
	}
	.blog-archive .blog-item .blog-item-image {
		height: 250px;
	}
	.blog-archive .blog-item .blog-item-image a {
		max-height: 100%;
	}
}
@media (max-width: 600px) {
	.hero__image {
		max-width: 100%;
		padding-inline: 15px;
	}

	.hero__title h1 {
		font-weight: 700;
		font-size: 28px;
		line-height: 34px;
		text-align: center;
		margin-bottom: 6px !important;
	}

	.hero__title span {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 24px;
	}

	.hero__title-links {
		flex-direction: column;
		gap: 12px;
	}

	.hero__title-links .btn {
		max-width: 100%;
		font-size: 18px;
	}
	.why__flex-item {
		padding: 0;
	}
	.why__wrapper,
	.services__wrapper,
	.about__wrapper {
		padding: 40px 20px 60px 20px;
	}
	.advantages__item {
		flex: 100%;
	}
	.reviews__container h2,
	.steps__wrapper {
		padding: 0px 20px;
	}
	.hero__title h1, h2,
	.call__container>p,
	.services__wrapper p,
	.consultation__request>p {
		margin-bottom: 36px;
	}
	.services__flex {
		padding: 0;
	}
	.services__flex-item p {
		margin-bottom: 0;
	}
	.options-group label {
		padding: 12px;
	}
	.options-group label span {
		font-size: 14px;
	}
}
@media (max-width: 460px) {
	.container {
		padding-inline: 15px;
	}
	.consultation-form form .buttons .btn {
		max-width: 100%;
	}
	.services__flex-item {
		padding: 12px 24px 24px;
	}
	.services__flex-item p {
		font-size: 18px;
	}
	.services__flex-item_image img {
		width: 100%;
	}
	.advantages__item {
		flex: 100%;
	}
	.text-block .text-content {
		padding: 24px;
	}
	.modal-body {
		gap: 32px;
		padding: 24px;
	}
	.modal-header {
		gap: 12px;
	}
	.button-close {
		top: -8px;
		right: -8px;
	}
	.button-close svg {
		width: 16px;
		height: 16px;
	}
	.modal-header h1 {
		font-size: 32px;
		line-height: 36px;
	}
}
@media (max-width: 425px) {
	.hero__title-links {
		flex-direction: column;
		gap: 12px;
		width: 100%;
	}
	.hero__title-links a:first-child,
	.hero__title-links a:last-child {
		width: 100%;
		text-align: center;
	}
	.services__flex-item p {
		font-size: 14px;
	}
	.steps__panel-list li {
		font-size: 18px;
	}
	.steps__panel-list li:nth-child(1)::after,
	.steps__panel-list li:nth-child(3)::after,
	.steps__panel-list li:nth-child(5)::after {
		top: 5px;
	}
	.about__flex {
		gap: 36px;
	}
}
@media (max-width: 402px) {
	.hero__title h1 {
		font-weight: 700;
		font-size: 32px;
	}
	.steps__panel-list li:nth-child(4)::after {
		top: 5px;
	}
}





