:root {
	--dark-color: #362E2D;
	--dark-color10: rgb(54 46 45 / 10%);
	--dark-color25: rgb(54 46 45 / 25%);
	--dark-color50: rgb(54 46 45 / 50%);
	--main-color: #849b41;
	--main-color15: rgb(132 155 65 / 15%);
	--main-color75: rgb(132 155 65 / 75%);
	--light-color: #FBFBF8;
	--main-transition: all .15s;
	--long-transition: all .3s;
}

/*--------------------------------------------
Шрифты
--------------------------------------------*/

@font-face {
  font-family: 'icons';
  src: url('../fonts/icons/icons.eot?96976419');
  src: url('../fonts/icons/icons.eot?96976419#iefix') format('embedded-opentype'),
       url('../fonts/icons/icons.woff2?96976419') format('woff2'),
       url('../fonts/icons/icons.woff?96976419') format('woff'),
       url('../fonts/icons/icons.ttf?96976419') format('truetype'),
       url('../fonts/icons/icons.svg?96976419#icons') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-chevron-left-solid:before { content: '\e800'; }
.icon-xmark-solid:before { content: '\e801'; }
.icon-spinner-solid:before { content: '\e802'; }
.icon-check-solid:before { content: '\e803'; }
.icon-magnifying-glass-solid:before { content: '\e804'; }

/*--------------------------------------------
Базовые стили
--------------------------------------------*/

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

html, body {
	height: 100%;
}

html {
	box-sizing: border-box;
    font-size: 62.5%;
    line-height: 1.5;
}

body {
	position: relative;
	min-width: 32rem;
	font-weight: 300;
	font-style: normal;
	font-family: 'Inter', sans-serif;
	color: var(--dark-color);
	background: #fff;
}

div, section, header, footer, aside, nav, ul, ol, li {
	position: relative;
}

input, textarea, button {
	outline: 0 none;
}

ul, ol {
	margin: 0;
	padding: 0;
}

li {
	position: relative;
	list-style: none;
}

a,
a:focus {
	color: var(--main-color);
	text-decoration: none;
}

a:hover,
a:focus:hover {
	color: var(--dark-color);
	text-decoration: none;
}

table {
	width: 100%;
}

/*--------------------------------------------
Формы
--------------------------------------------*/

.wpcf7-spinner {
	position: absolute;
	top: calc(50% - 1rem);
	right: 2rem;
	width: 2rem;
	height: 2rem;
	z-index: 100;
	visibility: hidden;
}

.wpcf7-spinner:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 2rem;
	height: 2rem;
	font: 2rem/2rem 'icons';
	content: '\e802';
	color: #c8d1af;
	animation: spinZ linear 1s infinite forwards;
}

.wpcf7 .submitting .wpcf7-spinner {
	visibility: visible;
}

@keyframes spinZ {

	from {
	-webkit-transform: rotateZ(0deg);
			transform: rotateZ(0deg);
	}

	to {
	-webkit-transform: rotateZ(360deg);
			transform: rotateZ(360deg);
	}

}

@-webkit-keyframes spinZ {

	from {
	-webkit-transform: rotateZ(0deg);
			transform: rotateZ(0deg);
	}

	to {
	-webkit-transform: rotateZ(360deg);
			transform: rotateZ(360deg);
	}

}

.wpcf7-list-item {
	margin: 0;
}

.wpcf7 .wpcf7-response-output,
.screen-reader-response,
.wpcf7-not-valid-tip {
	display: none !important;
}

.error-field {
	border-color: #f00 !important;
}

.hide-block {
	display: none !important;
}

.form-note {
    display: flex;
    flex-direction: column;
    justify-content: center;
	width: 100%;
	padding-top: 7rem;
	font-size: 2.2rem;
    line-height: 1.5;
    text-align: center;
}

.form-note:before {
	position: absolute;
	top: 0;
	left: calc(50% - 2.5rem);
	width: 5rem;
	height: 5rem;
	content: '';
	border-radius: 50%;
}

.form-note_sent:before {
	background: url('../img/sent.svg') no-repeat center / 5rem auto;
}

.form-note_spam:before {
	background: url('../img/spam.svg') no-repeat center / 5rem auto;
}

.form-note_fail:before {
	background: url('../img/fail.svg') no-repeat center / 5rem auto;
}

input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
	display: block;
	width: 100%;
	padding: 1.6rem 3rem;
	font-family: Inter;
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
	color: var(--dark-color);
	background: var(--light-color);
	border-width: .2rem;
	border-style: solid;
	transition: var(--main-transition);
}

.form-fields_light input[type="text"],
.form-fields_light input[type="tel"],
.form-fields_light input[type="email"],
.form-fields_light textarea {
	border-color: var(--light-color);
}

.form-fields_dark input[type="text"],
.form-fields_dark input[type="tel"],
.form-fields_dark input[type="email"],
.form-fields_dark textarea {
	border-color: var(--dark-color50);
}

input[type="text"],
input[type="tel"],
input[type="email"] {
	height: 6rem;
}

textarea {
	height: 13rem;
}

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
textarea:focus {
	background: #fff;
	border-color: var(--main-color);
}

input::-webkit-input-placeholder {
	color: var(--dark-color);
	opacity: .75;
}

input::-moz-placeholder {
	color: var(--dark-color);
	opacity: .75;
}

input:-moz-placeholder {
	color: var(--dark-color);
	opacity: .75;
}

input:-ms-input-placeholder {
	color: var(--dark-color);
	opacity: .75;
}

input[type="submit"] {
	position: relative;
	display: block;
	width: 100%;
	height: 5.5rem;
	font: normal 400 1.5rem 'Merriweather', serif;
	letter-spacing: 0.075rem;
	text-transform: uppercase;
	text-align: center;
	color: #fff;
	background: var(--main-color);
	box-shadow: inset 0 0 0 0.2rem var(--main-color);
	border: none;
	z-index: 10;
	cursor: pointer;
	transition: var(--main-transition);
}

input[type="submit"]:hover {
	background-color: transparent;
}

input[type="search"] {
	display: block;
	width: 100%;
	height: 4.5rem;
	padding: 1.4rem 4rem 1.5rem 2rem;
	font-family: Inter;
	font-size: 1.4rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
	color: var(--dark-color);
	background: var(--light-color);
	border: 0;
	transition: var(--main-transition);
}

input[type="search"]:focus {
	background: #fff;
}

.search-submit {
	position: absolute;
	top: 0;
	right: 0;
	width: 4.5rem;
	height: 4.5rem;
	background: transparent;
	border: 0;
}

.search-submit:after {
	position: absolute;
    top: 0;
    left: 0;
    width: 4.5rem;
    height: 4.5rem;
    content: '\e804';
    font: 2.2rem/4.6rem 'icons';
    text-align: center;
    color: var(--dark-color);
    transition: var(--main-transition);
    cursor: pointer;
}

.search-submit:hover:after {
	color: var(--main-color);
}

.form-fields_light input[type="submit"]:hover {
	box-shadow: inset 0 0 0 0.2rem #fff;
}

.form-fields_dark input[type="submit"]:hover {
	color: var(--main-color);
	box-shadow: inset 0 0 0 0.2rem var(--main-color);
}

.form-fields__wrap {
	display: flex;
	flex-wrap: wrap;
	width: 81rem;
	gap: 0 1rem;
	margin: 0 auto 2rem;
}

.form-fields__left,
.form-fields__right {
	width: calc((100% - 1rem)/2);
}

.form-fields__field {
	margin-bottom: 1rem;
}

.form-fields__agree {
	width: 100%;
	font-style: normal;
	font-weight: 400;
	font-size: 1.4rem;
	text-align: center;
}

.form-fields_light .form-fields__agree {
	color: rgba(255, 255, 255, 0.75);
}

.form-fields_light .form-fields__agree a,
.form-fields_light .form-fields__agree a:focus,
.form-fields_light .form-fields__agree a:hover,
.form-fields_light .form-fields__agree a:focus:hover {
	color: rgba(255, 255, 255, 0.75);
}

.form-fields_dark .form-fields__agree a,
.form-fields_dark .form-fields__agree a:focus {
	color: var(--dark-color);
}

.form-fields_dark .form-fields__agree a:hover,
.form-fields_dark .form-fields__agree a:focus:hover {
	color: var(--main-color);
}

.form-fields__agree a {
    background-size: 0 .1rem;
    background-position: 0 100%;
    background-repeat: no-repeat;
    transition: var(--long-transition);
}

.form-fields_light .form-fields__agree a {
	background-image: linear-gradient(0deg,rgb(255 255 255 / 75%) .1rem,rgb(255 255 255 / 75%) 0);
}

.form-fields_dark .form-fields__agree a {
	background-image: linear-gradient(0deg,var(--main-color) .1rem,var(--main-color) 0);
}

.form-fields__agree a:hover {
	background-size: 100% .1rem;
}

.form-fields__submit {
	margin-left: auto;
	margin-right: auto;
}

.form-fields__submit_short {
	max-width: 25rem;
}

/*--------------------------------------------
Лэйаут
--------------------------------------------*/

.wrap {
	display: flex;
	flex-wrap: wrap;
}

.content {
	order: 2;
	width: 100%;
	padding-left: 35rem;
}

.sidebar {
	order: 1;
	width: 35rem;
}

.container {
	max-width: calc(190.3rem - 35rem);
	padding: 0 8rem;
}

/*--------------------------------------------
Всплывающие окна
--------------------------------------------*/

.fancybox-navigation {
	position: static;
}

.popup {
	box-sizing: border-box !important;
	width: 100%;
	max-width: 450px;
	padding: 5rem 6rem 6rem;
	background: var(--light-color) url('../img/bg1.jpg') no-repeat center center / cover;
}

.popup__title {
	margin-bottom: 4rem;
	font: normal 400 3.2rem/1.375 'Merriweather', sans-serif;
	text-align: center;
}

.popup__close {
	position: absolute;
	top: 2rem;
	right: 2rem;
	width: 2rem;
	height: 2rem;
	padding: 0;
	border: none;
	background: none;
	opacity: .5;
	cursor: pointer;
	transition: var(--main-transition);
}

.popup__close:hover {
	opacity: 1;
}

.popup__close:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 2rem;
	height: 2rem;
	font: 2.6rem/2rem 'icons';
	content: '\e801';
	text-align: center;
	color: var(--dark-color);
}

.popup-form__agree {
	margin: 2rem 0;
	line-height: 1.5714;
}

.popup .fancybox-close-small {
	display: none !important;
}

/*--------------------------------------------
Кнопки
--------------------------------------------*/

.btn {
	display: block;
	width: 100%;
	height: 5.5rem;
	font: normal 400 1.5rem/5.5rem 'Merriweather', serif;
	text-align: center;
	letter-spacing: 0.075rem;
	text-transform: uppercase;
	background-color: var(--main-color);
	box-shadow: inset 0 0 0 .2rem var(--main-color);
	transition: var(--main-transition);
}

.btn:hover {
	background-color: transparent;
}

.btn,
.btn:focus {
	color: #fff;
}

.btn:hover,
.btn:focus:hover {
	color: var(--main-color);
}

/*--------------------------------------------
Логотип
--------------------------------------------*/

.logo img {
	display: block;
	width: auto;
	height: auto;
	max-width: 22.7rem;
	max-height: 4.5rem;
}

/*--------------------------------------------
Контакты
--------------------------------------------*/

.contacts {
	font-size: 1.8rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.contacts a {
	position: relative;
	transition: var(--long-transition);
}

.contacts a:after {
	position: absolute;
	bottom: -.2rem;
	left: 0;
	width: 0;
	height: .2rem;
	content: '';
	transition: var(--long-transition);
}

.contacts a:hover:after {
	width: 100%;
}

.contacts_light a:after {
	background: rgb(255 255 255 / 50%);
}

.contacts_light,
.contacts_light a,
.contacts_light a:focus,
.contacts_light a:hover,
.contacts_light a:focus:hover {
	color: #fff;
}

.contacts_dark a:after {
	background: var(--main-color);
	opacity: .75;
}

.contacts_dark a,
.contacts_dark a:focus {
	color: var(--dark-color);
}

.contacts_dark a:hover,
.contacts_dark a:focus:hover {
	color: var(--main-color);
}

.contacts__block {
	margin-bottom: 1.5rem;
	padding-left: 2.5rem;
}

.contacts__block svg {
	position: absolute;
	top: .2rem;
	left: -.8rem;
	fill: var(--main-color);
}

.contacts_offset {
	margin-bottom: 2rem;
	padding-left: .8rem;
}

/*--------------------------------------------
Соц. сети
--------------------------------------------*/

.social__list {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.social__item a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4rem;
	height: 4rem;
	border-radius: 50%;
	background: var(--main-color75);
	transition: var(--main-transition);
}

.social__item a,
.social__item a:focus,
.social__item a:hover,
.social__item a:focus:hover {
	color: #fff;
}

.social__item a:hover {
	background: var(--main-color);
}

.social__item svg {
	fill: #fff;
	transition: var(--main-transition);
}

.social__item_vb svg {
	transform: translateY(.1rem);
}

/*--------------------------------------------
Кнопка "Наверх"
--------------------------------------------*/

.to-top {
	position: fixed;
	bottom: 6rem;
	right: 4.8rem;
	width: 6.4rem;
	height: 6.4rem;
	background: var(--light-color);
	border-radius: 50%;
	z-index: 1;
	cursor: pointer;
	transition: var(--main-transition);
	z-index: 1000;
	border: .2rem solid #fff;
	opacity: 0;
	visibility: hidden;
}

.to-top:hover {
	background: var(--main-color);
}

.to-top:before {
	content: '\e800';
	position: absolute;
	top: calc(50% - 1rem);
	left: calc(50% - .6rem);
	width: 1.2rem;
	height: 2rem;
	font: 2rem/2rem 'icons';
	text-align: center;
	color: var(--dark-color);
	transform: rotate(90deg);
}

.to-top:hover:before {
	color: #fff;
}

.to-top_active {
	opacity: 1;
	visibility: visible;
}

/*--------------------------------------------
Сайдбар
--------------------------------------------*/

.sidebar {
	position: fixed;
	height: 100vh;
	padding: 3.5rem 2.5rem;
	background: var(--dark-color) url('../img/pattern1.jpg') repeat top left;
	z-index: 100;
}

.sidebar__logo {
	margin: 0 auto 3rem;
}

.sidebar__logo img {
	margin-left: auto;
	margin-right: auto;
}

.sidebar__nav {
	margin-bottom: 3rem;
	border-bottom: 2px solid rgb(132 155 65 / 50%);
	border-top: 2px solid rgb(132 155 65 / 50%);
    padding: 2.5rem 0;
}

.sidebar__menu .menu-item a {
	position: relative;
	display: block;
	padding: .7rem 2.5rem .7rem;
	font-size: 1.8rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	z-index: 1;
	transition: var(--long-transition);
}

.sidebar__menu .menu-item a,
.sidebar__menu .menu-item a:focus,
.sidebar__menu .menu-item a:hover,
.sidebar__menu .menu-item a:focus:hover {
	color: #fff;
}

.sidebar__menu .menu-item a:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	background-color: var(--main-color);
	opacity: 0;
	transition: var(--long-transition);
	z-index: -1;
}

.sidebar__menu .menu-item a:hover:after {
	opacity: 1;
}

.sidebar__menu .current-menu-item a:after {
	opacity: .75;
}

/*--------------------------------------------
Мобилка
--------------------------------------------*/

.header-mobile {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	padding-top: 2rem;
	padding-bottom: 2rem;
	background: var(--dark-color) url('../img/pattern1.jpg') repeat top left;
	z-index: 1000;
}

.header-mobile__wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.header-mobile__right {
	display: flex;
	align-items: center;
	gap: 2rem;
}

.header-mobile__phone a,
.search-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 5rem;
	height: 5rem;
	border-radius: 50%;
	background: var(--main-color75);
	transition: var(--long-transition);
}

.header-mobile__phone a:focus,
.search-btn:focus {
	background: var(--main-color);
}

.header-mobile__phone svg {
	width: 2.5rem;
	height: 2.5rem;
	fill: #fff;
}

.burger {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: .8rem;
	width: 5rem;
	height: 5rem;
	cursor: pointer;
}

.burger__bar {
	width: 4rem;
	height: .3rem;
	background: #fff;
	transition: var(--long-transition);
}

.burger:hover .burger__bar {
	opacity: .75;
}

.header-mobile__search {
	display: none;
	position: absolute;
	top: 7.3rem;
	left: 0;
	width: 100%;
	padding: 3rem 5rem 3rem;
	background: var(--main-color);
}

.search-btn {
	border: none;
	cursor: pointer;
	position: relative;
	padding: 0;
}

.search-btn svg {
	transition: var(--long-transition);
}

.search-btn:before,
.search-btn:after {
	position: absolute;
	top: 2.4rem;
	left: calc(50% - 1.2rem);
	width: 2.4rem;
	height: .2rem;
	background: #fff;
	content: '';
	transition: var(--long-transition);
}

.search-btn:before {
	transform: rotate(45deg);
}

.search-btn:after {
	transform: rotate(-45deg);
}

.search-btn_open:before {
	transform: rotate(45deg) scale(1);
}

.search-btn_open:after {
	transform: rotate(-45deg) scale(1);
}

.search-btn_close:before {
	transform: rotate(45deg) scale(0);
}

.search-btn_close:after {
	transform: rotate(-45deg) scale(0);
}

.search-btn_open svg {
	transform: scale(0);
}

/*--------------------------------------------
Попап меню
--------------------------------------------*/

.body-fixed {
	overflow: hidden;
}

.popup-box {
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	padding: 5rem 5rem 5rem;
	color: #fff;
	transition: var(--long-transition);
	transform: translateY(-30%);
	visibility: hidden;
	opacity: 0;
	overflow: auto;
	background: var(--dark-color) url('../img/pattern1.jpg') repeat top left;
	z-index: 2000;
}

.popup-box_open {
	visibility: visible;
	opacity: 1;
	transform: translateY(0);
}

.popup-box__nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0 5rem;
}

.mobile-menu .menu-item {
	padding-bottom: 1.5rem;
	font-size: 1.8rem;
}

.mobile-menu .menu-item a {
	transition: var(--main-transition);
}

.mobile-menu .menu-item a,
.mobile-menu .menu-item a:focus {
	color: #fff;
}

.mobile-menu .menu-item a:hover,
.mobile-menu .menu-item a:focus:hover,
.mobile-menu .current-menu-item a,
.mobile-menu .current-menu-item a:focus {
	color: var(--main-color);
}

.popup-box__close {
	position: absolute;
	top: 3rem;
	left: calc(100% - 6rem);
	width: 3rem;
	height: 3rem;
	transition: var(--main-transition);
	opacity: .75;
	cursor: pointer;
	z-index: 10;
}

.popup-box__close:after {
	position: absolute;
	top: calc(50% - 1.5rem);
	left: calc(50% - 1.5rem);
	width: 3rem;
	height: 3rem;
	content: '\e801';
	font: 2.8rem/3rem 'icons';
	text-align: center;
	color: #fff;
}

.popup-box__close:hover {
	opacity: 1;
}

/*--------------------------------------------
Шапка
--------------------------------------------*/

.header {
	position: fixed;
	width: calc(100% - 35rem);
	background: var(--main-color);
	z-index: 100;
}

.header__wrap {
	width: 100%;
	height: 7rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.header__search {
	width: 25rem;
}

.header__nav {
	width: calc(100% - 32rem);
}

.header__menu {
	display: flex;
	flex-wrap: wrap;
	gap: 0 4rem;
}

.header__menu .menu-item {
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-transform: uppercase;
}

.header__menu .menu-item a,
.header__menu .menu-item a:focus,
.header__menu .menu-item a:hover,
.header__menu .menu-item a:focus:hover {
	color: #fff;
}

.header__menu .menu-item a {
	position: relative;
	transition: var(--long-transition);
}

.header__menu .menu-item a:after {
	position: absolute;
	bottom: -.2rem;
	left: 0;
	width: 0;
	height: .2rem;
	content: '';
	transition: var(--long-transition);
	background: rgb(255 255 255 / 50%);
}

.header__menu .menu-item:hover a:after,
.header__menu .current-menu-item a:after {
	width: 100%;
}

/*--------------------------------------------
Основная часть
--------------------------------------------*/

.body {
	padding: 7rem 0 3rem;
}

/*--------------------------------------------
Карусель/Баннер
--------------------------------------------*/

.carousel {
	height: 45rem;
	margin-top: 5rem;
	margin-bottom: 6rem;
	background: url('../img/bg1.jpg') no-repeat center / cover;
}

.carousel .owl-stage-outer {
	z-index: 1;
}

.carousel .owl-nav {
    position: absolute;
    top: 0;
    left: -3.2rem;
    width: calc(100% + 6.4rem);
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
}

.carousel .owl-prev,
.carousel .owl-next {
	width: 6.4rem;
	height: 6.4rem;
	background: var(--light-color);
	border-radius: 50%;
	z-index: 1;
	cursor: pointer;
	transition: var(--main-transition);
	border: .2rem solid #fff;
}

.carousel .owl-prev:hover,
.carousel .owl-next:hover {
	background: var(--main-color);
}

.carousel .owl-prev:before,
.carousel .owl-next:before {
	content: '\e800';
	position: absolute;
	top: calc(50% - 1rem);
	width: 1.2rem;
	height: 2rem;
	font: 2rem/2rem 'icons';
	text-align: center;
	color: var(--dark-color);
	transition: var(--main-transition);
}

.carousel .owl-prev:hover:before,
.carousel .owl-next:hover:before {
	color: #fff;
}

.carousel .owl-next:before {
	left: calc(50% - .6rem);
	transform: scale(-1, 1);
	filter: FlipH;
	-ms-filter: "FlipH";
}

.carousel .owl-prev:before {
	left: calc(50% - .6rem);
}

.carousel .owl-prev.disabled,
.carousel .owl-next.disabled {
	cursor: default !important;
	background: var(--light-color) !important;
}

.carousel .owl-prev.disabled:before,
.carousel .owl-next.disabled:before {
	color: var(--dark-color) !important;
	opacity: .5 !important;
}

.carousel .owl-dots {
	position: absolute;
	bottom: 4rem;
	left: 0;
	width: 100%;
	height: 1rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 5rem;
	z-index: 1;
}

.carousel .owl-dots .owl-dot {
	width: 1rem;
	height: 1rem;
	border-radius: 50%;
	background: var(--dark-color);
	opacity: .25;
	transition: var(--main-transition);
}

.carousel .owl-dots .owl-dot:hover {
	background: var(--main-color);
	opacity: 1;
}

.carousel .owl-dots .active {
	transform: scale(1.4);
	background: var(--main-color);
	opacity: 1;
}

.banner {
	width: 100%;
	height: 45rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding-left: 6rem;
	padding-right: 6rem;
}

.banner__left {
	width: calc(100% - 45rem);
	padding-right: 5rem;
}

.banner__right {
	width: 45rem;
}

.banner__img {
	max-width: 45rem;
	height: auto;
}

.banner__title {
	margin-bottom: 3rem;
	font: normal 400 3.2rem 'Merriweather', serif;
}

.banner__text {
	margin-bottom: 4rem;
	font: normal 400 2.4rem/1.6667 'Merriweather', serif;
}

.banner__btn {
	max-width: 26rem;
}

/*--------------------------------------------
Секция
--------------------------------------------*/

.section {
	margin: 6rem 0;
}

.section-heading {
	margin-bottom: 6rem;
}

.section-title {
	padding: 0 20rem;
	font: normal 400 3.6rem/1.5 'Merriweather', serif;
	text-align: center;
}

.section-more {
	position: absolute;
	top: calc(50% - .9rem);
	right: 0;
	text-align: right;
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-transform: uppercase;
}

.section-more a {
	position: relative;
	transition: var(--long-transition);
}

.section-more a:hover,
.section-more a:focus:hover {
	color: var(--main-color);
}

.section-more a:after {
	position: absolute;
	bottom: -.2rem;
	left: 0;
	width: 0;
	height: .2rem;
	content: '';
	transition: var(--long-transition);
	background: var(--main-color);
	opacity: .75;
}

.section-more a:hover:after {
	width: 100%;
}

/*--------------------------------------------
Галерея
--------------------------------------------*/

.gallery {
	display: flex;
	flex-wrap: wrap;
	gap: .4rem;
}

.gallery__item {
	width: calc((100% - .8rem)/3);
}

.gallery__item img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 46.8rem;
	max-height: 30rem;
	z-index: 0;
}

.gallery__item a {
	position: relative;
	display: block;
	overflow: hidden;
}

.gallery__item a:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	z-index: 1;
	background: var(--dark-color);
}

.gallery__item a:after {
	position: absolute;
	top: calc(50% - 2rem);
	left: calc(50% - 2rem);
	width: 4rem;
	height: 4rem;
	content: '\e804';
	font: 3.5rem/4rem 'icons';
	text-align: center;
	color: #fff;
	opacity: 0;
	transform: scale(0);
	z-index: 2;
}

.gallery__item a:hover img {
	transform: scale(1.15);
}

.gallery__item a:hover:before {
	opacity: .5;
}

.gallery__item a:hover:after {
	opacity: 1;
	transform: scale(1);
}

.gallery__item img,
.gallery__item a,
.gallery__item a:before,
.gallery__item a:after {
	transition: var(--long-transition);
}

/*--------------------------------------------
Этапы
--------------------------------------------*/

.steps-list {
	display: flex;
	flex-wrap: wrap;
	gap: 6rem 6rem;
	counter-reset: num;
}

.steps-list__item {
	width: calc((100% - 12rem)/3);
	padding: 5rem 3rem 3rem;
	text-align: center;
	border: .1rem solid var(--dark-color25);
}

.step-item__title {
	margin-bottom: 2rem;
	font: normal 400 2.2rem 'Merriweather', serif;
}

.steps-list__item:before {
	position: absolute;
    top: -5rem;
    left: calc(50% - 3.5rem);
    width: 7rem;
    height: 12.2rem;
    font: normal 900 8rem 'Montserrat', sans-serif;
    color: var(--main-color15);
	text-align: center;
    content: counter(num);
    counter-increment: num;
    background: #fff;
}

/*--------------------------------------------
Форма
--------------------------------------------*/

.main-form {
	padding: 6rem 7rem 7rem;
	color: #fff;
	background: var(--dark-color) url('../img/pattern1.jpg') repeat top left;
}

.main-form__title {
	font: normal 400 3.6rem/1.5 'Merriweather', serif;
	text-align: center;
}

.main-form__subtitle {
	margin-bottom: 5rem;
	font: normal 400 2.4rem/1.875 'Merriweather', serif;
	text-align: center;	
}

.main-form__agree {
	margin: 0 0 3rem;
	line-height: 1;
}

/*--------------------------------------------
Содержимое страницы
--------------------------------------------*/

.main-title {
	font: normal 400 3.6rem/1.5 'Merriweather', serif;
}

.main-title_offset1 {
	margin: 5rem 0 4rem;
}

.main-title_offset2 {
	margin: 4rem 0 4rem;
}

.post-content {
	font-size: 1.8rem;
	font-style: normal;
	font-weight: 300;
	line-height: 1.778;
}

.post-content p,
.post-content ul,
.post-content ol  {
	margin: 3rem 0;
}

.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5,
.post-content h6 {
	margin: 4rem 0 4rem;
	font-family: 'Merriweather', serif;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
}

.post-content h2 {
	font-size: 3.2rem;
}

.post-content h3 {
	font-size: 2.8rem;
}

.post-content h4 {
	font-size: 2.6rem;
}

.post-content h5 {
	font-size: 2.4rem;
}

.post-content h6 {
	font-size: 2rem;
}

.post-content a {
    background-size: 0 .1rem;
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-image: linear-gradient(0deg,var(--main-color75) .1rem,var(--main-color75) 0);
    transition: var(--long-transition);
}

.post-content a:hover,
.post-content a:focus:hover {
	color: var(--main-color);
}

.post-content a:hover {
	background-size: 100% .1rem;
}

.post-content ul:not([class]) li,
.post-content ol:not([class]) li {
	padding-left: 4.5rem;
}

.post-content ul:not([class]) li:before {
	position: absolute;
    top: 1.2rem;
    left: 1.8rem;
    width: .6rem;
    height: .6rem;
	content: '';
	background: var(--dark-color);
	border-radius: 50%;
}

.post-content ol:not([class]) {
	counter-reset: num;
}

.post-content ol:not([class]) li:before {
	position: absolute;
    top: 0;
    left: 0;
    width: 4.5rem;
    text-align: center;
    content: counter(num) '.';
    counter-increment: num;
    color: var(--main-color);
}

.post-content table {
	margin-top: 4rem;
	margin-bottom: 4rem;
    border-spacing: 0;
    border-collapse: collapse;
}

.post-content table td,
.post-content table th {
	padding: 1rem 1.5rem;
	text-align: left;
}

.post-content table th {
	font-weight: 600;
	color: #fff;
}

.post-content table td {
	border: .1rem solid var(--dark-color10);
}

.post-content table th i,
.post-content table th em {
	font-style: italic;
}

.post-content table td i,
.post-content table td em {
	font-style: italic;
}

.post-content b,
.post-content strong {
	font-weight: 500;
}

.post-content .mejs-inner,
.post-content .mejs-layers {
	width: 100%;
	height: 100%;
}

.post-content .gallery {
	display: flex;
	flex-wrap: wrap;
	gap: .4rem;
	margin: 4.5rem 0 !important;
}

.post-content .gallery .gallery-item {
	float: none !important;
	margin: 0 !important;
	text-align: left !important;
}

.post-content .gallery-columns-2 .gallery-item {
	width: calc((100% - .4rem)/2) !important;
}

.post-content .gallery-columns-3 .gallery-item {
	width: calc((100% - .8rem)/3) !important;
}

.post-content .gallery-columns-4 .gallery-item {
	width: calc((100% - 1.2rem)/4) !important;
}

.post-content .gallery img {
	display: block;
	width: 100%;
	height: auto;
	border: none !important;
	z-index: 0;
}

.post-content .gallery br {
	display: none !important;
}

.post-content .gallery-item a {
	position: relative;
	display: block;
	overflow: hidden;
	background: none;
}

.post-content .gallery-item a:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	z-index: 1;
	background: var(--dark-color);
}

.post-content .gallery-item a:after {
	position: absolute;
	top: calc(50% - 2rem);
	left: calc(50% - 2rem);
	width: 4rem;
	height: 4rem;
	content: '\e804';
	font: 3.5rem/4rem 'icons';
	text-align: center;
	color: #fff;
	opacity: 0;
	transform: scale(0);
	z-index: 2;
}

.post-content .gallery-item a:hover img {
	transform: scale(1.15);
}

.post-content .gallery-item a:hover:before {
	opacity: .5;
}

.post-content .gallery-item a:hover:after {
	opacity: 1;
	transform: scale(1);
}

.post-content .gallery-item img,
.post-content .gallery-item a,
.post-content .gallery-item a:before,
.post-content .gallery-item a:after {
	transition: var(--long-transition);
}

.post-content .wp-video {
	width: 100% !important;
}

.map-photo {
	display: block;
	width: 100%;
	height: auto;
}

.map-title {
	text-align: center;
}

/*--------------------------------------------
Хлебные крошки
--------------------------------------------*/

.breadcrumbs {
	margin-top: 2rem;
	margin-bottom: 4.5rem;
	font-style: normal;
	font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.2857;
    color: var(--dark-color);
}

.breadcrumbs a,
.breadcrumbs a:focus {
	color: var(--dark-color);
}

.breadcrumbs a:hover,
.breadcrumbs a:focus:hover {
	color: var(--main-color);
}

.breadcrumbs a {
    background-size: 0 .1rem;
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-image: linear-gradient(0deg,var(--main-color) .1rem,var(--main-color) 0);
    transition: var(--long-transition);
}

.breadcrumbs a:hover {
	background-size: 100% .1rem;
}

.breadcrumbs__sep {
	position: relative;
	display: inline-block;
	width: 2rem;
	margin-left: .3rem;
	vertical-align: .1rem;
}

.breadcrumbs__sep:after {
	display: block;
	width: 100%;
	font: 1rem 'icons';
	content: '\e800';
	text-align: center;
	color: var(--dark-color50);
	transform: scale(-1, 1);
	filter: FlipH;
	-ms-filter: "FlipH";
}

/*--------------------------------------------
Страница изделия
--------------------------------------------*/

.product {
	margin: 5rem 0 6rem;
}

.product__card {
	display: flex;
	flex-wrap: wrap;
	gap: 0 7rem;
	margin-bottom: 6rem;
}

.product__thumbnail {
	width: 60rem;
	/*
	min-height: 60rem;
	*/
	display: flex;
	justify-content: center;
	align-items: center;
	box-shadow: 0 0 0 .1rem var(--dark-color25);
}

.product__thumbnail img {
	display: block;
	width: auto;
	height: auto;
	max-width: 60rem;
	max-height: 60rem;
}

.product__info {
	width: calc(100% - 60rem - 7rem);
}

.product-info__title {
	margin-bottom: 3rem;
	font: normal 400 3.2rem 'Merriweather', serif;
}

.product-tabs__dropdown {
	display: none;
}

.product-info__tabs {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 5rem;
}

.product-tabs__tabs {
	width: 20.3rem;
}

.product-tabs__tab,
.product-tabs__tab:focus,
.product-tabs__tab:hover,
.product-tabs__tab:focus:hover {
	color: var(--main-color);
}

.product-tabs__tab {
	display: block;
	padding: 2rem 2rem;
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 1.2222;
	/*transition: var(--main-transition);*/
}

.product-tabs__tab-text {
	border-bottom: .1rem dashed var(--main-color);
	transition: var(--main-transition);
}

.product-tabs__tab_active,
.product-tabs__tab_active:focus,
.product-tabs__tab_active:hover,
.product-tabs__tab_active:focus:hover {
	color: var(--dark-color);
}

.product-tabs__tab:hover .product-tabs__tab-text {
	border-bottom: .1rem dashed transparent;
}

.product-tabs__tab_active {
	background: var(--light-color);
}

.product-tabs__tab_active .product-tabs__tab-text {
	border-bottom: .1rem dashed transparent;
}

.product-tabs__blocks {
	width: calc(100% - 20.3rem);
}

.product-tabs__block {
	min-height: 36rem;
	padding: 4rem;
	background: var(--light-color);
}

.product-tabs__block:not(.product-tabs__block_active) {
	display: none;
}

/********************************/
/********************************/

.product-options__list {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
/*	flex-direction: column;
	height: 23.6rem; */
	margin-bottom: 4rem;
}

.product-options__item {
	width: calc((100% - 2rem)/2);
	padding: 1.3rem 2rem 1.3rem 4.5rem;
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 1;
	box-shadow: inset 0 0 0 .2rem var(--dark-color25);
	cursor: pointer;
}

.product-options__item:hover {
	box-shadow: inset 0 0 0 .2rem var(--dark-color50);
}

.product-options__item_active,
.product-options__item_active:hover {
	color: var(--main-color);
	box-shadow: inset 0 0 0 .2rem var(--main-color);
}

.product-options__item:before {
	position: absolute;
	top: calc(50% - 1.2rem);
	left: 1rem;
	width: 2.4rem;
	height: 2.4rem;
	content: '';
	background: var(--dark-color10);
	border-radius: 50%;
	z-index: 2;
}

.product-options__item_active:before {
	display: none;
}

.product-options__item:after {
	position: absolute;
	top: calc(50% - 1.2rem);
	left: 1rem;
	width: 2.4rem;
	height: 2.4rem;
	font: 1.2rem/2.4rem 'icons';
	content: '\e803';
	color: #fff;
	text-align: center;
	background: var(--main-color);
	border-radius: 50%;
	z-index: 2;
	display: none;
}

.product-options__item_active:after {
	display: block;
}

.product-info__colors {
	display: flex;
	flex-wrap: wrap;
	gap: .1rem;
	margin-bottom: 4rem;
}

.product-colors__item {
	width: calc((100% - .8rem)/9);
}

.product-colors__item img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: .6rem;
}

.product-info__total {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 2rem 3rem;
}

.product-info__cost {
	width: calc((100% - 3rem)/2);
}

.product-cost__value {
	font-style: normal;
	font-weight: 700;
	font-size: 4rem;
	line-height: normal;
	color: var(--main-color);
}

.product-cost__text {
	font-style: normal;
	font-weight: 300;
	font-size: 2.4rem;
	line-height: normal;
}

.product-info__btn {
	width: 18rem;
}

.product-total__title {
	margin-bottom: 1rem;
	font: normal 400 2rem 'Merriweather', serif;
}

.product-total__text {
	font-size: 1.6rem;
	line-height: 1.75;
}

.product-total__text b,
.product-total__text strong {
	font-weight: 500;
}

.product-total__text ul {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	height: 8.4rem;
	padding-left: 2.5rem;
}

.product-total__text ul li:before {
	position: absolute;
    top: 1.1rem;
    left: -1.5rem;
    width: .6rem;
    height: .6rem;
	content: '';
	background: var(--dark-color);
	border-radius: 50%;
}

.product-descr__title {
	margin-bottom: 4rem;
	font: normal 400 3.6rem/1.5 'Merriweather', serif;
}

/*--------------------------------------------
Внутренняя страница
--------------------------------------------*/

.simple-page {
	margin: 4rem 0 6rem;
}

.catalog-page {
	margin: 5rem 0 6rem;
}

.catalog-list {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem;
}

.catalog-list__item {
	width: calc((100% - 9rem)/4);
	border: .1rem solid var(--dark-color25);
	transition: var(--long-transition);
}

.catalog-list__item:hover {
	border-color: var(--main-color75);
}

.catalog-item__preview {
	margin-bottom: 2rem;
}

.catalog-item__preview a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	/*
	min-height: 31.4rem;
	*/
	margin-bottom: 2rem;
	overflow: hidden;
}

.catalog-item__preview img {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	/* max-width: 31.4rem;
	max-height: 31.4rem; */
	transition: var(--long-transition);
}

.catalog-item__preview img:hover {
	transform: scale(1.05);
}

.catalog-item__info {
	padding: 0 4rem 3rem;
	text-align: center;
}

.catalog-item__title {
	margin-bottom: 1rem;
	font: normal 400 2rem/1.5 'Merriweather', serif;
}

.catalog-item__title a,
.catalog-item__title a:focus {
	color: var(--dark-color);
}

.catalog-item__title a:hover,
.catalog-item__title a:focus:hover {
	color: var(--main-color);
}

.catalog-item__title a {
    background-size: 0 .2rem;
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-image: linear-gradient(0deg,var(--main-color75) .1rem,var(--main-color75) 0);
    transition: var(--long-transition);
}

.catalog-item__title a:hover {
	background-size: 100% .2rem;
}

.catalog-item__cost {
	margin-bottom: 2rem;
}

.catalog-item__cost-value {
	font-style: normal;
	font-weight: 700;
	font-size: 3rem;
	line-height: normal;
	color: var(--main-color);
}

.catalog-item__cost-txt {
	font-size: 1.8rem;
	line-height: normal;
}

.catalog-item__btn {
	display: block;
	width: 100%;
	max-width: 15rem;
	height: 4.5rem;
	margin: 0 auto;
	font: normal 400 1.5rem/4.5rem 'Merriweather', serif;
	text-align: center;
	letter-spacing: 0.075rem;
	text-transform: uppercase;
	background-color: transparent;
	box-shadow: inset 0 0 0 .2rem var(--main-color);
	transition: var(--main-transition);
}

.catalog-item__btn:hover {
	background-color: var(--main-color);
}

.catalog-item__btn,
.catalog-item__btn:focus {
	color: var(--main-color);
}

.catalog-item__btn:hover,
.catalog-item__btn:hover:focus {
	color: #fff;
}

.subcats-list {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem;
}

.subcats-list__item {
	width: calc((100% - 12rem)/5);
	border: .1rem solid var(--dark-color25);
	transition: var(--long-transition);
}

.subcats-list__item:hover {
	border: .1rem solid var(--main-color75);
}

.subcats-item__preview {
	margin-bottom: 2.5rem;
}

.subcats-item__preview a {
	display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.subcats-item__preview img {
	display: block;
    width: auto;
    height: auto;
    /*
    max-width: 24.7rem;
    max-height: 24.7rem;
    */
    max-width: 100%;
	transition: var(--long-transition);
}

.subcats-item__preview img:hover {
	transform: scale(1.05);
}

.subcats-item__title {
	padding: 0 2rem 3rem;
	font: normal 400 2rem/1.5 'Merriweather', serif;
	text-align: center;
}

.subcats-item__title a,
.subcats-item__title a:focus {
	color: var(--dark-color);
}

.subcats-item__title a:hover,
.subcats-item__title a:focus:hover {
	color: var(--main-color);
}

.subcats-item__title a {
    background-size: 0 .2rem;
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-image: linear-gradient(0deg,var(--main-color75) .1rem,var(--main-color75) 0);
    transition: var(--long-transition);
}

.subcats-item__title a:hover {
	background-size: 100% .2rem;
}

.category-descr {
	margin: 5rem 0;
}

.subcats-btns {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem;
	margin: -1rem 0 5rem;
}

.subcats-btns__one {
	width: calc((100% - 9rem)/4);
}

.subcats-one__btn {
	display: block;
    width: 100%;
    height: 4.5rem;
    padding: 0 2rem;
    font: normal 400 1.3rem/4.5rem 'Merriweather', serif;
    text-align: center;
    letter-spacing: 0.075rem;
    text-transform: uppercase;
    background-color: transparent;
    box-shadow: inset 0 0 0 0.2rem var(--main-color);
    transition: var(--main-transition);
}

.subcats-one__btn,
.subcats-one__btn:focus {
	color: var(--main-color);
}

.subcats-one__btn:hover,
.subcats-one__btn:hover:focus,
.subcats-one__btn_current,
.subcats-one__btn_current:focus {
	color: #fff;
}

.subcats-one__btn:hover,
.subcats-one__btn_current {
	background: var(--main-color);
}

/*--------------------------------------------
Кладбища
--------------------------------------------*/

.graveyard-info {
	margin-bottom: 6rem;
	padding: 5rem;
	background: var(--light-color);
}

.graveyard-info__title {
	margin-bottom: 4rem;
	font: normal 400 3.2rem/1.5 'Merriweather', serif;
}

.graveyard-info__wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 0 5rem;
}

.graveyard-info__wrap p {
	margin: 0 0 3rem;
}

.graveyard-info__left {
	width: calc(40% - 2.5rem);
	margin-bottom: 3rem;
}

.graveyard-info__right {
	width: calc(60% - 2.5rem);
}

.graveyard-info__wrap h3 {
	margin: 0 0 3rem;
}

.graveyards-list {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem;
}

.graveyards-list__item {
	width: calc((100% - 9rem)/4);
}

.graveyard-item__btn {
	display: flex;
	justify-content: center;
	align-items: center;
    width: 100%;
	height: 100%;
    padding: 1rem 2rem;
    font: normal 400 1.3rem/1.5 'Merriweather', serif;
    text-align: center;
    letter-spacing: 0.075rem;
    text-transform: uppercase;
    background-color: transparent;
    box-shadow: inset 0 0 0 0.2rem var(--main-color);
    transition: var(--main-transition);
}

.graveyard-item__btn,
.graveyard-item__btn:focus {
	color: var(--main-color);
}

.graveyard-item__btn:hover {
	background: var(--main-color);
}

.graveyard-item__btn:hover,
.graveyard-item__btn:focus:hover {
	color: #fff;
}

/*--------------------------------------------
Карта
--------------------------------------------*/

.ya-map {
    height: 50rem;
    margin-bottom: -3rem;
}

.ya-map__title {
    margin: 1.5rem 1rem;
    font: normal 400 1.8rem/1 'Merriweather', serif;
	letter-spacing: .075rem;
}

.ya-map__descr {
	margin: 0 1rem 1.2rem;
	font: normal 300 1.8rem/1.778 'Inter', sans-serif;
}

.graveyard-ya-map {
	height: 50rem;
	margin-top: 2rem;
}

/*--------------------------------------------
Постраничная навигация
--------------------------------------------*/

.pages {
	display: flex;
	flex-wrap: wrap;
	margin: 5rem 0;
	gap: .5rem .5rem;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 4.5rem;
}

.pages a,
.pages span {
	width: auto;
	min-width: 4.5rem;
	height: 4.5rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	text-align: center;
}

.pages a,
.pages a:focus {
	color: var(--dark-color);
	border: .1rem solid var(--dark-color10);
}

.pages__current,
.pages a:hover {
	color: var(--main-color);
	border: .1rem solid var(--main-color75);
}

.pages a {
	transition: var(--main-transition);
}

.pages__next,
.pages__prev {
	position: relative;
	font-size: 0;
}

.pages__next:after,
.pages__prev:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 4.5rem;
	height: 4.5rem;
	font: 1rem/4.5rem 'icons';
	content: '\e800';
	text-align: center;
}

.pages__next:after {
	transform: scale(-1, 1);
	filter: FlipH;
	-ms-filter: "FlipH";	
}

/*--------------------------------------------
Подвал
--------------------------------------------*/

.footer {
	padding: 6rem 0;
	background: var(--light-color);
}

.footer__wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 10rem;
}

.footer__info,
.footer__contacts {
	width: 35rem;
}

.footer__logo {
	margin-bottom: 2rem;
}

.footer__slogan {
	font-style: normal;
	font-weight: 300;
	font-size: 1.6rem;
	line-height: 1.75;
}

.footer__nav {
	width: calc(100% - 70rem - 20rem);
}

.footer__menu {
	display: flex;
	flex-direction: column;
	gap: 1.5rem 0;
}

.footer__menu .menu-item {
	font-weight: 400;
	font-size: 1.8rem;
	line-height: normal;
}

.footer__menu .menu-item a,
.footer__menu .menu-item a:focus {
	color: var(--dark-color);
}

.footer__menu .menu-item a:hover,
.footer__menu .menu-item a:focus:hover,
.footer__menu .current-menu-item a,
.footer__menu .current-menu-item a:focus {
	color: var(--main-color);
}

.footer__menu .menu-item a {
	position: relative;
    background-size: 0 .2rem;
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-image: linear-gradient(0deg,var(--main-color75) .2rem,var(--main-color75) 0);
	transition: var(--long-transition);
}

.footer__menu .menu-item a:hover,
.footer__menu .current-menu-item a {
	background-size: 100% .2rem;
}

.footer__copy {
	margin-top: 5rem;
	font-style: normal;
	font-weight: 300;
	line-height: normal;
	font-size: 1.6rem;
}

/*--------------------------------------------
Адаптив
--------------------------------------------*/

@media (max-width: 1899px) {

	.banner__title br {
		display: none;
	}

}

@media (max-width: 1799px) {

	.body {
		padding-bottom: 0;
	}

	.ya-map {
		margin-bottom: 0;
	}

	.container {
		padding: 0 7rem;
	}

	.banner__left {
		padding-right: 4rem;
	}

	.subcats-one__btn {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.graveyard-item__btn {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.footer__wrap {
		gap: calc(10%/3);
	}

	.footer__info,
	.footer__nav {
		width: 27%;
	}

	.footer__contacts {
		width: 36%;
	}

	.footer__slogan br {
		display: none;
	}

}

@media (max-width: 1699px) {

	 .header__menu {
	 	justify-content: flex-start;
	 	gap: .5rem 3rem;
	 }

	.banner__left {
		width: calc(100% - 40rem);
	}

	.banner__right {
		width: 40rem;
	}

	.banner__img {
		max-width: 40rem;
	}

	.banner__title {
		font-size: 3rem;
	}

	.banner__text {
		font-size: 2.2rem;
	}

	.header__menu .menu-item {
		font-size: 1.4rem;
	}

	.subcats-item__title {
		font-size: 1.8rem;
	}

	.graveyards-list {
		gap: 2rem;
	}

	.graveyards-list__item {
		width: calc((100% - 6rem)/4);
	}

	.subcats-one__btn,
	.graveyard-item__btn {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100%;
		padding-top: 1.5rem;
		padding-bottom: 1.4rem;
		line-height: 1.5;
	}

	.product__card {
		gap: 0;
	}

	.product__thumbnail {
		width: 50rem;
	}

	.product__thumbnail img {
		max-width: 50rem;
		max-height: 50rem;
	}

	.product__info {
		width: calc(100% - 50rem);
		padding-left: 6rem;
	}

	.catalog-item__info {
		padding-left: 3rem;
		padding-right: 3rem;
	}

}

@media (max-width: 1599px) {

	.banner__left {
		width: calc(100% - 35rem);
	}

	.banner__right {
		width: 35rem;
	}

	.banner__img {
		max-width: 35rem;
	}

	.banner__title {
		font-size: 2.8rem;
	}

	.banner__text {
		font-size: 2rem;
	}

	.sidebar {
		width: 30rem;
	}

	.logo img {
		max-width: 100%;
	}

	.sidebar__nav {
		margin-bottom: 2rem;
		padding-top: 1.5rem;
		padding-bottom: 1.5rem;
	}

	.sidebar__menu .menu-item a {
		padding-top: .5rem;
		padding-bottom: .6rem;
		font-size: 1.6rem;
	}

	.sidebar .contacts {
		font-size: 1.6rem;
	}

	.sidebar .contacts__block svg {
		top: -.2rem;
	}

	.content {
		padding-left: 30rem;
	}

	.header {
		width: calc(100% - 30rem);
	}

}

@media (max-width: 1499px) {

	.header__menu .menu-item {
		font-size: 1.3rem;
	}

	.header__search {
		width: 22rem;
	}

	.header__nav {
		width: calc(100% - 27rem);
	}

	.container {
		padding: 0 6rem;
	}

	.carousel {
		margin-top: 6rem;
		margin-bottom: 5rem;
	}

	.banner__right {
		width: 30rem;
	}

	.banner__img {
		max-width: 30rem;
	}

	.banner__left {
		width: calc(100% - 30rem);
	}

	.carousel {
		height: 40rem;
	}

	.banner {
		height: 40rem;
		padding-left: 5rem;
		padding-right: 5rem;
	}

	.steps-list__item {
		padding-left: 2.5rem;
		padding-right: 2.5rem;
	}

	.subcats-list__item {
		width: calc((100% - 6rem)/3);
	}

	.subcats-item__title {
		font-size: 2rem;
	}

	.catalog-item__info {
		padding-left: 2rem;
		padding-right: 2rem;
	}

	.catalog-item__title {
		font-size: 1.8rem;
	}

	.catalog-item__cost-value {
		font-size: 2.4rem;
	}

	.product__thumbnail {
		width: 40rem;
	}

	.product__thumbnail img {
		max-width: 40rem;
		max-height: 40rem;
	}

	.product__info {
		width: calc(100% - 40rem);
		padding-left: 5rem;
	}

	.product-cost__value {
		font-size: 3.6rem;
	}

	.main-title,
	.section-title,
	.main-form__title {
		font-size: 3.2rem;
	}

	.product-info__title,
	.graveyard-info__title {
		font-size: 2.8rem;
	}

	.graveyard-info__title {
		margin-bottom: 3rem;
	}

	.main-form__subtitle {
		font-size: 2rem;
	}

	.post-content h2 {
		font-size: 2.8rem;
	}

	.post-content h3 {
		font-size: 2.6rem;
	}

	.post-content h4 {
		font-size: 2.4rem;
	}

	.post-content h5 {
		font-size: 2.2rem;
	}

	.post-content h6 {
		font-size: 1.8rem;
	}

	.steps-list {
		gap: 5rem 5rem;
	}

	.steps-list__item {
		width: calc((100% - 10rem)/3);
	}

	.breadcrumbs {
		margin-bottom: 4rem;
	}

	.main-title_offset2 {
		margin-top: 3rem;
	}

	.subcats-btns {
		margin: -2rem 0 4rem;
	}

}

@media (max-width: 1399px) {

	.sidebar {
		width: 25rem;
		padding-top: 2.5rem;
	}

	.content {
		padding-left: 25rem;
	}

	.header {
		width: calc(100% - 25rem);
	}

	.sidebar__logo {
		margin-bottom: 2rem;
	}

	.banner__title {
		font-size: 2.4rem;
	}

	.banner__text {
		font-size: 1.8rem;
	}

	.carousel,
	.banner {
		height: 35rem;
	}

	.banner__btn {
		max-width: 24rem;
	}

	.btn {
		height: 5rem;
		line-height: 5rem;
	}

	.subcats-btns,
	.catalog-list,
	.subcats-list {
		gap: 2rem;
	}

	.subcats-btns__one,
	.catalog-list__item {
		width: calc((100% - 6rem)/4);
	}

	.subcats-list__item {
		width: calc((100% - 4rem)/3);
	}

	.sidebar .contacts,
	.sidebar__menu .menu-item a {
		font-size: 1.5rem;
	}

	.product-info__cost {
		width: auto;
	}

}

@media (max-width: 1299px) {

	.container {
		padding: 0 5rem;
	}

	.carousel {
		margin-top: 5rem;
	}

	.banner__right {
		width: 25rem;
	}

	.banner__img {
		max-width: 25rem;
	}

	.banner__left {
		width: calc(100% - 25rem);
	}

	.form-fields__wrap {
		width: 100%;
	}

}

@media (max-width: 1199px) {

	.sidebar {
		display: none;
	}

	.content {
		padding-left: 0;
	}

	.header {
		display: none;
	}

	.header-mobile {
		display: block;
	}

	.body {
		padding-top: 10.2rem;
	}

	.contacts,
	.footer__menu .menu-item {
		font-size: 1.6rem;
	}

	.contacts__block svg {
		top: 0;
	}

	.footer__slogan,
	.footer__copy {
		font-size: 1.5rem;
	}

}

@media (max-width: 991px) {

	.container {
		padding: 0 4rem;
	}

	.header-mobile__search {
		padding-left: 4rem;
		padding-right: 4rem;
	}

	.carousel {
		margin-top: 4rem;
		margin-bottom: 4rem;
	}

	.banner__left {
		width: 100%;
		padding-right: 0;
	}

	.banner__right {
		display: none !important;
	}

	.banner__title {
		margin-bottom: 2rem;
	}

	.banner__text {
		margin-bottom: 3rem;
	}

	.carousel .owl-dots {
		bottom: 2rem;
		gap: 4rem;
	}

	.main-title_offset1 {
		margin-top: 4rem;
		margin-bottom: 3rem;
	}

	.section {
		margin-top: 5rem;
		margin-bottom: 5rem;
	}

	.section-heading {
		margin-bottom: 4rem;
	}

	.section-title {
		padding: 0;
	}

	.section-more {
		position: relative;
		top: auto;
		right: auto;
		padding-top: 1rem;
		text-align: center;
	}

	.steps-list__item {
		width: calc((100% - 5rem)/2);
	}

	.graveyards-list__item {
		width: calc((100% - 2rem)/2);
	}

	.graveyard-info {
		margin-bottom: 5rem;
		padding: 4rem;
	}

	.graveyard-info__left,
	.graveyard-info__right {
		width: 100%;
	}

	.graveyard-info__left {
		/*
		margin-bottom: 0;
		*/
	}

	.graveyard-ya-map,
	.ya-map {
		height: 40rem;
	}

	.breadcrumbs {
		margin-bottom: 3rem;
	}

	.subcats-btns__one,
	.catalog-list__item {
		width: calc((100% - 2rem)/2);
	}

	.product__thumbnail {
		width: 30rem;
	}

	.product__thumbnail img {
		max-width: 30rem;
		max-height: 30rem;
	}

	.product__info {
		width: calc(100% - 30rem);
		padding-left: 4rem;
	}

	.main-form {
		padding: 5rem;
	}

	.main-form__subtitle {
		margin-top: 1rem;
		margin-bottom: 4rem;
		line-height: 1.5;
	}

	.subcats-list__item {
		width: calc((100% - 2rem)/2);
	}


}

@media (max-width: 767px) {

	.carousel .owl-nav {
		left: -2.5rem;
		width: calc(100% + 5rem);
	}

	.carousel .owl-prev,
	.carousel .owl-next {
		width: 5rem;
		height: 5rem;
	}

	.carousel,
	.banner {
		height: 30rem;
	}

	.banner {
		padding-left: 4rem;
		padding-right: 4rem;
	}

	.carousel .owl-dots {
		display: none;
	}

	.banner__title {
		font-size: 2.2rem;
	}

	.banner__text {
		font-size: 1.6rem;
	}

	.main-title,
	.section-title,
	.main-form__title {
		font-size: 3rem;
	}

	.post-content {
		font-size: 1.7rem;
		line-height: 1.75;
	}

	.post-content h2,
	.product-info__title,
	.graveyard-info__title {
		font-size: 2.6rem;
	}

	.post-content h3 {
		font-size: 2.4rem;
	}

	.post-content h4 {
		font-size: 2.2rem;
	}

	.post-content h5 {
		font-size: 2rem;
	}

	.post-content h6 {
		font-size: 1.7rem;
	}

	.post-content h2,
	.post-content h3,
	.post-content h4,
	.post-content h5,
	.post-content h6,
	.post-content table {
		margin: 3rem 0;
	}

	.post-content p,
	.post-content ul,
	.post-content ol {
		margin: 2.5rem 0;
	}

	.gallery__item,
	.post-content .gallery-columns-3 .gallery-item,
	.post-content .gallery-columns-4 .gallery-item {
		width: calc((100% - .4rem)/2) !important;
	}

	.post-content .gallery {
		margin: 3.5rem 0 !important;
	}

	.steps-list {
		gap: 5rem 3rem;
	}

	.steps-list__item {
		width: calc((100% - 3rem)/2);
	}

	.form-fields__wrap {
		gap: 0;
	}

	.form-fields__left,
	.form-fields__right {
		width: 100%;
	}

	.footer__wrap {
		gap: 3rem 0;
	}

	.footer__info,
	.footer__nav,
	.footer__contacts {
		width: 100%;
	}

	.footer {
		padding: 4rem 0;
	}

	.to-top {
		right: 1.5rem;
		bottom: 3rem;
		width: 5rem;
		height: 5rem;
	}

	.product__thumbnail-wrp,
	.product__thumbnail,
	.product__info {
		width: 100%;
	}

	.product__info {
		padding-left: 0;
	}

	.product__thumbnail img {
		max-width: 100%;
		max-height: none;
	}

	.product__thumbnail-wrp {
		margin-bottom: 4rem;
	}

	.graveyard-info__wrap p {
		margin: 0 0 2.5rem;
	}

	.graveyard-info__wrap h3 {
		margin: 0 0 3rem;
	}

}

@media (max-width: 575px) {

	.container {
		padding: 0 3rem;
	}

	.logo img {
		max-width: 20rem;
	}

	.body {
		padding-top: 9rem;
	}

	.carousel {
		margin-top: 3rem;
	}

	.header-mobile {
		padding: 0;
	}

	.header-mobile__wrap {
		display: flex;
		align-items: center;
		height: 9rem;
	}

	.header-mobile__phone a,
	.search-btn,
	.burger {
		width: 4rem;
		height: 4rem;
	}

	.header-mobile__phone svg,
	.search-btn svg {
		width: 2rem;
		height: 2rem;
	}

	.search-btn:before,
	.search-btn:after {
		top: 1.9rem;
	}

	.header-mobile__search {
		top: 9rem;
		padding: 2rem 3rem;
	}

	.carousel,
	.banner {
		height: auto;
	}

	.banner {
		padding: 3rem 4rem;
	}

	.owl-carousel .owl-stage {
		display: flex;
		align-items: center;
	}

	.banner__title {
		margin-bottom: 1.5rem;
	}

	.banner__text {
		margin-bottom: 2rem;
	}

	.steps-list__item {
		width: 100%;
		padding-top: 4rem;
	}

	.steps-list__item:before {
		top: -3.5rem;
		font-size: 6rem;
	}

	.steps-list {
		gap: 4rem 3rem;
	}

	.subcats-item__title {
		font-size: 1.8rem;
	}

	.breadcrumbs {
		margin-bottom: 2rem;
	}

	.main-title_offset2 {
		margin-top: 2rem;
	}

	.subcats-one__btn,
	.graveyard-item__btn {
		padding-top: 1rem;
		padding-bottom: 1rem;
	}

	.product,
	.catalog-page,
	.simple-page {
		margin: 4rem 0 5rem;
	}

	.category-descr {
		margin-top: 4rem;
	}

}

@media (max-width: 479px) {

	.header-mobile__wrap {
		width: calc(100% + 3rem);
		height: 8rem;
		left: -1.5rem;
	}

	.logo img {
		max-width: 15rem;
	}

	.header-mobile__right {
		gap: 1rem;
	}

	.header-mobile__phone a,
	.search-btn,
	.burger {
		width: 3.6rem;
		height: 3.6rem;
	}

	.burger {
		gap: .7rem;
	}

	.burger__bar {
		width: 3rem;
		height: .2rem;
	}

	.search-btn:before,
	.search-btn:after {
		top: 1.7rem;
		left: calc(50% - 1rem);
		width: 2rem;
	}

	.header-mobile__search {
		top: 8rem;
		padding-top: 1rem;
		padding-bottom: 1rem;
	}

	.popup-box {
		padding: 3rem 4rem;
	}

	.mobile-menu .menu-item {
		padding-bottom: 1rem;
		font-size: 1.6rem;
	}

	.body {
		padding-top: 8rem;
	}

	.banner {
		padding: 2rem 3rem;
	}

	.banner__title {
		font-size: 2rem;
	}

	.banner__text {
		font-size: 1.5rem;
	}

	.btn {
		height: 4.5rem;
		line-height: 4.5rem;
	}

	.carousel {
		margin-bottom: 3rem;
	}

	.main-title_offset1 {
		margin-top: 3rem;
		margin-bottom: 2rem;
	}

	.main-title,
	.section-title,
	.main-form__title {
		font-size: 2.8rem;
		line-height: 1.35;
	}

	.post-content h2,
	.product-info__title,
	.graveyard-info__title {
		font-size: 2.4rem;
	}

	.post-content h2,
	.post-content h3,
	.post-content h4,
	.post-content h5,
	.post-content h6,
	.post-content table {
		margin: 2.5rem 0;
	}

	.post-content p,
	.post-content ul,
	.post-content ol {
		margin: 2rem 0;
	}

	.post-content .gallery {
		margin: 3rem 0 !important;
	}

	.graveyard-info__wrap p {
		margin: 0 0 2rem;
	}

	.graveyard-info__wrap h3 {
		margin: 0 0 2.5rem;
	}

	.post-content ul:not([class]) li,
	.post-content ol:not([class]) li {
		padding-left: 3rem;
	}

	.post-content ul:not([class]) li:before {
		left: 1rem;
	}

	.post-content ol:not([class]) li:before {
	    width: 3rem;
	}

	.section {
		margin-top: 4rem;
		margin-bottom: 4rem;
	}

	.gallery__item,
	.post-content .gallery-columns-3 .gallery-item,
	.post-content .gallery-columns-4 .gallery-item {
		width: 100% !important;
	}

	.main-form {
		width: calc(100% + 6rem);
		left: -3rem;
		padding: 3rem;
		margin-bottom: 0;
	}

	.main-form__subtitle {
		font-size: 1.6rem;
	}

	input[type="text"],
	input[type="tel"],
	input[type="email"] {
		height: 4.5rem;
		padding: 1.5rem 1.6rem 1.6rem;
	}

	textarea {
		padding: 1rem 1.6rem 1.6rem;
	}

	.main-form__agree {
		line-height: 1.35;
	}

	.footer__copy {
		margin-top: 3rem;
	}

	.main-title_offset2 {
		margin-bottom: 3rem;
	}

	.product,
	.catalog-page,
	.simple-page {
		margin: 3rem 0 4rem;
	}

	.category-descr {
		margin-top: 3rem;
	}

	.subcats-btns {
		margin: 0 0 3rem;
	}

	.subcats-list__item,
	.subcats-btns__one,
	.catalog-list__item {
		width: 100%;
	}

	.subcats-btns,
	.catalog-list,
	.subcats-list {
		gap: 1rem;
	}

	.product__thumbnail-wrp {
		margin-bottom: 3rem;
	}

	.product-colors__item {
		width: calc((100% - .5rem)/6);
	}

	.product-info__colors {
		margin-bottom: 3rem;
	}

	.product-options__list {
		gap: 1rem;
		margin-bottom: 3rem;
	}

	.product-options__item {
		width: 100%;
	}

	.product-cost__value {
		font-size: 3rem;
	}

	.popup {
		padding: 3rem 4rem 4rem;
	}

	.popup__title {
		margin-bottom: 2.5rem;
		font-size: 2.4rem;
	}

	input[type="submit"] {
		height: 4.5rem;
	}

	.breadcrumbs {
		font-size: 1.3rem;
	}

	.graveyards-list {
		gap: 1rem;
	}

	.graveyards-list__item {
		width: 100%;
	}

	.graveyard-info {
		width: calc(100% + 6rem);
		left: -3rem;
		padding: 3rem;
	}

	.graveyard-ya-map,
	.ya-map {
		height: 35rem;
	}

	.graveyard-info {
		margin-bottom: 3rem;
	}

	.post-content table {
		display: block;
		border: .1rem solid var(--dark-color10);
	}

	.post-content table td,
	.post-content table th {
		display: block;
		width: 100% !important;
	}

	.post-content table td:nth-child(odd) {
		font-weight: 500;
		background: var(--light-color) !important;
	}

}

/***********************************/

.svideo-list {
	display: flex;
	flex-direction: column;
	gap: 1rem 0;
}

.svideo-list__item video {
	width: 100%;
	height: auto;
	max-height: 100%;
}

.sidebar__contacts {
	margin-bottom: 3rem;
}

.sidebar__contacts .contacts {
	font-size: 2.5rem;
}

.sidebar__contacts .contacts__phone {
	padding: 0;
	text-align: center;
}

.sidebar__contacts .contacts__phone svg {
	display: none;
}

.menu-banners {
	display: flex;
	flex-wrap: wrap;
	gap: .8rem .9rem;
	margin: 5rem 0 4rem;
}

.menu-banners__item {
	width: calc((100% - 10rem)/12);
	border: .1rem solid var(--dark-color25);
	transition: var(--long-transition);
}

.menu-banners__item:hover {
	border: .1rem solid var(--main-color75);
}

.mbanner-item__preview {
	margin-bottom: 1.1rem;
}

.mbanner-item__preview a {
		display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    background: #f5f5f5;
    padding: 2rem 0;
}

.mbanner-item__preview img {
	display: block;
    width: auto;
    height: auto;
    /*
    max-width: 24.7rem;
    max-height: 24.7rem;
    */
    max-width: 100%;
	transition: var(--long-transition);
}

.mbanner-item__preview img:hover {
	transform: scale(1.05);
}

.mbanner-item__title {
	padding: 0 .1rem 1rem;
	font: normal 400 1.3rem/1.5 'Merriweather', serif;
	text-align: center;
	word-wrap: break-word;
	hyphens: manual;
}

.mbanner-item__title a,
.mbanner-item__title a:focus {
	color: var(--dark-color);
}

.mbanner-item__title a:hover,
.mbanner-item__title a:focus:hover {
	color: var(--main-color);
}

.mbanner-item__title a {
    background-size: 0 .2rem;
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-image: linear-gradient(0deg,var(--main-color75) .1rem,var(--main-color75) 0);
    transition: var(--long-transition);
}

.mbanner-item__title a:hover {
	background-size: 100% .2rem;
}

.sidebar__btn {
	max-width: 25rem;
	height: 4.5rem;
	margin: -2rem auto 3rem;
	font-size: 1.4rem;
	line-height: 4.5rem;
}

.sidebar__btn:hover,
.sidebar__btn:focus:hover {
	color: #fff;
}

.form-subtitle {
	margin: 1.5rem 0;
	font: normal 400 1.8rem/1.5 'Merriweather', serif;
}

@media (max-width: 1599px) {

	.sidebar__contacts .contacts {
		font-size: 2rem;
	}

}

@media (max-width: 1399px) {

	.sidebar__contacts .contacts {
		font-size: 1.6rem;
	}

	.sidebar__btn {
		height: 4rem;
		margin-bottom: 2rem;
		line-height: 4rem;
	}

}

@media (max-width: 1199px) {

	.menu-banners {
		display: none;
	}

}

.post-content .alignleft {
	float: left;
	clear: left;
	margin-right: 3rem;
	margin-bottom: 3rem;
	max-width: 50%;
}

.post-content .alignright {
	float: right;
	clear: right;
	margin-left: 3rem;
	margin-bottom: 3rem;
	max-width: 50%;
}

.post-content .aligncenter {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 3rem;
}

@media (max-width: 575px) {
	
	.post-content .alignleft {
		float: none;
		margin-right: 0;
		margin-bottom: 2rem;
		clear: none;
		max-width: 100%;
	}

	.post-content .alignright {
		float: none;
		margin-left: 0;
		margin-bottom: 2rem;
		clear: none;
		max-width: 100%;
	}

	.post-content .aligncenter {
		margin-left: 0;
		margin-bottom: 2rem;
	}

}

.post-preview {
	margin: 4rem 0;
}

.post-preview img {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
}

@media (max-width: 479px) {
	
	.post-preview {
		margin: 3rem 0;
	}
	
}

