@import url('https://fonts.googleapis.com/css2?family=Big+Shoulders:opsz,wght@10..72,100..900&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
:root{
	--white_silk: #F4F4F4;
	--white: #FFFFFF;
	--jade: #223A3A;
	--green: #ADBDC0;
	--pine: #647D7A;
	--gray: #EDEEEE;
	--error: #E02424;

	--h1: max(40px, 100rem);
	--h2: max(36px, 80rem);
	--h3: max(20px, 32rem);
	--h4: max(18px, 24rem);
	--h5: max(18px, 28rem);
	--h6: max(18px, 20rem);

	--text_1: max(16px, 24rem);
	--text_2: max(16px, 20rem);
	--text_3: max(16px, 18rem);
	--text_4: max(16px, 16rem);
	--text_5: max(16px, 16rem);
	--text_6: max(14px, 14rem);

	--link: max(16px, 18rem);
	--button: max(16px, 18rem);

	--ease-out-expo: cubic-bezier(0.19, 1, 0.22, 1);
	--ease-out: cubic-bezier(0.23, 1, 0.32, 1);
}
::selection {
	color: var(--white);
	background-color: var(--pine);
}
.expectation-item *::selection,
.footer *::selection,
.resident *::selection,
.franchise *::selection,
.legend *::selection,
.examination-content *::selection,
.resources *::selection,
.cost-header *::selection,
.info-green *::selection,
.faq-green *::selection,
.place *::selection,
.review-label::selection {
	color: var(--jade);
	background-color: var(--white);
	opacity: 1;
}
/************************* reset *************************/
html{
	height: 100%;
	margin: 0;
	padding: 0;width: 100%;
	background: var(--white_silk);
	font-size: 0.052vw;
}
body{
	height: 100%;
	width: 100%;
	position: relative;
	margin: 0;
	padding: 0;
	color: var(--jade);
	font-weight: 400;
	font-size: max(16px, 18rem);
	line-height: 125%;
	font-family: 'Inter', Arial, Helvetica, sans-serif;
	min-width: 320px;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
h1, h2, h3, h4, h5, h6, p, ul, li, a, span, div, input, textarea, select, form, fieldset, button, dl, dd, dt, figure, figcaption, blockquote, caption, aside, section {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	box-sizing: border-box;
}
img {
	margin: 0;
	padding: 0;
	border-style: none;
	vertical-align: bottom;
}
input, textarea, select, button {
	font-weight: 400;
	font-family: 'Inter', Arial, Helvetica, sans-serif;
	vertical-align:middle;
	border: 0;
	outline: 0;
	background: none;
}
a:hover {text-decoration: none;}
ul li {list-style: none;}
/************************* common styles *************************/
.holder {
	padding: 0 max(16px, 50rem);
}
.holder:after {
	display: block;
	content: '';
	clear: both;
}
h1, .h1 {
	display: block;
	width: 100%;
	font-family: 'Big Shoulders';
	font-weight: 400;
	font-size: var(--h1);
	line-height: 102%;
	letter-spacing: -0.03em;
}
h2, .h2 {
	display: block;
	width: 100%;
	font-family: 'Big Shoulders';
	font-weight: 400;
	font-size: var(--h2);
	line-height: 102%;
	letter-spacing: -0.03em;
}
h3, .h3 {
	display: block;
	font-weight: 500;
	font-size: var(--h3);
	line-height: 103%;
	letter-spacing: -0.01em
}
h4, .h4 {
	display: block;
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.01em;
}
h5, .h5 {
	display: block;
	font-weight: 500;
	font-size: var(--h5);
	line-height: 103%;
	letter-spacing: -0.01em;
}
h6, .h6 {
	display: block;
	font-weight: 500;
	font-size: var(--h6);
	line-height: 103%;
	letter-spacing: -0.01em;
}
a {transition: all .3s linear;}
p {margin: 0 0 max(10px, 20rem);}
p:last-child {margin: 0;}
p a, .article li a {color: var(--jade);}
.center {text-align: center;}
.upper {text-transform: uppercase;}
.button-holder {text-align: center;}
.button {
	position: relative;
	display: inline-block;
	width: 100%;
	max-width: max(330px, 350rem);
	padding: 13px 30px 15px;
	font-weight: 500;
	font-size: var(--button);
	line-height: 20px;
	letter-spacing: -0.01em;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	color: var(--white_silk);
	background: var(--jade);
	border: 1px solid var(--jade);
	border-radius: 50px;
	transition: all 0.8s var(--ease-out);
}
.button:hover {
	color: var(--jade);
	background: var(--white_silk);
}
.button-border {
	color: var(--jade);
	background: var(--white_silk);
}
.button-border:hover {
	color: var(--white_silk);
	background: var(--jade);
}
.button-white {
	color: var(--jade);
	background: var(--white_silk);
	border: 1px solid var(--white_silk);
}
.button-white:hover {
	color: var(--white_silk);
	background: transparent;
}
.button-white.button-border {
	color: var(--white_silk);
	background: var(--jade);
	border: 1px solid var(--white_silk);
}
.button-white.button-border:hover {
	color: var(--jade);
	background: var(--white_silk);
}
/************************* form-block *************************/
.wpcf7-form-control-wrap input {
	display: block;
	width: 100%;
	height: 50px;
	padding: 0 20px;
	margin: 0 0 max(12px, 20rem);
	font-size: max(16px, 18rem);
	color: var(--jade);
	background: none;
	border: 1px solid var(--green);
	border-radius: 30px;
}
.wpcf7-form-control-wrap textarea {
	display: block;
	width: 100%;
	height: max(120px, 150rem);
	padding: 12px 20px;
	margin: 0 0 max(12px, 20rem);
	font-size: max(16px, 18rem);
	color: var(--jade);
	resize: vertical;
	background: none;
	border: 1px solid var(--green);
	border-radius: 30px;
}
.wpcf7-form-control-wrap input:focus,
.wpcf7-form-control-wrap textarea:focus {
	border: 1px solid var(--pine);
}
.wpcf7-form-control-wrap.error input,
.wpcf7-form-control-wrap.error textarea {
	border: 1px solid var(--error);
}
.inactive {
	opacity: 0.4;
	pointer-events: none;
}
::-webkit-input-placeholder {color: rgba(18, 17, 39, 0.4);}
:-moz-placeholder {color: rgba(18, 17, 39, 0.4); opacity: 1;}
::-moz-placeholder {color: rgba(18, 17, 39, 0.4); opacity: 1;}
:-ms-input-placeholder {color: rgba(18, 17, 39, 0.4);}
.error-msg {
	display: none;
	margin: min(-4px, -8rem) 0 max(12px, 20rem);
	font-weight: 300;
	font-size: 12px;
	line-height: 125%;
	color: var(--error);
}
.error .error-msg {
	display: block;
}
.check-item {
	position: relative;
}
.check-input {
	position: absolute;
	left: 0;
	width: 1px;
	height: 1px;
	opacity: 0;
}
.check-label {
	display: block;
	padding: 2px 0 2px 34px;
	color: var(--jade);
	font-size: 16px;
	line-height: 20px;
	cursor: pointer;
}
.check-label a {color: var(--jade);}
.check-label::before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: 24px;
	height: 24px;
	box-sizing: border-box;
	background: url(../images/checkbox.svg) 50% 50% no-repeat;
	background-size: contain;
}
.check-input:checked + .check-label::before {
	background: url(../images/checkbox-active.svg) 50% 50% no-repeat;
	background-size: contain;
}
.check-label::after {
	width: 1px;
	height: 1px;
	opacity: 0;
	content: '';
	background: url(../images/checkbox-active.svg) 50% 50% no-repeat;
}
.radio-input {
	position: absolute;
	left: 0;
	width: 1px;
	height: 1px;
	opacity: 0;
}
.radio-label {
	display: block;
	padding: 2px 0 2px 34px;
	color: var(--jade);
	font-size: 16px;
	line-height: 20px;
	cursor: pointer;
}
.radio-label a {color: var(--jade);}
.radio-label::before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: 24px;
	height: 24px;
	box-sizing: border-box;
	background: url(../images/radio.svg) 50% 50% no-repeat;
	background-size: contain;
}
.radio-input:checked + .radio-label::before {
	background: url(../images/radio-active.svg) 50% 50% no-repeat;
	background-size: contain;
}
/************************* wrapper *************************/
#wrapper {
	position: relative;
	overflow: hidden;
}
body.lock {overflow: hidden;}
/************************* header *************************/
.header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 300;
	transition: all 0.4s ease-out;
}
.header-up {
	top: min(-70px, -128rem);
}
.header.header-fixed {
	background: var(--jade);
}
.header-transparent.header-fixed,
.header-transparent.header-blue {
	background: var(--jade);
}
.header-block {
	display: flex;
	align-items: center;
	position: relative;
	height: max(70px, 128rem);
}
.header-logo {
	position: absolute;
	top: max(15px, 24rem);
	left: 0;
	display: flex;
	align-items: center;
	gap: max(14px, 26rem);
	color: var(--white_silk);
	text-decoration: none;
}
.header-logo-img {
	position: relative;
	padding-right: max(13px, 27rem);
	border-right: 1px solid var(--white_silk);
}
.header-logo-img img {
	width: max(36px, 80rem);
	transition: all 0.4s ease-out;
}
.logo-green {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}
.header-logo-content {
	display: flex;
	flex-direction: column;
	gap: max(3px, 7rem);
}
.header-logo-title {
	font-family: 'Big Shoulders';
	font-weight: 400;
	font-size: max(17px, 32rem);
	line-height: 120%;
	letter-spacing: 0.65em;
	text-transform: uppercase;
}
.header-logo-text {
	font-size: max(7px, 12rem);
	line-height: 110%;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.header-nav {
	flex: 1;
}
.header-nav-wrap {
	display: flex;
	justify-content: center;
}
.header-nav-list {
	display: flex;
	gap: 25px;
}
.header-nav-list li {
	position: relative;
}
.header-nav-list > li > a {
	display: inline-block;
	vertical-align: top;
	font-size: max(16px, 18rem);
	line-height: 26px;
	color: var(--white_silk);
	text-decoration: none;
}
.header-nav-list > li > a::before{
	position: absolute;
	left: 0;
	bottom: 0px;
	content: '';
	height: 1px;
	background: var(--white_silk);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.header-nav-list > li > a:hover::before,
.header-nav-list > li > a.active::before,
.header-nav-list > li > a.active-sub::before {
	transform: scaleX(1);
	transform-origin: left;
}
.nav-parent {
	position: relative;
	margin: 0 24px 0 0;
}
.nav-parent::after {
	position: absolute;
	top: 2px;
	right: -24px;
	content: '';
	width: 24px;
	height: 24px;
	background: url(../images/nav-arrow.svg) 50% 50% no-repeat;
	transition: all 0.3s ease-out;
}
.nav-parent.active-sub::after {
	transform: rotate(180deg);
}
.subnav {
	display: none;
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	padding: max(20px, 24rem);
	background: var(--white_silk);
}
.subnav li {margin: 0 0 max(4px, 8rem);}
.subnav li:last-child {margin: 0;}
.subnav a {
	position: relative;
	font-size: max(16px, 18rem);
	line-height: 26px;
	color: var(--jade);
	text-decoration: none;
	white-space: nowrap;
}
.subnav a::after{
	position: absolute;
	left: 0;
	bottom: -2px;
	content: '';
	height: 1px;
	background: var(--jade);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.subnav a:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}
@media screen and (min-width: 1025px) {
	.header-nav-list > li:hover .subnav {
		display: block;
	}
	.subnav::before {
		position: absolute;
		top: -8px;
		left: 0;
		right: 0;
		height: 8px;
		content: '';
	}
}
.header-loc {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: max(48px, 60rem);
}
.header-loc-button {
	display: flex;
	align-items: center;
	gap: 5px;
	height: 40px;
	padding: 3px 21px;
	font-weight: 500;
	font-size: max(16px, 18rem);
	line-height: 103%;
	letter-spacing: -0.01em;
	color: var(--white_silk);
	text-decoration: none;
	border: 1px solid var(--white_silk);
	border-radius: 30px;
	transition: all 0.8s var(--ease-out);
}
.header-loc-button svg {
	width: max(18px, 24rem);
	height: max(18px, 24rem);
}
.header-loc-button path {
	fill: var(--white_silk);
	transition: all 0.8s var(--ease-out);
}
.header-loc-button:hover {
	color: var(--jade);
	background: var(--white_silk);
}
.header-loc-button:hover path {
	fill: var(--jade);
}
.header-cart {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	color: var(--white_silk);
	text-decoration: none;
	border: 1px solid var(--white_silk);
	border-radius: 50%;
	transition: all 0.8s var(--ease-out);
}
.header-cart svg {
	width: 24px;
	height: 24px;
}
.header-cart path {
	fill: var(--white_silk);
	transition: all 0.8s var(--ease-out);
}
.header-cart:hover {
	background: var(--white_silk);
}
.header-cart:hover path {
	fill: var(--jade);
}
.header-cart-num {
	position: absolute;
	top: 19px;
	left: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 12px;
	height: 12px;
	font-size: 6px;
	line-height: 100%;
	text-transform: uppercase;
	text-align: center;
	background: var(--jade);
	border: 1px solid var(--white_silk);
	border-radius: 50%;
}
.header-white:not(.header-fixed) .logo-green {
	opacity: 1;
}
.header-white:not(.header-fixed) .logo-white {
	opacity: 0;
}
.header-white:not(.header-fixed) .header-logo {
	color: var(--jade);
}
.header-white:not(.header-fixed) .header-logo-img {
	border-right: 1px solid var(--jade);
}
.header-white:not(.header-fixed) .header-nav-list > li > a {
	color: var(--jade);
}
.header-white:not(.header-fixed) .header-nav-list > li > a::before{
	background: var(--jade);
}
.header-white:not(.header-fixed) .nav-parent::after {
	background: url(../images/nav-arrow-green.svg) 50% 50% no-repeat;
}
.header-white:not(.header-fixed) .subnav {
	background: var(--jade);
}
.header-white:not(.header-fixed) .subnav a {
	color: var(--white_silk);
}
.header-white:not(.header-fixed) .subnav a::after{
	background: var(--white_silk);
}
.header-white:not(.header-fixed) .header-loc-button {
	color: var(--jade);
	border: 1px solid var(--jade);
}
.header-white:not(.header-fixed) .header-loc-button path {
	fill: var(--jade);
}
.header-white:not(.header-fixed) .header-loc-button:hover {
	color: var(--white_silk);
	background: var(--jade);
}
.header-white:not(.header-fixed) .header-loc-button:hover path {
	fill: var(--white_silk);
}
.header-white:not(.header-fixed) .header-cart {
	color: var(--jade);
	border: 1px solid var(--jade);
}
.header-white:not(.header-fixed) .header-cart path {
	fill: var(--jade);
}
.header-white:not(.header-fixed) .header-cart:hover {
	background: var(--jade);
}
.header-white:not(.header-fixed) .header-cart:hover path {
	fill: var(--white_silk);
}
.header-white:not(.header-fixed) .header-cart-num {
	background: var(--white_silk);
	border: 1px solid var(--jade);
}
.mob-nav-icon {
	position: absolute;
	top: max(15px, 24rem);
	right: 0px;
	z-index: 250;
	display: none;
	width: 40px;
	height: 40px;
}
.mob-nav-block {
    position: relative;
	display: block;
    width: 16px;
    height: 1px;
	background: var(--white);
	transition: all .3s linear;
}
.mob-nav-block:after {
    content: "";
    position: absolute;
    top: -4px;
    left: 0;
	width: 16px;
    height: 1px;
    background: var(--white);
	transition: all .3s linear;
}
.mob-nav-block:before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 16px;
    height: 1px;
    background: var(--white);
	transition: all .3s linear;
}
.mob-nav-icon.active .mob-nav-block {
    background: none;
}
.mob-nav-icon.active .mob-nav-block:before {
    top: 0;
    transform: rotate(45deg);
}
.mob-nav-icon.active .mob-nav-block:after {
    top: 0;
    transform: rotate(-45deg);
}
/************************* hero *************************/
.hero {
	position: relative;
	margin: 0 0 max(60px, 130rem);
}
.hero-bg {
	height: max(625px, 1300rem);
	max-height: 100dvh;
}
.hero-bg-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.hero-video-wrap {
	position: relative;
	width: 100%;
	height: 100%;
}
.hero-video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.hero-video-wrap::after {
	position: absolute;
	inset: 0;
	content: '';
	background: rgba(0, 0, 0, 0.6);
}
.hero-content {
	position: absolute;
	inset: 0;
	padding: max(40px, 130rem) max(16px, 40rem);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 20px;
	color: var(--white_silk);
}
.hero .breadcrumbs {
	position: absolute;
	top: max(70px, 168rem);
	left: max(16px, 40rem);
}
.hero .breadcrumbs li {
	color: rgba(255, 255, 255, 0.4);
}
.hero .breadcrumbs li::before {
	color: var(--white_silk);
}
.hero .breadcrumbs li:last-child::before {
	color: rgba(255, 255, 255, 0.4);
}
.hero .breadcrumbs a {
	color: var(--white_silk);
}
.hero .breadcrumbs a::after {
	background: var(--white_silk);
}
.hero-text {
	margin: 0 0 10px;
	max-width: 778px;
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
	text-align: center;
}
.hero-text-8 {
	max-width: 646px;
}
.hero-text-9 {
	max-width: 590px;
}
.hero-text-10 {
	max-width: 778px;
}
.hero-text:last-child {margin: 0;}
.bottom-left {
	justify-content: flex-end;
	align-items: flex-start;
	text-align: left;
}
.bottom-left .hero-text {
	text-align: left;
}
.hero-subtitle {
	position: absolute;
	bottom: max(32px, 50rem);
	left: 50%;
	transform: translateX(-50%);
}
.hero-title-1 {
	max-width: max(360px, 660rem);
}
.hero-title-2 {
	max-width: max(500px, 1090rem);
}

/************************* hero-slider *************************/
.hero-slider-section {
	position: relative;
	margin: 0 0 max(60px, 130rem);
}
.hero-slider {
	background: var(--jade);
}
.hero-slide {
	position: relative;
}
.hero-slide-bg {
	display: block;
	width: 100%;
	height: max(625px, 1300rem);
	max-height: 100dvh;
	object-fit: cover;
}
.hero-slide::after {
	position: absolute;
	inset: 0;
	content: '';
	background: rgba(0, 0, 0, 0.6);
}
.hero-slide .hero-content {
	z-index: 20;
}
.hero-slide h1 {
	max-width: max(300px, 720rem);
}
.hero-slide .hero-text {
	margin: 0 0 12px;
}
.hero-slide-1 {
	max-width: 520px;
}
.hero-slide-2 {
	max-width: 600px;
}
.hero-slide-3 {
	max-width: 600px;
}
.hero-slider .slick-dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: max(20px, 40rem);
	gap: max(4px, 10rem);
}
.hero-slider .slick-dots button {
	position: relative;
	overflow: hidden;
	display: block;
	width: max(40px, 100rem);
	height: 3px;
	font-size: 0;
	cursor: pointer;
	background: rgba(255, 255, 255, 0.4);
	border-radius: 0;
	transition: all 0.5s ease-in-out;
	opacity: 1;
}
.hero-slider .slick-dots button::after {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	content: '';
	width: 0%;
	background: var(--white);
}
.hero-slider .slick-dots button:hover {
	background: rgba(255, 255, 255, 0.4);
}
.hero-slider .slick-dots .slick-active button:hover {
	background: rgba(255, 255, 255, 0.4);
}
.hero-slider .slick-trigger button::after {
	width: 100%;
	transition: all 4.2s linear;
}
.google-review {
	position: absolute;
	width: max(143px, 300rem);
	left: max(16px, 33rem);
	bottom: max(16px, 33rem);
}

/************************* benefit *************************/
.benefit {

}
.benefit-block {
	position: relative;
	width: max(700px, 1700rem);
	height: max(425px, 1032rem);
	margin: 0 auto;
	padding: max(8px, 19rem) 0 0;
	background: url(../images/benefit-bg.svg) 50% 0 no-repeat;
	background-size: contain;
}
.benefit-img {
	width: 747rem;
	height: 747rem;
	margin: 0 auto;
}
.benefit-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}
.benefit-item {
	position: absolute;
	font-weight: 500;
	font-size: max(16px, 28rem);
	line-height: 103%;
	letter-spacing: -0.01em;
}
.benefit-1 {
	top: 4.5%;
	left: 6.6%;
}
.benefit-2 {
	top: 26%;
	left: 1%;
}
.benefit-3 {
	top: 55%;
	left: 0%;
}
.benefit-4 {
	top: 76.5%;
	left: 6.6%;
}
.benefit-5 {
	top: 79%;
	left: 0;
	right: 0;
	text-align: center;
}
.benefit-6 {
	top: 4.5%;
	right: 6.6%;
}
.benefit-7 {
	top: 26%;
	right: 1%;
}
.benefit-8 {
	top: 55%;
	right: 0%;
}
.benefit-9 {
	top: 76.5%;
	right: 6.6%;
}

/************************* choose *************************/
.choose {
	display: flex;
}
.choose-side {
	width: 34%;
	padding: 0 30px 0 0;
}
.choose-content {
	width: 66%;
}
.choose-item {
	display: flex;
	padding: max(20px, 30rem) 0;
	border-top: 1px solid var(--pine);
}
.choose-item:last-child {
	border-bottom: 1px solid var(--pine);
}
.choose-item h4 {
	width: 50%;
	padding: 0 20px 0 0;
	font-size: max(20px, 24rem);
}
.choose-text {
	width: 50%;
	max-width: 380px;
	font-size: 16px;
	color: var(--pine);
}

/************************* expectation *************************/
.expectation {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px 20px;
}
.expectation-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: max(20px, 50rem);
	color: var(--white_silk);
	background: var(--jade);
}
.expectation-img {
	max-width: max(300px, 354rem);
	margin: 0 0 max(12px, 20rem);
}
.expectation-img img {
	width: 100%;
	height: max(240px, 354rem);
	object-fit: cover;
}
.expectation-item h4 {
	margin: 0 0 10px;
}
.expectation-text {
	font-size: 16px;
	color: rgba(244, 244, 244, 0.6);
}

/************************* main-team *************************/
.expert-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 20px;
	margin: 0 0 max(32px, 50rem);
}
.expert-top-text {
	max-width: max(840px, 960rem);
}
.board-slider {
	width: calc(100% + 50vw - 50%);
	padding-bottom: max(48px, 74rem);
}
.board-slider .board-item {
	width: max(300px, 430rem);
	padding: 0 max(20px, 40rem) 0 0;
}
.board-slider .slick-arrow {
	position: absolute;
	bottom: 0;
	left: calc((100% + min(-16px, -50rem))/2);
	margin-left: 8px;
}
.board-slider .slick-prev {
	margin-left: -32px;
}

/************************* main-blog *************************/
.main-blog .blog-img img {
	height: max(240px, 670rem);
}
.main-blog .blog-block {
	margin: 0;
}
.blog-item .more-link {
	text-decoration: underline;
}
.blog-item:hover .more-link {
	color: var(--jade);
	text-decoration: underline;
}


/************************* history *************************/
.history {
	display: flex;
	align-items: flex-start;
}
.history-side {
	width: 50%;
	padding: 0 max(40px, 172rem) 0 0;
}
.history-img {
	position: relative;
	height: max(600px, 780rem);
}
.history-img-item {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
}
.history-img-item.active {
	opacity: 1;
}
.history-content {
	position: relative;
	width: 50%;
	padding: 0 0 0 max(40px, 172rem);
}
.history-item {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: max(10px, 20rem);
	padding: 0 0 40px;
}
.history-item:last-child {
	padding: 0;
}
.history-item::before {
	position: absolute;
	top: max(1px, 12rem);
	left: min(-40px, -172rem);
	content: '';
	width: max(15px, 25rem);
	height: max(15px, 25rem);
	margin-left: min(-8px, -12rem);
	background: var(--green);
	border-radius: 50%;
}
.history-point {
	position: absolute;
	top: max(1px, 12rem);
	left: min(-40px, -172rem);
	content: '';
	width: max(15px, 25rem);
	height: max(15px, 25rem);
	margin-left: min(-8px, -12rem);
	background: var(--jade);
	border-radius: 50%;
	opacity: 0;
}
.history-title {
	font-family: 'Big Shoulders';
	font-weight: 400;
	font-size: max(20px, 44rem);
	line-height: 102%;
	letter-spacing: -0.03em;
}
.history-text {
	max-width: 450px;
	font-size: 16px;
	color: var(--pine);
}
.history-line {
	position: absolute;
	overflow: hidden;
	left: 0;
	top: max(3px, 12rem);
	bottom: max(3px, 12rem);
	content: '';
	width: 1px;
	background: var(--green);
}
.history-line-filler {
	position: absolute;
	left: 0;
	top: 0;
	width: 1px;
	height: 0%;
	background: var(--jade);
}




/************************* vision *************************/
.vision-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 20px;
	margin: 0 0 max(32px, 50rem);
}
.vision-top-text {
	max-width: max(720px, 790rem);
}
.vision-block {
	display: flex;
	gap: 40px;
	padding: 20px 0 0;
	border-top: 1px solid rgba(23, 43, 35, 0.4);
}
.vision-content {
	flex: 1;
}
.vision-content h3 {
	max-width: max(400px, 680rem);
	margin: 0 0 max(32px, 40rem);
	font-size: max(20px, 28rem);
}
.vision-subtitle {
	max-width: max(300px, 380rem);
	margin: 0 0 20px;
	font-size: max(16px, 20rem);
	font-weight: 500;
	line-height: 103%;
	letter-spacing: -0.01em;
	opacity: 0.6;
}
.vision-list {
	max-width: max(540px, 590rem);
}
.vision-item {
	position: relative;
	padding: 20px 0 20px 40px;
	border-top: 1px solid var(--green);
}
.vision-num {
	position: absolute;
	top: 20px;
	left: 0;
}
.vision-img {
	width: 55%;
}
.vision-img img {
	width: 100%;
	height: max(360px, 719rem);
	object-fit: cover;
}

/************************* care *************************/
.care-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 20px;
	margin: 0 0 max(32px, 50rem);
}
.care-top-text {
	max-width: max(860px, 960rem);
}
.care-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	padding: 0 max(1px, 30rem);
	margin: 0 min(-16px, -50rem);
	border-top: 1px solid rgba(34, 58, 58, 0.2);
	border-bottom: 1px solid rgba(34, 58, 58, 0.2);
}
.care-item {
	display: flex;
	flex-direction: column;
	padding: 20px 20px max(20px, 45rem);
	color: var(--jade);
	text-decoration: none;
	border-left: 1px solid rgba(34, 58, 58, 0.2);
}
.care-item:first-child {
	border-left: 0;
}
.care-img {
	overflow: hidden;
	display: block;
	height: max(240px, 616rem);
	margin: 0 0 max(12px, 20rem);
}
.care-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.5s ease-in-out;
}
.care-item h3 {
	max-width: max(400px, 510rem);
	margin: 0 0 max(16px, 20rem);
}
.care-text {
	margin: 0 0 max(20px, 40rem);
	padding-right: max(20px, 40rem);
	color: rgba(34, 58, 58, 0.4);
}
.care-item .more-link {
	margin: auto 0 0;
}
.care-item .more-link {
	margin: auto 0 0;
	text-decoration: underline;
}
.care-item:hover .care-img img {
	transform: scale(1.1);
}
.care-item:hover .more-link {
	color: var(--jade);
	text-decoration: underline;
}

/************************* banner-slider *************************/
.banner-slider {
	background-color: var(--jade);
}
.banner-slide {
	position: relative;
}
.banner-slide-bg {
	width: 100%;
	height: max(800px, 1000rem);
	max-height: 100dvh;
	object-fit: cover;
}
.banner-slide-content {
	position: absolute;
	inset: 0;
	padding: max(24px, 100rem) max(16px, 50rem);
	color: var(--white_silk);
}
.banner-slide-content h2 {
	max-width: max(300px, 600rem);
	margin: 0 0 20px;
}
.banner-slide-text {
	max-width: max(530px, 590rem);
}
.banner-slider .slick-dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: max(20px, 40rem);
	gap: max(4px, 10rem);
}
.banner-slider .slick-dots button {
	position: relative;
	overflow: hidden;
	display: block;
	width: max(40px, 100rem);
	height: 3px;
	font-size: 0;
	cursor: pointer;
	background: rgba(255, 255, 255, 0.4);
	border-radius: 0;
	transition: all 0.5s ease-in-out;
	opacity: 1;
}
.banner-slider .slick-dots button::after {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	content: '';
	width: 0%;
	background: var(--white);
}
.banner-slider .slick-dots button:hover {
	background: rgba(255, 255, 255, 0.4);
}
.banner-slider .slick-dots .slick-active button:hover {
	background: rgba(255, 255, 255, 0.4);
}
.banner-slider .slick-trigger button::after {
	width: 100%;
	transition: all 4.2s linear;
}

/************************* what *************************/
.what-block {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0 20px;
}
.what-item {
	display: flex;
	flex-direction: row-reverse;
	gap: 20px;
	padding: 20px 0;
	margin: -1px 0 0;
	color: var(--jade);
	text-decoration: none;
	border-top: 1px solid var(--pine);
	border-bottom: 1px solid var(--pine);
}
.what-img {
	overflow: hidden;
	width: max(240px, 390rem);
}
.what-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.5s ease-in-out;
}
.what-content {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.what-content h3 {
	max-width: max(300px, 390rem);
	margin: 0 0 20px;
}
.what-text {
	max-width: max(340px, 390rem);
	margin: 0 0 20px;
	display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 69px;
	line-height: 23px;
	color: var(--pine);
}
.what-content .more-link {
	margin: auto 0 0;
}
.what-item .more-link {
	margin: auto 0 0;
	text-decoration: underline;
}
.what-item:hover .what-img img {
	transform: scale(1.1);
}
.what-item:hover .more-link {
	color: var(--jade);
	text-decoration: underline;
}

/************************* board *************************/
.board-block {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.board-img {
	margin: 0 0 10px;
}
.board-img img {
	width: 100%;
	height: max(360px, 563rem);
	object-fit: cover;
}
.board-name {
	margin: 0 0 10px;
	font-size: max(18px, 24rem);
	line-height: 120%;
}
.board-status {
	color: var(--pine);
}

/************************* impact *************************/
.impact-block {
	display: flex;
}
.impact-img {
	width: 44%;
	height: max(360px, 544rem);
}
.impact-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.impact-content {
	flex: 1;
	padding: 0 0 0 max(40px, 60rem);
	display: flex;
	flex-direction: column;
}
.impact-text {
	max-width: max(450px, 500rem);
	margin: 0 0 32px;
}
.impact-photo {
	margin: auto 0 0 auto;
	display: flex;
	gap: 20px;
}
.impact-photo img {
	width: max(200px, 286rem);
	height: max(200px, 286rem);
	object-fit: cover;
}

/************************* mission *************************/
.mission-top {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 30px;
	margin: 0 0 max(32px, 50rem);
	text-align: center;
}
.mission-top-text {
	max-width: max(540px, 590rem);
}
.mission-block {
	display: flex;
}
.mission-img {
	width: 40%;
	height: max(360px, 816rem);
}
.mission-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mission-content {
	flex: 1;
	padding: 0 0 0 max(40px, 90rem);
	display: flex;
	gap: 40px;
}
.mission-item {
	flex: 1;
	display: flex;
	flex-direction: column;
}
.mission-item h3 {
	max-width: max(280px, 330rem);
	margin: 0 0 max(10px, 24rem);
}
.mission-item:last-child .mission-photo {
	margin: auto 0 0 auto;
}
.mission-text {
	margin: 0 0 max(28px, 80rem);
}
.mission-photo {
	width: max(300px, 390rem);
	height: max(200px, 242rem);
}
.mission-photo img,
.mission-photo video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mission-line {
	display: flex;
	margin: 0 0 max(32px, 50rem);
}
.mission-line h2 {
	width: 40%;
}
.mission-line h3 {
	flex: 1;
	padding: 0 0 0 max(40px, 90rem);
}

/************************* franchise *************************/
.franchise {
	padding: max(60px, 120rem) 0 max(60px, 110rem);
	color: var(--white_silk);
	background: var(--jade);
}
.franchise-block {
	display: flex;
}
.franchise-tabs {
	width: 41%;
}
.franchise-tabs-mob {
	display: none;
}
.franchise-tabs-list {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 20px;
}
.franchise-tabs-link {
	font-family: 'Big Shoulders';
	font-weight: 400;
	font-size: var(--h2);
	line-height: 102%;
	letter-spacing: -0.03em;
	color: var(--white_silk);
	text-decoration: none;
	opacity: 0.2;
}
.franchise-tabs-link:hover,
.franchise-tabs-link.active {
	opacity: 1;
}
.franchise-content {
	width: 55%;
}
.franchise-item {
	display: flex;
	gap: 20px;
	padding: max(24px, 32rem) 0;
	border-top: 1px solid var(--pine);
}
.franchise-item:last-child {
	padding-bottom: 0;
}
.franchise-item h4 {
	width: max(200px, 380rem);
	min-width: max(200px, 380rem);
	font-size: max(20px, 24rem);
}
.franchise-tab {
	display: none;
}
.franchise-tab.vis {
	display: block;
}

/************************* press *************************/
.press {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: max(28px, 40rem) 20px;
}
.press-item {
	color: var(--jade);
	text-decoration: none;
}
.press-img {
	position: relative;
	overflow: hidden;
	margin: 0 0 max(12px, 20rem);
}
.press-img img {
	width: 100%;
	height: max(240px, 500rem);
	object-fit: cover;
	transition: all 0.5s ease-in-out;
}
.press-item h3 {
	margin: 0 0 15px;
}
.press-text {
	display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
	max-width: max(480px, 600rem);
    height: 92px;
	margin: 0 0 20px;
	line-height: 23px;
}
.press-item .more-link {
	margin: auto 0 0;
	text-decoration: underline;
}
.press-item:hover .press-img img {
	transform: scale(1.1);
}
.press-item:hover .more-link {
	color: var(--jade);
	text-decoration: underline;
}

/************************* press-slider *************************/
.press-slider {
	margin: 0 min(-16px, -50rem);
	padding: 0 0 0 max(1px, 30rem);
	border-top: 1px solid rgba(34, 58, 58, 0.2);
	border-bottom: 1px solid rgba(34, 58, 58, 0.2);
}
.press-slide {
	padding: 20px 20px max(20px, 40rem);
	border-right: 1px solid rgba(34, 58, 58, 0.2);
}
.press-slide .press-item {
	width: max(400px, 800rem);
}
.press-slider .slick-arrow {
	position: absolute;
	top: min(-56px, -74rem);
	right: max(16px, 50rem);
}
.press-slider .slick-prev {
	margin-right: 39px;
}

/************************* why *************************/
.why-block {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.why-item {
	display: flex;
	flex-direction: column;
	padding: 20px;
	color: var(--jade);
	text-decoration: none;
	background: var(--gray);
}
.why-img {
	position: relative;
	overflow: hidden;
	margin: 0 0 max(12px, 20rem);
}
.why-img img {
	width: 100%;
	height: max(200px, 245rem);
	object-fit: cover;
	transition: all 0.5s ease-in-out;
}
.why-item h4 {
	margin: 0 0 max(10px, 15rem);
}
.why-text {
	display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 92px;
	margin: 0 0 20px;
	line-height: 23px;
}
.why-item .more-link {
	margin: auto 0 0;
	text-decoration: underline;
}
.why-item:hover .why-img img {
	transform: scale(1.1);
}
.why-item:hover .more-link {
	color: var(--jade);
	text-decoration: underline;
}

/************************* pros *************************/
.pros h2 {
	max-width: max(300px, 680rem);
}
.pros-block {
	border-bottom: 1px solid rgba(23, 43, 35, 0.4);
}
.pros-item {
	display: flex;
	position: relative;
	gap: 20px;
	padding: max(20px, 30rem) 0;
	padding-left: max(60px, 230rem);
	border-top: 1px solid rgba(23, 43, 35, 0.4);
}
.pros-num {
	position: absolute;
	top: max(20px, 30rem);
	left: 0;
	font-size: max(20px, 24rem);
	line-height: 120%;
}
.pros-item h3 {
	width: max(200px, 460rem);
	min-width: max(200px, 460rem);
}
.pros-info {
	flex: 1;
	max-width: max(440px, 510rem);
	display: flex;
	flex-direction: column;
	gap: 20px;
	line-height: 24px;
	color: rgba(23, 43, 35, 0.6);
}
.pros-text {
	width: max(380px, 440rem);
}
.pros-img {
	overflow: hidden;
	width: max(320px, 440rem);
	min-width: max(320px, 440rem);
	margin: 0 0 0 auto;
}
.pros-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.5s ease-in-out;
}

/************************* doc *************************/
.doc h2 {
	max-width: max(380px, 760rem);
	margin: 0 auto;
}
.doc-block {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: max(28px, 50rem) 20px;
}
.doc-item {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
	height: max(480px, 560rem);
}
.doc-img {
	overflow: hidden;
}
.doc-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 0;
}
.doc-content {
	display: flex;
	padding: 20px;
	background: var(--gray);
	height: max(480px, 560rem);
}
.doc-wrap {
	overflow: hidden;
	height: 100%;
}
.doc-content h4 {
	margin: 0 0 max(20px, 60rem);
	font-size: max(20px, 24rem);
}
.doc-quote {
	margin: 0 0 20px;
	font-weight: 500;
	font-size: max(18px, 20rem);
	line-height: 103%;
	letter-spacing: -0.01em;
	opacity: 0.4;
}

/************************* doc-slider *************************/
.doc-slider-wrap h2 {
	max-width: max(320px, 715rem);
}
.doc-slider {
	margin: 0 -15px;
}
.doc-slide {
	padding: 0 15px;
}
.doc-slide-item {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.doc-slide-content {
	width: calc(50% - 20px);
}
.doc-slide-img {
	width: calc(50% - 20px);
	height: max(360px, 860rem);
}
.doc-video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.doc-slide-text {
	max-width: max(530px, 590rem);
	padding: 0 0 max(10px, 38rem);
}
.doc-slide-text-vis,
.doc-slide-text-hidden {
	margin: 0 0 max(10px, 20rem);
}
.doc-slide-text-hidden {
	display: none;
}
.doc-slide-photo {
	max-width: max(240px, 440rem);
	margin: 0 0 10px;
}
.doc-slide-photo img {
	width: 100%;
}
.doc-slide-content h3 {
	max-width: max(530px, 590rem);
	margin: 0 0 max(10px, 16rem);
	font-size: max(18px, 32rem);
}
.doc-slider .slick-arrow {
	position: absolute;
	top: min(-56px, -74rem);
	right: 15px;
}
.doc-slider .slick-prev {
	margin-right: 39px;
}

/************************* form-block *************************/
.form-block {
	max-width: max(720px, 900rem);
	margin: 0 auto;
}
.form-top {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0 0 max(32px, 50rem);
	text-align: center;
}
.form-box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 20px;
}
.form-box .wpcf7-form-control-wrap {
	width: calc(50% - 10px);
}
.form-box .input-long {
	width: 100%;
}
.form-button .button {
	max-width: none;
}
.check-block {
	margin: 0 0 20px;
}
.check-text {
	margin: 0 0 16px;
	font-weight: 500;
	font-size: max(18px, 20rem);
	line-height: 103%;
	letter-spacing: -0.01em;
}
.check-line {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 24px;
}
.radio-line {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 48px;
}
.form-note {
	padding: max(12px, 20rem) 0 0;
	margin: 0 0 max(32px, 40rem);
}
.form-text {
	width: 100%;
	max-width: 560px;
	margin: 0 0 max(12px, 20rem);
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
	opacity: 0.6;
}
.file {
	position: relative;
	margin: 0 0 max(12px, 20rem);
}
.file-input {
	position: absolute;
	left: 0;
	width: 1px;
	height: 1px;
	opacity: 0;
}
.file-label {
	position: relative;
    display: inline-flex;
	align-items: center;
	gap: 4px;
    padding: 10px 27px;
    font-weight: 500;
    font-size: var(--button);
    line-height: 20px;
    letter-spacing: -0.01em;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    color: var(--jade);
    background: var(--white_silk);
    border: 1px solid var(--jade);
    border-radius: 50px;
    transition: all 0.8s var(--ease-out);
}
.file-label:hover {
	color: var(--white_silk);
    background: var(--jade);
}
.file-label path {
	stroke: var(--jade);
	transition: all 0.8s var(--ease-out);
}
.file-label:hover path {
	stroke: var(--white_silk);
}

/************************* map *************************/
.map h2 {
	margin: 0 0 max(32px, 50rem);
}
.map .title-line h2 {
	margin: 0;
}
.map-block {
	overflow: hidden;
	display: flex;
	border: 1px solid var(--jade);
}
.map-side {
	width: max(320px, 500rem);
	min-width: max(320px, 500rem);
	padding: max(24px, 44rem);
}
.map-main {
	flex: 1;
	height: max(700px, 930rem);
	max-height: 100dvh;
}
.map-main iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}
.search {
	position: relative;
}
.map-block .search {
	margin: 0 0 max(16px, 32rem);
}
.search .wpcf7-form-control-wrap input {
	padding-left: 60px;
	margin: 0;
}
.search-button {
	position: absolute;
	top: 50%;
	left: 28px;
	margin-top: -12px;
	width: 24px;
	height: 24px;
	background: url(../images/loupe.svg) 50% 50% no-repeat;
	background-size: contain;
	cursor: pointer;
}
.address-list {
	max-height: max(500px, 685rem);
	overflow-y: auto;
	direction: rtl;
	padding-left: max(12px, 22rem);
	margin-left: min(-12px, -22rem);
}
.address-list::-webkit-scrollbar-track {
	background-color: rgba(34, 58, 58, 0.1);
}
.address-list::-webkit-scrollbar {
	width: 2px;
	background-color: rgba(34, 58, 58, 0.1);
}
.address-list::-webkit-scrollbar-thumb {
	border-radius: 4px;
	background-color: var(--jade);
}
.address-item {
	border-top: 1px solid var(--green);
	direction: ltr;
}
.address-item:last-child {
	border-bottom: 1px solid var(--green);
}
.address-top {
	position: relative;
	overflow: hidden;
	display: block;
	padding: 24px 0;
	font-weight: 500;
	font-size: max(20px, 28rem);
	line-height: 103%;
	letter-spacing: -0.01em;
	color: var(--jade);
	text-decoration: none;
}
.address-top::after {
    position: absolute;
    top: 50%;
	margin-top: -18px;
    right: 0;
    content: '';
    width: 36px;
    height: 36px;
    background: url(../images/address-arrow.svg) 50% 50% no-repeat;
    transition: all 0.3s ease-out;
}
.address-top.active::after {
	transform: rotate(180deg);
}
.address-hidden {
	display: none;
	padding: 0 0 24px;
}
.address-hidden.vis {
	display: block;
}
.address-hidden h6 {
	margin: 0 0 15px;
}
.address-text {
	margin: 0 0 22px;
	font-size: max(14px, 16rem);
	line-height: 120%;
	letter-spacing: 0.05em;
}
.address-text:last-child {
	margin: 0;
}

/************************* gift *************************/
.gift-top {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 20px;
	margin: 0 0 max(32px, 50rem);
	text-align: center;
}
.gift-top-text {
	max-width: max(830px, 910rem);
}
.card-block {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.card-link {
	color: var(--jade);
	text-decoration: none;
}
.card-img {
	overflow: hidden;
	margin: 0 0 12px;
}
.card-img img {
	width: 100%;
	height: max(390px, 564rem);
	object-fit: cover;
	transition: all 0.5s ease-in-out;
}
.card-item:hover .card-img img {
	transform: scale(1.1);
}
.card-item h4 {
	margin: 0 0 12px;
}
.card-price {
	margin: 0 0 20px;
	color: var(--pine);
}
.card-item .button {
	max-width: none;
}

/************************* category *************************/
.title-line {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 30px;
	margin: 0 0 max(32px, 50rem);
}
.category-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin: 0 0 max(32px, 50rem);
}
.category-block:last-child {margin: 0;}
.category-item {
	position: relative;
	overflow: hidden;
	height: max(300px, 388rem);
	color: var(--white_silk);
	text-decoration: none;
}
.category-item::after {
	position: absolute;
	inset: 0;
	content: '';
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.4), transparent 35%);
}
.category-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.5s ease-in-out;
}
.category-item:hover .category-img {
	transform: scale(1.1);
}
.category-video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.category-item h3 {
	position: absolute;
	z-index: 10;
	inset: 20px;
	top: auto;
}

/************************* gift card page *************************/
.voucher .breadcrumbs {
	margin: 0 0 max(32px, 45rem);
}
.voucher-block {
	display: flex;
	justify-content: space-between;
	gap: 30px;
}
.voucher-img {
	max-width: calc(50% - 20px);
	width: max(540px, 800rem);
}
.voucher-img img {
	width: 100%;
	height: max(360px, 770rem);
	object-fit: cover;
}
.voucher-content {
	max-width: max(520px, 720rem);
	margin: 0 max(30px, 80rem) 0 0;
}
.voucher-content h2 {
	margin: 0 0 20px;
}
.voucher-content h3 {
	margin: 0 0 max(28px, 40rem);
}
.voucher-content h4 {
	margin: 0 0 max(32px, 40rem);
	color: var(--pine);
}
.voucher-form {
	margin: 0 0 max(48px, 84rem);
}
.voucher-form:last-child {
	margin: 0;
}
.voucher-form-part h6 {
	margin: 0 0 max(16px, 20rem);
}
.voucher-form .select-item,
.voucher-form .wpcf7-form-control-wrap input,
.voucher-form .wpcf7-form-control-wrap textarea {
    margin: 0 0 max(12px, 40rem);
}
.voucher-form .button {
	max-width: none;
}
.faq-min {
	border-bottom: 1px solid rgba(34, 58, 58, 0.2);
}
.faq-min-item {
	border-top: 1px solid rgba(34, 58, 58, 0.2);
}
.faq-min-top {
	position: relative;
	display: block;
	padding: 20px 0;
	font-weight: 500;
	font-size: max(20px, 24rem);
	line-height: 120%;
	letter-spacing: -0.01em;
	color: var(--jade);
	text-decoration: none;
}
.faq-min-top::after {
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -12px;
	width: 24px;
	height: 24px;
	content: '';
	background: url(../images/select-arrow.svg) 50% 50% no-repeat;
}
.faq-min-top.active::after {
	transform: rotate(180deg);
}
.faq-min-hidden {
	display: none;
	padding: 0 0 20px;
}
.faq-min-hidden.vis {
	display: block;
}
.faq-min-hidden h6 {
	padding: 10px 0 0;
	margin: 0 0 max(10px, 20rem);
}
.faq-min-hidden h6:first-child {
	padding: 0;
}
.faq-min-hidden p {
	margin: 0 0 10px;
}
.faq-min-hidden ul {
	padding: 0 0 0 20px;
	margin: 0 0 10px;
}
.faq-min-hidden ul li {
	list-style-type: disc;
}
.faq-min-hidden p:last-child,
.faq-min-hidden ul:last-child {
	margin: 0;
}

/************************* section *************************/
.section {
	margin: 0 0 max(96px, 200rem);
}
.title-block {
	margin: 0 0 max(32px, 50rem);
}
.title-center {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	text-align: center;
}
.title-center-text {
	max-width: max(730px, 790rem);
}
/************************* inner-page *************************/
.inner-page {
	padding: max(70px, 168rem) 0 0
}
.inner-page h1 {
	font-size: max(36px, 100rem);
}
.breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	padding: 0;
	margin: 0 0 max(40px, 60rem);
}
.breadcrumbs li {
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 0;
	margin: 0;
	color: var(--green);
	font-size: 16px;
	line-height: 125%;
	list-style: none;
}
.breadcrumbs li::before {
	display: block;
	content: '/';
	color: var(--jade);
}
.breadcrumbs li:last-child::before {
	color: var(--green);
}
.breadcrumbs li:first-child::before {display: none;}
.breadcrumbs a {
	position: relative;
	color: var(--jade);
	text-decoration: none;
}
.breadcrumbs a::after {
	position: absolute;
	left: 0;
	bottom: -1px;
	content: '';
	height: 1px;
	background: var(--jade);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.breadcrumbs a:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}

/************************* blog *************************/
.blog {
	margin: 0 0 max(96px, 160rem);
}
.blog-top {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0 0 max(32px, 60rem);
}
.blog-top-text {
	max-width: max(420px, 460rem);
}
.blog-line {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 40px;
	margin: 0 0 max(32px, 40rem);
}
.blog-line .search .wpcf7-form-control-wrap input {
	height: 40px;
	padding-left: 20px;
	padding-right: 50px;
	background: rgba(173, 189, 192, 0.2);
	border-color: transparent;
}
.blog-line .search .wpcf7-form-control-wrap input:focus {
	background: rgba(173, 189, 192, 0.4);
}
.blog-line .search-button {
	left: auto;
	right: 20px;
}
.tabs {
	position: relative;
}
.tabs-mob {
	display: none;
}
.tabs-line {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.tabs-item {
	min-width: max(190px, 212rem);
	padding: 8px 15px 10px;
	font-weight: 500;
	line-height: 20px;
	letter-spacing: -0.01em;
	color: var(--jade);
	text-decoration: none;
	text-align: center;
	text-transform: capitalize;
	border: 1px solid var(--jade);
	border-radius: 30px;
	transition: all 0.8s var(--ease-out);
}
.tabs-item:hover,
.tabs-item.active {
	color: var(--white_silk);
	background: var(--jade);
}
.blog-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: max(28px, 40rem) 20px;
	margin: 0 0 max(30px, 40rem);
}
.blog-item {
	color: var(--jade);
	text-decoration: none;
}
.blog-img {
	overflow: hidden;
	margin: 0 0 20px;
}
.blog-img img {
	width: 100%;
	height: max(240px, 380rem);
	object-fit: cover;
	transition: all 0.5s ease-in-out;
}
.blog-item:hover .blog-img img {
	transform: scale(1.1);
}
.blog-item h5 {
	max-width: max(350px, 455rem);
	margin: 0 0 16px;
}
.blog-label {
	display: inline-block;
	vertical-align: top;
	padding: 6px 16px;
	margin: 0 0 10px;
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
	background: rgba(173, 189, 192, 0.6);
	border-radius: 100px;
}
.blog-text {
	max-width: max(440px, 490rem);
	margin: 0 0 20px;
}
.blog-date {
	opacity: 0.6;
}
.blog .button {
	max-width: 380px;
}

/************************* banner *************************/
.banner {
	position: relative;
}
.banner-wrap {
	position: relative;
	z-index: 20;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: var(--white_silk);
	height: max(680px, 950rem);
	padding: max(60px, 100rem) 0;
	max-height: 100dvh;
}
.top-left .banner-wrap {
	align-items: flex-start;
	justify-content: flex-start;
	text-align: left;
}
.top-left .banner-wrap h2 {
	max-width: max(300px, 590rem);
}
.banner-green .banner-wrap {
	color: var(--jade);
}
.banner-green .banner-bg::after {
	display: none;
}
.banner-green.top-left .banner-wrap h2 {
    max-width: max(240px, 480rem);
}
.diagonal-banner .banner-wrap {
	justify-content: space-between;
	align-items: stretch;
	text-align: left;
}
.diagonal-banner .banner-text {
	margin-left: auto;
}
.diagonal-banner .banner-bg::after {
	display: none;
}
.banner-bg {
	position: absolute;
	inset: 0;
}
.banner-video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.banner-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.banner-bg::after {
	position: absolute;
	inset: 0;
	content: '';
	background: rgba(0, 0, 0, 0.6);
}
.banner-wrap h2 {
	margin: 0 0 20px;
}
.banner-title-1 {
	max-width: max(400px, 770rem);
}
.banner-text {
	margin: 0 0 max(32px, 40rem);
	max-width: max(580px, 640rem);
}
.banner-text-2 {
	max-width: max(410px, 450rem);
}
.banner-text-3 {
	max-width: max(340px, 380rem);
}
.banner-text-4 {
	max-width: max(460px, 520rem);
}
.banner-text-5 {
	max-width: max(370px, 410rem);
}
.banner-text:last-child {margin-bottom: 0;}
.banner-form-block {
	display: flex;
	gap: 15px;
}
.banner-form-block .wpcf7-form-control-wrap {
	flex: 1;
}
.banner-form-thanks {
	display: none;
	font-size: 16px;
	line-height: 100%;
	color: var(--jade);
}
@media screen and (min-width: 1024px) {
	.banner-wrap .button {
		color: var(--jade);
		background: var(--white_silk);
		border: 1px solid var(--white_silk);
	}
	.banner-wrap .button:hover {
		color: var(--white_silk);
		background: transparent;
	}
	.banner-form-block .wpcf7-form-control-wrap input {
		margin: 0;
		color: var(--white_silk);
		border-color: var(--white_silk);
	}
	.banner-form-block .wpcf7-form-control-wrap input:focus {
		border-color: var(--white_silk);
	}
	.banner-form-block .wpcf7-form-control-wrap input::-webkit-input-placeholder {color: rgba(255, 255, 255, 0.4);}
	.banner-form-block .wpcf7-form-control-wrap input:-moz-placeholder {color: rgba(255, 255, 255, 0.4); opacity: 1;}
	.banner-form-block .wpcf7-form-control-wrap input::-moz-placeholder {color: rgba(255, 255, 255, 0.4); opacity: 1;}
	.banner-form-block .wpcf7-form-control-wrap input:-ms-input-placeholder {color: rgba(255, 255, 255, 0.4);}
	.banner-form-thanks {
		color: var(--white_silk);
	}
	
}
@media screen and (min-width: 767px) {
	.banner-form-block .wpcf7-form-control-wrap input {
		margin: 0;
	}
	.banner-form-block .button {
		width: 146px;
		min-width: 146px;
		padding: 13px 10px 15px;
	}
}

/************************* cost *************************/
.cost-section h2 {
	margin: 0 0 max(32px, 50rem);
	text-align: center;
}
.cost-wrap {
	max-width: max(720px, 925rem);
	margin: 0 auto;
}
.cost-wrap h4 {
	margin: 0 20px 20px;
	font-size: max(20px, 24rem);
}
.cost-header {
	display: flex;
	gap: 20px;
	margin: 0 0 max(32px, 40rem);
	padding: max(16px, 20rem);
	color: var(--white_silk);
	background: var(--jade);
}
.cost-part {
	margin: 0 0 max(16px, 40rem);
}
.cost-part:last-child {
	margin: 0;
}
.cost-line {
	display: flex;
	gap: 20px;
	padding: max(16px, 20rem);
}
.cost-line:nth-child(2n + 1) {
	background: var(--green);
}
.cost-text {
	flex: 1;
}
.cost-time {
	width: 20%;
	min-width: 20%;
}
.cost-price {
	width: max(60px, 87rem);
	min-width: max(60px, 87rem);
}
.cost-note {
	padding: max(16px, 20rem);
}

/************************* info *************************/
.info {
	display: flex;
}
.info-col {
	position: relative;
	width: 50%;
	padding: max(40px, 113rem) max(16px, 180rem);
	background: var(--green);
}
.info-col:first-child {
	border-right: 1px solid var(--jade);
}
.info-col h5 {
	margin: 0 0 max(10px, 15rem);
	font-size: max(20px, 28rem);
}
.info-text p {
	margin: 0 0 10px;
}
.info-text p:last-child {
	margin: 0;
}
.info-text ul {
	padding: 0 0 0 20px;
	margin: 0 0 10px;
}
.info-text ul li {
	list-style-type: disc;
}
.info-text ul:last-child {
	margin: 0;
}
.info-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.info-green .info-col {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: max(400px, 586rem);
	color: var(--white_silk);
	background: var(--jade);
	border-bottom: 1px solid var(--white_silk);
}

/************************* review *************************/
.review h2 {
	margin: 0 0 max(32px, 50rem);
	text-align: center;
}
.line-tabs {
	margin: 0 0 20px;
}
.line-tabs-mob {
	display: none;
}
.line-tabs-block {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
	padding: 20px 0;
	border-top: 1px solid rgba(34, 58, 58, 0.4);
	border-bottom: 1px solid rgba(34, 58, 58, 0.4);
}
.line-tabs-item {
	font-size: max(16px, 24rem);
	line-height: 120%;
	color: var(--jade);
	text-decoration: none;
	opacity: 0.6;
}
.line-tabs-item:hover,
.line-tabs-item.active {
	opacity: 1;
}
.review-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin: 0 0 max(28px, 40rem);
}
.review-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: max(20px, 30rem);
	background: var(--gray);
}
.review-label {
    display: inline-block;
    vertical-align: top;
    padding: 6px 16px;
    margin: 0 0 20px;
    font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
	color: var(--white_silk);
	text-decoration: none;
    background: var(--pine);
    border-radius: 100px;
	transition: all 0.8s var(--ease-out);
}
.review-text {
	margin: 0 0 max(40px, 60rem);
	font-size: max(16px, 24rem);
	line-height: 120%;
}
.review-author {
	display: flex;
	align-items: center;
	gap: max(12px, 17rem);
	margin: auto 0 0;
}
.review-ava {
	width: max(60px, 90rem);
	height: max(60px, 90rem);
}
.review-ava img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}
.review-info {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.review-name {
	font-size: max(18px, 20rem);
	line-height: 103%;
	letter-spacing: 0.05em;
	text-transform: capitalize;
}
.review-status {
	opacity: 0.5;
}

/************************* faq *************************/
.faq h2 {
	margin: 0 0 max(32px, 50rem);
	text-align: center;
}
.faq-list {
	border-bottom: 1px solid rgba(34, 58, 58, 0.2);
}
.faq-item {
	display: flex;
	align-items: flex-start;
	gap: 30px;
	padding-right: 44px;
	position: relative;
	border-top: 1px solid rgba(34, 58, 58, 0.2);
}
.faq-top {
	width: 55%;
	min-width: 55%;
	padding: 30px 0;
	font-weight: 500;
	font-size: max(20px, 32rem);
	line-height: 103%;
	letter-spacing: -0.01em;
	color: var(--jade);
	text-decoration: none;
}
.faq-top::before {
	position: absolute;
	right: 0;
	top: 30px;
	width: 24px;
	height: 24px;
	content: '';
}
.faq-top::after {
	position: absolute;
	right: 0;
	top: 30px;
	width: 24px;
	height: 24px;
	content: '';
	background: url(../images/plus.svg) 50% 50% no-repeat;
}
.faq-top.active::after {
	top: 41px;
	height: 2px;
}
.faq-hidden {
	display: none;
	width: 45%;
	padding: 30px 0;
	max-width: max(520px, 580rem);
}
.faq-hidden.vis {
	display: block;
}
.faq-hidden p {
	margin: 0 0 10px;
}
.faq-hidden ul {
	padding: 0 0 0 20px;
	margin: 0 0 10px;
}
.faq-hidden ul li {
	list-style-type: disc;
}
.faq-hidden p:last-child,
.faq-hidden ul:last-child {
	margin: 0;
}
.faq-img img {
	max-width: 100%;
}
.faq-hidden a {
	color: var(--jade);
}

/************************* faq *************************/
.faq-green {
	padding: max(96px, 150rem) 0 max(80px, 160rem);
	color: var(--white_silk);
	background: var(--jade);
}
.faq-green .faq-list {
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.faq-green .faq-item {
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}
.faq-green .faq-top {
	color: var(--white_silk);
}
.faq-green .faq-top::after {
	background: url(../images/plus-white.svg) 50% 50% no-repeat;
}

/************************* gallery *************************/
.gallery {
	width: calc(100% + 50vw - 50%);
}
.gallery-slide {
	padding: 0 20px 0 0;
}
.gallery-slide img {
	width: max(312px, 1340rem);
	height: max(175px, 760rem);
	object-fit: cover;
}
.gallery .slick-arrow {
	position: absolute;
	top: min(-56px, -74rem);
	right: max(16px, 50rem);
}
.gallery .slick-prev {
	margin-right: 39px;
}
.gallery .slick-dots {
    padding-right: max(16px, 50rem);
}
.slick-dots {
	display: flex;
	justify-content: center;
	gap: max(8px, 20rem);
	padding: max(15px, 30rem) 0 0;
}
.slick-dots button {
	display: block;
	width: max(5px, 10rem);
	height: max(5px, 10rem);
	font-size: 0;
	background: var(--jade);
	border-radius: 50%;
	opacity: 0.2;
	cursor: pointer;
}
.slick-dots button:hover,
.slick-dots .slick-active button {
	opacity: 1;
}

/************************* cure *************************/
.cure h2 {
	margin: 0 0 20px;
	text-align: center;
}
.cure-text {
	max-width: max(870px, 960rem);
	margin: 0 auto max(24px, 50rem);
	text-align: center;
}
.cure-text p {
	margin: 0 0 10px;
}
.cure-text p:last-child {
	margin: 0;
}
.cure-text span {
	white-space: nowrap;
}
.cure-block {
	display: flex;
	background: var(--jade);
}
.cure-img {
	width: 50%;
	min-height: max(394px, 1000rem);
	max-height: 100dvh;
}
.cure-video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.cure-content {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50%;
	padding: max(60px, 100rem) max(16px, 50rem);
	color: var(--white_silk);
	background: var(--jade);
}
.cure-gift {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	max-width: max(340px, 445rem);
	text-align: center;
}
.cure-gift-img img {
	width: 100%;
}
.cure-gift .button {
	max-width: none;
}

/************************* facility *************************/
.facility {
	position: relative;
	height: max(600px, 1080rem);
	max-height: 100dvh;
	display: flex;
	align-items: center;
	justify-content: center;
}
.facility-top {
	position: relative;
	z-index: 10;
	display: flex;
	flex-direction: column;
	gap: 30px;
	text-align: center;
}
.facility-text {
	max-width: max(600px, 680rem);
}
.facility-img {
	position: absolute;
}
.facility-1 {
	top: 0;
	left: 22.5%;
	width: max(180px, 268rem);
}
.facility-2 {
	top: 0;
	right: 0;
	width: max(200px, 420rem);
}
.facility-3 {
	bottom: 0;
	left: 0;
	width: max(200px, 420rem);
}
.facility-4 {
	bottom: 0;
	right: 10.5%;
	width: max(240px, 399rem);
}

/************************* place *************************/
.place {
	display: flex;
	height: max(720px, 1000rem);
	max-height: 100dvh;
	color: var(--white_silk);
	background: var(--jade);
}
.place-content {
	display: flex;
	flex-direction: column;
	width: 50%;
	padding: max(100px, 168rem) max(16px, 50rem) max(40px, 50rem);
}
.place-img {
	position: relative;
	width: 50%;
}
.place-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.hero .place-content .breadcrumbs {
	position: relative;
	top: auto;
	left: auto;
	margin: 0 0 max(29px, 124rem);
}
.place-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}
.place-top h1 {
	margin: 0 0 20px;
}
.place-top-text {
	max-width: max(500px, 560rem);
	margin: 0 0 max(32px, 40rem);
	color: rgba(255, 255, 255, 0.6);
}
.place-info {
	margin: auto 0 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: max(12px, 20rem);
}
.place-info-item {
	display: flex;
	align-items: center;
	gap: 10px;
	color: rgba(255, 255, 255, 0.6);
}
.place-info-value a {
	color: rgba(255, 255, 255, 0.6);
	text-decoration: none;
}
.place-info-value a:hover {
	color: var(--white_silk);
}
.metro {
	display: flex;
	align-items: center;
	gap: 6px;
}
.metro-item {
	display: flex;
	align-items: center;
	justify-content: center;
	width: max(24px, 40rem);
	height: max(24px, 40rem);
	border-radius: 100%;
	color: var(--jade);
	line-height: 20px;
	background: #fdcb0a;
}
.metro-violet {
	color: var(--white_silk);
	background: #b933ac;
}
.metro-orange {
	color: var(--white_silk);
	background: #fc631c;
}
.place-address {
	position: relative;
	min-height: 24px;
	padding: 0 0 0 32px;
	line-height: 24px;
	background: url(../images/loc.svg) 0 0 no-repeat;
}
.place-address a {
	color: rgba(255, 255, 255, 0.6);
}
.place-address a:hover {
	color: var(--white_silk);
	text-decoration: underline;
}

/************************* resident *************************/
.resident {
	padding: max(60px, 120rem) 0;
	margin: 0 0 max(96px, 200rem);
	color: var(--white_silk);
	background: var(--jade);
}
.resident-slider {
	margin: 0 min(-16px, -50rem);
}
.slick-center .resident-item {
	transform: scale(1);
}
.resident-item {
	width: max(480px, 750rem);
	padding: max(20px, 40rem);
	background: rgba(237, 238, 238, 0.2);
	transform: scale(0.59);
	transform-origin: 50% 0;
	transition: all 0.5s ease-in-out;
}
.resident-top {
	display: flex;
	align-items: flex-start;
	gap: max(28px, 40rem);
	padding: 0 0 max(10px, 40rem);
	margin: 0 0 max(10px, 40rem);
	border-bottom: 1px solid var(--pine);
}
.resident-ava {
	width: max(120px, 242rem);
	height: max(120px, 242rem);
}
.resident-ava img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}
.resident-info {
	flex: 1;
}
.resident-info h3 {
	margin: 0 0 max(12px, 20rem);
	font-size: max(18px, 32rem);
}
.resident-status {
	font-weight: 500;
	font-size: max(16px, 24rem);
	line-height: 120%;
	letter-spacing: -0.01em;
	opacity: 0.6;
}
.resident-main {
	position: relative;
	padding: 0 0 0 max(80px, 282rem);
}
.resident-quote {
	margin: 0 0 max(16px, 20rem);
	font-weight: 500;
	font-size: max(16px, 20rem);
	line-height: 103%;
	letter-spacing: -0.01em;
	opacity: 0.8;
}
.resident-text {
	opacity: 0.8;
}
.resident-num {
	position: absolute;
	left: 0;
	bottom: 0;
	font-weight: 500;
	font-size: max(16px, 20rem);
	line-height: 103%;
	letter-spacing: -0.01em;
}
.resident-slider .slick-arrow {
	position: absolute;
	top: min(-56px, -74rem);
	right: max(16px, 50rem);
	background: url(../images/slider-arrow-white.svg) 50% 50% no-repeat;
}
.resident-slider .slick-prev {
	margin-right: 39px;
}

/************************* locations *************************/
.loc-top {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0 0 max(32px, 40rem);
}
.loc-top h1 {
	max-width: max(320px, 900rem);
}
.loc-top-text {
    max-width: max(360px, 400rem);
}
.loc-block {
	border-bottom: 1px solid rgba(23, 43, 35, 0.4);
}
.loc-item {
	display: flex;
	gap: 20px;
	position: relative;
	padding: max(24px, 30rem) 0;
	padding-left: max(80px, 204rem);
	border-top: 1px solid rgba(23, 43, 35, 0.4);
}
.loc-num {
	position: absolute;
	top: max(24px, 30rem);
	left: 0;
	font-size: max(20px, 24rem);
	line-height: 103%;
}
.loc-item h3 {
	width: max(200px, 400rem);
	min-width: max(200px, 400rem);
}
.loc-info {
	flex: 1;
	max-width: max(440px, 510rem);
	display: flex;
	flex-direction: column;
	gap: 20px;
	line-height: 24px;
	color: rgba(23, 43, 35, 0.6);
}
.loc-address {
	position: relative;
	min-height: 24px;
	padding: 0 0 0 32px;
	line-height: 24px;
	background: url(../images/loc-green.svg) 0 0 no-repeat;
}
.loc-address a {
	color: rgba(23, 43, 35, 0.6);
}
.loc-address a:hover {
	text-decoration: underline;
	color: var(--jade);
}
.loc-phone {
	position: relative;
	margin: 0 auto 0 0;
	color: rgba(23, 43, 35, 0.6);
	text-decoration: none;
}
.loc-phone:hover {
	color: var(--jade);
}
.loc-phone::after {
	position: absolute;
	left: 0;
	bottom: 1px;
	content: '';
	height: 1px;
	background: var(--jade);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.loc-phone:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}
.more-link {
	font-weight: 500;
	font-size: 16px;
	line-height: 103%;
	letter-spacing: 0.05em;
	text-transform: capitalize;
	color: var(--pine);
	transition: all 0.3s linear;
}
.more-link:hover {
	color: var(--jade);
	text-decoration: underline;
}
.loc-img {
	overflow: hidden;
	width: max(320px, 389rem);
	min-width: max(320px, 389rem);
	margin: 0 0 0 auto;
}
.loc-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.5s ease-in-out;
}
.loc-img:hover img {
	transform: scale(1.1);
}

/************************* insurance *************************/
.insurance {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.insurance-content {
	width: 50%;
}
.insurance-wrap {
	max-width: max(520px, 620rem);
}
.insurance-img {
	width: 44%;
}
.insurance-img img {
	width: 100%;
	height: max(360px, 704rem);
	object-fit: cover;
}
.insurance-content h2 {
	margin: 0 0 20px;
}
.insurance-text {
	margin: 0 0 30px;
}
.insurance-text p {
	margin: 0 0 10px;
}
.insurance-text p:last-child {
	margin: 0;
}
.insurance-button {
	display: flex;
	gap: 10px;
}
.insurance-button .button {
	flex: 1;
	max-width: none;
}

/************************* article *************************/
.resources {
	padding: max(60px, 120rem) 0;
	margin: 0 0 max(96px, 200rem);
	color: var(--white_silk);
	background: var(--jade);
}
.resources-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	margin: 0 0 max(32px, 50rem);
	text-align: center;
}
.resources-top-text {
	max-width: max(640px, 720rem);
}
.resources-block {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}
.resources-side {
	width: 44%;
	display: flex;
	flex-direction: column;
	gap: max(32px, 72rem);
	padding: 30px 0 0;
}
.resources-side h3 {
	max-width: max(300px, 430rem);
}
.resources-img img {
	width: 100%;
}
.resources-content {
	width: 44%;
}
.resources .faq-item {
	flex-direction: column;
	align-items: stretch;
	gap: 0;
	border-top: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.resources .faq-top {
	width: auto;
    min-width: 1px;
	font-size: max(20px, 24rem);
	color: var(--white_silk);
}
.resources .faq-top::after {
	background: url(../images/plus-white.svg) 50% 50% no-repeat;
}
.resources .faq-hidden {
    width: auto;
    padding: 0 0 30px;
    max-width: max(480px, 600rem);
}
.resources-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}
.resources-item {
	position: relative;
	padding: 0 0 0 max(22px, 27rem);
}
.resources-item::before {
	position: absolute;
	top: 0;
	left: max(3px, 6rem);
	content: '•';
}

/************************* checkout *************************/
.checkout h1 {
	margin: 0 0 max(32px, 80rem);
}
.checkout-block {
	display: flex;
	align-items: flex-start;
	flex-direction: row-reverse;
	justify-content: space-between;
}
.checkout-cart {
	width: 48%;
	max-width: max(640px, 740rem);
}
.checkout-form {
	width: 48%;
	max-width: max(700px, 800rem);
}
.checkout-form h3 {
	margin: 0 0 max(20px, 40rem);
}
.payment {
	margin: 0 0 max(32px, 50rem);
}
.payment .form-box {
	padding: 0;
}
.checkout-button .button {
	max-width: none;
}
.payment-radio-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 0;
	border-top: 1px solid var(--green);
}
.payment-logo {
	display: flex;
	align-items: center;
	gap: 25px;
}
.checkout-result-item {
	display: flex;
	justify-content: space-between;
	padding: max(20px, 25rem) 0;
	border-top: 1px solid var(--green);
}
.checkout-sum {
	font-size: max(16px, 24rem);
	line-height: 120%;
}
.promocode {
	padding: 25px 0 max(20px, 100rem);
	border-top: 1px solid var(--green);
}
.promocode-wrap {
	display: flex;
	gap: 8px;
}
.promocode-wrap .wpcf7-form-control-wrap {
	flex: 1;
}
.promocode-wrap .wpcf7-form-control-wrap input {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	border-bottom: 1px solid rgba(100, 125, 122, 0.6);
}
.promocode-wrap .button {
	width: max(140px, 187rem);
	min-width: max(140px, 187rem);
}
.checkout-cart h3 {
	margin: 0 0 20px;
}
.cart-item {
	display: flex;
	align-items: flex-start;
	gap: max(16px, 25rem);
	margin: 0 0 24px;
	padding: 24px 0 0;
	border-top: 1px solid var(--green);
}
.cart-item-img {
	width: max(84px, 115rem);
	min-width: max(84px, 115rem);
}
.cart-item-img img {
	width: 100%;
	object-fit: cover;
}
.cart-item-content {
	flex: 1;
}
.cart-item-line {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 0;
	border-top: 1px solid var(--green);
}
.cart-delete {
	padding: 10px 0 0;
	border-top: 1px solid var(--green);
}
.cart-delete a {
	font-weight: 500;
	font-size: 16px;
	line-height: 103%;
	letter-spacing: 0.05em;
	text-transform: capitalize;
	color: var(--pine);
}
.cart-delete a:hover {
	color: var(--jade);
	text-decoration: underline;
}
.cart-item-top {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 0 0 10px;
}
.cart-item-name {
	flex: 1;
	font-weight: 500;
	font-size: max(16px, 20rem);
	line-height: 103%;
	letter-spacing: -0.01em;
}
.cart-item-price {
	font-weight: 500;
	font-size: 13px;
	line-height: 16px;
	text-transform: uppercase;
}
.cart-item-text {
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
}
.quantity {
	display: flex;
}
.plus, .minus {
	position: relative;
	width: 24px;
	height: 24px;
}
.plus::after, .minus::after {
	position: absolute;
	content: '';
	background: url(../images/plus.svg) 50% 50% no-repeat;
}
.plus::after {
	inset: 0;
}
.minus::after {
	top: 11px;
	left: 0;
	width: 24px;
	height: 2px;
}
.quantity-input {
	width: 28px;
	height: 24px;
	font-size: 16px;
	letter-spacing: 0.05em;
	text-align: center;
}
.dropdown {
	position: relative;
}
.dropdown-top {
	position: relative;
	display: inline-block;
	vertical-align: top;
	margin: 0 20px 0 0;
	font-weight: 500;
	font-size: 16px;
	line-height: 20px;
	letter-spacing: 0.05em;
	text-transform: capitalize;
	color: var(--jade);
	text-decoration: none;
}
.dropdown-top::before {
	position: absolute;
	top: 2px;
	right: -20px;
	content: '';
	width: 16px;
	height: 16px;
	background: url(../images/dropdown-arrow.svg) 50% 50% no-repeat;
	transition: all 0.3s ease-out;
}
.dropdown-top.active::before {
	transform: rotate(180deg);
}
.dropdown-top::after{
	position: absolute;
	left: 0;
	bottom: 0px;
	content: '';
	height: 1px;
	background: var(--jade);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.dropdown-top:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}
.dropdown-hidden {
	display: none;
	position: absolute;
	z-index: 20;
	top: calc(100% + 6px);
	right: 0;
	padding: max(20px, 24rem);
	background: var(--jade);
}
.dropdown-hidden li {margin: 0 0 max(4px, 8rem);}
.dropdown-hidden li:last-child {margin: 0;}
.dropdown-hidden a {
	position: relative;
	line-height: 26px;
	color: var(--white_silk);
	text-decoration: none;
	white-space: nowrap;
}
.dropdown-hidden a::after{
	position: absolute;
	left: 0;
	bottom: -2px;
	content: '';
	height: 1px;
	background: var(--white_silk);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.dropdown-hidden a:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}

/************************* checkout-empty *************************/
.checkout-empty {
	padding: 0 0 max(100px, 200rem);
}
.checkout-empty h1 {
	margin: 0 0 max(32px, 40rem);
}
.checkout-empty h3 {
	margin: 0 0 max(32px, 40rem);
	font-size: max(18px, 32rem);
	color: var(--pine);
}

/************************* cart *************************/
.cart-bg {
	position: fixed;
	inset: 0;
	z-index: 800;
	background: rgb(0, 0, 0);
	opacity: 0;
	visibility: hidden;
    transition: opacity .4s ease-in-out, visibility .4s ease-in-out;
}
.vis .cart-bg {
	opacity: 0.3;
	visibility: visible;
}
.cart-block {
	position: fixed;
	top: 0;
	right: min(-570px, -820rem);
	bottom: 0;
	z-index: 850;
	width: max(560px, 810rem);
	padding: 24px 0 170px 20px;
	background: var(--white_silk);
	transition: all .3s ease-in-out 0.1s;
}
.vis .cart-block {
	right: 0;
}
.cart-block-wrap {
	position: relative;
	height: 100%;
	overflow-y: auto;
	padding-right: max(20px, 50rem);
}
.cart-close {
	position: absolute;
	top: 4px;
	right: max(20px, 50rem);
}
.cart-close img {
	display: block;
	transition: all 0.3s linear;
}
.cart-close:hover img {
	opacity: 0.5;
}
.cart-block h2 {
	margin: 0 0 max(23px, 40rem);
}
.cart-all {
	overflow: hidden;
}
.cart-bottom {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100;
	padding: 20px max(20px, 50rem) 30px 20px;
	background: var(--white_silk);
}
.cart-bottom .button {
	max-width: none;
}
.cart-total {
	display: flex;
	justify-content: space-between;
	padding: 8px 0;
	margin: 0 0 30px;
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
	border-top: 1px solid var(--green);
	border-bottom: 1px solid var(--green);
}
.cart-prod {
	padding: 24px 0 0;
	border-top: 1px solid var(--green);
}
.cart-prod h4 {
	margin: 0 0 24px;
	font-size: max(20px, 24rem);
}
.cart-prod-block {
	margin: 0 min(-20px, -50rem) 0 0;
}
.cart-prod-item {
	width: 205px;
	padding: 0 25px 0 0;
}
.cart-prod-item a {
	color: var(--jade);
	text-decoration: none;
}
.cart-prod-img {
	width: 180px;
	height: 190px;
	margin: 0 0 10px;
}
.cart-prod-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.cart-prod-name {
	margin: 0 0 10px;
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
}
.cart-prod-price {
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
	color: var(--pine);
}



/************************* visit *************************/
.visit {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.visit-img {
	width: 55%;
	height: max(460px, 565rem);
}
.visit-video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.visit-content {
	width: 41%;
}
.visit-content h2 {
	max-width: max(320px, 600rem);
	margin: 0 0 20px;
}
.visit-text {
	max-width: max(550px, 610rem);
	margin: 0 0 30px;
}

/************************* examination *************************/
.examination {
	display: flex;
	flex-direction: row-reverse;
	color: var(--white_silk);
	background: var(--jade);
}
.examination-content {
	width: 50%;
	padding: max(60px, 140rem) max(16px, 50rem);
}
.examination-img {
	position: relative;
	width: 50%;
}
.examination-img img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.examination-wrap {
	display: flex;
	flex-direction: column;
	gap: 20px;
	align-items: center;
	text-align: center;
}
.examination-wrap h3 {
	max-width: max(300px, 600rem);
	font-size: max(18px, 32rem);
}
.examination-photo {
	max-width: max(250px, 445rem);
}
.examination-photo img {
	width: 100%;
}
.examination-text {
	max-width: max(650px, 730rem);
}

/************************* ai *************************/
.ai {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.ai-side {
	width: 48%;
	max-width: max(400px, 593rem);
}
.ai-side-img {
	margin: 0 0 20px;
}
.ai-side-img img {
	width: 100%;
	min-height: 360px;
	object-fit: cover;
}
.ai-side h3 {
	margin: 0 0 max(10px, 20rem);
}
.ai-text {
	max-width: max(450px, 510rem);
}
.ai-img {
	width: 48%;
	max-width: max(600px, 798rem);
}
.ai-img img {
	width: 100%;
	object-fit: cover;
}

/************************* serv *************************/
.serv-block {
	margin: 0 0 max(32px, 50rem);
	border-bottom: 1px solid var(--pine);
}
.serv-block:last-child {
	margin: 0;
}
.serv-item {
	display: flex;
	gap: 20px;
	position: relative;
	padding: max(20px, 30rem) 0;
	border-top: 1px solid var(--pine);
}
.serv-title {
	width: max(300px, 600rem);
	min-width: max(300px, 600rem);
}
.serv-title h3 {
	max-width: max(200px, 300rem);
}
.serv-info {
	flex: 1;
	max-width: max(380px, 440rem);
	display: flex;
	flex-direction: column;
	gap: 20px;
	line-height: 24px;
	color: rgba(23, 43, 35, 0.6);
}
.serv-text p {
	margin: 0 0 10px;
}
.serv-text p:last-child {margin: 0;}
.serv-links {
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: flex-start;
}
.serv-links a {
	color: rgba(23, 43, 35, 0.6);
}
.serv-links a:hover {
	color: var(--jade);
	text-decoration: underline;
}
.serv-img {
	overflow: hidden;
	width: max(340px, 440rem);
	min-width: max(340px, 440rem);
	height: max(180px, 250rem);
	margin: 0 0 0 auto;
}
.serv-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.5s ease-in-out;
}
.serv-img:hover img {
	transform: scale(1.1);
}

/************************* goal *************************/
.goal {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
}
.goal-img {
	width: 55%;
	height: max(360px, 580rem);
}
.goal-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.goal-content {
	max-width: 41%;
	width: max(400px, 590rem);
}
.goal-content h3 {
	max-width: max(300px, 450rem);
	margin: 0 0 20px;
}
.goal-text {
	max-width: max(390px, 450rem);
}

/************************* tradition *************************/
.tradition {
	display: flex;
	gap: 20px;
	padding: 20px 0 0;
	border-top: 1px solid rgba(23, 43, 35, 0.4);
}
.tradition-col {
	flex: 1;
}
.tradition-col img {
	width: 100%;
}
.tradition-col h3 {
	max-width: max(300px, 450rem);
	margin: 0 0 20px;
}
.tradition-text {
	max-width: max(390px, 450rem);
}

/************************* balance *************************/
.balance-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	margin: 0 0 max(32px, 50rem);
	text-align: center;
}
.balance-top h2 {
	max-width: max(400px, 800rem);
}
.balance-text {
	max-width: max(450px, 500rem);
}
.balance-block {
	display: flex;
	justify-content: space-between;
	max-width: max(800px, 1132rem);
	margin: 0 auto;
}
.balance-col {
	width: calc(50% - 12px);
}
.balance-img {
	margin: 0 0 20px;
}
.balance-img img {
	width: 100%;
	object-fit: cover;
}

/************************* journey *************************/
.journey {
	display: flex;
	justify-content: space-between;
	gap: 30px;
}
.journey-img {
	width: 55%;
	height: max(360px, 564rem);
}
.journey-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.journey-content {
	display: flex;
	flex-direction: column;
	max-width: 41%;
	width: max(400px, 590rem);
}
.journey-content h2 {
	max-width: max(300px, 480rem);
	margin: 0 0 32px;
}
.journey-content h3 {
	max-width: max(300px, 450rem);
	margin: auto 0 20px;
}
.journey-text {
	max-width: max(460px, 530rem);
}

/************************* legend *************************/
.legend {
	padding: max(60px, 120rem) 0;
	color: var(--white_silk);
	background: var(--jade);
}
.legend-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 20px;
	margin: 0 0 max(32px, 50rem);
}
.legend-block {
	position: relative;
	display: flex;
}
.legend-side {
	width: 33.5%;
	padding: 0 30px 0 0;
}
.legend-side h3 {
	max-width: max(260px, 440rem);
	margin: 0 0 20px;
}
.legend-side-text {
	max-width: max(300px, 330rem);
	color: var(--green);
}
.legend-content {
	width: 66.5%;
}
.legend-slider {
	width: calc(100% + max(16px, 50rem));
}
.legend-slide {
	padding: 0 20px 0 0;
}
.legend-item {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: max(280px, 440rem);
}
.legend-img img {
	width: 100%;
}
.legend-block .slick-arrow {
	position: absolute;
	left: 0;
	bottom: 0;
	background: url(../images/slider-arrow-white.svg) 50% 50% no-repeat;
}
.legend-block .legend-next {
	margin-left: 39px;
}
.legend-prev {
	transform: scale(-1, 1);
}
.legend-text {
	max-width: max(360px, 410rem);
	color: var(--green);
}

/************************* article *************************/
.article {
	margin: 0 0 max(96px, 160rem);
}
.article h1 {
	max-width: max(500px, 1200rem);
	margin: 0 0 max(20px, 40rem);
}
.article-date {
	margin: 0 0 20px;
	color: rgba(40, 40, 40, 0.4);
}
.article-author {
	margin: 0 0 max(10px, 40rem);
	color: rgba(40, 40, 40, 0.4);
}
.article-author a {
	position: relative;
	color: var(--jade);
	text-decoration: none;
}
.article-author a::after {
	position: absolute;
	left: 0;
	bottom: -2px;
	content: '';
	height: 1px;
	background: var(--jade);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.article-author a:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}
.article-banner {
	margin: 0 0 max(40px, 60rem);
}
.article-banner img {
	width: 100%;
	height: max(360px, 650rem);
	object-fit: cover;
}
.article-block {
	position: relative;
}
.article-tag {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
    vertical-align: top;
    padding: 6px 16px;
    margin: 0 0 10px;
    font-size: 16px;
    line-height: 120%;
	color: var(--white_silk);
	text-decoration: none;
    letter-spacing: 0.05em;
    background: rgba(173, 189, 192, 0.6);
    border-radius: 100px;
	transition: all 0.8s var(--ease-out);
}
.article-tag:hover {
	background: var(--jade);
}
.article-wrap {
	max-width: max(700px, 1000rem);
	margin: 0 auto max(30px, 60rem);
	font-size: 16px;
}
.article-wrap:last-child {
	margin-bottom: 0;
}
.article-wrap h3 {
	padding: max(30px, 40rem) 0 0;
	margin: 0 0 max(20px, 40rem);
}
.article-wrap h4 {
	padding: 20px 0 0;
	margin: 0 0 max(10px, 20rem);
}
.article-wrap h3 + h4 {
	padding: 0;
}
.article-wrap h3:first-child,
.article-wrap h4:first-child {
	padding: 0;
}
.article-wrap ul {
	padding: 0 0 0 20px;
	margin: 0 0 max(10px, 20rem);
}
.article-wrap ul li {
	list-style-type: disc;
}
.article-wrap ul:last-child {
	margin: 0;
}
.article-big-text {
	margin: 0 0 max(10px, 20rem);
	font-size: max(16px, 24rem);
	line-height: 120%;
}
.article-img {
	display: flex;
	gap: 30px 20px;
	margin: 0 0 max(80px, 100rem);
}
.article-img:last-child {
	margin: 0;
}
.article-img-item img {
	width: 100%;
	height: max(360px, 750rem);
	object-fit: cover;
}
.article-img-slider {
	width: calc(100% + 50vw - 50%);
	margin: 0 0 max(80px, 100rem);
	padding: 0 0 max(54px, 84rem);
}
.article-img-slider:last-child {
	margin: 0;
}
.article-img-slider .article-img-item {
	padding: 0 20px 0 0;
}
.slick-arrow {
	z-index: 10;
	width: 24px;
	height: 24px;
	font-size: 0;
	background: url(../images/slider-arrow.svg) 50% 50% no-repeat;
	background-size: contain;
	cursor: pointer;
	transition: all 0.8s var(--ease-out);
}
.slick-arrow:hover {
	opacity: 0.5;
}
.slick-prev {
	transform: scale(-1, 1);
}
.article-img-slider .slick-arrow {
	position: absolute;
	bottom: 0;
	left: 50%;
}
.article-img-slider .slick-prev {
	margin-left: -32px;
}
.article-img-slider .slick-next {
	margin-left: 8px;
}

/************************* policy *************************/
.policy {
	margin: 0 0 max(96px, 160rem);
}
.policy h1 {
	padding: 0 0 max(32px, 70rem);
	margin: 0 0 max(20px, 60rem);
	border-bottom: 1px solid rgba(34, 58, 58, 0.4);
}
.policy-note {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0.6;
}

/************************* page404 *************************/
.page404 {
	padding: max(135px, 218rem) 0;
	text-align: center;
}
.page404-text {
	margin: 0 0 max(60px, 100rem);
	font-weight: 300;
	letter-spacing: -0.03em;
	text-transform: uppercase;
}
.page404 .button {
	max-width: 300px;
}
.page404-line {
	overflow: hidden;
	margin: 0 min(-16px, -50rem) max(30px, 100rem);
}
.page404-line-wrap {
	display: flex;
	align-items: center;
	gap: max(20px, 62rem);
	padding: 0 max(10px, 31rem);
}
.page404-num {
	font-size: max(190px, 350rem);
	line-height: 102%;
	letter-spacing: -0.03em;
}
.page404-img {
	width: max(312px, 630rem);
}

/************************* footer *************************/
.footer {
	padding: max(40px, 80rem) 0 30px;
	color: var(--white_silk);
	background: var(--jade);
}
.footer-block {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	padding: 0 0 max(40px, 60rem);
}
.footer-left {
	max-width: 382px;
}
.footer-logo {
	display: flex;
	align-items: center;
	gap: max(10px, 34rem);
	margin: 0 0 max(40px, 60rem);
}
.footer-logo-img {
	padding-right: max(11px, 35rem);
	border-right: 1px solid var(--white_silk);
}
.footer-logo-img img {
	width: max(28px, 90rem);
}
.footer-logo-content {
	display: flex;
	flex-direction: column;
	gap: max(3px, 9rem);
}
.footer-logo-title {
	font-family: 'Big Shoulders';
	font-weight: 400;
	font-size: max(13px, 41rem);
	line-height: 120%;
	letter-spacing: 0.65em;
	text-transform: uppercase;
}
.footer-logo-text {
	font-size: max(5px, 16rem);
	line-height: 110%;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.footer-info-title {
	margin: 0 0 10px;
	font-weight: 500;
	font-size: max(20px, 28rem);
	line-height: 103%;
	letter-spacing: -0.01em;
}
.footer-info-text {
	margin: 0 0 20px;
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
}
.footer-info .button {
	max-width: none;
}
.footer-loc-title {
	margin: 0 0 20px;
	font-weight: 500;
	font-size: 20px;
	line-height: 103%;
	letter-spacing: -0.01em;
}
.footer-loc-subtitle {
	margin: 0 0 12px;
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
	color: var(--pine);
}
.footer-loc-list {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
	margin: 0 0 22px;
}
.footer-loc-list:last-child {
	margin: 0;
}
.footer-loc-link {
	position: relative;
	font-weight: 500;
	font-size: 16px;
	line-height: 103%;
	letter-spacing: 0.05em;
	color: var(--white_silk);
	text-decoration: none;
}
.footer-loc-link::after {
	position: absolute;
	left: 0;
	bottom: -2px;
	content: '';
	height: 1px;
	background: var(--white_silk);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.footer-loc-link:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}
.footer-loc-link.disabled {
	pointer-events: none;
}
.footer-right {
	max-width: 378px;
}
.footer-form {
	margin: 0 0 60px;
}
.footer-form h5 {
	margin: 0 0 max(16px, 24rem);
}
.footer-form-block {
	display: flex;
	gap: 8px;
}
.footer-form .wpcf7-form-control-wrap input {
	flex: 1;
	height: 40px;
	padding: 0;
	margin: 0;
	color: var(--white_silk);
	font-size: 14px;
	border: 0;
	border-radius: 0;
	border-bottom: 1px solid rgba(100, 125, 122, 0.6);
}
.footer-form .wpcf7-form-control-wrap input:focus {
	border-color: var(--white_silk);
}
.footer-form .wpcf7-form-control-wrap input::-webkit-input-placeholder {color: var(--pine);}
.footer-form .wpcf7-form-control-wrap input:-moz-placeholder {color: var(--pine); opacity: 1;}
.footer-form .wpcf7-form-control-wrap input::-moz-placeholder {color: var(--pine); opacity: 1;}
.footer-form .wpcf7-form-control-wrap input:-ms-input-placeholder {color: var(--pine);}
.footer-form .button {
	width: 140px;
	min-width: 140px;
    padding: 8px 10px 10px;
}
.footer-form-thanks {
	display: none;
	font-size: 14px;
	line-height: 100%;
	color: var(--pine);
}
.footer-text {
	margin: 0 0 60px;
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
}
.footer-text a {
	color: var(--white_silk);
}
.footer-mail-title {
	margin: 0 0 15px;
	font-weight: 500;
	font-size: max(18px, 20rem);
	line-height: 103%;
	letter-spacing: -0.01em;
}
.footer-mail-link {
	position: relative;
	font-weight: 500;
	font-size: 16px;
	line-height: 103%;
	letter-spacing: 0.05em;
	color: var(--white_silk);
	text-decoration: none;
}
.footer-mail-link::after {
	position: absolute;
	left: 0;
	bottom: -2px;
	content: '';
	height: 1px;
	background: var(--white_silk);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.footer-mail-link:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}
.footer-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 0 0;
	border-top: 1px solid var(--pine);
}
.footer-webs {
	display: flex;
	gap: 15px;
}
.footer-web {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border: 1px solid var(--white_silk);
	border-radius: 50%;
	transition: all 0.8s var(--ease-out);
}
.footer-web path,
.footer-web circle {
	fill: var(--white_silk);
	transition: all 0.8s var(--ease-out);
}
.footer-web:hover {
	background: var(--white_silk);
}
.footer-web:hover path,
.footer-web:hover circle {
	fill: var(--jade);
}
.footer-web.rss path {
	fill: none;
	stroke: var(--jade);
}
.footer-web.rss:hover path {
	fill: none;
	stroke: var(--white_silk);
}
.web-img, .web-img-hover {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.8s var(--ease-out);
}
.web-img-hover {
	opacity: 0;
}
.footer-web:hover .web-img {
	opacity: 0;
}
.footer-web:hover .web-img-hover {
	opacity: 1;
}
.footer-copy {
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
}
.footer-link {
	position: relative;
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
	letter-spacing: 0.05em;
	text-transform: capitalize;
	color: var(--white_silk);
	text-decoration: none;
}
.footer-link::after {
	position: absolute;
	left: 0;
	bottom: -2px;
	content: '';
	height: 1px;
	background: var(--white_silk);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.footer-link:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}
.form-sent .footer-form-block {
	display: none;
}
.form-sent .footer-form-thanks {
	display: block;
	padding: 10px 0;
}
.form-sent .banner-form-block {
	display: none;
}
.form-sent .banner-form-thanks {
	display: block;
	padding: 10px 0;
}
.search-result {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 8px 0;
	overflow: hidden;
	z-index: 100;
	background: var(--white_silk);
	border: 1px solid var(--green);
	border-radius: 20px;
}
.search-result-item {
	display: block;
	padding: 2px 16px;
	font-size: 16px;
	line-height: 125%;
	color: var(--jade);
	text-decoration: none;
}
.search-result-item:hover {
	color: var(--white_silk);
	background: var(--pine);
}
.blog-line .search-result {
	background: #e6e9ea;
	border: 0;
}
.search-empty {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: max(32px, 50rem) max(30px, 40rem);
	overflow: hidden;
	z-index: 100;
	font-size: 16px;
	line-height: 125%;
	text-align: center;
	background: var(--white_silk);
	border: 1px solid var(--green);
	border-radius: 20px;
}
.blog-line .search-empty {
	background: #e6e9ea;
	border: 0;
}

/************************* animations *************************/
.fade {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.5s ease-in-out, transform 0.6s ease-in-out;
}
.fade.ani_start {
	opacity: 1;
	transform: translateY(0px);
}
/*.reveal {
	opacity: 0;
	display: flex;
    flex-direction: column;
}
.reveal.ani_start {opacity: 1;}*/
.text-wrap {
	overflow: hidden;
	padding: 15px 0;
	margin: -15px 0;
}
.text-inner {
	transition: transform 0.6s ease-in-out;
	transform: translateY(calc(100% + 20px));
}
.ani_start .text-inner {
	transform: translateY(0%);
}

/************************* media *************************/
@media screen and (max-width: 1300px) {
	.policy-note {
		position: relative;
		top: auto;
		left: auto;
		max-width: max(700px, 1000rem);
		margin: 0 auto 24px;
	}
	.article-tag {
		position: relative;
		top: auto;
		left: auto;
		margin: 0 auto 30px;
	}
	.card-block {
		grid-template-columns: repeat(3, 1fr);
	}
	.resources-side {
		width: 48%;
	}
	.resources-content {
		width: 48%;
	}
}
@media screen and (max-width: 1200px) {
	.header-nav-list {
		gap: 15px;
	}
	.header-nav-list > li > a {
		font-size: 14px;
	}
	.footer-block {
		flex-wrap: wrap;
		gap: 40px 0;
	}
	.footer-left {
		width: 100%;
		max-width: none;
	}
	.footer-info {
		max-width: 382px;
	}
	.footer-loc {
		width: calc(50% - 10px);
	}
	.blog-block {
		grid-template-columns: repeat(2, 1fr);
	}
	.serv-title {
		width: max(200px, 400rem);
		min-width: max(200px, 400rem);
	}
	.loc-item {
		padding-left: 60px;
	}
	.loc-item h3 {
		width: max(160px, 320rem);
		min-width: max(160px, 320rem);
	}
	.why-block {
		grid-template-columns: repeat(3, 1fr);
	}
	.doc-block {
		grid-template-columns: repeat(1, 1fr);
	}
	.pros-item {
		padding-left: 60px;
	}
	.pros-item h3 {
		width: max(160px, 320rem);
		min-width: max(160px, 320rem);
	}
	.franchise-item {
		flex-direction: column;
		gap: 16px;
	}
	.franchise-item h4 {
		width: auto;
		min-width: 1px;
	}


}
@media screen and (max-width: 1024px) {
	body.lock .logo-green {
		opacity: 1;
	}
	body.lock .logo-white {
		opacity: 0;
	}
	body.lock .header-logo {
		color: var(--jade);
	}
	body.lock .header-logo-img {
		border-right: 1px solid var(--jade);
	}
	body.lock .header-nav-list > li > a {
		color: var(--jade);
	}
	body.lock .header-nav-list > li > a::before{
		background: var(--jade);
	}
	body.lock .nav-parent::after {
		background: url(../images/nav-arrow-green.svg) 50% 50% no-repeat;
	}
	body.lock .header-loc-button {
		color: var(--jade);
		border: 1px solid var(--jade);
	}
	body.lock .header-loc-button path {
		fill: var(--jade);
	}
	body.lock .header-loc-button:hover {
		color: var(--white_silk);
		background: var(--jade);
	}
	body.lock .header-loc-button:hover path {
		fill: var(--white_silk);
	}
	body.lock .header-cart {
		color: var(--jade);
		border: 1px solid var(--jade);
	}
	body.lock .header-cart path {
		fill: var(--jade);
	}
	body.lock .header-cart:hover {
		background: var(--jade);
	}
	body.lock .header-cart:hover path {
		fill: var(--white_silk);
	}
	body.lock .header-cart-num {
		background: var(--white_silk);
		border: 1px solid var(--jade);
	}
	.header-logo {
		z-index: 600;
	}
	.header-cart {
		right: 56px;
		z-index: 600;
		border: 1px solid rgba(255, 255, 255, 0.6);
	}
	.mob-nav-icon {
		z-index: 600;
		display: flex;
		align-items: center;
		justify-content: center;
		border: 1px solid rgba(255, 255, 255, 0.6);
		border-radius: 50%;
	}
	.header-nav {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 540;
		overflow: hidden;
		box-sizing: border-box;
		box-shadow: none;
		display: block;
		height: 0;
		background: var(--white_silk);
		transition: all 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	.header-nav.vis {
		height: 100dvh;
	}
	.header-nav-wrap {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 100dvh;
		padding-top: 70px;
		padding-bottom: 82px;
		flex-direction: column;
		justify-content: flex-start;
	}
	.header-nav-list {
		display: block;
		padding: 0 max(16px, 50rem);
		height: 100%;
		overflow-y: auto;
	}
	.header-nav-list li {
		overflow: hidden;
	}
	.header-nav-list > li > a {
		display: flex;
		gap: 4px;
		padding: 12px 0;
		font-family: 'Big Shoulders';
		font-weight: 400;
		font-size: 36px;
		line-height: 110%;
		letter-spacing: -0.01em;
		color: #172b23;
		border-top: 1px solid var(--pine);
	}
	.nav-parent {
		margin: 0;
	}
	.nav-parent::before {display: none;}
	.nav-parent::after {
		position: relative;
		top: auto;
		right: auto;
		width: 36px;
		height: 36px;
		background: url(../images/nav-arrow-green.svg) 50% 50% no-repeat;
		background-size: contain;
	}
	.subnav {
		position: relative;
		top: auto;
		left: auto;
		padding: 0 0 20px;
		background: none;
	}
	.subnav li {margin: 0 0 8px;}
	.subnav a {
		position: relative;
		font-weight: 500;
		font-size: 18px;
		line-height: 103%;
		color: #172b23;
	}
	.subnav a::after{
		display: none;
	}
	.header-white:not(.header-fixed) .subnav {
		background: none;
	}
	.header-white:not(.header-fixed) .subnav a {
		color: #172b23;
	}
	.header-loc {
		top: auto;
		right: 0;
		left: 0;
		bottom: 0;
		z-index: 50;
		padding: max(16px, 50rem);
		background: var(--white_silk);
	}
	.header-loc-button {
		justify-content: center;
		height: 50px;
		font-weight: 400;
		letter-spacing: 0.05em;
	}
	.header-loc-button svg {
		width: 24px;
		height: 24px;
	}
	.header-white:not(.header-fixed) .mob-nav-icon {
		border-color: var(--green);
	}
	.header-white:not(.header-fixed) .mob-nav-block,
	.header-white:not(.header-fixed) .mob-nav-block::before,
	.header-white:not(.header-fixed) .mob-nav-block::after {
		background: var(--jade);
	}
	.header-white:not(.header-fixed) .mob-nav-icon.active .mob-nav-block {
		background: none;
	}
	.header-white:not(.header-fixed) .header-cart {
		border-color: var(--green);
	}
	body.lock .mob-nav-icon {
		border-color: var(--green);
	}
	body.lock .mob-nav-block,
	body.lock .mob-nav-block::before,
	body.lock .mob-nav-block::after {
		background: var(--jade);
	}
	body.lock .header-cart {
		border-color: var(--green);
	}
	.footer-block {
		flex-direction: column;
		gap: 40px 0;
	}
	.footer-left {
		width: auto;
		max-width: none;
	}
	.footer-info {
		max-width: 382px;
	}
	.footer-loc {
		width: auto;
	}
	.footer-bottom {
		flex-direction: column;
		align-items: flex-start;
		gap: 42px;
		padding: 0;
		border-top: 0;
	}
	.footer-webs {order: 1;}
	.footer-link {order: 2;}
	.footer-copy {order: 3;}
	.breadcrumbs {
		margin: 0 0 64px;
	}
	h1, .h1 {
		line-height: 110%;
		letter-spacing: -0.01em;
	}
	h2, .h2 {
		line-height: 110%;
		letter-spacing: -0.01em;
	}
	h4, .h4 {
		line-height: 103%;
		letter-spacing: 0;
	}
	body {
		line-height: 130%;
	}
	.policy-note {
		margin: 0 0 40px;
		line-height: 130%;
	}
	.article-big-text {
		line-height: 130%;
	}
	.checkout-block {
		flex-direction: column;
	}
	.checkout-cart, .checkout-form {
		width: 100%;
		max-width: none;
	}
	.checkout-result {
		margin: 0 0 64px;
		border-bottom: 1px solid var(--green);
	}
	.checkout-cart h3 {
		margin: 0 0 30px;
	}
	.banner {
		position: relative;
		padding: 0 0 80px;
	}
	.banner.section {
		padding: 0;
	}
	.banner-wrap {
		align-items: flex-start;
		justify-content: flex-start;
		text-align: left;
		color: var(--jade);
		height: auto;
		padding: 0 0 40px;
	}
	.banner-bg {
		position: relative;
		inset: auto;
		height: max(193px, 1000rem);
	}
	.blog-line {
		flex-direction: column-reverse;
		align-items: flex-start;
		gap: 30px;
	}
	.search {
		width: 100%;
	}
	.tabs-mob {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 2px;
		text-align: center;
		padding: 8px 32px 10px;
		font-weight: 500;
		font-size: max(16px, 18rem);
		line-height: 20px;
		letter-spacing: -0.01em;
		color: var(--white_silk);
		text-decoration: none;
		text-align: center;
		background: var(--jade);
		border: 1px solid var(--jade);
		border-radius: 30px;
		transition: all 0.8s var(--ease-out);
	}
	.tabs-mob::after {
		content: '';
		width: 24px;
		height: 24px;
		background: url(../images/nav-arrow.svg) 50% 50% no-repeat;
		transition: all 0.3s ease-out;
	}
	.tabs-mob.active::after {
		transform: rotate(180deg);
	}
	.tabs-line {
		display: none;
		position: absolute;
		z-index: 20;
		top: calc(100% + 4px);
		left: 0;
		min-width: 100%;
		flex-direction: column;
		gap: 0;
		padding: 20px;
		background: var(--jade);
		border-radius: 20px;
	}
	.tabs-item {
		display: block;
		min-width: 1px;
		padding: 0;
		margin: 0 0 8px;
		font-weight: 400;
		font-size: 18px;
		line-height: 26px;
		letter-spacing: 0;
		color: var(--white_silk);
		text-align: left;
		border: 0;
		border-radius: 0;
	}
	.tabs-item:last-child {margin: 0;}
	.blog-label {
		margin: 0 0 12px;
	}
	.voucher-block {
		flex-direction: column;
	}
	.voucher-img,
	.voucher-content {
    	max-width: none;
		width: auto;
	}
	.voucher-content {
		margin: 0;
	}
	.review-block {
		grid-template-columns: repeat(2, 1fr);
		gap: 28px 20px;
	}
	.card-block {
        grid-template-columns: repeat(2, 1fr);
    }
	.voucher .breadcrumbs {
		margin: 0 0 74px;
	}
	.voucher-form-part {
		padding: 0 0 18px;
	}
	.faq-min-hidden {
		display: none;
		padding: 2px 0 20px;
	}
	.hero-content {
		align-items: flex-start;
		justify-content: flex-end;
		text-align: left;
	}
	.hero-content h1 {
		max-width: max(320px, 600rem);
	}
	.hero-text {
		max-width: 540px;
		line-height: 130%;
		letter-spacing: 0;
		text-align: left;
	}
	.info {
		flex-direction: column;
		margin: 0 0 max(96px, 200rem);
		padding: 20px 0 40px;
		background: var(--green);
	}
	.info-col {
		width: auto;
		padding: max(40px, 113rem) max(16px, 60rem);
	}
	.info-col:first-child {
		border-right: 0;
		border-bottom: 1px solid var(--jade);
	}
	.info-green .info-col {
		border-bottom: 0;
	}
	.info-bottom {
		margin: 0;
	}
	.info-bottom.info-green,
	.section.info-green {
		padding: 0;
	}
	.info-bottom.info-green .info-col {
		padding: 60px max(16px, 60rem) 0;
	}
	.info-col-big {
		padding: 60px max(16px, 60rem) 80px;
	}
	.info-green .info-col {
		min-height: 1px;
	}
	.info-bottom.info-green .info-col-img,
	.info-col-img {
		padding: 0;
	}
	.info-img {
		position: relative;
		inset: auto;
		width: 100%;
		height: max(360px, 500rem);
		object-fit: cover;
	}
	.title-center {
		align-items: flex-start;
		text-align: left;
	}
	.hero-subtitle {
		position: static;
		transform: none;
		max-width: 190px;
	}
	.category-block {
		grid-template-columns: repeat(2, 1fr);
		gap: 28px 20px;
	}
	.resources-block {
		display: block	;
		border-top: 0;
	}
	.resources-side {
		width: auto;
		flex-direction: column-reverse;
		padding: 0 0 32px;
	}
	.resources-content {
		width: auto;
	}
	.resources-top {
		align-items: flex-start;
		text-align: left;
	}
	.resources-img img {
		height: max(193px, 500rem);
		object-fit: cover;
	}
	.resources .faq-item:first-child {
		border-top: 1px solid rgba(255, 255, 255, 0.2);
	}
	.resources-list {
		grid-template-columns: repeat(1, 1fr);
	}
	.serv-item {
		flex-direction: column;
		gap: 16px;
	}
	.serv-title {
        width: auto;
		min-width: 1px;
    }
	.serv-title h3 {
		max-width: none;
	}
	.serv-img {
		width: auto;
		min-width: 1px;
		height: max(240px, 700rem);
		margin: 0;
	}
	.serv-info {
		max-width: none;
		padding: 0 0 4px;
		line-height: 130%;
	}
	.legend {
		margin: 0 0 max(96px, 200rem);
	}
	.diagonal-banner .banner-text {
		margin: 0;
	}
	.loc-item {
		flex-direction: column;
		padding-left: 0;
	}
	.loc-num {
		position: relative;
		top: auto;
		left: auto;
	}
	.loc-img {
        width: auto;
        min-width: 1px;
        height: max(240px, 700rem);
        margin: 0;
    }
	.loc-info {
		max-width: none;
        padding: 0 0 4px;
        line-height: 130%;
	}
	.resident-item {
		transform: scale(0.8);
	}
	.place {
		flex-direction: column;
		height: auto;
		max-height: none;
	}
	.place-content {
		width: auto;
		padding: max(100px, 168rem) max(16px, 50rem) max(40px, 50rem);
	}
	.place-img {
		width: auto;
		height: max(360px, 900rem);
	}
	.place-top {
		align-items: flex-start;
		text-align: left;
		margin: 0 0 32px;
	}
	.place-top-text {
		color: var(--white_silk);
	}
	.place-info {
		align-items: flex-start;
		text-align: left;
	}
	.facility {
		height: auto;
		max-height: none;
		display: block;
	}
	.facility-top {
		gap: 32px;
		text-align: left;
		margin: 0 0 32px;
	}
	.facility-text {
		max-width: max(600px, 680rem);
	}
	.facility-photo {
		display: flex;
		overflow-x: auto;
		gap: 20px;
		margin: 0 min(-16px, -50rem);
		padding: 0 max(16px, 50rem);
	}
	.facility-img {
		position: static;
		width: 280px;
		height: 360px;
		object-fit: cover;
	}
	.why-block {
        grid-template-columns: repeat(2, 1fr);
    }
	.pros-item {
		flex-direction: column;
		padding-left: 0;
	}
	.pros-num {
		position: relative;
		top: auto;
		left: auto;
	}
	.pros-img {
        width: auto;
        min-width: 1px;
        height: max(240px, 700rem);
        margin: 0;
    }
	.pros-info {
		max-width: none;
        padding: 0 0 4px;
        line-height: 130%;
	}
	.pros-text {
		width: auto;
	}
	.pros-item h3 {
        width: auto;
        min-width: 1px;
    }
	.mission-line {
		flex-direction: column;
		margin: 0 0 max(32px, 50rem);
		gap: 32px;
	}
	.mission-line h3 {
		padding: 0;
	}
	.mission-block {
		display: block;
	}
	.mission-img {
		width: auto;
		margin: 0 0 32px;
	}
	.mission-content {
		padding: 0;
		gap: 32px;
	}
	.mission-photo {
		width: 100%;
		height: 360px;
	}
	.vision-block {
		flex-direction: column;
		gap: 32px;
	}
	.vision-img {
		width: auto;
	}
	.vision-content h3 {
		max-width: none;
	}
	.vision-subtitle {
		max-width: none;
	}
	.vision-list {
		max-width: none;
	}
	.hero-slider .hero-content {
        justify-content: flex-start;
		padding-top: max(110px, 240rem);
    }
	.google-review {
		bottom: 42px;
	}
	.expert-top {
		align-items: flex-start;
		text-align: left;
	}
	.expectation {
		grid-template-columns: repeat(2, 1fr);
	}
	.mission-top {
		align-items: flex-start;
		text-align: left;
	}
	.board-block {
		width: calc(100% + 50vw - 50%);
	}
	.board-block .board-item {
		width: max(300px, 430rem);
		padding: 0 max(20px, 40rem) 0 0;
	}
	.board-block .slick-arrow {
		position: absolute;
		top: min(-56px, -74rem);
		right: max(16px, 50rem);
	}
	.board-block .slick-prev {
		margin-right: 39px;
	}
	.what-block {
		grid-template-columns: repeat(1, 1fr);
	}
	.what-text {
		max-width: none;
	}
	.press-slider {
		margin: 0;
		padding: 0;
		border: 0;
		display: flex;
		flex-direction: column;
		gap: 28px;
	}
	.press-slide {
		padding: 0;
		border-right: 0;
	}
	.press-slide .press-item {
		width: auto;
	}
	.history {
		flex-direction: column-reverse;
		align-items: flex-start;
		gap: 32px;
	}
	.history-side {
		width: 100%;
		padding: 0;
	}
	.history-content {
		width: 100%;
		padding: 0 0 0 max(28px, 100rem);
		margin: 0 0 0 7px;
	}
	.history-item::before {display: none;}
	.history-point {
		left: min(-28px, -100rem);
		opacity: 1;
	}
	.history-img {
		height: max(360px, 780rem);
	}
	.history-img-item:first-child {
		opacity: 1;
	}

	
}
@media screen and (max-width: 767px) {
	.footer-form-block {
		flex-direction: column;
		gap: 30px;
	}
	.footer-form .button {
		width: auto;
		min-width: 1px;
		max-width: none;
	}
	.button {
		max-width: none;
	}
	.page404 {
		text-align: left;
	}
	.page404 .button {
		max-width: none;
	}
	.form-box .wpcf7-form-control-wrap {
		width: 100%;
	}
	.promocode-wrap {
		flex-direction: column;
		gap: 30px;
	}
	.promocode-wrap .button {
		width: 100%;
		min-width: 1px;
		max-width: none;
	}
	.payment-radio {
		margin: 0 0 10px;
	}
	.cart-item {
		position: relative;
		margin: 0 0 30px;
		padding: 0;
		border-top: 0;
	}
	.cart-item-img {
		position: absolute;
		top: 0;
		left: 0;
		width: 84px;
        min-width: 84px;
		height: 90px;
		object-fit: cover;
	}
	.cart-item-img img {
		width: 100%;
		object-fit: cover;
	}
	.cart-item-top {
		flex-direction: column;
		align-items: flex-start;
		justify-content: space-between;
		gap: 10px;
		height: 90px;
		padding: 0 0 0 94px;
		margin: 0 0 10px;
	}
	.cart-item-name {
		font-weight: 400;
		font-size: 16px;
		line-height: 130%;
		letter-spacing: 0;
	}
	.cart-item-price {
		font-weight: 400;
		font-size: 16px;
		line-height: 130%;
	}
	.checkout-result-item h5 {
		font-size: 20px;
	}
	.checkout-sum {
		letter-spacing: 0.05em;
	}
	.cart-delete {
		padding: 30px 0 0;
	}
	.cart-item-line:not(.cart-item-quantity) {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}
	.dropdown-hidden {
		left: 0;
		right: auto;
		padding: max(20px, 40rem);
	}
	.blog-block {
		grid-template-columns: repeat(1, 1fr);
	}
	.banner form {
		width: 100%;
	}
	.banner-form-block {
		flex-direction: column;
		gap: 0;
	}
	.article-img {
		flex-direction: column;
		gap: 30px;
	}
	.article-img-slider .article-img-item {
		max-width: 90vw;
	}
	.review-block {
		grid-template-columns: repeat(1, 1fr);
	}
	.card-block {
        grid-template-columns: repeat(1, 1fr);
    }
	.review-name {
		letter-spacing: 0;
	}
	.review-status {
		opacity: 0.4;
	}
	.cost-header {
		display: none;
	}
	.cost-wrap h4 {
		margin: 0 0 20px;
	}
	.cost-line {
		position: relative;
		flex-direction: column;
		gap: 16px;
	}
	.cost-text {
		padding-right: 80px;
	}
	.cost-price {
		position: absolute;
		top: 16px;
		right: 16px;
		width: max(60px, 87rem);
		min-width: max(60px, 87rem);
		text-align: right;
	}
	.cost-time {
		width: auto;
		min-width: 1px;
		color: var(--pine);
	}
	.cost-note {
		padding: 16px 0;
	}
	.file-label {
		display: flex;
		justify-content: center;
	}
	.form-top {
		text-align: left;
	}
	.form-text {
		line-height: 130%;
		letter-spacing: 0;
	}
	.faq-item {
		flex-direction: column;
		gap: 0;
		padding-right: 0;
	}
	.faq-top {
		width: auto;
		min-width: 1px;
		padding: 30px 50px 30px 0;
	}
	.faq-hidden {
		width: auto;
		padding: 0 0 30px;
		margin: -10px 0 0;
		max-width: none;
	}
	.faq-hidden p {
		margin: 0 0 20px;
	}
	.faq-hidden ul {
		margin: 0 0 20px;
	}
	.faq-img img {
		width: 100;
		height: max(360px, 500rem);
		object-fit: cover;
	}
	.category-button {
		position: relative;
		padding-bottom: 82px;
	}
	.category-button .title-line .button {
		position: absolute;
		inset: 0;
		top: auto;
	}
	.category-block {
		grid-template-columns: repeat(1, 1fr);
	}
	.category-item {
		height: 360px;
	}
	.map-block {
		overflow: visible;
		flex-direction: column-reverse;
		border: 0;
	}
	.map-main {
		flex: auto;
		height: 450px;
		margin: 0 min(-16px, -50rem);
	}
	.map-side {
		width: auto;
		min-width: 1px;
		padding: 20px 0 0;
	}
	.address-list {
		max-height: none;
	}
	.check-line {
		flex-direction: column;
	}
	.line-tabs {
 		position: relative;
		display: inline-flex;
		margin: 0 0 32px;
	}
	.line-tabs-mob {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 2px;
		text-align: center;
		padding: 8px 32px 10px;
		font-weight: 500;
		font-size: max(16px, 18rem);
		line-height: 20px;
		letter-spacing: -0.01em;
		color: var(--white_silk);
		text-decoration: none;
		text-align: center;
		background: var(--jade);
		border: 1px solid var(--jade);
		border-radius: 30px;
		transition: all 0.8s var(--ease-out);
	}
	.line-tabs-mob::after {
		content: '';
		width: 24px;
		height: 24px;
		background: url(../images/nav-arrow.svg) 50% 50% no-repeat;
		transition: all 0.3s ease-out;
	}
	.line-tabs-mob.active::after {
		transform: rotate(180deg);
	}
	.line-tabs-block {
		display: none;
		position: absolute;
		top: calc(100% + 4px);
		left: 0;
		min-width: 100%;
		flex-direction: column;
		gap: 8px;
		padding: 20px;
		background: var(--jade);
		border-radius: 20px;
		border-top: 0;
		border-bottom: 0;
	}
	.line-tabs-item {
		display: block;
		font-weight: 400;
		font-size: 18px;
		line-height: 26px;
		letter-spacing: 0;
		color: var(--white_silk);
		opacity: 1;
	}
	.insurance {
		flex-direction: column;
		gap: 40px;
	}
	.insurance-content {
		width: auto;
	}
	.insurance-button {
		flex-direction: column;
		gap: 20px;
	}
	.insurance-img {
		width: auto;
	}
	.examination {
		flex-direction: column;
	}
	.examination-content {
		width: auto;
	}
	.examination-img {
		width: auto;
		height: max(394px, 600rem);
	}
	.examination-img img {
		position: relative;
		inset: auto;
	}
	.visit {
		flex-direction: column;
		align-items: stretch;
		gap: 40px;
	}
	.visit-content {
		width: auto;
	}
	.visit-img {
		width: auto;
		height: max(193px, 565rem);
	}
	.ai {
		flex-direction: column;
		gap: 32px;
	}
	.ai-side, .ai-img {
		width: auto;
		max-width: none;
	}
	.ai-side-img {
		margin: 0 0 32px;
	}
	.journey {
		flex-direction: column;
		gap: 32px;
	}
	.journey-content {
		max-width: none;
		width: auto;
	}
	.journey-img {
		width: auto;
	}
	.legend-top {
		align-items: flex-start;
		text-align: left;
	}
	.legend-top-text {
		color: var(--green);
	}
	.legend-block {
		display: block;
	}
	.legend-side {
		width: auto;
		padding: 0 0 32px;
	}
	.legend-content {
		width: auto;
	}
	.legend-slider {
		padding: 0 0 48px;
	}
	.legend-block .slick-arrow {
		left: calc((100% + min(-16px, -50rem))/2);
		margin-left: -32px;
	}
	.legend-block .legend-next {
		margin-left: 8px;
	}
	.balance-top {
		align-items: flex-start;
		text-align: left;
	}
	.balance-block {
		flex-direction: column;
		gap: 28px;
	}
	.balance-col {
		width: auto;
	}
	.tradition {
		flex-direction: column;
		gap: 32px;
		padding: 0;
		border-top: 0;
	}
	.tradition-col h3 {
		max-width: none;
		margin: 0 0 16px;
	}
	.goal {
		flex-direction: column;
		gap: 32px;
	}
	.goal-img,
	.goal-content {
		width: auto;
		max-width: none;
	}
	.cure h2 {
		text-align: left;
	}
	.cure-text {
		max-width: none;
		margin: 0 0 max(24px, 50rem);
		text-align: left;
	}
	.cure-block {
		flex-direction: column;
		margin: 0 min(-16px, -50rem);
	}
	.cure-img {
		width: auto;
		display: flex;
		min-height: 1px;
    	height: max(394px, 1000rem);
	}
	.cure-content {
		width: auto;
		padding: max(60px, 100rem) max(16px, 50rem) max(80px, 100rem);
	}
	.cure-gift-img {
		max-width: 250px;
	}
	.resident-slider {
		padding: 0 0 48px;
	}
	.slick-center .resident-item {
		transform: none;
	}
	.resident-slide {
		padding: 0 16px;
	}
	.resident-item {
		width: auto;
		transform: none;
	}
	.resident-status {
		font-weight: 400;
		line-height: 130%;
		letter-spacing: 0;
	}
	.resident-main {
		padding: 0;
	}
	.resident-quote {
		font-weight: 400;
		font-size: 16px;
		line-height: 130%;
		letter-spacing: 0;
	}
	.resident-num {
		display: none;
	}
	.resident-slider .slick-arrow {
		left: calc((100% + min(-16px, -50rem))/2);
		bottom: 0;
		top: auto;
		right: auto;
		margin-left: 8px;
	}
	.resident-slider .slick-prev {
		margin-right: 0;
		margin-left: -32px;
	}
	.why-block {
        grid-template-columns: repeat(1, 1fr);
		gap: 28px;
    }
	.doc-slider-wrap h2 {
		max-width: none;
		padding: 0 0 56px;
	}
	.doc-slider .slick-arrow {
		left: 0;
		right: auto;
	}
	.doc-slider .slick-prev {
		margin-right: 0;
	}
	.doc-slider .slick-next {
		margin-left: 39px;
	}
	.doc-slide-item {
		flex-direction: column;
		gap: 28px;
	}
	.doc-slide-content {
		width: auto;
	}
	.doc-slide-img {
		width: auto;
	}
	.doc-slide-photo {
		max-width: none;
	}
	.doc-item {
		display: block;
		height: auto;
		padding: 20px;
    	background: var(--gray);
	}
	.doc-content {
		padding: 20px 0 0;
		height: auto;
	}
	.doc-quote {
		letter-spacing: 0;
	}
	.mission-content {
        flex-direction: column;
    }
	.vision-top, .care-top {
		align-items: flex-start;
		text-align: left;
	}
	.vision-subtitle {
		font-weight: 400;
		font-size: 16px;
		line-height: 130%;
	}
	.care-block {
		grid-template-columns: repeat(1, 1fr);
		gap: 30px;
		padding: 0;
		margin: 0;
		border-top: 0;
		border-bottom: 0;
	}
	.care-item {
		padding: 0;
		border-left: 0;
	}
	.main-blog {
		position: relative;
		padding-bottom: 82px;
	}
	.main-blog .title-line .button {
		position: absolute;
		inset: 0;
		top: auto;
	}
	.choose {
		flex-direction: column;
		gap: 32px;
	}
	.choose-side {
		width: auto;
		padding: 0;
	}
	.choose-content {
		width: auto;
	}
	.choose-item {
		flex-direction: column;
		gap: 16px;
	}
	.choose-item h4 {
		width: auto;
		padding: 0;
	}
	.choose-text {
		width: auto;
		max-width: none;
	}
	.benefit-block {
		width: auto;
		height: auto;
		margin: 0;
		background: url(../images/benefit-bg-mob.svg) 50% 0 no-repeat;
		background-size: contain;
	}
	.benefit-img {
		width: max(249px, 800rem);
		height: max(249px, 800rem);
		margin: 0 auto 20px;
	}
	.benefit-list {
		display: flex;
		flex-direction: column;
		gap: 6px;
	}
	.benefit-item {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		padding: 0 0 0 24px;
		font-weight: 400;
		font-size: 16px;
		line-height: 130%;
		letter-spacing: 0;
		text-align: left;
	}
	.benefit-item::before {
		position: absolute;
		top: 0;
		left: max(3px, 6rem);
		content: '•';
	}
	.expectation {
		grid-template-columns: repeat(1, 1fr);
	}
	.expectation-item {
		align-items: flex-start;
		text-align: left;
	}
	.expectation-img {
		max-width: none;
		width: 100%;
	}
	.expectation-item h4 {
		line-height: 130%;
	}
	.main-map {
		position: relative;
	}
	.main-map .title-line .button {
		position: absolute;
		inset: 0;
		top: auto;
	}
	.main-map .map-side {
		padding-bottom: 80px;
	}
	.main-map .address-list {
        max-height: 590px;
    }
	.banner-slide-bg {
		height: max(720px, 1000rem);
	}
	.impact-block {
		flex-direction: column;
		gap: 32px;
	}
	.impact-img {
		width: auto;
	}
	.impact-content {
		padding: 0;
	}
	.impact-photo {
		flex-direction: column;
		gap: 28px;
		margin: 0;
	}
	.impact-photo img {
		width: 100%;
		height: max(360px, 600rem);
	}
	.what-block {
		gap: 28px;
	}
	.what-item {
		flex-direction: column;
		border: 0;
		padding: 0;
	}
	.what-img {
		width: 100%;
	}
	.what-text {
		-webkit-line-clamp: 2;
		height: 42px;
		line-height: 21px;
	}
	.press {
		grid-template-columns: repeat(1, 1fr);
	}
	.press-text {
		-webkit-line-clamp: 2;
		height: 42px;
		line-height: 21px;
		opacity: 0.6;
	}
	.franchise-block {
		flex-direction: column;
		gap: 32px;
	}
	.franchise-tabs {
		position: relative;
		width: auto;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
	.franchise-content {
		width: auto;
	}
	.franchise-item:last-child {
		padding-bottom: 24px;
		border-bottom: 1px solid var(--pine);
	}
	.franchise-tabs-mob {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 2px;
		text-align: center;
		padding: 8px 32px 10px;
		font-weight: 500;
		font-size: max(16px, 18rem);
		line-height: 20px;
		letter-spacing: -0.01em;
		color: var(--jade);
		text-decoration: none;
		text-align: center;
		background: var(--white_silk);
		border: 1px solid var(--white_silk);
		border-radius: 30px;
		transition: all 0.8s var(--ease-out);
	}
	.franchise-tabs-mob::after {
		content: '';
		width: 24px;
		height: 24px;
		background: url(../images/nav-arrow-green.svg) 50% 50% no-repeat;
		transition: all 0.3s ease-out;
	}
	.franchise-tabs-mob.active::after {
		transform: rotate(180deg);
	}
	.franchise-tabs-list {
		display: none;
		position: absolute;
		z-index: 20;
		top: calc(100% + 4px);
		left: 0;
		min-width: 100%;
		flex-direction: column;
		gap: 8px;
		padding: 20px;
		background: var(--white_silk);
		border-radius: 20px;
	}
	.franchise-tabs-link {
		display: block;
		font-weight: 400;
		font-family: 'Inter';
		font-size: 16px;
		line-height: 26px;
		letter-spacing: 0;
		color: var(--jade);
		opacity: 1;
	}
	.cart-block {
		width: 100%;
	}
	.banner-slide-content {
		padding-top: 40px;
	}

}
@media screen and (max-width: 576px) {
	

}