.visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	clip: rect(0 0 0 0);
	overflow: hidden;
	white-space: nowrap;
}



.base {
	box-sizing: border-box;
	font-family: "Inter", sans-serif;
	font-size: 16px;
	line-height: 1.19;
	color: var(--color-primary);
	background-color: var(--color-white);
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
}

.base__body {
	padding-top: 165px;
}

@media screen and (max-width: 1023px) {
	.base__body {
		padding-top: 110px;
	}
}



.container {
	--container-gutter: 70px;
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--container-gutter);
	padding-right: var(--container-gutter);
}

@media screen and (max-width: 1023px) {
	.container {
		--container-gutter: 16px;
	}
}



.header {
	--header-animation-time: 0.6s;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	left: 0;
}

.header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 24px;
	padding-bottom: 24px;
}

.header__inner--mobile {
	display: none;
}

.header__menu {
	margin-left: 24px;
}

.header__toggle {
	display: none;
}

@media screen and (max-width: 1023px) {
	.header::before {
		content: "";
		position: fixed;
		z-index: 1;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		background-color: #000000;
		opacity: 0.5;
		transition: opacity var(--header-animation-time), visibility var(--header-animation-time);
	}

	.header:not(.header--open)::before {
		opacity: 0;
		visibility: hidden;
	}

	.header__menu {
		display: none;
	}

	.header__toggle {
		display: block;
		margin-left: 24px;
	}

	.header__inner--mobile {
		position: fixed;
		z-index: 1;
		top: 0;
		left: 0;
		right: 0;
		display: block;
		padding-bottom: 0;
		background-color: var(--color-white);
		border-radius: 0 0 24px 24px;
		transition: transform var(--header-animation-time) cubic-bezier(0.65, 0.05, 0.36, 1), opacity 0s, visibility 0s;
	}

	.header:not(.header--open) .header__inner--mobile {
		transform: translateY(-100%);
		opacity: 0;
		visibility: hidden;
		transition-delay: 0s, var(--header-animation-time), var(--header-animation-time);
	}

	.header__headline {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding-bottom: 19px;
		border-bottom: 1px solid #cccccc;
	}
}



.logo__picture {
	flex-shrink: 0;
	display: block;
	width: 392px;
	height: 36px;
}

@media screen and (max-width: 499px) {
	.logo__picture {
		width: 221px;
		height: 20px;
	}
}



.header-nav {
	display: flex;
	align-items: center;
	padding: 12px 20px;
	background-color: rgba(70, 70, 70, 0.45);
	backdrop-filter: blur(24px);
	border-radius: var(--box-radius);
}

.header-nav__list {
	position: relative;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin: 0;
	padding: 0 41px 0 0;
	list-style: none;
}

.header-nav__list:last-of-type {
	padding-right: 0;
}

.header-nav__list:not(:last-of-type)::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 1px;
	height: 16px;
	background-color: var(--color-white);
	transform: translateY(-50%);
}

.header-nav__list--lang {
	flex-shrink: 0;
}

.header-nav__item {
	padding: 4px;
}

.header-nav__link {
	font-weight: 500;
	color: var(--color-white);
	text-decoration: none;
	word-break: keep-all;
	transition: color var(--transition-default), opacity var(--transition-default);
}

.header-nav__list--lang .header-nav__link {
	font-weight: 400;
	opacity: 0.5;
}

.header-nav__link:hover {
	color: var(--color-primary);
	opacity: 1;
}

.header-nav__list--lang .header-nav__link--current {
	font-weight: 700;
	opacity: 1;
}

@media screen and (max-width: 1023px) {
	.header-nav {
		flex-direction: column;
		align-items: stretch;
		padding: 0;
		background-color: transparent;
		backdrop-filter: none;
		border-radius: 0;
	}

	.header-nav__list:not(.header-nav__list--inner) {
		flex-direction: column;
		align-items: stretch;
		flex-wrap: nowrap;
		padding-bottom: 0;
	}

	.header-nav__list:not(:last-of-type)::after {
		display: none;
	}

	.header-nav__item {
		padding: 0;
		border-bottom: 1px solid #cccccc;
	}

	.header-nav__item:last-child {
		border-bottom: none;
	}

	.header-nav__link {
		display: block;
		padding: 24px 16px;
		font-weight: 600;
		font-size: 18px;
		text-align: center;
		color: var(--color-primary);
	}

	.header-nav__list--inner {
		justify-content: center;
	}

	.header-nav__list--inner .header-nav__item {
		border-bottom: none;
	}

	.header-nav__list--inner .header-nav__link {
		padding-left: 12px;
		padding-right: 12px;
	}
}



.menu-toggle {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 46px;
	height: 46px;
	margin: 0 -5px 0 0;
	padding: 5px;
	background-color: transparent;
	border: none;
	cursor: pointer;
}

.menu-toggle__inner {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 36px;
	height: 36px;
	background-color: rgba(70, 70, 70, 0.45);
	backdrop-filter: blur(24px);
	border-radius: var(--box-radius);
}

.menu-toggle__icon {
	display: flex;
	flex-direction: column;
}

.menu-toggle__strip {
	width: 16px;
	height: 2px;
	margin-bottom: 3px;
	background-color: var(--color-white);
	border-radius: 2px;
}

.menu-toggle__strip:last-child {
	margin-bottom: 0;
}



.footer {
	background: linear-gradient(91.46deg, #0d635a 0%, #1f9c60 100%), #2d2d2d;
}

.footer__inner {
	padding-top: 24px;
	padding-bottom: 24px;
}

.footer__section {
	margin-bottom: 24px;
	padding-bottom: 24px;
	border-bottom: 1px solid rgba(246, 247, 247, 0.25);
}

.footer__section:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.footer__main {
	display: flex;
	align-items: flex-start;
}

.footer__subscribe {
	flex-shrink: 0;
	width: 38.5%;
	max-width: 500px;
}

.footer__contacts {
	flex-grow: 1;
	margin-left: 24px;
}

.footer__bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: -8px;
}

.footer__bottom-item {
	display: flex;
	flex: 0 0 33.333333%;
	max-width: 33.333333%;
	width: 100%;
	padding: 8px;
}

.footer__bottom-item:nth-child(3n + 2) {
	justify-content: center;
}

.footer__bottom-item:nth-child(3n + 3) {
	justify-content: flex-end;
}

.footer__name {
	margin: 0;
	font-weight: 400;
	font-size: 14px;
	color: var(--color-white);
	text-decoration: none;
}

@media screen and (max-width: 1023px) {
	.footer__inner {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.footer__main {
		flex-direction: column;
		align-items: stretch;
	}

	.footer__subscribe {
		width: 100%;
		max-width: unset;
	}

	.footer__contacts {
		margin-left: 0;
		margin-top: 32px;
	}
}

@media screen and (max-width: 767px) {
	.footer__bottom {
		margin: 0;
		align-items: baseline;
	}

	.footer__bottom-item {
		order: 2;
		flex: 0 1 auto;
		max-width: unset;
		width: auto;
		padding: 0;
	}

	.footer__bottom-item:nth-child(3n + 2) {
		order: 1;
		flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
		margin-bottom: 32px;
		padding-bottom: 24px;
		border-bottom: 1px solid rgba(246, 247, 247, 0.25);
	}

	.footer__bottom-item:first-child {
		margin-right: 16px;
		margin-bottom: 16px;
	}
}



.subscribe {
	padding: 32px;
	background-color: var(--color-white);
	border-radius: var(--box-radius);
}

.subscribe__title {
	margin-top: 0;
	margin-bottom: 16px;
	font-weight: 600;
	font-size: 32px;
	line-height: 39px;
	color: var(--color-primary);
}

.subscribe__desc {
	margin-top: 0;
	margin-bottom: 24px;
}

.subscribe__fields-row {
	display: flex;
	margin: -4px;
}

.subscribe__field {
	flex-grow: 1;
	flex-basis: 100%;
	padding: 4px;
}

.subscribe__confirm {
	margin-top: 16px;
	margin-bottom: 16px;
}

@media screen and (max-width: 1279px) {
	.subscribe__fields-row {
		flex-direction: column;
	}
}

@media screen and (max-width: 767px) {
	.subscribe {
		padding: 24px;
	}
}



.contacts__title {
	margin-top: 0;
	margin-bottom: 24px;
	font-weight: 600;
	font-size: 24px;
	line-height: 1.2;
	color: var(--color-white);
}

.contacts__toggle {
	display: none;

}

@media screen and (max-width: 767px) {
	.contacts__title {
		margin-bottom: 30px;
	}

	.contacts__toggle {
		display: block;
		margin-top: 24px;
		padding-top: 24px;
		border-top: 1px solid rgba(246, 247, 247, 0.25);
	}
}



.contacts-toggle {
	width: 100%;
	padding: 8px 16px;
	font-weight: 500;
	font-size: 16px;
	line-height: 19px;
	color: var(--color-primary);
	text-align: center;
	background-color: var(--color-gray);
	border: none;
	border-radius: 8px;
	cursor: pointer;
}



.contacts-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.contacts-list__item {
	display: flex;
	flex: 0 0 33.333333%;
	max-width: 33.333333%;
	width: 100%;
	margin-top: 24px;
	padding-top: 24px;
	border-top: 1px solid rgba(246, 247, 247, 0.25);
}

.contacts-list__item:nth-child(-n + 3) {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}

.contacts-list__item--wide {
	flex-grow: 1;
	max-width: unset;
}

.contacts-list__data {
	margin-left: 24px;
	padding-left: 24px;
	border-left: 1px solid rgba(246, 247, 247, 0.25);
}

.contacts-list__item:nth-child(3n + 1) .contacts-list__data {
	margin-left: 0;
	padding-left: 0;
	border-left: none;
}

@media screen and (max-width: 1279px) {
	.contacts-list__data {
		margin-left: 12px;
		padding-left: 12px;
	}
}

@media screen and (max-width: 767px) {
	.contacts-list__item {
		display: none;
		flex-basis: 100%;
		max-width: 100%;
		margin-top: 16px;
		padding-top: 16px;
	}

	.contacts-list--open .contacts-list__item {
		display: flex;
	}

	.contacts-list__item:nth-child(1),
	.contacts-list__item:nth-child(2) {
		display: flex;
	}

	.contacts-list__item:nth-child(-n + 3) {
		margin-top: 16px;
		padding-top: 16px;
		border-top: 1px solid rgba(246, 247, 247, 0.25);
	}

	.contacts-list__item:first-child {
		margin-top: 0;
		padding-top: 0;
		border-top: none;
	}

	.contacts-list__data {
		margin-left: 0;
		padding-left: 0;
		border-left: none;
	}
}



.contact__title {
	margin: 0;
	font-weight: 700;
	font-size: 16px;
	color: var(--color-white);
}

.contact__list {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0;
	list-style: none;
}

.contact__item {
	margin-top: 7px;
	color: var(--color-white);
}

.contact__link {
	position: relative;
	text-decoration: none;
	color: inherit;
}

.contact__link::before {
	content: "";
	position: absolute;
	bottom: -3px;
	right: 0;
	width: 100%;
	height: 1px;
	background-color: var(--color-white);
	transform: scale3d(0, 1, 1);
	transition: transform 0.2s cubic-bezier(1, 0.68, 0.16, 0.9);
	transform-origin: 0 50%;
}

.contact__link:hover::before {
	transform: scale3d(1, 1, 1);
}

@media screen and (max-width: 1279px) {
	.contact__item {
		font-size: 14px;
	}
}

@media screen and (max-width: 767px) {
	.contact__item {
		font-size: 16px;
	}
}



.footer-menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: -8px;
	padding: 0;
	list-style: none;
}

.footer-menu__item {
	padding: 8px;
}

.footer-menu__link {
	position: relative;
	font-weight: 500;
	text-decoration: none;
	color: var(--color-white);
}

.footer-menu__link::before {
	content: "";
	position: absolute;
	bottom: -3px;
	right: 0;
	width: 100%;
	height: 1px;
	background-color: var(--color-white);
	transform: scale3d(0, 1, 1);
	transition: transform 0.2s cubic-bezier(1, 0.68, 0.16, 0.9);
	transform-origin: 0 50%;
}

.footer-menu__link:hover::before {
	transform: scale3d(1, 1, 1);
}

@media screen and (max-width: 1279px) {
	.footer-menu {
		justify-content: center;
	}
}

@media screen and (max-width: 767px) {
	.footer-menu {
		flex-direction: column;
		align-items: center;
		padding-top: 12px;
		padding-bottom: 12px;
	}

	.footer-menu__item {
		text-align: center;
	}
}



.social-list {
	display: flex;
	flex-wrap: wrap;
	margin: -8px;
	padding: 0;
	list-style: none;
}

.social-list__item {
	padding: 8px;
}

.social-list__link {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 32px;
	height: 32px;
	background-color: transparent;
	border-radius: 8px;
	transition: background-color var(--transition-default);
}

.social-list__link:hover {
	background-color: rgba(255, 255, 255, 0.1);
}



.footer-additional {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin: -4px -12px;
	padding: 0;
	list-style: none;
}

.footer-additional__item {
	padding: 4px 12px;
	text-align: right;
}

.footer-additional__link {
	font-weight: 400;
	font-size: 14px;
	color: var(--color-white);
	text-decoration: none;
}

@media screen and (max-width: 767px) {
	.footer-additional {
		flex-direction: column;
		margin: 0
	}

	.footer-additional__item {
		margin-bottom: 16px;
		padding: 0;
		text-align: left;
	}

	.footer-additional__item:last-child {
		margin-bottom: 0;
	}
}



.dev-link__underline {
	position: relative;
}

.dev-link__underline::before {
	content: "";
	position: absolute;
	bottom: -3px;
	right: 0;
	width: 100%;
	height: 1px;
	background-color: var(--color-white);
	transform: scale3d(0, 1, 1);
	transition: transform 0.2s cubic-bezier(1, 0.68, 0.16, 0.9);
	transform-origin: 0 50%;
}

.dev-link:hover .dev-link__underline::before {
	transform: scale3d(1, 1, 1);
}



.input-text {
	appearance: none;
	width: 100%;
	padding: 16px;
	background-color: var(--color-gray);
	border: 1px solid #e8e9e9;
	border-radius: 8px;
	transition: background-color var(--transition-default) ease, border-color var(--transition-default) ease;
}

.input-text:hover {
	border-color: #aaadb3;
}

.input-text:focus {
	outline: none;
	background-color: var(--color-white);
	border-color: #aaadb3;
}

.input-text[disabled] {
	opacity: 0.5;
}

.input-text--error {
	border-color: #ff353d;
}



.checkbox {
	display: flex;
	align-items: center;
}

.checkbox__label {
	position: relative;
	padding-left: 32px;
	font-size: 14px;
	cursor: pointer;
}

.checkbox__input[disabled] + .checkbox__label {
	pointer-events: none;
}

.checkbox__label::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 24px;
	height: 24px;
	background-color: var(--color-white);
	border: 2px solid var(--color-accent);
	border-radius: 8px;
	transform: translateY(-50%);
}

.checkbox__input--error:not(:checked) + .checkbox__label::before {
	border-color: #ff353d;
}

.checkbox__input:checked + .checkbox__label::before {
	background-color: var(--color-accent);
}

.checkbox__input[disabled] + .checkbox__label::before {
	border-color: #ededed;
}

.checkbox__label::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 24px;
	height: 24px;
	background-repeat: no-repeat;
	background-position: center;
	transform: translateY(-50%);
}

.checkbox__input:checked + .checkbox__label::after {
	background-image: url("data:image/svg+xml,%3Csvg width='14' height='12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m.75 6.867 2.59 3.547a2 2 0 0 0 3.26-.043L13.25.75' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	opacity: 1;
}

.checkbox__label:hover::after,
.checkbox__label:focus::after{
	background-image: url("data:image/svg+xml,%3Csvg width='14' height='12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m.75 6.867 2.59 3.547a2 2 0 0 0 3.26-.043L13.25.75' stroke='%230d635a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	opacity: 0.1;
}



.btn {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: 17px;
	font-weight: 700;
	font-size: 16px;
	line-height: 19px;
	color: var(--color-white);
	text-align: center;
	background-color: var(--color-accent);
	border: none;
	border-radius: var(--box-radius);
	cursor: pointer;
	transition: background-color var(--transition-default), color var(--transition-default);
}

.btn:hover,
.btn:focus {
	background-color: var(--color-accent-hover);
}

.btn:active {
	background-color: var(--color-accent);
}

.btn__icon {
	display: none;
	margin-right: 8px;
}

.btn--loading .btn__icon {
	display: block;
}

.btn__icon path {
	fill: var(--color-white);
	transform: rotate(0);
	transform-origin: center;
	transition: fill var(--transition-default) ease;
}

.btn--loading .btn__icon path {
	animation: round-load-btn 0.7s linear 0s infinite;
}

@keyframes round-load-btn {
	from {
		transform: rotate(0);
	}

	to {
		transform: rotate(360deg);
	}
}



.banner {
	display: flex;
	align-items: center;
	min-height: 800px;
	background-repeat: no-repeat;
	background-position: right top;
}

.banner--main {
	margin-top: -165px;
}

.banner__inner {
	width: 100%;
}

.banner__text-content {
	max-width: 700px;
	margin-top: 80px;
}

.banner__title {
	margin-top: 0;
	margin-bottom: 24px;
	font-weight: 700;
	font-size: 60px;
	line-height: 1.2;
	text-transform: uppercase;
	color: var(--color-accent);
	animation: fadeIn 1.4s both 0.4s;
}

@keyframes fadeIn {
	0% {
		opacity: 0
	}
	to {
		opacity: 1
	}
}

.banner__nav {
	margin-left: -8px;
}

@media screen and (max-width: 1023px) {
	.banner--main {
		margin-top: -110px;
	}

	.banner__text-content {
		max-width: 390px;
	}

	.banner__title {
		font-size: 36px;
	}
}

@media screen and (max-width: 767px) {
	.banner {
		min-height: unset;
		padding-top: 100vw;
		background-size: 100% auto;
		background-position: center top;
	}

	.banner__inner {
		margin-top: 140px;
	}

	.banner__text-content {
		max-width: unset;
		margin-top: 0;
	}

	.banner__title {
		margin-bottom: 16px;
		font-size: 44px;
	}
}

@media screen and (max-width: 499px) {
	.banner__inner {
		margin-top: 100px;
	}
}

@media screen and (max-width: 374px) {
	.banner__inner {
		margin-top: 80px;
	}

	.banner__title {
		font-size: 32px;
	}
}



.nav-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.nav-list__item {
	padding: 8px;
}

.nav-list__item:nth-child(1) {
	animation: fadeIn 1.4s both 1s;
}
.nav-list__item:nth-child(2) {
	animation: fadeIn 1.4s both 1.1s;
}
.nav-list__item:nth-child(3) {
	animation: fadeIn 1.4s both 1.2s;
}
.nav-list__item:nth-child(4) {
	animation: fadeIn 1.4s both 1.3s;
}
.nav-list__item:nth-child(5) {
	animation: fadeIn 1.4s both 1.4s;
}
.nav-list__item:nth-child(6) {
	animation: fadeIn 1.4s both 1.5s;
}
.nav-list__item:nth-child(7) {
	animation: fadeIn 1.4s both 1.6s;
}
.nav-list__item:nth-child(8) {
	animation: fadeIn 1.4s both 1.7s;
}
.nav-list__item:nth-child(9) {
	animation: fadeIn 1.4s both 1.8s;
}
.nav-list__item:nth-child(10) {
	animation: fadeIn 1.4s both 1.9s;
}
.nav-list__item:nth-child(11) {
	animation: fadeIn 1.4s both 2s;
}
.nav-list__item:nth-child(12) {
	animation: fadeIn 1.4s both 2.1s;
}

.nav-list__link {
	display: flex;
	align-items: center;
	padding: 16px;
	text-decoration: none;
	background-color: var(--color-gray);
	border-radius: var(--box-radius);
	transition: background-color var(--transition-default);
}

.nav-list__link:hover {
	background-color: var(--color-gray-hover);
}

.nav-list__link-picture {
	width: 16px;
	height: 17px;
	object-fit: contain;
	margin-right: 8px;
}

.nav-list__link-text {
	font-weight: 500;
	font-size: 16px;
	line-height: 1.19;
	color: #181818;
}

@media screen and (max-width: 767px) {
	.nav-list__link {
		padding: 12px 16px;
	}

	.nav-list__link-text {
		font-size: 14px;
	}
}



.intro {
	margin-top: 60px;
	padding: 40px;
	background: url("../images/intro-picture.png") no-repeat right center, linear-gradient(91.46deg, #0d635a 0%, #1f9c60 100%), var(--color-white);
	border-radius: var(--box-radius);
}

.intro__text-content {
	width: 62%;
}

.intro__title {
	margin-top: 0;
	margin-bottom: 16px;
	font-weight: 600;
	font-size: 32px;
	line-height: 1.2;
	color: var(--color-white);
}

.intro__desc {
	color: var(--color-white);
}

.intro__desc p {
	margin-top: 8px;
	margin-bottom: 8px;
}

.intro__desc p:first-child {
	margin-top: 0;
}

.intro__desc p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 1359px) {
	.intro__text-content {
		width: 55%;
	}
}

@media screen and (max-width: 1199px) {
	.intro {
		background-size: 45% auto, auto;
	}
}

@media screen and (max-width: 767px) {
	.intro {
		background: url("../images/intro-picture@mobile.png") no-repeat center 24px / 297px 81px, linear-gradient(91.46deg, #0d635a 0%, #1f9c60 100%), var(--color-white);
		padding: 24px;
	}

	@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
		.intro {
			background: url("../images/intro-picture@mobile@2x.png") no-repeat center 24px / 297px 81px, linear-gradient(91.46deg, #0d635a 0%, #1f9c60 100%), var(--color-white);
		}
	}

	.intro__text-content {
		width: 100%;
		margin-top: 98px;
	}

	.intro__title {
		font-size: 24px;
	}
}

@media screen and (max-width: 374px) {
	.intro {
		background-position-x: left;
	}
}



.preview-card {
	display: flex;
	align-items: center;
	margin-bottom: 32px;
	padding: 24px 24px 24px 40px;
	background-color: var(--color-gray);
	border-radius: var(--box-radius);
}

.preview-card__title {
	margin-top: 0;
	margin-bottom: 16px;
	font-weight: 700;
	font-size: 40px;
	line-height: 1.2;
	color: var(--color-accent);
}

.preview-card__desc {
	font-weight: 400;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
}

.preview-card__desc > p:first-child {
	margin-top: 0;
}

.preview-card__desc > p:last-child {
	margin-bottom: 0;
}

.preview-card__image {
	flex-shrink: 0;
	width: 42%;
	max-width: 506px;
	margin-left: 55px;
}

.preview-card__picture-container {
	width: 100%;
}

.preview-card__picture-container img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: var(--box-radius);
}

.preview-card__tags {
	margin: 16px -8px -8px;
}

@media screen and (max-width: 1023px) {
	.preview-card {
		padding-left: 24px;
	}

	.preview-card__image {
		margin-left: 32px;
	}
}

@media screen and (max-width: 767px) {
	.preview-card {
		flex-direction: column-reverse;
	}

	.preview-card__image {
		width: 100%;
		max-width: unset;
		margin-left: 0;
		margin-bottom: 16px;
	}

	.preview-card__picture-container img {
		border-radius: var(--box-radius);
	}

	.preview-card__title {
		font-size: 24px;
	}

	.preview-card__tags {
		margin: 11px -5px -5px;
	}
}



.tags-list {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	list-style: none;
}

.tags-list__item {
	display: flex;
	align-items: center;
	padding: 8px;
}

.tags-list__inner {
	display: flex;
	align-items: center;
	padding: 16px;
	background-color: var(--color-white);
	border-radius: var(--box-radius);
}

.tags-list__item-picture {
	width: 16px;
	height: 17px;
	object-fit: contain;
	margin-right: 8px;
}

.tags-list__item-text {
	font-weight: 500;
	font-size: 16px;
	line-height: 1.19;
	color: var(--color-primary);
}

@media screen and (max-width: 767px) {
	.tags-list__item {
		padding: 5px;
	}

	.tags-list__inner {
		padding: 12px 16px;
	}
}



.description-card {
	margin-bottom: 60px;
	padding: 40px;
	background-color: var(--color-gray);
	border-radius: var(--box-radius);
}

.double-cards-picture .description-card {
	height: 100%;
	margin-bottom: 0;
}

.description-card__title {
	margin-top: 0;
	margin-bottom: 16px;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.2;
	color: var(--color-primary);
}

.description-card__text {
	font-weight: 400;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
}

.description-card__text > p:first-child {
	margin-top: 0;
}

.description-card__text > p:last-child {
	margin-bottom: 0;
}

.description-card__toggle {
	display: none;
}

@media screen and (max-width: 1023px) {
	.description-card {
		padding: 24px;
	}
}

@media screen and (max-width: 767px) {
	.description-card--partial-show .description-card__text {
		height: 265px;
		overflow: hidden;
	}

	.description-card--partial-show .description-card__text--open {
		height: auto;
	}

	.description-card__toggle {
		margin-top: 16px;
		display: flex;
	}
}



.sub-title {
	margin-top: 0;
	margin-bottom: 32px;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.2;
	color: var(--color-primary);
}

.sub-title--orientation {
	margin-top: 60px;
}

@media screen and (max-width: 1023px) {
	.sub-title {
		margin-bottom: 24px;
	}
}



.double-cards {
	display: flex;
	flex-wrap: wrap;
	margin: -12px -12px 12px;
}

.double-cards__item {
	flex: 0 0 50%;
	width: 100%;
	max-width: 50%;
	padding: 12px;
}

@media screen and (max-width: 767px) {
	.double-cards {
		flex-direction: column;
		margin: 0 0 60px 0;
	}

	.double-cards__item {
		flex-basis: 100%;
		max-width: unset;
		margin-bottom: 32px;
		padding: 0;
	}

	.double-cards__item:last-child {
		margin-bottom: 0;
	}
}



.double-cards-picture {
	display: flex;
	flex-wrap: wrap;
	margin: -12px -12px 12px;
}

.double-cards-picture__item {
	flex: 0 0 50%;
	width: 100%;
	max-width: 50%;
	padding: 12px;
}

@media screen and (max-width: 1023px) {
	.double-cards-picture {
		flex-direction: column-reverse;
		margin: 0 0 24px 0;
	}

	.double-cards-picture__item {
		flex-basis: 100%;
		max-width: unset;
		margin-top: 16px;
		padding: 0;
	}

	.double-cards-picture__item:last-child {
		margin-top: 0;
	}
}



.top-image-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 40px;
	background-color: var(--color-gray);
	border-radius: var(--box-radius);
}

.top-image-card__image {
	align-self: center;
	width: 100%;
	margin-bottom: 32px;
}

.top-image-card__picture-container {
	width: 100%;
}

.top-image-card__picture-container img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.top-image-card__text {
	width: 100%;
}

.top-image-card__title {
	margin-top: 0;
	margin-bottom: 16px;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.2;
	color: var(--color-primary);
}

.top-image-card__desc {
	font-weight: 400;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
}

.top-image-card__desc > p:first-child {
	margin-top: 0;
}

.top-image-card__desc > p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 1023px) {
	.top-image-card {
		padding: 24px;
	}
}

@media screen and (max-width: 767px) {
	.top-image-card__image {
		margin-bottom: 24px;
	}
}



.directions-list {
	display: flex;
	flex-wrap: wrap;
	margin: -10px -16px;
	padding: 0;
	list-style: none;
}

.directions-list__item {
	flex: 0 0 50%;
	display: block;
	width: 100%;
	max-width: 50%;
	padding: 10px 16px;
}

.directions-list--3 .directions-list__item {
	flex-basis: 33.333333%;
	max-width: 33.333333%;
}

@media screen and (max-width: 1279px) {
	.directions-list {
		margin: -8px;
	}

	.directions-list__item {
		padding: 8px;
	}
}

@media screen and (max-width: 1023px) {
	.directions-list__item,
	.directions-list--3 .directions-list__item {
		flex-basis: 100%;
		max-width: 100%;
	}
}



.direction-card {
	display: flex;
	height: 100%;
	padding: 24px;
	text-decoration: none;
	background-color: var(--color-gray);
	border-radius: var(--box-radius);
	transition: background-color var(--transition-default);
}

.direction-card:hover,
.direction-card:focus {
	background-color: var(--color-accent);
}

.direction-card__desc-box {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.direction-card__title {
	margin-top: 0;
	margin-bottom: 16px;
	font-weight: 500;
	font-size: 20px;
	line-height: 1.25;
	color: var(--color-primary);
	transition: color var(--transition-default);
}

.direction-card:hover .direction-card__title,
.direction-card:focus .direction-card__title {
	color: var(--color-white);
}

.direction-card__desc {
	margin-bottom: 16px;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.2;
	color: var(--color-primary);
	transition: color var(--transition-default);
}

.direction-card__desc > p:first-child {
	margin-top: 0;
}

.direction-card__desc > p:last-child {
	margin-bottom: 0;
}

.direction-card:hover .direction-card__desc,
.direction-card:focus .direction-card__desc {
	color: var(--color-white);
}

.direction-card__arrow {
	margin-top: auto;
}

.direction-card__arrow path {
	fill: var(--color-accent);
	transition: fill var(--transition-default);
}

.direction-card:hover .direction-card__arrow path,
.direction-card:focus .direction-card__arrow path {
	fill: var(--color-white);
}

.direction-card__period-box {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22%;
	min-width: 70px;
	margin-left: 10px;
	padding-left: 10px;
	text-align: center;
	color: var(--color-gray);
	border-left: 1px solid var(--color-gray);
	transition: border-color var(--transition-default), color var(--transition-default);
}

.direction-card:hover .direction-card__period-box,
.direction-card:focus .direction-card__period-box {
	color: var(--color-white);
	border-color: var(--color-white);
}

.direction-card__period {
	padding-left: 14px;
}

.direction-card__period-time {
	margin: 0;
	font-weight: 700;
	font-size: 40px;
	line-height: 1.27;
}

.direction-card__period-unit {
	margin: 0;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.2;
}

@media screen and (max-width: 1279px) {
	.direction-card__title {
		font-size: 18px;
	}
}

@media screen and (max-width: 1023px) {
	.direction-card__title {
		font-size: 20px;
	}

	.direction-card__period-box {
		color: var(--color-accent);
		border-color: var(--color-accent);
	}
}

@media screen and (max-width: 767px) {
	.direction-card {
		position: relative;
	}

	.direction-card__period-box {
		position: absolute;
		right: 24px;
		bottom: 24px;
		width: auto;
		min-width: unset;
		margin-left: 0;
		padding-left: 0;
		border-left: none;
	}

	.direction-card__period {
		padding-left: 0;
	}

	.direction-card__desc {
		margin-right: 80px;
	}

	.direction-card__arrow {
		margin-right: 80px;
	}
}



.scope-list {
	display: flex;
	flex-wrap: wrap;
	margin: -4px -4px 12px -4px;
	padding: 0;
	list-style: none;
}

.scope-list__item {
	padding: 4px;
}

.scope-list__item-text {
	display: inline-block;
	padding: 8px;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.2;
	color: var(--color-white);
	background-color: var(--color-accent);
	border-radius: 4px;
	transition: color var(--transition-default), background-color var(--transition-default);
}

.direction-card:hover .scope-list__item-text,
.direction-card:focus .scope-list__item-text {
	color: var(--color-primary);
	background-color: var(--color-white);
}

@media screen and (max-width: 767px) {
	.scope-list__item-text {
		padding: 8px 12px;
	}
}



.pre-footer {
	width: 100%;
	max-width: 1024px;
	margin: 60px auto 100px;
}

.pre-footer__list {
	display: flex;
	flex-wrap: wrap;
	margin: -12px;
}

.pre-footer__item {
	flex: 0 0 50%;
	width: 100%;
	max-width: 50%;
	padding: 12px;
}

@media screen and (max-width: 1023px) {
	.pre-footer__list {
		margin: -8px;
	}

	.pre-footer__item {
		flex-basis: 100%;
		max-width: 100%;
		padding: 8px;
	}
}



.enroll {
	height: 100%;
	padding: 40px;
	background: linear-gradient(91.46deg, #0D635A 0%, #1F9C60 100%), #F9FAFA;
	border-radius: var(--box-radius);
}

.enroll__title {
	margin-top: 0;
	margin-bottom: 32px;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.2;
	color: var(--color-white);
}

@media screen and (max-width: 767px) {
	.enroll {
		padding: 24px;
	}

	.enroll__title {
		margin-bottom: 24px;
	}
}



.enroll-list {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.enroll-list__item {
	margin-bottom: 8px;
}

.enroll-list__item:last-child {
	margin-bottom: 0;
}

.enroll-list__item--wide {
	width: 100%;
}

.enroll-list__item a {
	display: inline-block;
}

.enroll-list__link-btn {
	width: 100%;
	padding: 17px;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
	text-align: center;
	text-decoration: none;
	background-color: var(--color-white);
	border-radius: var(--box-radius);
	transition: background-color var(--transition-default);
}

.enroll-list__link-btn:hover,
.enroll-list__link-btn:focus {
	background-color: var(--color-gray);
}

.enroll-list__link {
	padding: 8px;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.2;
	text-decoration: underline;
	color: rgba(255, 255, 255, 0.8);
	transition: color var(--transition-default);
}

.enroll-list__link:hover,
.enroll-list__link:focus {
	color: rgba(255, 255, 255, 1);
}



.useful-block {
	display: flex;
	flex-direction: column;
	padding: 40px;
	background-color: var(--color-gray);
	border-radius: var(--box-radius);
}

.useful-block__title {
	margin-top: 0;
	margin-bottom: 24px;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.2;
	color: var(--color-primary);
}

@media screen and (max-width: 767px) {
	.useful-block {
		padding: 24px;
	}

	.useful-block__title {
		margin-bottom: 16px;
	}
}



.useful-link-list {
	margin: auto 0 0;
	padding: 0;
	list-style: none;
}

.useful-link-list__item {
	margin-bottom: 8px;
}

.useful-link-list__item:last-child {
	margin-bottom: 0;
}

.useful-link-list__item a {
	display: inline-block;
	padding: 8px;
}



.benefits-list-wrapper {
	margin-bottom: 60px;
}

.benefits-list {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.benefits-list__item {
	flex-basis: 100%;
	margin-right: 32px;
}

.benefits-list__item:last-child {
	margin-right: 0;
}

.benefits-list__item-box {
	display: flex;
	flex-direction: column;
	align-items: center;
	height: 100%;
	padding: 22px 16px;
	background-color: var(--color-gray);
	border-radius: var(--box-radius);
}

.benefits-list__picture-box {
	width: 60px;
	height: 60px;
	margin-bottom: 18px;
}

.benefits-list__picture-box img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.benefits-list__desc {
	font-weight: 600;
	font-size: 16px;
	line-height: 1.2;
	text-align: center;
	color: var(--color-primary);
}

@media screen and (max-width: 1279px) {
	.benefits-list__item {
		margin-right: 16px;
	}
}

@media screen and (max-width: 1023px) {
	.benefits-list-wrapper {
		width: 100vw;
		overflow-x: scroll;
		margin-left: -16px;
		margin-bottom: 44px;
		padding-left: 16px;
		padding-bottom: 16px;
		-webkit-overflow-scrolling: touch;
	}

	.benefits-list__item {
		flex: 0 0 234px;
		margin-right: 24px;
	}
}



.desc-picture-card {
	display: flex;
	align-items: center;
	margin-bottom: 60px;
	padding: 35px 100px 35px 40px;
	background-color: var(--color-gray);
	border-radius: var(--box-radius);
}

.desc-picture-card__desc-box {
	flex-grow: 1;
}

.desc-picture-card__title {
	margin-top: 0;
	margin-bottom: 16px;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.2;
	color: var(--color-primary);
}

.desc-picture-card__desc {
	font-weight: 400;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
}

.desc-picture-card__desc > p:first-child {
	margin-top: 0;
}

.desc-picture-card__desc > p:last-child {
	margin-bottom: 0;
}

.desc-picture-card__picture-box {
	flex-shrink: 0;
	width: 104px;
	height: 104px;
	margin-left: 24px;
}

.desc-picture-card__picture-box img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

@media screen and (max-width: 1023px) {
	.desc-picture-card {
		padding-right: 40px;
	}
}

@media screen and (max-width: 767px) {
	.desc-picture-card {
		flex-direction: column-reverse;
		padding: 24px;
	}

	.desc-picture-card__picture-box {
		margin-left: 0;
		margin-bottom: 16px;
	}
}



@media screen and (max-width: 767px) {
	.table-wrap {
		padding-bottom: 16px;
		overflow-x: auto;
	}
}



.light-two-table {
	border: none;
}

.light-two-table tr {
	border-bottom: 1px solid #b7b8b8;
}

.light-two-table tr:last-child {
	border-bottom: none;
}

.light-two-table td {
	width: 55%;
	padding: 12px 0;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
	text-align: left;
	vertical-align: top;
	border-bottom: none;
	border-right: none;
}

.light-two-table td:last-child {
	width: 45%;
	padding-left: 40px;
	font-weight: 700;
	text-align: right;
}

@media screen and (max-width: 767px) {
	.light-two-table {
		width: 100%;
	}

	.light-two-table tr {
		display: flex;
		flex-direction: column;
	}

	.light-two-table td,
	.light-two-table td:last-child {
		width: 100%;
		padding: 4px 0;
	}

	.light-two-table td:first-child {
		padding-top: 16px;
	}

	.light-two-table td:last-child {
		padding-left: 0;
		padding-bottom: 16px;
		text-align: left;
	}
}



.picture-card {
	width: 100%;
	height: 100%;
}

.picture-card img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: var(--box-radius);
}



.notice-block {
	position: relative;
	margin-bottom: 36px;
	padding: 40px 100px 40px 40px;
	background-color: var(--color-gray);
	border-radius: var(--box-radius);
}

.notice-block::after {
	content: url("data:image/svg+xml,%3Csvg width='40' height='40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 0C8.946 0 0 8.945 0 20c0 11.054 8.945 20 20 20 11.054 0 20-8.945 20-20C40 8.946 31.055 0 20 0Zm0 37.21c-9.49 0-17.21-7.72-17.21-17.21 0-9.49 7.72-17.21 17.21-17.21 9.49 0 17.21 7.72 17.21 17.21 0 9.49-7.72 17.21-17.21 17.21Z' fill='%23474747'/%3E%3Cpath d='M20 16.672c-1.184 0-2.026.5-2.026 1.237v10.03c0 .632.842 1.264 2.027 1.264 1.132 0 2.053-.632 2.053-1.264V17.91c0-.737-.921-1.237-2.053-1.237ZM20 10.485c-1.21 0-2.158.869-2.158 1.87 0 1 .948 1.895 2.159 1.895 1.184 0 2.132-.895 2.132-1.896 0-1-.948-1.869-2.133-1.869Z' fill='%230D635A'/%3E%3C/svg%3E");
	position: absolute;
	top: 50%;
	right: 40px;
	width: 40px;
	height: 40px;
	transform: translateY(-50%);
}

.notice-block__desc {
	font-weight: 400;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
}

.notice-block__desc > p:first-child {
	margin-top: 0;
}

.notice-block__desc > p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {
	.notice-block {
		padding: 80px 24px 24px;
	}

	.notice-block::after {
		top: 24px;
		left: 24px;
		right: auto;
		transform: translateY(0);
	}
}



.direction-tag-subject {
	display: flex;
	flex-wrap: wrap;
	margin: -8px;
	padding: 0;
	list-style: none;
}

.direction-tag-subject li {
	padding: 8px;
}

.direction-tag-subject li > span {
	display: block;
	padding: 8px 16px;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-accent);
	background-color: var(--color-gray);
	border: 1px solid var(--color-accent);
	border-radius: 8px;
}



.double-slider {
	display: flex;
}

.double-slider__text-box {
	position: relative;
	width: 59.07%;
	padding: 40px 40px 100px 40px;
	background-color: var(--color-gray);
	border-radius: var(--box-radius);
}

.double-slider__text-box .slick-arrow {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: absolute;
	bottom: 40px;
	display: block;
	width: 36px;
	height: 36px;
	margin: 0;
	padding: 0;
	color: transparent;
	background-color: var(--color-accent);
	background-repeat: no-repeat;
	background-position: center;
	border: none;
	border-radius: 50%;
	cursor: pointer;
	transition: background-color var(--transition-default);
}

.double-slider__text-box .slick-prev {
	left: 40px;
	background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m7.219 8 2.828 2.829a.666.666 0 0 1-.943.943L5.793 8.458a.649.649 0 0 1 0-.918L9.105 4.23a.667.667 0 0 1 .943.943L7.217 8Z' fill='%23fff'/%3E%3C/svg%3E");
}

.double-slider__text-box .slick-next {
	right: 40px;
	background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.781 8 5.953 5.171a.667.667 0 0 1 .943-.943l3.312 3.313a.649.649 0 0 1 0 .918L6.895 11.77a.666.666 0 1 1-.943-.943L8.783 8Z' fill='%23fff'/%3E%3C/svg%3E");
}

.double-slider__text-box .slick-arrow:hover,
.double-slider__text-box .slick-arrow:focus {
	background-color: var(--color-accent-hover);
}

.double-slider__text-box .slick-arrow:active {
	background-color: var(--color-accent);
}

.double-slider-text__title {
	margin-top: 0;
	margin-bottom: 16px;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.2;
	color: var(--color-primary);
}

.double-slider-text__desc {
	font-weight: 400;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
}

.double-slider-text__desc > p:first-child {
	margin-top: 0;
}

.double-slider-text__desc > p:last-child {
	margin-bottom: 0;
}

.double-slider__image-box {
	width: 40.93%;
	padding-left: 32px;
}

.double-slider__image-box .slick-list,
.double-slider__image-box .slick-track {
	height: 100%;
}

.double-slider__picture-container img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: var(--box-radius);
}

@media screen and (max-width: 1023px) {
	.double-slider {
		flex-direction: column-reverse;
	}

	.double-slider__text-box {
		width: 100%;
		padding: 84px 24px 24px 24px;
	}

	.double-slider__text-box .slick-arrow {
		top: 24px;
		bottom: auto;
	}

	.double-slider__text-box .slick-prev {
		left: 24px;
	}

	.double-slider__text-box .slick-next {
		right: 24px;
	}

	.double-slider__image-box {
		width: 100%;
		padding-left: 0;
		padding-bottom: 32px;
	}
}



.photo-gallery {
	margin-bottom: 60px;
}

.photo-gallery:not(.slick-initialized) {
	display: flex;
	overflow-x: hidden;
}

.photo-gallery.slick-initialized {
	margin-right: -70px;
}

.photo-gallery.slick-initialized::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	width: 100px;
	height: 100%;
	background: linear-gradient(270deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);
	pointer-events: none;
}

.photo-gallery .slick-slide {
	width: 300px;
	height: 300px;
	margin: 0 12px;
}

.photo-gallery-item__link {
	display: block;
	width: 100%;
	height: 100%;
}

.photo-gallery-item__link img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: var(--box-radius);
}

.photo-gallery .slick-arrow {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	z-index: 1;
	position: absolute;
	top: 50%;
	display: block;
	width: 36px;
	height: 36px;
	margin: 0;
	padding: 0;
	color: transparent;
	background-color: var(--color-accent);
	background-repeat: no-repeat;
	background-position: center;
	border: none;
	border-radius: 50%;
	cursor: pointer;
	transform: translateY(-50%);
	transition: background-color var(--transition-default);
}

.photo-gallery .slick-prev {
	left: -18px;
	background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m7.219 8 2.828 2.829a.666.666 0 0 1-.943.943L5.793 8.458a.649.649 0 0 1 0-.918L9.105 4.23a.667.667 0 0 1 .943.943L7.217 8Z' fill='%23fff'/%3E%3C/svg%3E");
}

.photo-gallery .slick-next {
	right: 52px;
	background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.781 8 5.953 5.171a.667.667 0 0 1 .943-.943l3.312 3.313a.649.649 0 0 1 0 .918L6.895 11.77a.666.666 0 1 1-.943-.943L8.783 8Z' fill='%23fff'/%3E%3C/svg%3E");
}

@media screen and (max-width: 1023px) {
	.photo-gallery.slick-initialized {
		margin-right: -16px;
	}

	.photo-gallery.slick-initialized::after {
		width: 58px;
	}

	.photo-gallery .slick-prev {
		display: none !important;
	}

	.photo-gallery .slick-next {
		right: 16px;
	}
}

@media screen and (max-width: 374px) {
	.photo-gallery.slick-initialized::after {
		display: none;
	}
}



.direction-info {
	margin-bottom: 60px;
}

.direction-info__filter {
	margin-bottom: 32px;
}



.direction-filter__fields {
	display: flex;
	flex-wrap: wrap;
	margin-top: -8px;
	margin-bottom: -8px;
}

.direction-filter__item {
	position: relative;
	display: flex;
	flex-direction: column;
	margin-right: 24px;
	padding-right: 25px;
	padding-top: 8px;
	padding-bottom: 8px;
}

.direction-filter__item:last-of-type {
	margin-right: 0;
	padding-right: 0;
}

.direction-filter__item:not(:last-of-type)::after {
	content: "";
	position: absolute;
	bottom: 8px;
	right: 0;
	width: 1px;
	height: 35px;
	background-color: var(--color-gray-hover);
}

.direction-filter__title {
	margin-bottom: 16px;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
}

.direction-filter__radio-list {
	display: flex;
}

.direction-filter__label {
	margin-right: 8px;
	flex-shrink: 0;
}

.direction-filter__label:last-child {
	margin-right: 0;
}

@media screen and (max-width: 1023px) {
	.direction-filter__fields {
		flex-direction: column;
		width: 100vw;
		margin-left: -16px;
		overflow: hidden;
	}

	.direction-filter__item {
		width: 100%;
		margin-right: 0;
		padding-right: 0;
	}

	.direction-filter__item:not(:last-of-type)::after {
		display: none;
	}

	.direction-filter__title {
		padding-left: 16px;
		padding-right: 16px;
	}

	.direction-filter__radio-list {
		flex-wrap: nowrap;
		width: 100%;
		padding-left: 16px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.direction-filter__radio-list::-webkit-scrollbar {
		display: none;
	}
}



.filter-radio > input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	clip: rect(0 0 0 0);
	overflow: hidden;
	white-space: nowrap;
}

.filter-radio > span {
	display: inline-flex;
	padding: 8px 16px;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
	background-color: var(--color-white);
	border: 1px solid #86b1ad;
	border-radius: 8px;
	cursor: pointer;
	user-select: none;
	transition: color var(--transition-default), background-color var(--transition-default), border-color var(--transition-default);
}

.filter-radio > input:checked + span {
	color: var(--color-white);
	background-color: var(--color-accent);
	border-color: var(--color-accent);
}

.filter-radio > input[type="radio"]:not(:disabled):not(:checked) + span:hover {
	color: var(--color-white);
	background-color: var(--color-accent);
	border-color: var(--color-accent);
}

.filter-radio > input[type="checkbox"]:not(:disabled):not(:checked) + span:hover {
	border-color: var(--color-accent-hover);
}

.filter-radio > input[type="radio"]:focus + span {
	color: var(--color-white);
	background-color: var(--color-accent);
	border-color: var(--color-accent);
}

.filter-radio > input:disabled + span {
	background-color: var(--color-gray);
	border-color: var(--color-gray-hover);
	cursor: auto;
}



.direction-data {
	display: flex;
	margin: 0;
	padding: 24px 40px;
	background: linear-gradient(91.46deg, #0D635A 0%, #1F9C60 100%);
	border-radius: var(--box-radius);
	list-style: none;
}

.direction-data__item {
	flex-basis: 100%;
	margin-right: 12px;
	padding-right: 12px;
	border-right: 1px solid rgba(255, 255, 255, 0.32);
}

.direction-data__item:last-child {
	margin-right: 0;
	padding-right: 0;
	border-right: none;
}

.direction-data__box {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	height: 100%;
	color: var(--color-white);
	text-align: center;
}

.direction-data__value {
	margin-bottom: 12px;
	font-weight: 700;
	font-size: 30px;
	line-height: 1.2;
}

.direction-data__desc {
	font-weight: 400;
	font-size: 14px;
	line-height: 1.2;
}

@media screen and (max-width: 1279px) {
	.direction-data {
		padding-left: 24px;
		padding-right: 24px;
	}

	.direction-data__item {
		margin-right: 8px;
		padding-right: 8px;
	}

	.direction-data__value {
		font-size: 24px;
	}
}

@media screen and (max-width: 1023px) {
	.direction-data {
		flex-wrap: wrap;
	}

	.direction-data__item {
		flex: 0 0 50%;
		width: 100%;
		max-width: 50%;
		margin: 0;
		padding: 24px 8px;
		border-right: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.32);
	}

	.direction-data__item:nth-last-child(-n+2) {
		border-bottom: none;
	}

	.direction-data__box {
		position: relative;
	}

	.direction-data__item:nth-child(odd) .direction-data__box::after {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		right: -8px;
		width: 1px;
		background-color: rgba(255, 255, 255, 0.32);
	}
}

@media screen and (max-width: 767px) {
	.direction-data {
		padding: 0 24px;
	}

	.direction-data__value {
		font-size: 20px;
	}

	.direction-data__desc {
		font-size: 12px;
	}
}



.search-directions {
	padding-top: 60px;
	margin-bottom: 130px;
}

.search-directions__top {
	display: flex;
	align-items: center;
	margin-bottom: 16px;
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(29, 149, 96, 0.5);;
}

.search-directions__search {
	flex-shrink: 0;
	width: 44%;
	min-width: 250px;
	margin-right: 16px;
}

.search-directions__filter-btn {
	display: none;
}

.search-directions__city {
	margin-left: auto;
}

.search-directions__city-list {
	display: flex;
	flex-wrap: wrap;
	margin: -4px;
}

.search-directions__city-label {
	margin: 4px;
	flex-shrink: 0;
}

.search-directions__city-label:last-child {
	margin-right: 0;
}

.search-directions__body {
	display: flex;
	align-items: flex-start;
}

.search-directions__filter {
	flex: 0 0 235px;
	margin-right: 32px;
}

.search-directions__list {
	flex-grow: 1;
}

.search-directions__main-list .directions-list__item:not(:nth-child(-n+10)) {
	display: none;
}

.search-directions__main-list--open .directions-list__item:not(:nth-child(-n+10)) {
	display: block;
}

.search-directions__list-title {
	margin-top: 0;
	margin-bottom: 24px;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.2;
	color: var(--color-primary);
}

.search-directions__list-toggle {
	width: 100%;
	margin-top: 24px;
	padding: 8px 16px;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.2;
	color: var(--color-primary);
	text-align: center;
	background-color: var(--color-gray);
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: background-color var(--transition-default);
}

.search-directions__list-toggle:hover {
	background-color: var(--color-gray-hover);
}

.search-directions__list-toggle:active {
	background-color: var(--color-gray);
}

@media screen and (max-width: 1279px) {
	.search-directions__main-list .directions-list__item {
		flex-basis: 100%;
		max-width: 100%;
	}
}

@media screen and (max-width: 1023px) {
	.search-directions__top {
		position: relative;
		display: block;
		width: 100vw;
		margin-left: -16px;
		overflow: hidden;
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: 0;
	}

	.search-directions__search {
		display: flex;
		align-items: center;
		width: 100%;
		min-width: unset;
		margin-bottom: 16px;
		padding-left: 16px;
		padding-right: 16px;
	}

	.search-directions__filter-btn {
		appearance: none;
		flex-shrink: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 48px;
		height: 48px;
		margin-left: 16px;
		padding: 12px;
		background-color: var(--color-white);
		border: 1px solid #e8e9e9;
		border-radius: 8px;
		cursor: pointer;
	}

	.search-directions__city {
		display: flex;
		flex-direction: column;
		width: 100%;
		margin-left: 0;
	}

	.search-directions__city-list {
		flex-wrap: nowrap;
		flex: 0 0 auto;
		width: 100%;
		margin: -4px;
		padding-left: 16px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.search-directions__city-list::-webkit-scrollbar {
		display: none;
	}

	.search-directions__body {
		--filter-animation-time: 0.4s;
		position: relative;
		margin-top: 16px;
		padding-top: 16px;
		border-top: 1px solid rgba(29, 149, 96, 0.5);
	}

	.search-directions__filter {
		z-index: 200;
		position: fixed;
		top: 0;
		right: 0;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 100vh;
		margin: 0;
		padding-bottom: 120px;
		background-color: #ffffff;
		opacity: 1;
		visibility: hidden;
		overflow-y: auto;
		transform: translateX(-100%);
		-webkit-overflow-scrolling: touch;
		transition: 0s, var(--filter-animation-time), var(--filter-animation-time);
	}

	.search-directions__body--open .search-directions__filter {
		visibility: visible;
		transform: translateX(0);
		transition: transform var(--filter-animation-time) cubic-bezier(0.65, 0.05, 0.36, 1), opacity 0s, visibility 0s
	}

	.search-directions__body::before {
		content: "";
		position: fixed;
		z-index: 1;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		background-color: #000000;
		opacity: 0.5;
		transition: opacity var(--filter-animation-time), visibility var(--filter-animation-time);
	}

	.search-directions__body:not(.search-directions__body--open)::before {
		opacity: 0;
		visibility: hidden;
	}
}

@media screen and (max-width: 1023px) {
	.search-directions {
		margin-bottom: 60px;
	}
}



.search {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 56px;
}

.search__input {
	appearance: none;
	height: 100%;
	width: 100%;
	padding: 0 48px 0 16px;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
	background-color: var(--color-gray);
	border: 1px solid #e8e9e9;
	border-radius: 8px;
	transition: background-color var(--transition-default), border-color var(--transition-default);
}

.search__input:hover {
	border-color: #aaadb3;
}

.search__input:focus {
	outline: none;
	background-color: var(--color-white);
	border-color: #aaadb3;
}

.search__input[disabled] {
	opacity: 0.5;
}

.search__btn {
	position: absolute;
	top: 50%;
	right: 0;
	display: flex;
	align-items: center;
	height: 100%;
	margin-left: 4px;
	padding: 0 16px 0 8px;
	color: var(--color-accent);
	background-color: transparent;
	border: none;
	cursor: pointer;
	transform: translateY(-50%);
	transition: color var(--transition-default);
}

.search__btn:hover,
.search__btn:focus {
	color: var(--color-accent-hover);
}

.search__icon path {
	fill: currentColor;
}

@media screen and (max-width: 1023px) {
	.search {
		flex-grow: 1;
		height: 48px;
	}
}



.property-filter__type {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--color-gray-hover);
}

.property-filter__type:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.property-filter__toggle {
	appearance: none;
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
	background-color: transparent;
	border: none;
	transition: color var(--transition-default);
}

button.property-filter__toggle {
	cursor: pointer;
}

button.property-filter__toggle:hover {
	color: var(--color-accent);
}

button.property-filter__toggle:active {
	color: var(--color-primary);
}

.property-filter__toggle svg {
	margin-right: 8px;
	transform: rotate(180deg);
	transition: transform var(--transition-default);
}

.property-filter__type--open .property-filter__toggle svg {
	transform: rotate(0);
}

.property-filter__toggle svg path {
	fill: currentColor;
}

.property-filter__checkbox-list {
	display: none;
	flex-wrap: wrap;
	margin: 12px -4px -4px;
}

.property-filter__type--open .property-filter__checkbox-list {
	display: flex;
}

.property-filter__checkbox-label {
	padding: 4px;
}

.property-filter__checkbox-label > span {
	padding: 8px;
	border-color: var(--color-accent);
}

.property-filter__checkbox-label > input[type="radio"]:not(:disabled):not(:checked) + span:hover {
	color: var(--color-primary);
	background-color: var(--color-white);
	border-color: var(--color-accent-hover);
}

.property-filter__controls-list {
	display: flex;
	flex-direction: column;
	margin-top: 20px;
}

.property-filter__control {
	margin: 0 0 8px 0;
	padding: 8px 16px;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.2;
	color: var(--color-primary);
	text-align: center;
	background-color: var(--color-gray);
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: background-color var(--transition-default);
}

.property-filter__control:last-of-type {
	margin-bottom: 0;
}

.property-filter__control:hover {
	background-color: var(--color-gray-hover);
}

.property-filter__control:active {
	background-color: var(--color-gray);
}

.property-filter__control--accent {
	color: var(--color-white);
	background-color: var(--color-accent);
}

.property-filter__control--accent:hover {
	background-color: var(--color-accent-hover);
}

.property-filter__control--accent:active {
	background-color: var(--color-accent);
}

.property-filter__header {
	display: none;
}

@media screen and (max-width: 1023px) {
	.property-filter__header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 16px;
		padding: 24px 16px;
		border-bottom: 1px solid var(--color-gray-hover);
	}

	.property-filter__header-name {
		margin: 0;
		font-weight: 700;
		font-size: 16px;
		line-height: 1.2;
		color: var(--color-primary);
	}

	.property-filter__btn-close {
		appearance: none;
		flex-shrink: 0;
		display: flex;
		align-items: center;
		margin: -5px;
		padding: 5px;
		font-weight: 400;
		color: var(--color-primary);
		background-color: transparent;
		border: none;
		cursor: pointer;
	}

	.property-filter__type {
		padding-left: 16px;
		padding-right: 16px;
	}

	.property-filter__type:last-of-type {
		margin-bottom: 20px;
		padding-bottom: 20px;
		border-bottom: 1px solid var(--color-gray-hover);
	}

	.property-filter__controls-list {
		margin-top: 24px;
		padding-left: 16px;
		padding-right: 16px;
	}

	.property-filter__control {
		margin-bottom: 16px;
		padding-top: 16px;
		padding-bottom: 16px;
	}
}



.popup {
	z-index: 100;
	position: fixed;
	top: 50%;
	left: 50%;
	width: 660px;
	padding: 40px;
	background-color: var(--color-white);
	border-radius: var(--box-radius);
	visibility: hidden;
	opacity: 0;
	transform: translate(-50%, -55%);
	pointer-events: none;
	transition-property: visibility, opacity, transform;
	transition-duration: var(--transition-default);
	transition-timing-function: ease;
	transition-delay: 0s;
}

.popup--show {
	visibility: visible;
	opacity: 1;
	transform: translate(-50%, -50%);
	pointer-events: auto;
}

@media screen and (max-width: 767px) {
	.popup {
		width: 90%;
		padding: 24px;
	}
}



.popup-overlay {
	z-index: 99;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0);
	visibility: hidden;
	transition: background-color var(--transition-default), visibility var(--transition-default);
}

.popup-overlay--show {
	background-color: rgba(0, 0, 0, 0.75);
	visibility: visible;
}



.subscribe-result__content {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.subscribe-result__msg {
	margin: 0 0 36px 0;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.2;
	color: var(--color-primary);
	text-align: center;
}

.subscribe-result__close {
	max-width: 300px;
}

@media screen and (max-width: 767px) {
	.subscribe-result__msg {
		font-size: 20px;
	}
}