html {
	font-size: 0.069446vw;
	overflow-x: hidden;
}
body {
	padding: 0;
	margin: 0;
	overflow-x: hidden;
	font-family: "Montserrat", sans-serif;
	background: rgba(237, 234, 220, 1);
	font-size: 14rem;
	color: var(--dark);
}
:root {
	--White: #fff;
	--Accent: #6E7362;
	--bg: #FAF6EC;
	--dark: #35382E;
}
h1,h2,h3,h4,h5,p {
	margin: 0;
	padding: 0;
}
:active, :hover, :focus {
    outline: 0;
    outline-offset: 0;
}
a {
	text-decoration: none;
	font-size: 12rem;
	font-weight: 500;
	color: var(--White);
}
h1 {
	font-size: 62rem;
	line-height: 115%;
	font-family: "Playfair Display", serif;
}
h2 {
	font-size: 34rem;
	font-weight: 700;
	font-family: "Playfair Display", serif;
}
h3 {
	font-size: 28rem;
	font-family: "Playfair Display", serif;
	font-weight: 700;
}
h4 {
	font-size: 24rem;
	font-family: "Playfair Display", serif;
	font-weight: 700;
}
h5 {
	font-size: 20rem;
	font-family: "Playfair Display", serif;
	font-weight: 700;
}
p {
	font-size: 14rem;
	line-height: 150%;
	color: var(--dark);
}
img {
	width: 100%;
	display: block;
}
.container {
	width: 1200rem;
	margin: auto;
	position: relative;
	z-index: 2;
}
.header_overlay {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
header {
	position: absolute;
	left: 0;
	width: 100%;
	top: 0;
	padding: 21rem 0;
	z-index: 99;
}
.header_parent_menu {
	display: flex;
	align-items: center;
	gap: 40rem;
}
.header_parent_menu_item_name {
	display: flex;
	align-items: center;
	gap: 15rem;
	font-size: 12rem;
	font-weight: 500;
	text-transform: uppercase;
	color: var(--White);
}
.header_parent_menu_item {
	position: relative;
}
.header_logo {
	width: 142rem;
	position: absolute;
	top: calc(50% - 24rem);
	left: calc(50% - 62rem);
}
.header_actions {
	display: flex;
	align-items: center;
	gap: 40rem;
}
.header_phone {
	display: flex;
	align-items: center;
	gap: 10rem;
}
.header_phone img {
	width: 30rem;
}
.header_menu_item {
	text-transform: uppercase;
}
.hero {
	position: relative;
}
.hero:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 230rem;
	background: linear-gradient(0.00deg, rgba(0, 0, 0, 0),rgba(0, 0, 0, 0.6) 100%);
	z-index: 2;
}
.hero_content {
	height: 100vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: var(--White);
}
.hero_content:before {
	content: "";
	position: absolute;
	left: calc(50% - 295rem);
	top: calc(50% - 77rem);
	width: 590rem;
	height: 158rem;
	filter: blur(84rem);
	background: rgba(40, 37, 33, 0.7);
	z-index: 2;
}
.hero_bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
}
.hero_bg img {
	width: 50%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.hero_title {
	position: relative;
	z-index: 3;
}
.hero_text {
	position: relative;
	z-index: 3;
	color: var(--White);
	font-size: 15rem;
	margin-top: 17rem;
	font-weight: 500;
}
.services {
	padding: 100rem 0 55rem;
}
.services_head {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.services_head_title {
	width: 692rem;
}
.services_head_content {
	width: 382rem;
	color: rgba(40, 37, 33, 1);
}
.btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14rem;
	padding: 13rem 20rem;
	border: 1rem solid var(--Accent);
	border-radius: 5rem;
	background: var(--Accent);
	width: max-content;
	text-transform: uppercase;
}
.btn img {
	width: 16rem;
}
.services_head_btn {
	margin-top: 30rem;
}
.services_head_title span {
	position: relative;
	color: var(--Accent);
}
.services_head_title span:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	display: block;
	width: 194rem;
	height: 24rem;
	background-size: cover;
	background-image: url(img/icon_accent.svg);
}
.services_overlay {
	display: flex;
	align-items: center;
	gap: 20rem;
	flex-wrap: wrap;
	margin-top: 100rem;
}
.services_item {
	position: relative;
	width: 386rem;
	height: 500rem;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	background-size: cover;
	background-position: center;
}
.services_item:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 198rem;
	display: block;
	left: 0;
	bottom: 0;
	background: linear-gradient(180.00deg, rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, 0.6) 100%);
	z-index: 2;
}
.services_item_title {
	position: relative;
	z-index: 3;
	text-align: center;
	padding: 35rem 0;
}
.services_item:last-child,.services_item:nth-last-child(2) {
	width: 590rem;
	height: 425rem;
}
.menu {
	background-size: cover;
	padding: 242rem 0;
	margin: 55rem 0 0;
}
.menu_content {
	padding: 40rem 35rem;
	background-color: var(--Accent);
	color: var(--White);
	width: 696rem;
	text-align: center;
	margin: auto;
}
.menu_content_text {
	margin: 27rem auto;
	color: var(--White);
	width: 542rem;
}
.menu_content_btn {
	background-color: var(--White);
	color: var(--Accent);
	border-radius: 0;
	margin: auto;
}
.gallery_item {
	display: flex!important;
	flex-direction: column;
	justify-content: flex-end;
	background-size: cover;
	background-position: center;
	width: 300rem;
	height: 382rem;
	position: relative;
	margin: 0 4rem;
}
.gallery_item_title {
	text-align: center;
	padding: 20rem 0;
	color: var(--White);
	position: relative;
	z-index: 3;
}
.gallery_item:before {
	width: 100%;
	height: 132rem;
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	background: linear-gradient(180.00deg, rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, 0.6) 100%);
	display: block;
	z-index: 2;
}
.gallery_overlay {
	margin-top: 55rem;
}
.gallery_title {
	text-align: center;
}
.gallery {
	margin: 100rem 0;
}
.gallery_title span {
	position: relative;
	color: var(--Accent);
}
.gallery_title span:before {
	background-image: url(img/gallery_title_accent.svg);
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	width: 107rem;
	height: 19rem;
	background-size: cover;
}
.slick-dots {
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;
}
.slick-dots button {
	display: none;
}
.slick-dots li {
	display: block;
	width: 40rem;
	height: 2rem;
	background: rgba(110, 115, 98, 0.2);
	transition: 0.4s;
}
.gallery_nav {
	display: flex;
	align-items: center;
	gap: 50rem;
	justify-content: center;
	margin-top: 40rem;
}
.slick-arrow {
	background-color: transparent;
	width: 5rem;
	height: 10rem;
	background-size: cover;
	background-image: url(img/slick_arrow.svg);
	display: block;
	border: none;
	padding: 0;
}
.slick-arrow.right {
	transform: rotate(180deg);
	order: 2;
}
.slick-dots .slick-active {
	background: var(--Accent);
}
.advantages {
	padding: 30rem 0;
	background-color: var(--Accent);
	color: var(--White);
}
.advantages_overlay {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.advantages_item {
	display: flex;
	align-items: flex-start;
	gap: 15rem;
}
.advantages_item_content {
	width: 174rem;
}
.advantages_item img {
	width: 35rem;
}
.advantages_item_title {
	color: var(--White);
	font-weight: 500;
	font-size: 12rem;
	text-transform: uppercase;
}
.advantages_item_text {
	color: var(--White);
	margin-top: 2rem;
}
.about {
	margin-top: 100rem;
	z-index: 2;
	position: relative;
}
.about:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -90rem;
	width: 100vw;
	height: 500rem;
	background-color: var(--Accent);
	display: block;
	z-index: -1;
}
.about_head {
	display: flex;
	align-items: center;
	gap: 56rem;
}
.about_title span {
	color: var(--Accent);
	position: relative;
}
.about_title span:before {
	content: "";
	background-image: url(img/about_title_accent.svg);
	width: 64rem;
	display: block;
	height: 16rem;
	background-size: cover;
	position: absolute;
	left: 0;
	top: 100%;
}
.about_text {
	width: 782rem;
}
.about_btn {
	border-radius: 0;
}
.about_gallery_item {
	width: 337rem;
	height: 430rem;
	background-size: cover;
	margin: 0 10rem;
}
.about_gallery {
	margin-top: 52rem;
    margin-left: 15rem;
}
.about_gallery_nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 50rem;
	margin-top: 37rem;
}
.about_gallery_nav .slick-arrow {
	background-image: url(img/slick_arrow_white.svg);
}
.about_gallery_nav .slick-dots li {
	background: rgba(255, 255, 255, 0.15);
}
.about_gallery_nav .slick-dots .slick-active {
	background: var(--White);
}
.contacts {
	margin-top: 210rem;
}
.contacts_overlay {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.contacts_title {
	width: 468rem;
	margin-right: -50rem;
}
.contacts_loc {
	display: flex;
	align-items: flex-start;
	gap: 11rem;
}
.contacts_loc_text {
	margin-top: 13rem;
	width: 217rem;
}
.contacts_loc_title {
	font-weight: 500;
	text-transform: uppercase;
	color: #000;
}
.contacts_icon {
	width: 17rem;
}
.contacts_info_phone {
	display: flex;
	align-items: flex-start;
	gap: 11rem;
}
.contacts_info_whatsapp {
	display: flex;
	align-items: flex-start;
	gap: 11rem;
	margin-top: 25rem;
}
.contacts_info_phone_link {
	color: var(--dark);
	font-size: 14rem;
	margin-top: 8rem;
	display: block;
}
.contacts_info_whatsapp_link {
	font-weight: 500;
	text-transform: uppercase;
	color: #000;
	font-size: 14rem;
}
.contacts_btn {
	border-radius: 0;
	margin-top: 30rem;
}
.contacts_subtitle {
	text-transform: uppercase;
	color: #000;
	font-weight: 500;
}
.contacts_map {
	width: 100%;
	aspect-ratio: 3.15 / 1;
	margin-top: 70rem;
}
.contacts_title span {
	color: var(--Accent);
	position: relative;
}
.contacts_title span:before {
	content: "";
	display: block;
	position: absolute;
	top: 100%;
	left: -110rem;
	width: 194rem;
	height: 24rem;
	background-size: cover;
	background-image: url(img/contacts_title_accent.svg);
}
footer {
	padding: 70rem 0 40rem;
}
.footer_overlay {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.footer_item_nav_title {
	font-weight: 500;
}
.footer_item_nav_overlay {
	margin-top: 26rem;
	display: flex;
	flex-direction: column;
	gap: 13rem;
}
.footer_item_nav_overlay a {
	font-size: 14rem;
	color: var(--Accent);
}
.footer_logo {
	width: 144rem;
}
.footer_contacts_item {
	display: flex;
	align-items: center;
	gap: 10rem;
	color: var(--dark);
	font-size: 14rem;
	margin-top: 14rem;
	font-weight: 400;
}
.footer_contacts_item img {
	width: 16rem;
}
.footer_contacts_item_phone {
	font-size: 16rem;
}
.footer_contacts_btn {
	border-radius: 0;
	margin-top: 26rem;
}
.footer_contacts .footer_item_nav_title {
	margin-bottom: 26rem;
}
.footer_copyright {
	text-align: center;
	color: var(--Accent);
	margin-top: 32rem;
}
.subpage_hero {
	position: relative;
	background-size: cover;
	background-position: center;
}
.subpage_hero:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 230rem;
	background: linear-gradient(0.00deg, rgba(0, 0, 0, 0),rgba(0, 0, 0, 0.6) 100%);
}
.subpage_hero_content {
	position: relative;
	padding: 200rem 0;
	z-index: 4;
}
.subpage_hero_content:before {
	content: "";
    position: absolute;
    left: calc(50% - 295rem);
    top: calc(50% - 77rem);
    width: 590rem;
    height: 158rem;
    filter: blur(84rem);
    background: rgba(40, 37, 33, 0.7);
    z-index: 2;
}
.subpage_hero_title {
	color: var(--White);
	text-align: center;
	position: relative;
	z-index: 3;
}
.breadcrumbs {
	padding: 14rem 0;
}
.breadcrumbs_overlay {
	display: flex;
	align-items: center;
	gap: 24rem;
}
.breadcrumbs_home img {
	width: 13rem;
	margin-right: -14rem;
}
.breadcrumbs_item:after {
	content: "";
	width: 4rem;
	height: 8rem;
	background-size: cover;
	display: block;
	background-image: url(img/slick_arrow.svg);
	transform: rotate(180deg);
}
.breadcrumbs_item {
	display: flex;
	align-items: center;
	gap: 24rem;
	font-weight: 400;
	color: var(--dark);
}
.breadcrumbs_current {
	font-size: 12rem;
}
.category_overlay {
	display: flex;
	align-items: center;
	gap: 5rem;
	flex-wrap: wrap;
	padding-bottom: 100rem;
	border-bottom: 1rem solid rgba(53, 56, 46, 0.1);
}
.category_item {
	width: 296rem;
	height: 455rem;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	background-size: cover;
	box-shadow: 0rem 4rem 74rem 0rem rgba(0, 0, 0, 0.07);
	background-position-x: center;
	background-position-y: -18rem;
}
.category_item_name {
	font-size: 12rem;
	font-weight: 500;
	line-height: 150%;
	text-align: center;
	text-transform: uppercase;
	padding: 10rem 20rem;
	background-color: var(--Accent);
	color: var(--White);
}
.related .services_item:last-child,.related .services_item:nth-last-child(2) {
	width: 386rem;
	height: 500rem;
}
.related_title {
	text-align: center;
}
.related .services_overlay {
	margin-top: 20rem;
}
.related {
	margin-top: 90rem;
}
.seo {
	padding: 50rem 0;
	background: rgba(110, 115, 98, 0.1);
	margin: 90rem 0 -100rem;
}
.seo_overlay {
	height: 105rem;
	overflow: auto;
}
.seo_overlay h4 {
	font-size: 14rem;
	font-weight: 600;
	text-transform: uppercase;
	font-family: "Montserrat", sans-serif;
}
.seo_overlay p {
	margin: 10rem 0 23rem;
}
.seo_overlay p:last-child {
	margin-bottom: 0;
}
.single {
	margin: 72rem 0 0;
	border-top: 1rem solid rgba(0, 0, 0, 0.1);
}
header.dark .header_parent_menu_item_name{
	color: var(--dark);
}
header.dark .header_menu_item {
	color: var(--dark);
}
header.dark .header_phone {
	color: var(--dark);
}
.single_content {
	width: 504rem;
}
.single_overlay {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 100rem;
	border-bottom: 1rem solid rgba(53, 56, 46, 0.1);
}
.single_image {
	width: 730rem;
	margin-left: -120rem;
	height: 884rem;
	position: relative;
}
.single_image_nav {
	position: absolute;
	bottom: 35rem;
	left: calc(50% - 283rem);
	width: 586rem;
	margin: auto;
	z-index: 6;
}
.single_image_overlay:before {
	width: 100%;
	height: 186rem;
	background: linear-gradient(180.00deg, rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, 1) 100%);
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	z-index: 5;
}
.single_image_nav img {
	width: 139rem;
	height: 174rem;
	object-fit: cover;
	object-position: center;
	margin: 0 10rem;
}
.single_image_item {
	width: 730rem;
	height: 884rem;
	object-fit: cover;
	object-position: center;
}
.single_title {
	margin: 33rem 0;
	font-size: 30rem;
}
.single_text {
	display: flex;
	flex-direction: column;
	gap: 15rem;
}
.single_image .slick-arrow {
	background-image: url(img/slick_arrow_white.svg);
	position: absolute;
	bottom: 100rem;
	z-index: 6;
	width: 7rem;
	height: 14rem;
}
.single_image .slick-arrow.right {
	right: 43rem;
}
.single_image .slick-arrow.left {
	left: 43rem;
}
.single_btn {
	margin-top: 33rem;
	border-radius: 0;
}
.single_properties {
	margin-top: 50rem;
	display: flex;
	flex-direction: column;
	gap: 17rem;
}
.single_properties_item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
}
.single_properties_item:after {
	content: "";
	width: 100%;
	height: 2rem;
	background-image: url(img/border.svg);
	background-size: cover;
	position: absolute;
	left: 0;
	top: calc(50% - 1rem);
}
.single_properties_label {
	font-size: 12rem;
	font-weight: 500;
	text-transform: uppercase;
	background: rgba(237, 234, 220, 1);
	z-index: 2;
	position: relative;
	padding-right: 20rem;
}
.single_properties_value {
	order: 2;
	background: rgba(237, 234, 220, 1);
	z-index: 2;
	position: relative;
	padding-left: 20rem;
}
.single_advantages {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 30rem;
	background: rgba(110, 115, 98, 0.1);
	gap: 20rem 0;
	margin-top: 50rem;
}
.single_advantages .advantages_item_content {
	width: 167rem;
}
.single_advantages .advantages_item_title {
	color: var(--dark);
}
.single_advantages .advantages_item_text {
	color: var(--dark);
	font-size: 12rem;
}
.single_related .category_overlay {
	border: none;
	padding-bottom: 0;
}
.single_related_title {
	margin-bottom: 20rem;
}
.menu_page_item {
	padding: 35rem 0;
}
.menu_page_item_wrapper {
	display: flex;
	align-items: flex-start;
}
.menu_page_item:nth-child(odd) {
	background: rgba(110, 115, 98, 0.1);
}
.menu_page_item:nth-child(odd) .menu_page_item_bullets_label {
	background: rgb(224, 222, 208);
}
.menu_page_item_number {
	color: rgba(110, 115, 98, 0.4);
	font-family: "Playfair Display", serif;
	font-size: 40rem;
	font-weight: 700;
	line-height: 30rem;
	margin-right: 30rem;
}
.menu_page_item_flex {
	display: flex;
}
.menu_page_item_image {
	width: 215rem;
	height: 150rem;
	object-fit: cover;
}
.menu_page_item_bullets {
	display: flex;
	flex-direction: column;
	gap: 10rem;
}
.menu_page_item_bullets_item {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	overflow: hidden;
}
.menu_page_item_bullets_label {
	font-weight: 500;
	position: relative;
	z-index: 3;
	padding-right: 20rem;
	background: rgba(237, 234, 220, 1);
}
.menu_page_item_bullets_item:before {
	content: "";
	width: 100%;
	height: 2rem;
	background-image: url(img/border.svg);
	background-size: cover;
	position: absolute;
	left: -28rem;
	top: calc(50% - 1rem);
	z-index: 2;
}
.menu_page_item_bullets_item:after {
	content: "";
	width: 4rem;
	height: 4rem;
	border-radius: 100%;
	background-color: var(--Accent);
	display: block;
}
.menu_page_item_name {
	margin-right: 40rem;
	width: 220rem;
}
.menu_page_item_bullets {
	margin-left: auto;
	width: 500rem;
}
.menu_gallery_item {
	margin-top: 52rem;
}
.menu_gallery_item img {
	width: 380rem;
	height: 484rem;
	object-fit: center;
	object-position: center;
	margin: 0 12rem;
}
.menu_gallery {
	position: relative;
	margin: 100rem 0 130rem;
}
.menu_gallery:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -90rem;
    width: 100vw;
    height: 500rem;
    background-color: var(--Accent);
    display: block;
    z-index: -1;
}
.menu_gallery_title {
	text-align: center;
	position: relative;
	width: max-content;
	margin: auto;
}
.menu_gallery_title:before {
	content: "";
    position: absolute;
    top: 100%;
    left: 0;
    display: block;
    width: 194rem;
    height: 24rem;
    background-size: cover;
    background-image: url(img/icon_accent.svg);
}
.menu_related_title {
	text-align: left;
}
.seo_overlay::-webkit-scrollbar {
  width: 3rem; 
  height: 3rem; 
}
.seo_overlay::-webkit-scrollbar-track {
  border-radius: 30rem;
  background: rgba(110, 115, 98, 0.1);
}
.seo_overlay::-webkit-scrollbar-thumb {
  	border-radius: 30rem;
	background: var(--Accent, rgba(110, 115, 98, 1));
}
.about_hero_overlay {
	display: flex;
	flex-direction: column;
	height: 100vh;
	justify-content: flex-end;
	position: relative;
	z-index: 2;
}
.about_hero_title {
	width: max-content;
	display: flex;
	flex-direction: column;
	color: var(--White);
	margin-bottom: 70rem;
}
.about_hero_title span {
	display: block;
}
.about_hero_title i {
	display: block;
	margin-left: auto;
	position: relative;
	left: 130rem;
	font-family: "Seaweed Script", cursive;
	font-size: 46rem;
	font-weight: 400;
}
.about_hero {
	background-size: cover;
	position: relative;
}
.about_hero:after {
	content: "";
	width: 100%;
	height: 329rem;
	background: linear-gradient(180.00deg, rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, 0.6) 100%);
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
}
.about_hero .breadcrumbs_item {
	color: var(--White);
}
.about_hero .breadcrumbs_current {
	color: var(--White);
}
.about_hero .breadcrumbs_item:after {
	background-image: url(img/slick_arrow_white.svg);
}
.about_info {
	padding: 100rem 0;
}
.about_info_overlay {
	display: flex;
	justify-content: space-between;
}
.about_info_image {
	width: 623rem;
	height: 654rem;
	object-fit: cover;
	object-position: center;
}
.about_info_content {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
	width: 508rem;
}
.about_info_text {
	display: flex;
	flex-direction: column;
	gap: 15rem;
	margin: 30rem 0 70rem;
	width: 432rem;
}
.about_info_images {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.about_info_images img:first-child {
	width: 229rem;
	height: 289rem;
	object-fit: cover;
}
.about_info_images img:last-child {
	width: 241rem;
	height: 210rem;
	object-fit: cover;
}
.about_info_title {
	font-size: 43rem;
}
.about_services {
	padding: 100rem 0 0;
}
.about_services_title {
	text-align: center;
	position: relative;
}
.about_services_title span {
	color: var(--Accent);
	position: relative;
}
.about_services_title span:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 28rem;
	background-image: url(img/icon_accent.svg);
	background-size: cover;
}
.about_services_overlay {
	display: flex;
	justify-content: space-between;
	margin-top: 73rem;
	padding: 75rem 0;
	border-top: 1rem solid rgba(0, 0, 0, 0.1);
	border-bottom: 1rem solid rgba(0, 0, 0, 0.1);
}
.about_services_item {
	position: relative;
	width: 350rem;
}
.about_services_number {
	color: rgba(53, 56, 46, 0.2);
	font-size: 60rem;
	font-weight: 700;
	line-height: 80rem;
	position: absolute;
	left: -30rem;
    top: -50rem;
	font-family: "Playfair Display", serif;
}
.about_services_image {
	width: 100%;
	height: 213rem;
	margin: 17rem 0 20rem;
	background-size: cover;
}
.about_services_btn {
	margin-top: 30rem;
	border-radius: 0;
}
.about_services_btn img {
	width: 5rem;
	transform: rotate(180deg);
}
.gallery_page_about {
	margin: 190rem 0 0;
	position: relative;
}
.gallery_page_about:after {
	content: "";
	position: absolute;
	left: calc(50% - 600rem);
	width: 1200rem;
	height: 2rem;
	background: rgba(0, 0, 0, 0.1);
	bottom: -40rem;
}
.contacts_page .contacts_title {
	width: max-content;
	margin-right: 20rem;
	font-size: 50rem;
}
.contacts_page .contacts_overlay {
	margin-top: 50rem;
}
.contacts_page .contacts_overlay {
	align-items: flex-start;
}
.contacts_page {
    margin-top: 73rem;
    padding-top: 20rem;
    border-top: 1rem solid rgba(0, 0, 0, 0.1);
}
.form {
	background-size: cover;
	margin-top: 50rem;
	padding: 100rem 0;
}
.form_overlay {
	padding: 50rem 70rem;
	background: rgba(250, 246, 236, 1);
	width: 630rem;
	margin: auto;
}
.form_title span {
	color: var(--Accent);
}
.form_block {
	padding: 30rem 0;
	border-top: 1rem solid rgba(0, 0, 0, 0.1);
	border-bottom: 1rem solid rgba(0, 0, 0, 0.1);
}
.form_block:first-child {
	border-top: none;
}
.form_block_title {
	font-size: 22rem;
	font-weight: 500;
	margin-bottom: 25rem;
}
.form_block_overlay {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 22rem;
}
.form_block_item {
	width: 303rem;
	position: relative;
}
.form_block_item_input {
	border: 1rem solid rgba(110, 115, 98, 0.3);
	padding: 16rem 15rem;
	width: calc(100% - 30rem);
	background-color: transparent;
	color: rgba(110, 115, 98, 1);
	font-size: 16rem;
	font-weight: 400;
	font-family: "Montserrat", sans-serif;
}
.form_block_item_label {
	position: absolute;
	background: rgba(250, 246, 236, 1);
	left: 15rem;
	top: -12rem;
	padding: 5rem;
	font-size: 11rem;
	font-weight: 500;
	text-transform: uppercase;
}
.form_block_check {
	position: relative;
	border: 1rem solid rgba(110, 115, 98, 0.3);
	padding: 25rem 15rem;
	margin-top: 35rem;
}
.form_block_check_input {
	display: none;
}
.form_block_check_label {
	display: flex;
	align-items: center;
	gap: 8rem;
	color: var(--dark);
	font-size: 12rem;
	font-weight: 400;
	cursor: pointer;
	width: 180rem;
}
.form_block_check_label span {
	display: block;
	width: calc(100% - 28rem);
}
.form_block_check_label:before {
	content: "";
	display: block;
	width: 20rem;
	height: 20rem;
	background-image: url(img/checkbox_sprite.svg);
	background-size: 20rem;
	background-position: bottom;
	background-repeat: no-repeat;
}
.form_block_check_input:checked + .form_block_check_label:before {
	background-position: top
}
.form_block_check_overlay {
	display: flex;
	flex-wrap: wrap;
	gap: 10rem;
	justify-content: space-between;
}
.form_block_item_textarea {
	height: 90rem;
}
.form_block_item_textarea_overlay {
	width: 100%;
}
.approve_label {
	width: 100%;
	color: rgba(0, 0, 0, 1);
	font-size: 16rem;
	font-weight: 400;
	margin-top: 30rem;
}
.form_text {
	margin-top: 22rem;
	color: rgba(0, 0, 0, 0.4);
	font-size: 12rem;
	font-weight: 400;
}
.form_submit {
	border-radius: 0;
	color: var(--White);
	font-size: 12rem;
	font-weight: 500;
	font-family: "Montserrat", sans-serif;
	margin-top: 22rem;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type=number] {
  -moz-appearance: textfield;
}
.contactspage_map {
	margin-top: 0;
}
@media screen and (max-width: 768px) {
	html {
		font-size: 0.13021vw;
	}
	.container {
		width: 708rem;
	}
	.header_menu_item {
		display: none;
	}
	.header_parent_menu {
		display: none;
	}
	.hero_bg img {
		height: 50%;
		width: 100%;
	}
	.hero_bg {
		flex-direction: column;
	}
	h1 {
		font-size: 50rem;
	}
	.services {
    	padding: 60rem 0 50rem;
	}
	.services_head {
		flex-direction: column;
		align-items: flex-start;
		gap: 50rem;
	}
	.services_head_content {
		width: auto;
	}
	.services_item {
    	width: 344rem;
    	height: 420rem;
	}
	.services_overlay {
		margin-top: 60rem;
	}
	.services_item:last-child, .services_item:nth-last-child(2) {
		width: 100%;
	}
	.menu {
    	padding: 220rem 0;
    	margin: 50rem 0 0;
	}
	.menu_content {
		width: auto;
	}
	.gallery {
    	margin: 80rem 0 60rem;
	}
	.advantages_overlay {
		flex-wrap: wrap;
        width: 580rem;
        margin: auto;
        gap: 20rem;
	}
	.about {
		margin-top: 80rem;
	}
	.about_head {
		flex-direction: column;
		gap: 30rem;
		align-items: flex-start;
	}
	.about_text {
		width: auto;
	}
	.about_gallery_item {
	    width: 357rem;
	    height: 454rem;
	}
	.contacts {
    	margin-top: 174rem;
	}
	.contacts_overlay {
		flex-wrap: wrap;
		gap: 40rem;
	}
	.contacts_title {
		margin-right: auto;
		margin-bottom: 80rem;
	}
	.contacts_wrapper {
		width: 208rem;
	}
	.contacts_btn {
		width: calc(100% - 40rem);
	}
	.contacts_map {
		width: 100%;
	    aspect-ratio: 1.7 / 1;
	    object-fit: cover;
	    object-position: -540rem 0rem;
	    margin-top: 50rem;
	}
	footer {
		padding: 40rem 0;
	}
	.footer_logo {
		order: -1;
		margin: 0 140rem;
	}
	.footer_item_nav {
		width: 220rem;
	}
	.footer_overlay {
		justify-content: center;
		flex-wrap: wrap;
		gap: 40rem 100rem;
	}
	.footer_contacts {
		width: 220rem;
	}
	.category_item {
    	width: 232rem;
    	height: 361rem;
	}
	.category_overlay {
		padding-bottom: 70rem;
	}
	.related {
    	margin-top: 70rem;
	}
	.related .services_overlay {
		white-space: nowrap;
        flex-wrap: nowrap;
        overflow-x: auto;
	}
	.related .services_item{
		min-width: 345rem;
		height: 420rem;
	}
	.related .services_item:last-child, .related .services_item:nth-last-child(2) {
		height: 420rem;
	}
	.seo {
	    padding: 40rem 0;
	    margin: 80rem 0 -100rem;
	}
	.single_overlay {
    	flex-direction: column;
    	gap: 30rem;
    	padding-bottom: 40rem;
    }
    .single_image {
    	margin-left: auto;
    	width: 708rem;
    }
    .single_content {
    	width: auto;
    }
    .single_title {
    	margin: 20rem 0 30rem;
    }
    .single_properties {
    	margin-top: 40rem;
    }
    .single_advantages {
    	margin-top: 40rem;
    	justify-content: space-around;
    }
    .single_related .category_overlay {
    	white-space: nowrap;
        flex-wrap: nowrap;
        overflow-x: auto;
    }
    .single_related .category_item {
    	min-width: 232rem;
    }
    .menu_page_item_flex {
    	flex-direction: column;
    }
    .menu_page_item_bullets {
    	width: 363rem;
    }
    .menu_page_item_image {
    	margin-top: 20rem;
    }
    .menu_gallery_item img {
    	width: 355rem;
    	height: 454rem;
	}
	.menu_gallery_item {
		width: 708rem;
		margin: 52rem auto 0;
	}
	.about_info {
    	padding: 74rem 0;
	}
	.about_info_overlay {
		flex-direction: column;
	}
	.about_info_image {
		width: 100%;
	}
	.about_info_content {
		width: auto;
		margin-top: 40rem;
	}
	.about_info_text {
		width: auto;
		margin: 30rem 0 40rem;
	}
	.about_info_images img:first-child {
    	width: 327rem;
    	height: 411rem;
	}
	.about_info_images img:last-child {
    	width: 344rem;
    	height: 299rem;
	}
	.about_services {
	    padding: 80rem 0 0;
	}
	.about_services_overlay {
		margin-top: 44rem;
		flex-wrap: wrap;
    	padding: 60rem 0;
    	gap: 60rem 0;
	}
	.about_services_item {
		width: 334rem;
	}
	.about_services_number {
		left: -21rem;
    	top: -46rem;
	}
	.about_services_image {
		height: 190rem;
		margin: 20rem 0;
	}
	.menu_gallery {
		margin: 80rem 0 170rem;
	}
	.gallery_page_about {
		margin: 80rem 0 -70rem;
	}
	.contacts_page {
		margin-top: 74rem;
	}
	.contacts_page .contacts_title {
		width: 100%;
	}
	.contacts_page .contacts_title {
		margin-bottom: 10rem;
	}
	.form {
		padding: 70rem 0;
	}
	.form_overlay {
    	padding: 40rem 45rem;
    	width: 578rem;
	}
	.form_block_overlay {
		gap: 22rem 20rem;
	}
	.form_block_item {
		width: 279rem;
	}
	.form_block_item_textarea_overlay {
		width: 100%;
	}
}
@media screen and (max-width: 480px) {
	html {
        font-size: 0.2667vw;
    }
    .container {
        width: 335rem;
    }
    h1 {
    	font-size: 35rem;
    }
    h2 {
    	font-size: 24rem;
    }
    p {
    	font-size: 14rem;
    }
    h3 {
    	font-size: 20rem;
    }
    .header_logo {
    	width: 104rem;
    	top: calc(50% - 16rem);
    	left: calc(50% - 51rem);
    }
    .header_phone span {
    	display: none;
    }
    .services {
        padding: 30rem 0;
    }
    .services_head {
    	gap: 40rem;
    }
    .services_head_title {
    	width: auto;
    }
    .services_overlay {
    	gap: 5rem;
    }
    .services_item {
        width: 165rem;
        height: 247rem;
        background-position: center;
    }
    .services_item:before {
    	display: none;
    }
    .services_item_title {
    	padding: 10rem 0;
    	color: var(--White);
    	background: var(--Accent);
    	font-size: 12rem;
    	font-weight: 500;
    	font-family: "Montserrat", sans-serif;
    }
    .services_item:last-child, .services_item:nth-last-child(2) {
    	width: 165rem;
        height: 247rem;
    }
    .menu {
        padding: 160rem 0;
        margin: 30rem 0 0;

    }
    .menu_content {
    	padding: 30rem 25rem;
    }
    .menu_content_text {
    	width: auto;
    	margin: 19rem 0;
    }
    .gallery_title span:before {
    	display: none;
    }
    .gallery_overlay {
    	margin-top: 20rem;
	}
	.gallery_item {
		width: 170rem;
		height: 216rem;
	}
	.gallery_item_title {
		font-size: 13rem;
	}
	.gallery_nav {
		gap: 30rem;
		margin-top: 30rem;
	}
	.advantages_overlay {
		width: auto;
		gap: 25rem 15rem;
	}
	.advantages_item {
		flex-direction: column;
	}
	.advantages_item_content {
		width: 160rem;
	}
	.advantages_item_text {
		font-size: 12rem;
	}
	.about {
        margin-top: 60rem;
    }
    .about_gallery {
    	margin-top: 30rem;
    }
    .about_gallery_item {
        width: 157rem;
        height: 200rem;
    }
    .about:after {
	    bottom: -40rem;
	    width: 100vw;
	    height: 185rem;
	}
	.contacts {
        margin-top: 100rem;
    }
    .contacts_overlay {
    	gap: 25rem;
    }
    .contacts_title {
    	margin-bottom: 30rem;
    }
    .contacts_title span:before {
	    left: 0rem;
	    width: 144rem;
	    height: 18rem;
	}
	.contacts_loc_text {
		width: auto;
	}
	.contacts_wrapper {
		width: 100%;
		text-align: center;
	}
	.contacts_btn {
		margin: 20rem auto 0;
	}
	.contacts_wrapper {
		margin-top: 15rem;
	}
	.contacts_map {
		height: 316rem;
		margin-top: 40rem;
		object-position: -470rem 0rem;
	}
	.footer_logo {
		width: auto;
		margin: 0 70rem;
	}
	.footer_overlay {
		gap: 40rem 20rem;
	}
	.footer_item_nav {
        width: 150rem;
    }
    .footer_contacts {
    	width: 150rem;
    }
    .footer_copyright {
    	margin-top: 45rem;
    }
    .category_item {
        width: 165rem;
        height: 270rem;
    }
    .category_item_name {
    	padding: 10rem;
    }
    .category_overlay {
        padding-bottom: 50rem;
    }
    .related {
        margin-top: 50rem;
    }
    .related .services_item {
        min-width: 165rem;
        height: 250rem;
    }
    .related .services_item:last-child, .related .services_item:nth-last-child(2) {
        height: 250rem;
    }
    .services_item_title {
    	white-space: normal;
    }
    .seo {
        padding: 30rem 0;
        margin: 60rem 0 -50rem;
    }
    .subpage_hero_content {
    	padding: 170rem 0;
    }
    .subpage_hero {
    	background-position: center;
    }
    .single_image {
    	width: 335rem;
    	height: auto;
    }
    .single_image_item {
    	width: 335rem;
    }
    .single_image_nav {
    	width: 335rem;
    	left: 0;
    	position: relative;
    	bottom: 0;
    	margin-top: 10rem;
    }
    .single_image .slick-arrow {
    	bottom: -80rem;
    	z-index: 2;
    	background-image: url(img/slick_arrow.svg);
    }
    .single_image_overlay  {
    	z-index: 9;
    }
    .single_image .slick-arrow.right {
    	right: -15rem;
    }
    .single_image .slick-arrow.left {
    	left: -15rem;
    }
    .single_image_nav img {
    	width: 105rem;
    	height: 133rem; 
    	margin: 0 5rem;
	}
	.single_image_overlay:before {
		display: none;
	}
	.single_title {
        margin: 20rem 0 25rem;
    }
    .single_btn {
    	margin-top: 25rem;
	}
	.single_advantages {
		padding: 30rem 20rem;
		gap: 25rem 15rem;
	}
	.single_advantages .advantages_item_content {
    	width: 140rem;
	}
	.menu_page_item {
    	padding: 30rem 0;
	} 
	.menu_page_item_wrapper {
		flex-direction: column;
	}
	.menu_page_item_number {
		display: none;
	}
	.menu_page_item_name {
    	margin-right: 0;
    	width: auto;
	}
	.menu_page_item_image {
  	  	width: 335rem;
  	  	height: 232rem;
 		margin-top: 15rem;
	}
	.menu_page_item_bullets {
		width: 335rem;
		margin-top: 30rem;
	}
	.menu_gallery {
    	margin: 60rem 0 100rem;
	}
	.menu_gallery:after {
	    bottom: -50rem;
    	height: 190rem;
	}
	.menu_gallery_item img {
        width: 157rem;
        height: 200rem;
        margin: 0 10rem;
    }
    .menu_gallery_item {
        width: 335rem;
        margin: 30rem auto 0;
    }
    .menu_gallery_title:before {
    	width: 124rem;
    	height: 16rem;
	}
	.about_hero_title i {
		left: 0;
		font-size: 30rem;
	}
	.about_hero_title {
		margin-bottom: 60rem;
	}
	.about_info {
        padding: 40rem 0;
    }
    .about_info_image {
    	height: 310rem;
    }
    .about_info_content {
    	margin-top: 20rem;
    }
    .about_info_title {
    	font-size: 24rem;
    }
    .about_info_text {
    	margin: 20rem 0 25rem;
    }
    .about_info_images img:first-child {
        width: 152rem;
        height: 191rem;
    }
    .about_info_images img:last-child {
        width: 161rem;
        height: 138rem;
    }
   	.about_services {
        padding: 60rem 0 0;
    }
    .about_services_title {
    	max-width: 300rem;
    	margin: auto;
    }
    .about_services_title span:before {
    	height: 19rem;
    }
    .about_services_overlay {
    	padding: 45rem 0;
    	gap: 50rem;
    }
    .about_services_btn {
    	margin-top: 20rem;
    }
    .about_services_number {
        left: -14rem;
     	font-size: 40rem;
        top: -44rem;
    }
    .about_services_image {
    	height: 205rem;
    }
    .menu_gallery {
        margin: 40rem 0 60rem;
    }
    .gallery_page_about {
        margin: 80rem 0 -10rem;
    }
    .contacts_page {
    	margin-top: 74rem;
    }
    .contacts_page .contacts_overlay {
    	margin-top: 25rem;
	}
	.contacts_page .contacts_title {
		font-size: 28rem;
	}
	.form {
     	margin-top: 40rem;
        padding: 50rem 0;
    }
    .form_overlay {
        padding: 30rem 25rem;
        width: 285rem;
    }
    .form_block_item {
    	width: 100%;
    }
    .approve_label {
    	font-size: 14rem;
    }
}