:root
{
	--accordion-arrow:url("data:image/svg+xml,%3Csvg width='39' height='39' viewBox='0 0 39 39' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M21 0H19V18H0V20H19V39H21V20H39V18H21V0Z' fill='%23000000'/%3E%3C/svg%3E%0A");
}

/*
Текст*/
.title h1
{
	line-height: 1;
}

.page-text
{
	margin-bottom: calc(2 * var(--vu));
}

.text
{
	/*margin-top: calc(2 * var(--vu));*/
	margin-bottom: calc(3 * var(--vu));
}

.section-see-more
{
	margin-top:var(--vu);
	height:var(--vu);
}

.section-see-more__link
{
	font-family:var(--secondary-font);
	font-size: 15px;
	font-weight: normal;
}

h4.default-heading
{
	font-weight: 300;
	font-size: 22px;
}

.default-page .image-slider
{
	margin-bottom: 40px;
}

@media (min-width: 990px)
{
	.section-see-more
	{
		text-align: right;
		margin-top: calc(2* var(--vu));
		height: calc(2* var(--vu));
	}
	
	.section-see-more__link
	{
		font-size: 19px;
	}
	
	h4.default-heading
	{
		font-size: 28px;
	}
}

/*
Картинка*/
figure[data-ratio="21/9"]
{
	/*aspect-ratio:21 / 9;*/
	overflow: hidden;
	object-fit: cover;
	object-position: center;
}

/*
Большое видео*/
.hero
{
	position: relative;
	height: calc(25* var(--vu));
	height: var(--viewport-height);
	overflow: hidden;
	z-index: 1;
}

.hero__video
{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
}

.hero__meta
{
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	align-self: center;
	justify-self: center;
	/*margin-top:var(--header-height);*/
	/*mix-blend-mode:overlay;*/
}

.hero__logo
{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.hero__title
{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 37px;
	line-height: 1;
	font-weight: 500;
	color:var(--white);
	opacity: 0;
}

@media (max-width: 990px)
{
	.hero__logo
	{
		width: 60%;
		margin: -20px auto 0;
	}
}

@media (min-width: 990px)
{
	.hero
	{
		height: calc(35* var(--vu));
		height: var(--viewport-height);
	}
	
	.hero__title
	{
		font-size: 70px;
	}
	
	.hero__meta
	{
		margin-top: 25px;
		height: 300px;
		width: 100%;
	}
}

/*
Бронирование*/
.book-form
{
	position: relative;
	z-index: 2;
	margin-bottom: 1px;
}

.fake-form
{
	display: grid;
	align-items: center;
	width: 100%;
	gap:var(--gap);
	background-color:var(--secondary-color);
}

.home .fake-form
{
	background:var(--white);
	margin-top: calc(-3*var(--vu));
}

.fake-form__input
{
	border: 1px solid #CBCBCB;
	flex: 1;
}

.fake-select img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fake-button.btn
{
	font-weight: 600;
}

@media (max-width: 990px)
{
	.book-form
	{
		background-color:var(--white);
	}
	
	.fake-form
	{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: repeat(3, 1fr);
		align-items: center;
		width: 100%;
		gap:var(--gap);
		padding:var(--indent);
	}
	
	.guest-select
	{
		grid-area: 2 / 1 / 3 / 3;
	}
	
	.fake-button
	{
		grid-area: 3 / 1 / 4 / 3;
	}
}

@media (min-width: 990px)
{
	.book-form
	{
		height: calc(4*var(--vu));
	}
	
	.fake-form
	{
		grid-template-columns: repeat(4, 1fr);
		padding:var(--gap);
	}
	
	.home .fake-form
	{
		margin-top: calc(-4*var(--vu));
	}
	
	.home .book-form
	{
		margin-bottom:var(--block-indent);
	}
}

/*
Картинка-текст*/
.image-and-text
{
	margin-bottom:var(--block-indent);
}

.image-and-text__picture
{
	aspect-ratio:1 / 1;
}

.image-and-text__title
{
	font-size:clamp(23px, 3vw, 33px);
}

.image-and-text__title a
{
	color:var(--primary-color);
}

.image-and-text__link
{
	align-self: end;
}

.image-and-text__more
{
	font-size: 15px;
	font-weight: 500;
	display: inline-block;
}

@media (min-width: 990px)
{
	.image-and-text__meta
	{
		padding: 0 0 0 100px;
		display: grid;
		grid-template-rows: max-content;
	}
	
	.image-and-text__title
	{
		margin-top: -12px;
		margin-bottom: 12px;
	}
	
	.image-and-text__subtitle
	{
		font-size: 24px;
		font-weight: 500;
		/*margin-top: -45px;*/
	}
	
	.image-and-text__more
	{
		align-self: end;
		font-size: 19px;
	}
}

@media (min-width: 1280px)
{
	.image-and-text__title
	{
		font-size: 48px;
	}
}

/*
Плашки*/
.plate
{
	margin-bottom:var(--vu);
}

.plate-back-color
{
	background-color:var(--secondary-color);
}

.plate__picture
{
	overflow: hidden;
	aspect-ratio:1 / 1;
}

.plate__image
{
	transition:var(--transition);
	will-chanfe:transform;
}

.plate__content
{
	display: flex;
	flex-direction: column;
	align-self: center;
}

.plate__date
{
	margin-bottom: 10px;
	font-weight: normal;
}

.plate__price
{
	font-size: 20px;
	color:var(--primary-color);
	font-family:var(--secondary-font);
	font-weight: normal;
}

.plate__description
{
	margin-bottom:var(--vu);
}

.plate__description p
{
	margin-bottom: 0;
}

.plate__title-text
{
	font-size: 20px;
	line-height: 1.5;
}

.plate__more-link
{
	font-size: 15px;
}

.plate__buttons
{
	display: flex;
	gap:var(--gap);
	flex-direction: column;
}

.plate:hover .plate__image
{
	transform: scale(1.01);
	opacity: 0.9;
}

@media (max-width: 990px)
{
	.plate__content
	{
		padding:15px var(--indent) var(--indent);
	}
}

@media (min-width: 990px)
{
	.plate
	{
		margin-bottom: calc(3 * var(--vu));
	}
	
	.plate__content
	{
		padding-left: 100px;
		padding-right: 100px;
	}
	
	.plate.image-right .plate__picture-side
	{
		order: 2;
	}
	
	.plate__title-text
	{
		font-size: 26px;
	}
	
	.plate__price
	{
		font-size: 26px;
	}
	
	.plate__more-link
	{
		font-size: 17px;
	}
	
	.plate__buttons
	{
		flex-direction: row;
	}
}

/*
Посты на главной / Афиша*/
.blogposts
{
	margin-bottom:var(--block-indent);
}

.blogposts__slider
{
	position: relative;
}

/*
Услуги на главной*/
.services
{
	margin-bottom: calc(var(--block-indent) - 2 * var(--vu));
}

.services__item
{
	position: relative;
	overflow: hidden;
	aspect-ratio:1 / 1;
}

.services__item.vertical
{
	grid-row: span 2;
}

.services__popup
{
	position: absolute;
	display: flex;
	flex-direction: column;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	padding:var(--indent);
	background-color:var(--secondary-color);
	transform: translateY(100%);
	opacity: 0;
	transition:var(--transition);
	will-change:transform, opacity;
}

.services__item:hover .services__popup
{
	transform: translateY(0);
	opacity: 1;
}

.services__meta
{
	position: absolute;
	bottom:var(--indent);
	left:var(--indent);
	right:var(--indent);
	color:var(--white);
}

.services__title
{
	display: flex;
	align-items: flex-end;
	min-height: calc(2 * var(--vu));
	margin-bottom:var(--vu);
}

.services__title-text
{
	font-size: 20px;
}

.services__meta .services__title-text
{
	color:var(--white);
}

.services__title-text
{
	margin-bottom: 0;
}

.services__more
{
	margin-top:var(--vu);
}

.services__more-link
{
	font-size: 15px;
	font-weight: 500;
}

@media (min-width: 990px)
{
	.services
	{
		/*margin-bottom: calc(var(--block-indent) - var(--vu)* 4);*/
	}
	
	.services__title-text
	{
		font-size: 24px;
	}
	
	.services__more-link
	{
		font-size: 17px;
	}
}

/*
Слайдер placements / проживание*/
.placements
{
	margin-bottom:var(--block-indent);
}

.placements__slider
{
	position: relative;
}

.slider__arrow
{
	position: absolute;
	z-index: 2;
	left: 10px;
	cursor: pointer;
}

.slider__prev
{
	right: 10px;
	left: auto;
}

.placements-slide__props
{
	display: flex;
	gap: 50px;
	font-size: 14px;
	font-weight: 500;
	margin-bottom:var(--vu);
}

.placements-slide__props .text-with-icon
{
	gap: 5px;
}

.placements-slide__props .icon
{
	width: 30px;
	height: 30px;
	justify-self: center;
}

.placement-item__aside
{
	display: flex;
	flex-direction: column;
	gap:var(--gap);
}

@media (max-width: 990px)
{
	.slider__arrow
	{
		top: calc((100vw - 90px) / 2);
	}
	
	.slider__arrow__svg
	{
		filter: invert(1);
	}
}

@media (min-width: 990px)
{
	.slider__arrow
	{
		top: 50%;
		transform: translateY(-50%);
	}
	
	.slider__next
	{
		left: -50px;
	}
	
	.slider__prev
	{
		right: -50px;
	}
	
	.placements-slide__title
	{
		font-size: 28px;
	}
	
	.placements-slide__description, .placements-slide__props
	{
		margin-bottom: calc(2 * var(--vu));
	}
	
	.placements-slide__props .icon
	{
		width:var(--icon-size);
		height:var(--icon-size);
	}
	
	.placements-slide__button
	{
		width: 200px;
	}
}

/*
Слайдер спецпредложений*/
.offers
{
	margin-bottom:var(--block-indent);
}

.offers__slider
{
	position: relative;
}

/*
Слайдер товаров*/
.products
{
	margin-bottom: calc(var(--block-indent) - 2 * var(--vu));
}

.products__slider
{
	position: relative;
}

.product-slider__content
{
	padding:var(--indent);
}

.product-slider__content .plate__title-text
{
	margin-top: -10px;
}

@media (min-width: 990px)
{
	.products
	{
		margin-bottom: calc(var(--block-indent) - var(--vu)* 4);
	}
	
	.products-list .plate
	{
		margin-bottom: 0;
	}
	
	.product-slider__content
	{
		height: 290px;
	}
	
	.products-list
	{
		margin-bottom:var(--block-indent);
	}
}

/*
Контакты / Карта*/
.contacts
{
	margin-bottom:var(--block-indent);
}

.contacts__plate
{
	background-color:var(--secondary-color);
}

.contacts__map #map
{
	width: 100%;
	height: calc(100vw - var(--indent) * 2);
}

.contacts__meta
{
	padding:var(--indent);
	display: grid;
	align-content: center;
}

.contacts__meta .text-with-icon
{
	/*align-items: start;*/
}

.contacts__meta .information__block
{
	margin-bottom:var(--vu);
}

@media (min-width: 990px)
{
	.contacts__map #map
	{
		height: 100%;
	}
	
	.contacts__meta
	{
		padding:var(--indent);
	}
	
	.contacts__meta .information__block:not(:last-child)
	{
		margin-bottom: calc(2 * var(--vu));
	}
}

/*
FAQ*/
.faq
{
	margin-bottom:var(--block-indent);
}

.accordion-header
{
	position: relative;
	cursor: pointer;
	font-size: 15px;
	height: auto !important;
	min-height: 65px;
	width: 100%;
	display: grid;
	align-content: center;
	padding: 20px 70px 20px 0 !important;
	outline: none;
	background-color: transparent;
	-webkit-tap-highlight-color: transparent;
	margin-bottom: 0;
}

.accordion-item
{
	overflow: hidden;
	border-bottom:1px solid var(--black);
}

.accordion-header:after
{
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotate(0deg);
	transform-origin: center;
	right: 0;
	width: 20px;
	height: 20px;
	background-image:var(--accordion-arrow);
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: center right;
	transition:var(--transition);
}

.accordion-header.active:after
{
	transform: translateY(-50%) rotate(-135deg);
}

.accordion-header:hover
{
	transition:var(--transition);
}

.accordion-content
{
	padding: 0;
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transform: translateY(30px);
	transition:var(--transition);
}

.accordion-content a
{
	color:var(--black);
	text-decoration: none;
}

.accordion-item.active .accordion-content
{
	margin-bottom: 15px;
	opacity: 1;
	transform: translateY(0px);
	margin-top: 15px;
}

@media (min-width: 990px)
{
	.accordion-header:after
	{
		transform-origin: center;
		width: 15px;
		height: 15px;
		background-size: 70%;
	}
	
	.accordion-item.active .accordion-content
	{
		margin-bottom: 33px;
	}
}

@media (min-width: 990px)
{
	.accordion-header
	{
		font-size: 19px;
		padding: 40px 70px 40px 0 !important;
	}
	
	.accordion-header:after
	{
		width: 25px;
		height: 25px;
		background-size: 25px;
	}
}

/*
Слайдер изображений*/
.image-slider
{
	margin-bottom:var(--vu);
}

.images__slider
{
	position: relative;
}

.images__slide
{
	background-color:var(--secondary-color);
}

.slider__logo
{
	position: absolute;
	z-index: 2;
	top: 20px;
	right: 20px;
	width: 130px;
}

@media (max-width: 990px)
{
	.images__slider .slider__arrow
	{
		top: 50%;
		transform: translateY(-50%);
	}
	
	.images__slide
	{
		aspect-ratio:1 / 1;
	}
}

@media (min-width: 990px)
{
	.images__slide
	{
		height: 640px;
	}
	
	.slider__logo
	{
		top: 50px;
		right: 70px;
		width: 320px;
	}
}

/*
Изображение*/
.one-image
{
	margin-bottom:var(--vu);
}
