/*!
Theme Name: theme
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: theme
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

theme is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/*@font-face {
	font-family: 'Factor A';
	src: url('fonts/FactorALight-Regular.eot');
	src: local('Factor A Light Regular'), local('FactorALight-Regular'),
	url('fonts/FactorALight-Regular.eot?#iefix') format('embedded-opentype'),
	url('fonts/FactorALight-Regular.woff2') format('woff2'),
	url('fonts/FactorALight-Regular.woff') format('woff'),
	url('fonts/FactorALight-Regular.ttf') format('truetype');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Factor A';
	src: url('fonts/FactorA-Regular.eot');
	src: local('Factor A Regular'), local('FactorA-Regular'),
	url('fonts/FactorA-Regular.eot?#iefix') format('embedded-opentype'),
	url('fonts/FactorA-Regular.woff2') format('woff2'),
	url('fonts/FactorA-Regular.woff') format('woff'),
	url('fonts/FactorA-Regular.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Factor A';
	src: url('fonts/FactorAMedium-Regular.eot');
	src: local('Factor A Medium Regular'), local('FactorAMedium-Regular'),
	url('fonts/FactorAMedium-Regular.eot?#iefix') format('embedded-opentype'),
	url('fonts/FactorAMedium-Regular.woff2') format('woff2'),
	url('fonts/FactorAMedium-Regular.woff') format('woff'),
	url('fonts/FactorAMedium-Regular.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Factor A';
	src: url('fonts/FactorA-Bold.eot');
	src: local('Factor A Bold'), local('FactorA-Bold'),
	url('fonts/FactorA-Bold.eot?#iefix') format('embedded-opentype'),
	url('fonts/FactorA-Bold.woff2') format('woff2'),
	url('fonts/FactorA-Bold.woff') format('woff'),
	url('fonts/FactorA-Bold.ttf') format('truetype');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}*/

@font-face {
	font-family: 'Factor A';
	src: url('/wp-content/themes/theme/fonts/FactorA/Factor-A-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Playfair Display';
	src: url('fonts/PlayfairDisplay-Regular.eot');
	src: local('Playfair Display Regular'), local('PlayfairDisplay-Regular'),
	url('fonts/PlayfairDisplay-Regular.eot?#iefix') format('embedded-opentype'),
	url('fonts/PlayfairDisplay-Regular.woff2') format('woff2'),
	url('fonts/PlayfairDisplay-Regular.woff') format('woff'),
	url('fonts/PlayfairDisplay-Regular.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Playfair Display';
	src: url('fonts/PlayfairDisplay-Italic.eot');
	src: local('Playfair Display Italic'), local('PlayfairDisplay-Italic'),
	url('fonts/PlayfairDisplay-Italic.eot?#iefix') format('embedded-opentype'),
	url('fonts/PlayfairDisplay-Italic.woff2') format('woff2'),
	url('fonts/PlayfairDisplay-Italic.woff') format('woff'),
	url('fonts/PlayfairDisplay-Italic.ttf') format('truetype');
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Playfair Display';
	src: url('fonts/PlayfairDisplay-Bold.eot');
	src: local('Playfair Display Bold'), local('PlayfairDisplay-Bold'),
	url('fonts/PlayfairDisplay-Bold.eot?#iefix') format('embedded-opentype'),
	url('fonts/PlayfairDisplay-Bold.woff2') format('woff2'),
	url('fonts/PlayfairDisplay-Bold.woff') format('woff'),
	url('fonts/PlayfairDisplay-Bold.ttf') format('truetype');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Playfair Display';
	src: url('fonts/PlayfairDisplay-Black.eot');
	src: local('Playfair Display Black'), local('PlayfairDisplay-Black'),
	url('fonts/PlayfairDisplay-Black.eot?#iefix') format('embedded-opentype'),
	url('fonts/PlayfairDisplay-Black.woff2') format('woff2'),
	url('fonts/PlayfairDisplay-Black.woff') format('woff'),
	url('fonts/PlayfairDisplay-Black.ttf') format('truetype');
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Englische';
	src: url('fonts/Englische-Schreibschrift-BQ-Regular.otf') format('opentype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:#fff0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}*,*::before,*::after{box-sizing:inherit}html{box-sizing:border-box}body,button,input,select,optgroup,textarea{color:#404040;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:1rem;line-height:1.5}h1,h2,h3,h4,h5,h6{clear:both;font-weight: 500;}p{margin-bottom:1.5em}dfn,cite,em,i{font-style:italic}blockquote{margin:0 1.5em}address{margin:0 0 1.5em}pre{background:#eee;font-family:"Courier 10 Pitch",courier,monospace;line-height:1.6;margin-bottom:1.6em;max-width:100%;overflow:auto;padding:1.6em}code,kbd,tt,var{font-family:monaco,consolas,"Andale Mono","DejaVu Sans Mono",monospace}abbr,acronym{border-bottom:1px dotted #666;cursor:help}mark,ins{background:#fff9c0;text-decoration:none}big{font-size:125%}body{background:#fff}hr{background-color:#ccc;border:0;height:1px;margin-bottom:1.5em}ul{list-style:disc}ol{list-style:decimal}li>ul,li>ol{margin-bottom:0;margin-left:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}embed,iframe,object{max-width:100%}img{height:auto;max-width:100%}figure{margin:1em 0}table{margin:0 0 1.5em;width:100%}button,input[type="button"],input[type="reset"],input[type="submit"]{border:1px solid;border-color:#ccc #ccc #bbb;border-radius:3px;background:#e6e6e6;color:rgb(0 0 0 / .8);line-height:1;padding:.6em 1em .4em}button:hover,input[type="button"]:hover,input[type="reset"]:hover,input[type="submit"]:hover{border-color:#ccc #bbb #aaa}button:active,button:focus,input[type="button"]:active,input[type="button"]:focus,input[type="reset"]:active,input[type="reset"]:focus,input[type="submit"]:active,input[type="submit"]:focus{border-color:#aaa #bbb #bbb}input[type="text"],input[type="email"],input[type="url"],input[type="password"],input[type="search"],input[type="number"],input[type="tel"],input[type="range"],input[type="date"],input[type="month"],input[type="week"],input[type="time"],input[type="datetime"],input[type="datetime-local"],input[type="color"],textarea{color:#666;border:1px solid #ccc;border-radius:3px;padding:3px}input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="password"]:focus,input[type="search"]:focus,input[type="number"]:focus,input[type="tel"]:focus,input[type="range"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="week"]:focus,input[type="time"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="color"]:focus,textarea:focus{color:#111}select{border:1px solid #ccc}textarea{width:100%}.main-navigation{display:block;width:100%}.main-navigation ul{display:none;list-style:none;margin:0;padding-left:0}.main-navigation ul ul{box-shadow:0 3px 3px rgb(0 0 0 / .2);float:left;position:absolute;top:100%;left:-999em;z-index:99999}.main-navigation ul ul ul{left:-999em;top:0}.main-navigation ul ul li:hover>ul,.main-navigation ul ul li.focus>ul{display:block;left:auto}.main-navigation ul ul a{width:200px}.main-navigation ul li:hover>ul,.main-navigation ul li.focus>ul{left:auto}.main-navigation li{position:relative}.main-navigation a{display:block;text-decoration:none}.menu-toggle,.main-navigation.toggled ul{display:block}@media screen and (min-width:37.5em){.menu-toggle{display:none}.main-navigation ul{display:flex}}.comment-navigation .nav-links,.posts-navigation .nav-links,.post-navigation .nav-links{display:flex}.comment-navigation .nav-previous,.posts-navigation .nav-previous,.post-navigation .nav-previous{flex:1 0 50%}.comment-navigation .nav-next,.posts-navigation .nav-next,.post-navigation .nav-next{text-align:end;flex:1 0 50%}.sticky{display:block}.updated:not(.published){display:none}.comment-content a{word-wrap:break-word}.bypostauthor{display:block}.widget{margin:0 0 1.5em}.widget select{max-width:100%}.page-content .wp-smiley,.entry-content .wp-smiley,.comment-content .wp-smiley{border:none;margin-bottom:0;margin-top:0;padding:0}.custom-logo-link{display:inline-block}.wp-caption{margin-bottom:1.5em;max-width:100%}.wp-caption img[class*="wp-image-"]{display:block;margin-left:auto;margin-right:auto}.wp-caption .wp-caption-text{margin:.8075em 0}.wp-caption-text{text-align:center}.gallery{margin-bottom:1.5em;display:grid;grid-gap:1.5em}.gallery-item{display:inline-block;text-align:center;width:100%}.gallery-columns-2{grid-template-columns:repeat(2,1fr)}.gallery-columns-3{grid-template-columns:repeat(3,1fr)}.gallery-columns-4{grid-template-columns:repeat(4,1fr)}.gallery-columns-5{grid-template-columns:repeat(5,1fr)}.gallery-columns-6{grid-template-columns:repeat(6,1fr)}.gallery-columns-7{grid-template-columns:repeat(7,1fr)}.gallery-columns-8{grid-template-columns:repeat(8,1fr)}.gallery-columns-9{grid-template-columns:repeat(9,1fr)}.gallery-caption{display:block}.infinite-scroll .posts-navigation,.infinite-scroll.neverending .site-footer{display:none}.infinity-end.neverending .site-footer{display:block}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgb(0 0 0 / .6);clip:auto!important;clip-path:none;color:#21759b;display:block;font-size:.875rem;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}#primary[tabindex="-1"]:focus{outline:0}.alignleft{float:left;margin-right:1.5em;margin-bottom:1.5em}.alignright{float:right;margin-left:1.5em;margin-bottom:1.5em}.aligncenter{clear:both;display:block;margin-left:auto;margin-right:auto;margin-bottom:1.5em}

:root {
	--bg-dark: #231F1F;
	--text-white: #FFFFFF;
	--text-gold: #FFEFD8;
	--text-gray: #B0B0B0;
	--text-color: #231F1F;

	--font-sans: 'Factor A', sans-serif;
	--font-serif: 'Playfair Display', serif;
	--font-script: 'Englische', cursive;

	--container-width: 1720px;
	--gutter: 20px;
	--transition: 0.4s ease;
}
html.lenis {
	height: auto;
}
.lenis.lenis-smooth {
	scroll-behavior: auto;
}
.lenis.lenis-smooth [data-lenis-prevent] {
	overscroll-behavior: contain;
}
.lenis.lenis-stopped {
	overflow: hidden;
}
.lenis.lenis-scrolling iframe {
	pointer-events: none;
}
*, *::before, *::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
body {
	background-color: var(--bg-dark);
	color: var(--text-white);
	font-family: var(--font-sans);
	font-size: 16px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}
img, video {
	max-width: 100%;
	height: auto;
	display: block;
}
a {
	text-decoration: none;
	color: inherit;
	transition: var(--transition);
}

ul {
	list-style: none;
}

.hiden {
	display: none !important;
}

.container {
	max-width: var(--container-width);
	margin: 0 auto;
	padding: 0 var(--gutter);
	width: 100%;
}

.container-grid {
	margin: 0 4%;
}

.container-cap {
	margin: 0 4%;
	width: 100%;
}

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 16px 45px;
	background: var(--text-gold);
	color: var(--text-color);
	font-family: var(--font-sans);
	font-size: 14px;
	font-weight: 500;
	text-transform: uppercase;
	border: none;
	cursor: pointer;
}

.btn:hover {
	background: #fff;
}

.hero {
	position: relative;
	height: 100vh;
	min-height: 700px;
	display: flex;
	align-items: flex-end;
	padding-bottom: 80px;
	overflow: hidden;
}

.hero__bg-video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -1;
	filter: brightness(0.7);
}

.hero__content {
	position: relative;
	z-index: 2;
}

.hero__center-block {
	position: absolute;
	top: 45%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	width: 100%;
	z-index: 2;
}

.hero__logo-anim {
	padding-bottom: 140px;
}

.hero__title {
	font-family: var(--font-serif);
	font-size: 64px;
	font-weight: 400;
	color: var(--text-gold);
	line-height: 1;
	padding: 0 0 45px;
}
.hero__title.is-visible span {
	font-style: italic;
}

.hero__subtitle {
	font-family: var(--font-sans);
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	margin-bottom: 5px;
}

.hero__script {
	font-family: var(--font-script);
	font-size: 42px;
	color: #fff;
	font-weight: 400;
}

.hero__footer-title {
	font-family: var(--font-serif);
	font-size: 64px;
	line-height: 1.1;
	margin-bottom: 20px;
}

.hero__description {
	font-size: 14px;
	text-transform: uppercase;
	color: var(--text-gold);
	max-width: 330px;
}

.concept {
	padding: 150px 0;
	background: var(--bg-dark);
	background-image: url(/wp-content/themes/theme/img/bg-box2.jpg);
	background-size: cover;
}

.concept__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 120px;
	align-items: center;
}

.concept__col--left {
	position: relative;
}

.concept__top-label {
	font-family: var(--font-sans);
	font-size: 12px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	margin-bottom: 40px;
	display: block;
	text-align: center;
}

.concept__image-wrap {
	width: 100%;
	height: auto;
	max-width: 600px;
	margin: 0 auto;
}

.concept__image-wrap img {
	width: 100%;
	display: block;
}

.concept__signature {
	font-family: var(--font-script);
	font-size: 50px;
	text-align: center;
	margin-top: 100px;
	color: #fff;
}

.concept__col--right {
	padding-left: 20px;
}

.concept__script-title {
	font-family: var(--font-script);
	font-size: 80px;
	color: var(--text-gold);
	margin-bottom: 60px;
	line-height: 1;
}

.concept__main-text {
	font-family: var(--font-serif);
	font-size: 36px;
	line-height: 120%;
	text-transform: uppercase;
	margin-bottom: 120px;
	color: var(--text-gold);
	max-width: 475px;
}

.concept__footer {
	display: flex;
	align-items: center;
	gap: 30px;
}

.concept__badge-img {
	width: 100px;
	height: 100px;
	animation: rotateBadge 20s linear infinite;
}

.concept__badge-text {
	font-family: var(--font-sans);
	font-size: 14px;
	line-height: 120%;
	max-width: 400px;
	text-transform: uppercase;
	color: var(--text-gold);
	font-weight: 500;
}

.interior-slider {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    filter: brightness(0.5);
	overflow: hidden;
}

.interior-slider__wrapper,
.interior-slider__slide,
.slick-track,
.slick-list {
	height: 100%;
}

.interior-slider__slide {
	position: relative;
}

.interior-slider__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.interior-slider__overlay {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	text-align: center;
	pointer-events: none;
}

.interior-slider__icon {
	width: 60px;
	margin: 0 auto 20px;
}

.interior-slider__text {
	font-family: var(--font-sans);
	font-size: 140px;
	letter-spacing: 0.1em;
	color: var(--text-gold);
	text-transform: uppercase;
	line-height: 1;
}

.slick-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	width: 50px;
	height: 45px;
	background: #231F1F;
	backdrop-filter: blur(30px);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
	transition: var(--transition);
	border: 2px;
	opacity: 0.8;
	border: none;
	background-image: url(/wp-content/themes/theme/img/arrow-sl.svg);
	background-size: 15px;
	background-repeat: no-repeat;
	background-position: center center;
	transition: 0.5s;
}

.slick-arrow:hover {
	background-color: #231F1F;
	opacity: 1;
}

.slick-prev {
	left: 40px;
	background-image: url(/wp-content/themes/theme/img/arrow-sl-left.svg);
}

.slick-next {
	right: 40px;
}

.slick-arrow::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	font-size: 0;
	display: none;
}

.slick-prev::before {
	transform: rotate(-135deg);
	margin-left: 5px;
}

.slick-next::before {
	transform: rotate(45deg);
	margin-right: 5px;
}

.slick-arrow:hover::before {
	border-color: #000;
}

@keyframes rotateBadge {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}

@media (max-width: 1200px) {
	.hero__title { font-size: 60px; }
	.hero__footer-title { font-size: 48px; }
	.concept__grid { grid-template-columns: 1fr; gap: 60px; }
	.concept__col--left { text-align: center; }
	.interior-slider__text { font-size: 80px; }
}

@media (max-width: 768px) {
	.hero__center-block { top: 40%; }
	.hero__title { font-size: 40px; }
	.hero__script { font-size: 32px; }
	.hero__footer-title { font-size: 36px; }
	.concept__script-title { font-size: 60px; }
	.concept__main-text { font-size: 24px; }
	.concept__footer { flex-direction: column; text-align: center; }
	.slick-arrow { width: 40px; height: 40px; }
	.interior-slider__text { font-size: 48px; }
}

.why-bukovel {
	padding: 80px 0 30px;
	position: relative;
	background-image: url(/wp-content/uploads/2026/02/bg-box-3.jpg);
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
}

.why-bukovel__header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 40px;
}

.why-bukovel__title {
	font-family: var(--font-serif);
	font-size: 48px;
	color: var(--text-gold);
	max-width: 400px;
	line-height: 120%;
	font-weight: 400;
}

.why-bukovel__side-label {
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	font-family: var(--font-sans);
	display: flex;
	align-items: center;
	justify-content: center;
	align-content: center;
	gap: 10px;
	font-weight: 500;
	font-size: 16px;
	text-transform: uppercase;
	color: #FFEFD8;
}

.why-bukovel__grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 30px;
	position: relative;
}

.why-item {
	display: flex;
	flex-direction: column;
	position: relative;
}

.why-item::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 1px;
	background: rgba(255, 255, 255, 0.1);
}

.why-item__num {
	font-family: var(--font-serif);
	margin-bottom: 120px;
	font-weight: 400;
	font-size: 64px;
	line-height: 100%;
	color: #4A3F39;
}

.why-item__content {
	padding-left: 20px;
}

.why-item__title {
	font-family: var(--font-sans);
	font-size: 20px;
	text-transform: uppercase;
	margin-bottom: 30px;
	font-weight: 500;
	height: 30%;
}

.why-item__desc {
	font-weight: 400;
	font-size: 16px;
	line-height: 120%;
	color: #FFEFD8;
}

.why-bukovel__letters {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-top: 120px;
}

.why-bukovel__letter-wrap img {
	height: 200px;
	width: auto;
	object-fit: contain;
}

.location {
	padding: 100px 0;
	position: relative;
	overflow: hidden;
}

.location__top {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 80px;
	margin-bottom: 100px;
	position: relative;
	z-index: 1;
}

.location__map img {
	width: 100%;
	height: auto;
}

.location__info {
	padding-top: 40px;
}

.location__title {
	font-family: var(--font-serif);
	margin-bottom: 80px;
	color: #FFEFD8;
	font-weight: 400;
	font-size: 36px;
	line-height: 100%;
	text-transform: uppercase;
}

.location__distances {
	margin-bottom: 60px;
}

.distance-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 30px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.distance-row__text {
	color: #4A3F39;
	font-weight: 500;
	font-size: 16px;
	line-height: 100%;
	text-transform: uppercase;
}

.distance-row__num {
	font-family: var(--font-serif);
	font-weight: 400;
	font-size: 24px;
	line-height: 100%;
	text-transform: uppercase;
	color: #FFEFD8;
}

.location__desc {
	font-family: var(--font-serif);
	color: #fff;
	font-weight: 400;
	font-size: 20px;
	line-height: 120%;
	color: #FFEFD8;
}

.location-wrapper {
	position: relative;
}

.location__features {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 100px;
	position: relative;
	z-index: 1;
	padding-top: 40px;
}

.loc-feature {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
	padding-left: 20px;
	position: relative;
}

.loc-feature__text {
	color: #FFEFD8;
	margin-bottom: 100px;
	font-weight: 400;
	font-size: 16px;
	line-height: 120%;
}

.loc-feature__num {
	font-family: var(--font-serif);
	color: #4A3F39;
	font-weight: 400;
	font-size: 24px;
	line-height: 100%;
}

.philosophy {
	padding: 0;
	height: 100vh;
}

.philosophy__slide {
	position: relative;
	height: 100vh !important;
	width: 100%;
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	overflow: hidden;
	flex-direction: column;
}

.philosophy__bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}

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

.philosophy__bg::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.4);
}

.philosophy__content {
	position: relative;
	z-index: 2;
	text-align: center;
	max-width: 1000px;
	margin: 0 auto;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	padding: 80px 0;
}

.philosophy__badge-wrap {
	display: inline-block;
	margin-bottom: 30px;
}

.philosophy__badge {
	width: 120px;
	height: 120px;
}

.philosophy__title {
	font-family: var(--font-serif);
	color: #FFEFD8;
	margin-bottom: 40px;
	font-weight: 400;
	font-size: 36px;
	line-height: 130%;
	text-align: center;
	text-transform: uppercase;
}

.philosophy__desc {
	font-family: var(--font-serif);
	color: #FFEFD8;
	max-width: 660px;
	margin: 0 auto;
	font-weight: 400;
	font-size: 20px;
	line-height: 120%;
	text-align: center;
}

.spin-animation {
	animation: rotateBadge 15s linear infinite;
}

@media (max-width: 1024px) {
	.why-bukovel__grid {
		grid-template-columns: 1fr 1fr;
		gap: 40px;
	}
	.why-item:nth-child(even) {
		margin-top: 0;
	}
	.location__top {
		grid-template-columns: 1fr;
	}
	.location__features {
		grid-template-columns: 1fr 1fr;
	}
	.philosophy__title {
		font-size: 36px;
	}
}

.infrastructure {
	padding: 100px 0;
	overflow: hidden;
}

.infrastructure__top {
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;
}

.vert-text {
	height: 270px;
}

.infrastructure__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	width: 100%;
	padding: 0 40px;
}

.inf-item {
	display: flex;
	flex-direction: column;
}

.inf-item__num {
}

.inf-item__title {
}

.inf-item__desc {
}

.inf-item__image {
	height: 350px;
	width: 100%;
}

.inf-item__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.infrastructure__middle {
	text-align: center;
	padding: 100px 0;
}

.infrastructure__headline {
	font-family: var(--font-serif);
	font-size: 32px;
	line-height: 1.4;
	text-transform: uppercase;
	max-width: 800px;
	margin: 0 auto;
}

.spa-header__script {
	font-family: var(--font-script);
	font-size: 100px;
	position: absolute;
	top: -60px;
	left: 0;
	z-index: 2;
	color: #fff;
	pointer-events: none;
}

.spa-content {
	display: grid;
	grid-template-columns: 2.5fr 0.3fr 1fr;
	gap: 30px;
}

.spa-content__main-slider {
	width: 100%;
}

.spa-slide img {
	width: 100%;
	height: 600px;
	object-fit: cover;
}

.spa-content__side-gallery .slick-list {
	padding: 0 !important;
}

.spa-content__side-gallery img {
	width: 100%;
	height: 120px;
	object-fit: cover;
	margin-bottom: 20px;
	opacity: 0.5;
	transition: var(--transition);
	cursor: pointer;
}

.spa-content__side-gallery .slick-current img {
	opacity: 1;
	border: 1px solid var(--text-gold);
}

.apartments {
	color: #fff;
	position: relative;
	overflow: hidden;
}

.apartments__header {
	text-align: center;
	position: relative;
	margin-bottom: 80px;
	z-index: 2;
}

.apartments__bg-text {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	pointer-events: none;
	z-index: -1;
}

.apartments__icon {
	width: 20px;
	margin-bottom: 20px;
	display: inline-block;
}

.apartments__subtitle {
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: 0.2em;
	margin-bottom: 20px;
	opacity: 0.8;
}

.apartments__title {
	font-family: var(--font-serif);
}

.apartments-wrapper {
    position: relative;
}

.apartments__showcase {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	position: relative;
	z-index: 2;
}

.showcase-card {
	position: relative;
	height: 700px;
	overflow: hidden;

}

.showcase-card__img {
	height: 100%;
	width: 100%;
	position: relative;
}

.showcase-card__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s;
}
.showcase-card:hover .showcase-card__img img {
	transform: scale(1.05);
}

.showcase-card__overlay {
	position: absolute;
	bottom: 0; left: 0; width: 100%; height: 60%;
	background: linear-gradient(to top, rgba(0,0,0,0.9), transparent);
}

.showcase-card__info {
	position: absolute;
	bottom: 30px;
	left: 30px;
	right: 30px;
	z-index: 2;
	border-left: 1px solid #FFEFD8;
	padding-left: 20px;
	color: #FFEFD8;
}

.showcase-card__top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}

.sc-type {
	font-weight: 500;
	font-size: 20px;
	line-height: 100%;
	text-transform: uppercase;
}

.showcase-card__area {
	font-family: var(--font-serif);
	margin-bottom: 25px;
	font-weight: 400;
	font-size: 64px;
	line-height: 100%;
}

.showcase-card__desc {
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
}

.apartments__bottom-layout {padding: 100px 0;}

.apt-bot-desc {

	font-family: var(--font-serif);
	font-weight: 400;
	font-size: 20px;
	line-height: 120%;
	color: #FFEFD8;
}

.apt-bot-model img {
	width: 100%;
	max-height: 600px;
	object-fit: contain;
}

.apt-bot-selector {
	display: flex;
	flex-direction: column;
	gap: 40px;
	width: 100%;
}

.selector-row {
	display: grid;
	grid-template-columns: 80px 1fr;
	gap: 100px;
}

.selector-row__type {
	letter-spacing: 0.05em;
	padding-top: 10px;
	font-weight: 600;
	font-size: 16px;
	line-height: 100%;
	text-transform: uppercase;
	color: #FFEFD8;
}

.selector-row__grid {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.unit-btn {
	width: 50px;
	height: 35px;
	background: transparent;
	border: 1px solid #FFEFD8;
	color: #FFEFD8;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s;
	font-weight: 600;
	font-size: 16px;
	line-height: 100%;
	opacity: 0.4;
	padding: 0;
}

.unit-btn:hover {
	border-color: #fff;
	color: #fff;
	background: rgba(255,255,255,0.05);
}

.apt-drawer__overlay {
	position: absolute;
	top: 0; left: 0; width: 100%; height: 100%;
	background: transparent;
	transition: opacity 0.3s;
}

.apt-drawer__panel {

}

.apt-drawer.is-active .apt-drawer__panel {
	transform: translateX(0);
}

.apt-drawer__back {
	color: #231F1F;
	border: none;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	align-self: flex-start;
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
	background-color: transparent;
	padding: 7px;
	margin: 50px 0 0 0;
	white-space: nowrap;
	transition: 0.4s;
}

.apt-drawer__content {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	height: 100%;
	overflow-y: auto;
}

.apt-drawer__plan img {
	width: 100%;
	height: auto;
	object-fit: contain;
	mix-blend-mode: multiply;
}

.drawer-header {
	margin-bottom: 20px;
	font-weight: 500;
	font-size: 20px;
	line-height: 100%;
	text-transform: uppercase;
}
.drawer-area {
	font-family: var(--font-serif);
	margin-bottom: 30px;
	font-weight: 400;
	font-size: 64px;
	line-height: 1;
}
.drawer-sub {
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
}
.drawer-desc {
	font-family: var(--font-serif);
	margin-bottom: 50px;
	max-width: 400px;
	font-weight: 400;
	font-size: 20px;
	line-height: 120%;
}
.drawer-specs p {
	margin: 0;
	padding: 5px 0;
	border-bottom: 1px solid rgba(0,0,0,0.1);
	font-size: 14px;
}

.drawer-footer {
	margin-top: 40px;
	display: flex;
	align-items: flex-start;
	flex-direction: column;
}

.compass-widget {display: flex;align-items: center;gap: 15px;margin-bottom: 40px;}
.compass-circle { width: 40px; height: 40px; transition: transform 0.5s ease; }
.compass-text { font-family: var(--font-serif); font-size: 24px; }
.compass-rotate-N  { transform: rotate(0deg); }
.compass-rotate-NE { transform: rotate(45deg); }
.compass-rotate-E  { transform: rotate(90deg); }
.compass-rotate-SE { transform: rotate(135deg); }
.compass-rotate-S  { transform: rotate(180deg); }
.compass-rotate-SW { transform: rotate(225deg); }
.compass-rotate-W  { transform: rotate(270deg); }
.compass-rotate-NW { transform: rotate(315deg); }

.drawer-btn {
	background: #181615;
	color: #fff;
	padding: 20px 45px;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 14px;
	line-height: 1;
}

@media (max-width: 1024px) {
	.apartments__showcase { grid-template-columns: 1fr; }
	.apartments__bottom-layout { grid-template-columns: 1fr; }
	.apt-bot-selector { border-left: none; padding-left: 0; }
	.apt-drawer__panel { width: 100%; padding: 30px; }
	.apt-drawer__content { grid-template-columns: 1fr; }
}

.apartments__bottom-layout {
	display: grid;
	grid-template-columns: 20% 30% calc(50% - 50px);
	gap: 40px;
	align-items: start;
	position: relative;
	overflow: hidden;
	/*min-height: 600px;*/
}
.apt-drawer {
	min-height: 600px;
	position: fixed;
	top: 10%;
	right: 0;
	bottom: 0;

	width: 75%;
	z-index: 5;
	visibility: hidden;
	pointer-events: none;
	transition: visibility 0s 0.5s;
}

.apt-drawer.is-active {
	visibility: visible;
	pointer-events: auto;
	transition: visibility 0s 0s;
}

.apt-drawer__overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgb(0 0 0 / 50%);
	opacity: 0;
	transition: opacity 0.3s;
}
.apt-drawer.is-active .apt-drawer__overlay {
	opacity: 1;
}

.apt-drawer__panel {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	background: #EBE8E3;
	color: #181615;
	transform: translateX(101%);
	transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1);
	display: flex;
	flex-direction: row;
	padding: 60px 40px;
}

.apt-drawer.is-active .apt-drawer__panel {
	transform: translateX(0);
}

@media (max-width: 1024px) {
	.apt-drawer {
		width: 100%;
		position: fixed;
		height: 100%;
		z-index: 99999;
		top: 0;
	}
}

.finance {
	padding-bottom: 0px;
	background: #181615;
}

.finance__top-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.finance__content {
}

.finance__title {
	font-family: var(--font-serif);
	font-size: 50px;
	color: #fff;
	margin-bottom: 60px;
}

.finance__bg-text {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	font-family: var(--font-script);
	font-size: 100px;
	color: rgba(255,255,255,0.1);
	pointer-events: none;
}

.finance__side-text {
	position: absolute;
	right: 0;
	top: 20px;
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	font-size: 11px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: #fff;
}

.finance__stats {
}

.fin-stat {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 300px;
}

.fin-stat__num {
	font-size: 11px;
	opacity: 0.3;
	margin-bottom: 10px;
}

.fin-stat__desc {
	font-size: 12px;
	text-transform: uppercase;
	line-height: 1.4;
	color: #fff;
}

.fin-stat__value {
	font-family: var(--font-serif);
	font-size: 90px;
	color: var(--text-gold);
	line-height: 1;
	margin-top: auto;
	display: flex;
	align-items: flex-start;
}

.fin-stat__suf {
	font-size: 40px;
	margin-top: 10px;
	margin-left: 5px;
}

@media (max-width: 1024px) {
	.infrastructure__grid {
		grid-template-columns: 1fr 1fr;
	}
	.inf-item:nth-child(even) {
		margin-top: 0;
	}
	.spa-content {
		grid-template-columns: 1fr;
	}
	.spa-content__side-gallery {
		display: none;
	}
	.apartments__list {
		grid-template-columns: 1fr;
	}
	.apartments__bottom {
		grid-template-columns: 1fr;
	}
	.finance__stats {
		grid-template-columns: 1fr 1fr;
	}
}

.infrastructure {
	padding: 100px 0;
	overflow: hidden;
}

.infrastructure__top {
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;
	position: relative;
}

.vert-text {
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	font-family: var(--font-sans);
	white-space: nowrap;
	font-weight: 500;
	font-size: 16px;
	line-height: 100%;
	text-transform: uppercase;
	position: relative;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 20px;
}

.infrastructure__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	width: 100%;
	padding: 0 40px;
}

.inf-item {
	display: flex;
	flex-direction: column;
}

.infrastructure .inf-item__num {
	font-family: var(--font-serif);
	color: #4A3F391A;
	margin-bottom: 80px;
	font-weight: 400;
	font-size: 64px;
	line-height: 100%;
}

.inf-item__title {
	font-family: var(--font-sans);
	margin-bottom: 40px;
	font-weight: 500;
	font-size: 20px;
	line-height: 100%;
	text-transform: uppercase;
}

.inf-item__desc {
	margin-bottom: 35px;
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
}

.inf-item__image {
	height: 350px;
	width: 100%;
}

.inf-item__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.infrastructure__middle {
	text-align: center;
	padding: 100px 0;
}

.infrastructure__headline {
	font-family: var(--font-serif);
	font-size: 32px;
	line-height: 1.4;
	text-transform: uppercase;
	max-width: 800px;
	margin: 0 auto;
}

.spa-header__script {
	font-family: var(--font-script);
	font-size: 100px;
	position: absolute;
	top: -60px;
	left: 0;
	z-index: 2;
	color: #fff;
	pointer-events: none;
}

.spa-content {
	display: grid;
	grid-template-columns: 2.5fr 0.3fr 1fr;
	gap: 30px;
}

.spa-content__main-slider {
	width: 100%;
}

.spa-slide img {
	width: 100%;
	height: 600px;
	object-fit: cover;
}

.spa-content__side-gallery .slick-list {
	padding: 0 !important;
}

.spa-content__side-gallery img {
	width: 100%;
	height: 120px;
	object-fit: cover;
	margin-bottom: 20px;
	opacity: 0.5;
	transition: var(--transition);
	cursor: pointer;
}

.spa-content__side-gallery .slick-current img {
	opacity: 1;
	border: 1px solid var(--text-gold);
}

.spa-content__info {
}

.spa-desc {
}

.spa-num {
}

.apartments {
	padding: 100px 0 0;
	background: #231F1F;
}

.apartments__header {
	text-align: center;
	position: relative;
	margin-bottom: 60px;
	margin-bottom: 0;
}

.apartments__icon {
	width: 40px;
	margin: 0 auto 60px;
}

.apartments__subtitle {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.2em;
	margin-bottom: 60px;
	color: #fff;
}

.apartments__title {
	max-width: 1200px;
	margin: 0 auto;
	font-weight: 400;
	font-size: 36px;
	line-height: 100%;
	text-align: center;
	text-transform: uppercase;
	color: #FFEFD8;
	margin-bottom: 90px;
	padding-bottom: 120px;
}

.apartments__bg-text {
	font-family: var(--font-script);
	font-size: 150px;
	color: rgba(255,255,255,0.02);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -20%);
	pointer-events: none;
	z-index: 0;
}

.apartments__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	position: relative;
	z-index: 1;
}

.apt-card {
	position: relative;
	cursor: pointer;
	background: transparent;
}

.apt-card__image {
	height: 400px;
	margin-bottom: 25px;
	overflow: hidden;
}

.apt-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.apt-card:hover .apt-card__image img {
	transform: scale(1.05);
}

.apt-card__info {
	position: absolute;
	bottom: 20px;
	left: 20px;
	right: 20px;
	text-shadow: 0 2px 4px rgba(0,0,0,0.5);
}

.apt-card__name {
	font-size: 12px;
	text-transform: uppercase;
	color: #fff;
	margin-bottom: 5px;
}

.apt-card__count {
	display: inline-block;
	color: rgba(255,255,255,0.7);
}

.apt-card__area {
	font-family: var(--font-serif);
	font-size: 50px;
	color: #fff;
	line-height: 1;
	margin-bottom: 10px;
}

.apt-card__desc {
	font-size: 12px;
	color: rgba(255,255,255,0.8);
}

.apt-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	display: none;
	align-items: center;
	justify-content: center;
	background: rgba(0,0,0,0.8);
	backdrop-filter: blur(5px);
}

.apt-modal__content {
	background: #EBE8E3;
	color: #181615;
	width: 90%;
	max-width: 1200px;
	padding: 50px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	position: relative;
	max-height: 90vh;
	overflow-y: auto;
}

.apt-modal__plan img {
	width: 100%;
	height: auto;
	mix-blend-mode: multiply;
}

.apt-modal__details {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.apt-modal__title {
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	margin-bottom: 10px;
}

.apt-modal__area {
	font-family: var(--font-serif);
	font-size: 60px;
	line-height: 1;
	margin-bottom: 30px;
}

.apt-modal__desc {
	font-size: 16px;
	line-height: 1.5;
	margin-bottom: 40px;
	max-width: 450px;
}

.apt-modal__specs {
	margin-bottom: 40px;
}

.spec-row {
	font-size: 14px;
	border-bottom: 1px solid rgba(0,0,0,0.1);
	padding: 10px 0;
}

.apartments__bottom {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 40px;
	margin-top: 100px;
	align-items: end;
}

.apartments__desc-left {
	font-size: 14px;
	line-height: 1.6;
	color: #fff;
	max-width: 300px;
}

.apartments__3d-model img {
	width: 100%;
	max-height: 600px;
	object-fit: contain;
}

.finance {
	padding-bottom: 100px;
	background: #181615;
	background: var(--bg-dark);
	background-image: url(/wp-content/themes/theme/img/bg-box2.jpg);
	background-size: cover;
	background-position: bottom center;
}

.finance__top-image {
	width: 100%;
	height: 700px;
}

.finance__top-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.finance__content {
	position: relative;
	z-index: 2;
	padding: 70px 0 0;
}

.finance__title {
	font-family: var(--font-serif);
	margin-bottom: 60px;
	font-weight: 400;
	font-size: 48px;
	line-height: 100%;
	color: #FFEFD8;
}

.finance__bg-text {
	position: absolute;
	top: 60px;
	left: 70%;
	transform: translateX(-50%);
	font-family: var(--font-script);
	font-size: 100px;
	color: rgba(255,255,255,0.1);
	pointer-events: none;
}

.finance__side-text {
	position: absolute;
	right: 0;
	top: 70px;
	letter-spacing: 0.2em;
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	font-family: var(--font-sans);
	display: flex;
	align-items: center;
	justify-content: center;
	align-content: center;
	gap: 10px;
	font-weight: 500;
	font-size: 16px;
	text-transform: uppercase;
	color: #FFEFD8;
	line-height: 1;
}

.finance__stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 40px;
	padding-top: 150px;
}

.fin-stat {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 300px;
}

.fin-stat__num {
	font-size: 11px;
	opacity: 0.3;
	margin-bottom: 10px;
}

.fin-stat__desc {
	font-size: 12px;
	text-transform: uppercase;
	line-height: 1.4;
	color: #fff;
}

.fin-stat__value {
	font-family: var(--font-serif);
	font-size: 90px;
	color: var(--text-gold);
	line-height: 1;
	margin-top: auto;
	display: flex;
	align-items: flex-start;
}

.fin-stat__suf {
	font-size: 40px;
	margin-top: 10px;
	margin-left: 5px;
}

@media (max-width: 1024px) {
	.infrastructure__grid {
		grid-template-columns: 1fr 1fr;
	}
	.inf-item:nth-child(even) {
		margin-top: 0;
	}
	.spa-content {
		grid-template-columns: 1fr;
	}
	.spa-content__side-gallery {
		display: none;
	}
	.apartments__list {
		grid-template-columns: 1fr;
	}
	.apartments__bottom {
		grid-template-columns: 1fr;
	}
	.finance__stats {
		grid-template-columns: 1fr 1fr;
	}
}

.cta {
	padding: 120px 0;
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
}

.cta::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.4);
}

.cta__wrapper {
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 1370px;
	margin: 0 auto;
}

.cta__content {
	max-width: 600px;
}

.cta__title {
	font-family: var(--font-serif);
	color: #FFEFD8;
	margin-bottom: 30px;
	font-weight: 400;
	font-size: 48px;
	line-height: 100%;
}

.cta__desc {
	color: #FFEFD8;
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
}

.cta__btn {
	background: #FFEFD8;
	color: #181615;
	min-width: 300px;
	text-align: center;
}

.cta__btn:hover {
	background: #fff;
}

.investment-format {
	padding: 0;
	background: #EBE8E3;
	color: #181615;
	overflow: hidden;
}

.investment-format__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 80px;
}

.inv-title {
	font-family: var(--font-serif);
	font-weight: 400;
	font-style: Italic;
	font-size: 48px;
	line-height: 100%;
	margin-bottom: 60px;
	color: #4A3F39;
}

.inv-desc {
	margin-bottom: 60px;
	max-width: 500px;
	font-weight: 500;
	font-size: 20px;
	line-height: 120%;
	text-transform: uppercase;
	color: #4A3F39;
	margin-bottom: 180px;
}

.inv-steps {
}

.inv-step {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 25px 0;
	border-bottom: 1px solid rgba(0,0,0,0.1);
}

.inv-step:first-child {
	border-top: 1px solid rgba(0,0,0,0.1);
}

.inv-step__text {
	max-width: 80%;
	font-weight: 500;
	font-size: 14px;
	line-height: 100%;
	color: #4A3F39;
}

.inv-step__num {
	font-weight: 500;
	font-size: 10px;
	line-height: 100%;
	text-transform: uppercase;
	color: #4A3F39;
}

.inv-quote {
	color: #4A3F39;
	font-family: var(--font-serif);
	max-width: 400px;
	font-weight: 400;
	font-size: 20px;
	line-height: 100%;
}

.inv-image-wrap {
	position: relative;
	height: 100%;
	min-height: 600px;
}

.inv-image-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.inv-badge {
	animation: rotateBadge 20s linear infinite;
}

.partners {
	padding: 120px 0;
	background: #1F1D1D;
}

.partners__list {
}

.partner-card {
}

.partner-photo {
	width: 100%;
	height: 350px;
	object-fit: cover;
	margin-bottom: 20px;
}

.partner-info {
	font-size: 12px;
}

.partner-name {
}

.partner-pos {
}

.partner-logo {
	height: 20px;
	width: auto;
	object-fit: contain;
	object-position: left;
}

.partner-card__col--content {
}

.partner-quote {
}

.partner-quote::before {
}

.partner-desc {
	font-size: 14px;
	line-height: 1.6;
	color: rgba(255,255,255,0.7);
	max-width: 500px;
}

.partner-card__role {
}

.construction {
	padding: 80px 0;
	background: #D5D0CE;
	color: #181615;
}

.construction__progress {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 100px;
	margin-bottom: 100px;
}

.progress-title {
	font-family: var(--font-serif);
	font-size: 48px;
	line-height: 1;
	font-style: italic;
	margin-bottom: 40px;
	margin-bottom: 200px;
}

.progress-desc {
	max-width: 300px;
	font-weight: 500;
	font-size: 20px;
	line-height: 120%;
	text-transform: uppercase;
}

.progress-gallery {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	align-items: flex-start;
	padding-right: 20px;
	max-height: 800px;
	overflow-y: scroll;
}

.progress-item {
	height: auto;
	width: calc(33.3% - 15px);
}

.progress-item img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.construction__stream {
	margin-bottom: 100px;
}

.stream-title {
	font-family: var(--font-serif);
	font-style: italic;
	margin-bottom: 40px;
	font-weight: 400;
	font-size: 48px;
	line-height: 100%;
}

.stream-player {
	width: 100%;
	height: 600px;
	background-size: cover;
	background-position: center;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.stream-play-btn {
	width: 80px;
	height: 80px;
	background: rgba(255,255,255,0.2);
	backdrop-filter: blur(10px);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
	cursor: pointer;
	transition: 0.3s;
}

.stream-play-btn::before {
	content: '';
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 15px solid #fff;
	margin-left: 5px;
}

.stream-play-btn:hover {
	background: #fff;
}

.stream-play-btn:hover::before {
	border-left-color: #000;
}

.construction__timeline {
	position: relative;
	padding-top: 40px;
}

.timeline-title {
	font-family: var(--font-serif);
	font-size: 40px;
	margin-bottom: 60px;
}

.timeline-graphic {
	width: 100%;
	margin-bottom: 30px;
}

.timeline-items {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.timeline-stage {
	color: #4A3F39;
	font-weight: 500;
	font-size: 14px;
	line-height: 200%;
	text-transform: uppercase;
	border-left: 1px solid #4A3F39;
	padding-left: 20px;
}

.faq {
	padding: 120px 0;
	background: #181615;
}

.faq__grid {
	display: grid;
	grid-template-columns: 1fr 3fr;
	gap: 80px;
}

.faq__title {
	font-family: var(--font-serif);
	color: #FFEFD8;
	margin-bottom: 40px;
	font-weight: 400;
	font-size: 48px;
	line-height: 100%;
	text-transform: uppercase;
}

.faq__desc {
	color: #FFEFD8;
	max-width: 300px;
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
	position: relative;
}

.faq-item {
	border-bottom: 1px solid rgba(255,255,255,0.1);
}

.faq-item:first-child {
	border-top: 1px solid rgba(255,255,255,0.1);
}

.faq-item__header {
	padding: 40px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	color: #fff;
	transition: color 0.3s;
}

.faq-item__header:hover {
	color: var(--text-gold);
}

.faq-item__question {
	font-family: var(--font-serif);
	max-width: fit-content;
	font-weight: 400;
	font-size: 24px;
	line-height: 100%;
	position: relative;
	display: flex;
	align-items: flex-start;
	width: 80%;
	min-width: 80%;
	color: #FFEFD8;
}

.faq-item__num {
	font-family: var(--font-serif);
	color: #4A3F39;
	margin: 0 20px;
	width: 15%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 400;
	font-size: 24px;
	line-height: 100%;
	text-transform: uppercase;
}

.faq-item__toggle {
	width: 10px;
	height: 10px;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: rotate(135deg);
	transition: transform 0.3s;
}

.faq-item.active .faq-item__toggle {
	transform: rotate(-45deg);
}

.faq-item__body {
	display: none;
	padding-bottom: 40px;
	color: #FFEFD8;
	max-width: 80%;
	padding-left: 148px;
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
}

.contact-footer {
	padding: 120px 0;
	position: relative;
	background-size: cover;
	background-position: center;
}

.contact-footer::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.6);
}

.contact-footer__grid {
	position: relative;
	z-index: 2;
	display: flex;
	gap: 100px;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
}

.contact-title {
	font-family: var(--font-serif);
	color: #FFEFD8;
	margin-bottom: 40px;
	font-weight: 400;
	font-size: 48px;
	line-height: 100%;
}

.contact-desc {
	color: #FFEFD8;
	max-width: 320px;
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
}

.simple-contact-form {
	display: flex;
	flex-direction: column;
	gap: 40px;
	max-width: 500px;
}

.simple-contact-form input {
	background: transparent;
	border: none;
	border-bottom: 1px solid #fff;
	padding: 15px 0;
	color: #fff;
	font-size: 14px;
	text-transform: uppercase;
	outline: none;
}

.simple-contact-form input::placeholder {
	color: #fff;
}

.contact-btn {
	background: #EBE8E3;
	color: #181615;
	margin-top: 20px;
}

.contact-btn:hover {
	background: #fff;
}

@media (max-width: 1024px) {
	.cta__wrapper, .investment-format__grid, .contact-footer__grid, .faq__grid, .construction__progress {
		grid-template-columns: 1fr;
		gap: 60px;
	}

	.inv-image-wrap { order: -1; min-height: 400px; margin-bottom: 40px; }
	.partner-card { grid-template-columns: 1fr; gap: 30px; }
	.partner-card__role { display: none; }
	.partner-photo { width: 100%; height: auto; }
	.progress-gallery { grid-template-columns: 1fr; }
	.timeline-items { grid-template-columns: 1fr 1fr; gap: 40px; }
}

.partners {
	padding: 80px 0;
	background: #4A3F39;
	color: #fff;
}

.partners__list {
	display: flex;
	flex-direction: row;
	gap: 20px;
	flex-wrap: wrap;
}

.partner-card {
	width: calc(50% - 10px);
	background-color: #231F1F;
	padding: 50px 50px 60px;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.partner-card__col--photo {
	display: flex;
	flex-direction: column;
}

.partner-photo {
	width: 100%;
	height: 300px;
	object-fit: cover;
	margin-bottom: 30px;
}

.partner-info {
	padding-right: 20px;
}

.partner-name {
	font-family: var(--font-sans);
	font-size: 12px;
	font-weight: 500;
	color: #E2DDDB;
}

.partner-pos {
	font-family: var(--font-sans);
	font-size: 12px;
	margin-bottom: 35px;
	color: #E2DDDB;
}

.partner-logo {
    height: 25px;
    width: auto;
    object-fit: contain;
    object-position: left;
}

.partner-card__col--content {
}

.partner-quote {
	font-family: var(--font-sans);
	max-width: 650px;
	position: relative;
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
	color: #E2DDDB;
	display: flex;
	align-items: flex-start;
	flex-direction: row;
	gap: 15px;
}

.partner-quote::before {
	content: '”';
	font-family: var(--font-serif);
	font-size: 130px;
	color: #4A3F39;
	display: flex;
	line-height: 80px;
}

.partner-desc {
	font-family: var(--font-sans);
	font-size: 14px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.7);
	max-width: 550px;
}

.partner-card__role {
	font-family: var(--font-serif);
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	text-transform: uppercase;
	white-space: nowrap;
	position: absolute;
	right: 50px;
	bottom: 50px;
	font-weight: 400;
	font-size: 40px;
	line-height: 100%;
}

@media (max-width: 1024px) {
	.partner-card {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	.partner-card__role {
		display: none;
	}
	.partner-quote::before {
		display: none;
	}
	.partner-card__col--content {
		padding-top: 0;
	}
}

.container-full {
	position: relative;
}
.site-header {
	position: fixed;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: calc(100% - 0px);
	padding: 30px 40px;
	z-index: 100;
	transition: all 0.4s ease;
}
.site-header.is-scrolled {
	padding: 15px 40px;
	background: rgb(35 31 31 / 35%);
	backdrop-filter: blur(10px);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}
section.hero {
	padding-top: 110px;
}
.site-header {
	z-index: 9;
}
.menu li a {
	padding: 10px 20px;
	font-weight: 500;
	font-size: 14px;
	line-height: 100%;
	text-transform: uppercase;
	color: var(--text-gold);
	position: relative;
}
.menu li a:before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	height: 1px;
	width: 0;
	background-color: var(--text-gold);
	transition: var(--transition);
	bottom: 5px;
}
.menu li a:hover:before {
	width: calc(100% - 40px);
}
.menu.left-headr {
	width: 47.5%;
}
.info.right-header {
	width: 47.5%;
	display: flex;
	justify-content: flex-end;
}
.logo_top.centre-header {
	width: 5%;
	display: flex;
	justify-content: center;
}
.info.right-header a {
	font-weight: 500;
	font-size: 14px;
	line-height: 100%;
	text-transform: uppercase;
	position: relative;
	padding: 10px 20px;
	color: var(--text-gold);
}
.info.right-header a:before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	height: 1px;
	width: calc(100% - 40px);
	background-color: var(--text-gold);
	transition: var(--transition);
	bottom: 5px;
}
.info.right-header a:hover:before {
	width: 10%;
}
.hero__content {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.botton_hero__content {
	width: 100%;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.left_botton_hero__content {
	max-width: 660px;
}
.js-draw-svg svg [data-draw="path"]{
	fill: transparent;
	stroke: var(--stroke, currentColor);
	stroke-width: 1;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: var(--len);
	stroke-dashoffset: var(--len);
	animation: none;
}

.js-draw-svg.is-anim svg [data-draw="path"]{
	animation:
	drawSvgLine 3.2s cubic-bezier(.4,0,.2,1) forwards,
	drawSvgFill 0.35s ease forwards;
	animation-delay: var(--delay), calc(var(--delay) + 2.6s);
}

@keyframes drawSvgLine{
	to{ stroke-dashoffset: 0; }
}

@keyframes drawSvgFill{
	to{ fill: var(--fill, currentColor); }
}

.js-write-letters svg [data-letter="path"]{
	fill: transparent;
	stroke: var(--stroke, currentColor);
	stroke-width: var(--sw, 1);
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: var(--len);
	stroke-dashoffset: var(--len);
	animation: none;
}

.js-write-letters.is-anim svg [data-letter="path"]{
	animation: letterLine var(--dur, 0.9s) cubic-bezier(.55,0,.1,1) forwards, letterFill 0.2s ease forwards;
	animation-delay: var(--d, 0s), calc(var(--d, 0s) + var(--fillDelay, 0.65s));
}

@keyframes letterLine{
	to{ stroke-dashoffset: 0; }
}

@keyframes letterFill{
	to{ fill: var(--fill, currentColor); }
}
.concept__grid {
	position: relative;
}
.concept__grid:before {
	content: "";
	width: 1px;
	height: 100%;
	background-color: #4A3F39;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.concept__script-title {
	margin-bottom: 90px;
}
.concept__badge-group {
	display: flex;
	align-items: center;
	gap: 50px;
}
.concept__subtitle {
	text-align: center;
	padding-bottom: 150px;
}
.why-bukovel:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 80%;
	background: linear-gradient(180deg, #231F1F 51.96%, rgba(35, 31, 31, 0) 100%);
}
.why-bukovel .container {
	position: relative;
}
.why-bukovel__title span {
	font-style: italic;
}
.why-bukovel__side-label:after {
	content: "";
	width: 5px;
	height: 35px;
	background-color: var(--text-gold);
	display: flex;
	align-items: center;
	justify-content: center;
}

.why-bukovel-wrapper {
	position: relative;
}

.why-bukovel__list {
	display: flex;
	justify-content: space-between;
	gap: 80px;
	align-items: stretch;
}
.why-bukovel__list .why-item {
	width: 280px;
	padding-left: 20px;
}

.why-bukovel__list {
	--easing: cubic-bezier(0.19, 1, 0.22, 1);
}
.why-item {
	position: relative;
}
.why-item::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 2px;
	background: linear-gradient(0deg, rgba(74, 63, 57, 0) 0%, #4A3F39 100%);
	transform: scaleY(0);
	transform-origin: top center;
	transition: transform 1.2s var(--easing);
	will-change: transform;
}
.why-item__num,
.why-item__title,
.why-item__desc {
	opacity: 0;
	transform: translateY(40px);
	filter: blur(10px);
	transition:
	opacity 1.2s var(--easing),
	transform 1.2s var(--easing),
	filter 1.2s var(--easing);
	will-change: opacity, transform, filter;
}
.why-bukovel__list.is-active .why-item::before {
	transform: scaleY(1);
	transition-delay: var(--delay);
}
.why-bukovel__list.is-active .why-item__num {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.15s);
}
.why-bukovel__list.is-active .why-item__title {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.25s);
}
.why-bukovel__list.is-active .why-item__desc {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.35s);
}
.why-bukovel__letters, .footer-logo, .footer_img {
	overflow: hidden;
}
.why-bukovel__letter-img {
	clip-path: inset(100% 0 0 0);
	will-change: clip-path;
}
.location__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: flex-start;
	align-items: center;
	gap: 120px;
}
.location__map {
	width: 100%;
}
.location__bg-text span {
	position: absolute;
	bottom: 0;
	margin-left: -20%;
	font-family: var(--font-script);
	font-weight: 500;
	font-size: 200px;
	line-height: 1;
	letter-spacing: 0;
	display: inline-block;
	background: linear-gradient(180deg, #4A3F39 22.12%, #231f1f 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	color: transparent;
	transform: translateY(-0.08em);
	width: 100%;
}
.location__bg-text {
}
.location__bg-text{
	font-family: var(--font-script);
	font-weight: 500;
	font-size: 200px;
	line-height: 1;
	letter-spacing: 0;
	display: inline-block;
	background: linear-gradient(180deg, #4A3F39 22.12%, #231F1F 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	color: transparent;
	transform: translateY(-0.08em);
	text-align: left;
}
section.location {
	background-color: #231F1F;
}
.location__features{
	--easing: cubic-bezier(0.19, 1, 0.22, 1);
}

.loc-feature{
	position: relative;
}

.loc-feature::before{
	content:'';
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	width:1px;
	background: rgba(255, 255, 255, 0.15);
	transform: scaleY(0);
	transform-origin: top center;
	transition: transform 1.2s var(--easing);
	will-change: transform;
}

.loc-feature__text,
.loc-feature__num{
	opacity: 0;
	transform: translateY(28px);
	filter: blur(8px);
	transition:
	opacity 1.2s var(--easing),
	transform 1.2s var(--easing),
	filter 1.2s var(--easing);
	will-change: opacity, transform, filter;
}

.location__features.is-active .loc-feature::before{
	transform: scaleY(1);
	transition-delay: var(--delay);
}

.location__features.is-active .loc-feature__num{
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.15s);
}

.location__features.is-active .loc-feature__text{
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.25s);
}

.loc-feature:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 2px;
	background: linear-gradient(0deg, rgba(74, 63, 57, 0) 0%, #4A3F39 100%);
	transform: scaleY(0);
	transform-origin: top center;
	transition: transform 1.2s var(--easing);
	will-change: transform;
}

.location__features {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
}

.loc-feature {
	position: relative;
	padding-left: 30px;
}
.loc-feature__text,
.loc-feature__num {
	opacity: 0;
	transform: translateY(40px);
	filter: blur(10px);
	transition: opacity 1.8s cubic-bezier(0.19, 1, 0.22, 1), transform 1.8s cubic-bezier(0.19, 1, 0.22, 1), filter 1.8s cubic-bezier(0.19, 1, 0.22, 1);
	will-change: opacity, transform, filter;
}

.location__features.is-active .loc-feature::before {
	transform: scaleY(1);
	transition-delay: var(--delay);
}

.location__features.is-active .loc-feature__text {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.2s);
}

.location__features.is-active .loc-feature__num {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.35s);
}

@media (max-width: 1024px) {
	.location__features {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.loc-feature::before {
		width: 100%;
		height: 1px;
		bottom: auto;
		transform: scaleX(0);
		transform-origin: left center;
	}

	.location__features.is-active .loc-feature::before {
		transform: scaleX(1);
	}
}

.location__map{
	overflow:hidden;
}

.location__map img{
	display:block;
	width:100%;
	height:auto;
	clip-path: circle(0% at 50% 50%);
	transform: scale(1.06);
	will-change: clip-path, transform;
	max-height: 770px;
}
.loc-feature{
	opacity:0;
	transform: translateY(60px) rotateX(10deg);
	filter: blur(6px);
	will-change: transform, opacity, filter;
}
.philosophy__badge {
	animation: rotateBadge 20s linear infinite;
}
img.philosophy__badge {
	animation: rotateBadge 20s linear infinite;
}
.philosophy__slider {
	height: 100vh;
}
.philosophy__slide .container {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.infrastructure {
	background-color: #E2DDDB;
}
.infrastructure {
	background-color: #E2DDDB;
}
.infrastructure, .infrastructure * {
	color: #4A3F39;
}

.infrastructure__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 100px;
	align-items: stretch;
}
.inf-item {
	position: relative;
	padding-left: 20px;
	
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: space-between;
}
.inf-item::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 2px;
	background: rgba(255, 255, 255, 0.2);
	transform: scaleY(0);
	transform-origin: top center;
	transition: transform 1.8s cubic-bezier(0.19, 1, 0.22, 1);
	will-change: transform;
	background: linear-gradient(0deg, rgba(74, 63, 57, 0) 0%, #4A3F39 100%);
}
.inf-item__title,
.inf-item__num,
.inf-item__desc,
.inf-item__image {
	opacity: 0;
	transform: translateY(40px);
	filter: blur(10px);
	transition: opacity 1.8s cubic-bezier(0.19, 1, 0.22, 1), transform 1.8s cubic-bezier(0.19, 1, 0.22, 1), filter 1.8s cubic-bezier(0.19, 1, 0.22, 1);
	will-change: opacity, transform, filter;
}
.infrastructure__grid.is-active .inf-item::before {
	transform: scaleY(1);
	transition-delay: var(--delay);
}
.infrastructure__grid.is-active .inf-item__title {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.2s);
}
.infrastructure__grid.is-active .inf-item__num {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.3s);
}
.infrastructure__grid.is-active .inf-item__desc {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.4s);
}
.infrastructure__grid.is-active .inf-item__image {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: calc(var(--delay) + 0.5s);
}
@media (max-width: 1024px) {
	.infrastructure__grid {
		grid-template-columns: 1fr;
		gap: 50px;
	}
	.infrastructure__grid .inf-item:nth-child(4n+2),
	.infrastructure__grid .inf-item:nth-child(4n+3),
	.infrastructure__grid .inf-item:nth-child(4n+4) {
		margin-top: 0;
	}
	.inf-item::before {
		width: 100%;
		height: 1px;
		bottom: auto;
		transform: scaleX(0);
		transform-origin: left center;
	}
	.infrastructure__grid.is-active .inf-item::before {
		transform: scaleX(1);
	}
}
.vert-text:after {
	content: "";
	background-color: #4A3F39F3;
	height: 38px;
	width: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.js-draw-svg, .js-write-letters {
	opacity: 0;
}
.js-draw-svg.is-anim, .js-write-letters.is-anim {
	opacity: 1;
}
.infrastructure__spa {
	position: relative;
	padding-top: 50px;
	padding-bottom: 0px;
}

.spa-content {
	display: flex;
	height: 700px;
	gap: 20px;
}

.spa-content__main {
	width: 75%;
	position: relative;
	height: 100%;
}

.js-spa-slider {
	width: 100%;
	height: 100%;
}

.js-spa-slider .slick-list,
.js-spa-slider .slick-track {
	height: 100%;
}

.spa-slide {
	height: 100%;
	position: relative;
}

.spa-slide-img {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.spa-slide-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.spa-nav-prev,
.spa-nav-next,
.apartments-nav,
.infrastructure-nav,
.location-nav,
.why-bukovel-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	width: 50px;
	height: 45px;
	background: #FFEFD8;
	backdrop-filter: blur(30px);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
	opacity: 0.8;
	border: none;
	background-image: url(/wp-content/themes/theme/img/arrow-sl.svg);
	background-size: 15px;
	background-repeat: no-repeat;
	background-position: center center;
	transition: 0.5s;
}

.apartments-nav,
.infrastructure-nav,
.location-nav,
.why-bukovel-nav {
	width: 30px;
	height: 30px;
	display: none;
}

.infrastructure-nav {
	top: 60%;
}

.location-nav {
	top: 80%;
}

.why-bukovel-nav {
	top: 100%;
}

.spa-nav-prev {
	left: 40px;
}

.spa-nav-next {
	right: 40px;
}

.apartments-nav-prev,
.location-nav-prev,
.why-bukovel-nav-prev {
	left: -5px;
}

.apartments-nav-next,
.location-nav-next,
.why-bukovel-nav-next {
	right: -5px;
}

.infrastructure-nav-prev {
	left: 5px;
}

.infrastructure-nav-next {
	right: 5px;
}

.spa-nav-prev:hover,
.spa-nav-next:hover {
	background: #fff;
}

.spa-content__sidebar {
	width: 25%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.js-spa-thumbs {
	height: 60%;
}

.js-spa-thumbs .slick-list {
	height: 100% !important;
}

.spa-thumb-item {
	padding-bottom: 15px;
	cursor: pointer;
	outline: none;
}

.spa-thumb-img {
	height: 100%;
	width: 100%;
	overflow: hidden;
	transition: opacity 0.3s;
	padding-right: 10px;
}

.spa-thumb-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.slick-current .spa-thumb-img {
	opacity: 1;
}

.spa-content__info {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	padding-bottom: 10px;
	max-width: 360px;
	align-items: flex-start;
	align-content: center;
	justify-content: flex-end;
	margin: 0 auto;
}

.spa-desc {
	font-family: var(--font-serif);
	margin-bottom: 60px;
	font-weight: 400;
	font-size: 20px;
	line-height: 120%;
}

.spa-num {
	font-family: var(--font-serif);
	font-weight: 400;
	font-size: 36px;
	line-height: 100%;
}
.js-spa-thumbs .slick-track {
	display: flex;
	flex-direction: row;
	width: 100%;
}

@media (max-width: 1024px) {
	.spa-content {
		flex-direction: column;
		height: auto;
	}

	.spa-content__main {
		width: 100%;
		height: 400px;
	}

	.spa-content__sidebar {
		width: 100%;
		flex-direction: row;
		padding-top: 20px;
	}

	.js-spa-thumbs {
		display: none;
	}

	.spa-content__info {
		width: 100%;
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-end;
	}
}

.js-write-letters path.anim-part {
	fill: none !important;
	stroke: #F5E6CA;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: var(--len);
	stroke-dashoffset: var(--len);
	opacity: 1;
	will-change: stroke-dashoffset, opacity;
}
.js-write-letters path.final-shape {
	fill: var(--fill-color);
	stroke: none;
	opacity: 0;
	will-change: opacity;
}
.js-write-letters.is-anim path.anim-part {
	animation:
	writeLine 2.5s cubic-bezier(0.19, 1, 0.22, 1) forwards,
	fadeStrokeOut 0.5s ease forwards;
	animation-delay: var(--d, 0s), 2.3s;
}
.js-write-letters.is-anim path.final-shape {
	animation: fadeInOriginal 0.8s ease forwards;
	animation-delay: 2.3s;
}
@keyframes writeLine {
	to { stroke-dashoffset: 0; }
}
@keyframes fadeStrokeOut {
	to { opacity: 0; }
}
@keyframes fadeInOriginal {
	to { opacity: 1; }
}
.spa-header__script {
	margin-left: 100px;
}
.apt-drawer__plan img {
	max-height: 600px;
}
.apt-drawer__back span.arrow-icon {
	width: 35px;
	height: 30px;
	background-color: #231F1F;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #FFEFD8;
	line-height: 1;
}
.apt-drawer__back:hover {
	background-color: #231F1F;
	color: #FFEFD8;
}
.box_left-border {
	margin-bottom: 60px;
	padding-left: 20px;
	border-left: 1px solid #231F1F;
}
div#popup-specs ul, div#popup-specs ol {
	padding: 0;
	margin: 0;
	margin-left: 20px;
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
}
.apartments__bg-text {
	position: absolute;
	top: 100%;
}
.showcase-card:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: linear-gradient(180deg, rgba(35, 31, 31, 0) 0%, rgba(35, 31, 31, 0.9) 100%);
	z-index: 1;
}
body.lock-scroll {
	overflow: hidden !important;
}
.finance__side-text:after {
	content: "";
	width: 5px;
	height: 35px;
	background-color: var(--text-gold);
	display: flex;
	align-items: center;
	justify-content: center;
}
.location__features.finance__stats .loc-feature__text.fin-stat__value {
	margin-bottom: 0;
	color: rgb(255 239 216 / 60%);
}
.location__features.finance__stats .loc-feature__num {
	font-weight: 500;
	font-size: 14px;
	line-height: 100%;
	text-transform: uppercase;
	color: #4A3F39;
	margin-bottom: 40px;
}
.location__features.finance__stats .loc-feature__num + .loc-feature__text {margin-bottom: 100px;font-weight: 500;font-size: 20px;line-height: 100%;text-transform: uppercase;}

.location__features.finance__stats.is-active .loc-feature {
	padding-left: 40px;
}
.investment-format__col.investment-format__col--img {
	position: relative;
}
.inv-image-wrap img.inv-badge {
	position: absolute;
	left: -160px;
	width: 120px;
	height: 120px;
	top: 80px;
}
.investment-format__col.investment-format__col--text {
	padding: 80px 0;
}
.investment-format .container {
	padding-right: 0;
}
.box_booton_inv {
	display: flex;
	align-items: flex-end;
	gap: 80px;
}

.top_partner-card {
	display: flex;
	gap: 40px;
}

.partner-card__col {
	width: calc(50% - 20px);
}

.partner-quote br {
	content: "";
	display: block;
	line-height: 10px;
	margin-top: 10px;
}

.partner-desc ul li {
	font-weight: 500;
	font-size: 16px;
	line-height: 100%;
	padding: 15px 0;
	border-top: 1px solid #FFEFD81A;
}

.booton_partner-card {
	margin-top: 100px;
	width: 90%;
	max-width: 540px;
}

.partner-desc ul li:nth-last-child(1) {
	border-bottom: 1px solid #FFEFD81A;
}

.partner-desc p {
    font-family: var(--font-sans);
    font-size: 18px;
    font-weight: 500;
    line-height: 100%;
    max-width: 380px;
    margin-bottom: 0;
}

.progress-gallery {
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: #181615 rgba(0, 0, 0, 0.1);
}

.progress-gallery::-webkit-scrollbar {
	width: 2px;
	height: 2px;
}

.progress-gallery::-webkit-scrollbar-track {
	background: rgba(0, 0, 0, 0.1);
	border-radius: 0;
}

.progress-gallery::-webkit-scrollbar-thumb {
	background: #181615;
	border-radius: 0;
}

.progress-gallery::-webkit-scrollbar-thumb:hover {
	background: #333;
}

.construction__stream {
	display: flex;
	align-items: center;
	gap: 150px;
}
.faq__desc:after {
	content: "";
	display: flex;
	width: 40px;
	height: 5px;
	background-color: #FFEFD8;
	margin-top: 40px;
}
span.faq-item__question:before {
	content: "";
	display: flex;
	width: 8px;
	height: 8px;
	background-color: #4A3F39;
	margin-top: 7px;
	margin-right: 140px;
}
.faq-item.active span.faq-item__question:before {
	background-color: #FFEFD8;
}
.form_site input {
	font-weight: 500;
	font-size: 20px;
	line-height: 100%;
	text-transform: uppercase;
	color: #FFEFD8 !important;
	background-color: transparent;
	outline: none;
	border: none;
	border-bottom: 1px solid #FFEFD8;
	padding: 5px 0;
	border-radius: 0;
}
.form_site input.wpcf7-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 16px 45px;
	background: var(--text-gold);
	color: var(--text-color);
	font-family: var(--font-sans);
	font-size: 14px;
	font-weight: 500;
	text-transform: uppercase;
	border: none;
	cursor: pointer;
	background: #FFEFD8;
	color: #181615 !important;
	min-width: 300px;
	border-radius: 0;
	cursor: pointer;
}
.form_site {
	max-width: 440px;
}
.contact-footer__form-wrap {
	max-width: 440px;
	margin-right: 100px;
}
.contact-footer__info {
	max-width: 630px;
}
.form_site input::placeholder {
	color: #FFEFD8;
	opacity: 0,8;
}
.form_site input:-webkit-autofill,
.form_site input:-webkit-autofill:hover,
.form_site input:-webkit-autofill:focus {
	-webkit-text-fill-color: #FFEFD8 !important;
	transition: background-color 5000s ease-in-out 0s;
}
.contact-footer {
	position: relative;
	overflow: hidden;
	z-index: 1;
}

.contact-footer__bg-video {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	z-index: -1;
	transform: translate(-50%, -50%);
	object-fit: cover;
}

.contact-footer .container {
	position: relative;
	z-index: 2;
}
.footer-bottom {
	padding: 100px 0 50px;
	background-color: #231F1F;
	color: #FFEFD8;
	border-top: 1px solid rgba(255, 239, 216, 0.1);
}

.footer-bottom__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 100px;
	margin-bottom: 80px;
	align-items: start;
}

.footer-social-list {
	display: flex;
	justify-content: center;
	padding-top: 25px;
	gap: 25px;
	
}

.footer-social-list a {
	opacity: 0.8;
	font-weight: 500;
	font-size: 16px;
	line-height: 100%;
	text-transform: uppercase;
	position: relative;
}

.footer-social-list a:hover {
	opacity: 1;
}

.contacts-table {
	width: 100%;
	max-width: 600px;
	margin-left: auto;
}

.contacts-table__row {
	display: grid;
	grid-template-columns: 250px 1fr;
	padding: 20px 0;
	border-bottom: 1px solid #FFEFD81A;
	font-size: 14px;
}

.contacts-table__label {
	font-weight: 500;
	font-size: 14px;
	line-height: 100%;
	text-transform: uppercase;
	color: #FFEFD8;
}

.contacts-table__value a {
	color: inherit;
}

.footer-bottom__last-row {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-top: 180px;
}

.footer-logo img {
	max-height: 120px;
	width: auto;
}

.footer-copyright {
	font-size: 12px;
	opacity: 0.5;
}

@media (max-width: 1024px) {
	.footer-bottom__grid {
		grid-template-columns: 1fr;
		gap: 50px;
	}
	.contacts-table {
		margin-left: 0;
		max-width: unset;
	}
	.footer-bottom__last-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 30px;
	}
}
.footer-bottom {
	background-image: url(/wp-content/themes/theme/img/bg-ffoter.jpg);
	background-size: cover;
	background-position: center;
}
.footer-bottom__col.footer-bottom__social {
	display: flex;
	align-items: center;
	justify-content: center;
}
.footer-social-list a:before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	height: 1px;
	width: 100%;
	background-color: var(--text-gold);
	transition: var(--transition);
	bottom: -7px;
}
.footer-social-list a:hover:before {
	width: 20%;
}
.contacts-table__value {
	font-weight: 500;
	font-size: 14px;
	line-height: 120%;
	text-transform: uppercase;
	letter-spacing: 1px;
	word-break: break-word;
}
.contacts-table__value a {
	display: flex;
}
.contacts-table__value a:nth-last-child(1) {
	border-bottom: none;
	padding-bottom: 0;
}
.contacts-table__value a:nth-child(1) {
	padding-top: 0;
}

.contacts-table__row,
.faq-item,
.timeline-stage,
.partner-desc,
.inv-step,
.inv-quote,
.selector-row,
.showcase-card,
.partner-card,
.distance-row {
	opacity: 0;
	transform: translateY(40px);
	filter: blur(10px);
	transition:
	opacity 1.2s cubic-bezier(0.19, 1, 0.22, 1),
	transform 1.2s cubic-bezier(0.19, 1, 0.22, 1),
	filter 1.2s cubic-bezier(0.19, 1, 0.22, 1);
	will-change: opacity, transform, filter;
}

.contacts-table.is-active .contacts-table__row,
.faq__list.is-active .faq-item,
.timeline-items.is-active .timeline-stage,
.partner-card.is-active .partner-desc,
.box_booton_inv.is-active .inv-step,
.box_booton_inv.is-active .inv-quote,
.apt-bot-selector.is-active .selector-row,
.apartments__showcase.is-active .showcase-card,
.partners__list.is-active .partner-card,
.location__distances.is-active .distance-row {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
	transition-delay: var(--delay);
}

.hero__description, .concept__main-text, .why-bukovel__title,
.location__title, .location__desc, .philosophy__title,
.infrastructure__headline, .apartments__title, .apt-bot-desc,
.finance__title, .cta__title, .inv-title, .inv-desc,
.progress-title, .progress-desc, .stream-title,
.timeline-title, .faq__title, .faq__desc,
.contact-title, .contact-desc {
	backface-visibility: hidden;
	transform: translateZ(0);
	-webkit-font-smoothing: antialiased;
}

.concept__image-wrap,
.interior-slider__slide,
.spa-slide-img,
.spa-thumb-img,
.apt-bot-model,
.finance__top-image,
.inv-image-wrap,
.progress-item,
.stream-player,
.timeline-graphic,
.concept__script-title {
	position: relative;
	overflow: hidden !important;
	clip-path: inset(0 0 100% 0);
	will-change: clip-path;
}

.concept__image-wrap img,
.interior-slider__slide img,
.spa-slide-img img,
.spa-thumb-img img,
.apt-bot-model img,
.finance__top-image img,
.inv-image-wrap img:not(.inv-badge),
.progress-item img,
.timeline-graphic img,
.concept__script-title img {
	transform: translateY(-20%);
	will-change: transform;
	height: 120%;
	object-fit: cover;
}

.popup-form {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1000;
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 99999;
}

.popup-form__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #221E1E33;
	backdrop-filter: blur(7px);

}

.popup-form__content {
	position: relative;
	z-index: 999992;
	width: 100%;
	max-width: 445px;
	padding: 30px;
	background: transparent;
	color: #FFEFD8;
	text-align: center;
}

.popup-form__close {
	position: absolute;
	top: 20px;
	right: 20px;
	background: none;
	border: none;
	cursor: pointer;
	transition: transform 0.3s ease;
}

.popup-form__close:hover {
	transform: rotate(90deg);
}

.popup-title {
	font-family: var(--font-serif);
	margin-bottom: 25px;
	text-transform: uppercase;
	text-align: left;
	font-weight: 400;
	font-size: 32px;
	line-height: 100%;
	width: 90%;
}

.popup-desc {
	margin-bottom: 40px;
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
	text-align: left;
}

.popup-form .form_site input {
	width: 100%;
	margin-bottom: 30px;
}

.popup-form .form_site input.wpcf7-submit {
	width: 100%;
	margin-top: 10px;
}
.popup-form__content {
	background-image: url(/wp-content/themes/theme/img/bg-popap.jpg);
	background-size: cover;
}
.popup-form__inner .form_site p {
	margin-bottom: 0;
}
.popup-form__inner .form_site input.wpcf7-form-control.wpcf7-submit {
	color: #231F1F !important;
	margin: 40px 0 0;
}
.info.right-header.header_mobile {
	display: none;
}
section.interior-slider:before {
	content: "";
	background: linear-gradient(180deg, #231F1F 0%, rgba(35, 31, 31, 0) 100%);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 200px;
	z-index: 1;
}
.apartments .apartments__title {
	line-height: 130%;
}
.drawer-header {
	padding-top: 5px;
}
body .wpcf7-not-valid-tip {
	position: absolute;
	display: block;
	width: 100%;
	text-align: left;
	bottom: -30px;
	font-size: 14px;
}
.wpcf7 form .wpcf7-response-output {
	margin: 0;
}
.wpcf7 form.sent .wpcf7-response-output {
	font-weight: 500;
	font-size: 16px;
	line-height: 120%;
	text-align: center;
	border: none;
	padding: 80px 0;
}

.leaflet-map {
	z-index: 0;
}

/* ADAPTATION */
@media (min-width: 1021px) and (max-width: 1500px) {
	.logo_top.centre-header {
		width: 2%;
	}
	.menu.left-headr {
		width: 49%;
	}
	.info.right-header {
		width: 49%;
		gap: 10px;
	}
	
	.menu li a {
		padding: 0px 10px;
		font-size: 12px;
	}
	.info.right-header a {
		padding: 0px;
		font-size: 12px;
	}
	.menu li a:before {
		bottom: -5px;
	}
	.menu li a:hover:before {
		width: 100%;
	}
	.info.right-header a:before {
		width: 100%;
		bottom: -5px;
	}
}

@media (min-width: 1021px) and (max-width: 1300px) {
	.info.right-header {
		gap: 5px;
	}
	.menu li a {
		padding: 0px 5px;
	}
	.info.right-header a {
		padding: 0px;
	}
	
	.concept__grid:before {
		display: none;
	}

	.concept__col--right {
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.why-bukovel__list .why-item {
		width: 27%;
	}

	.why-bukovel__list {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.philosophy__title {
		margin-bottom: 25vh;
	}

	.infrastructure__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 0 80px;
	}

	.infrastructure__grid .inf-item:nth-child(4n+3) {
		margin-top: 50px;
	}

	.infrastructure__grid .inf-item:nth-child(4n+4) {
		margin-top: 110px;
	}

	.inv-desc {
		margin-bottom: 40px;
	}

	.box_booton_inv {
		display: flex;
		flex-direction: column;
	}

	.partner-card {
		width: 100%;
	}

	.contact-footer__info {
		min-width: 40%;
	}

	.contact-footer__grid {
		display: flex;
	}

	.contact-footer__grid h2.contact-title {
		font-size: 36px;
	}

	.why-bukovel__letter-img {
		max-width: 450px;
	}

	.footer-bottom__grid {
		gap: 60px;
	}

	.footer-bottom__col.footer-bottom__social {
		display: flex;
		justify-content: flex-start;
	}
	.why-bukovel__letter-img {
		max-width: 100%;
	}
}

@media screen and (min-width: 1020px) {
	section.hero .hero__content {
		min-height: 720px;
	}
	section.hero {
		min-height: 900px;
	}
}

@media screen and (max-width: 1020px) {
	.logo_top.centre-header {
		width: 10%;
	}
	
	.menu-toggle {
		display: block;
	}

	.why-bukovel__list {
		display: flex;
		flex-direction: column;
	}
	.why-bukovel__list {
		display: flex;
		flex-direction: column;
	}
	.cta__wrapper {
		display: flex;
		flex-direction: column;
	}
	.partners__list {
		display: flex;
		flex-direction: column;
	}
	span.faq-item__question:before {
		display: none;
	}
	.finance__bg-text {
		left: 0;
	}
	.info.right-header.header_mobile {
		display: flex;
	}
	.info.right-header {
		display: none;
	}
	.site-header {
		display: flex;
		padding: 20px;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
	.menu.left-headr {
		width: auto;
	}
	.menu-toggle {
		padding: 0;
		background-color: transparent;
		border-radius: 0;
		border: none;
		padding: 10px 0 10px 10px;
	}
	.open_box_menu {
		position: fixed;
		width: 100%;
		height: 100%;
		left: 0;
		top: 0;
		display: flex;
		flex-direction: column;
		background-color: rgb(35 31 31 / 50%);
		transform: translateX(150%);
		transition: 0.5s;
		padding-top: 150px;
		align-items: center;
		backdrop-filter: blur(7px);
	}
	.main-navigation.toggled .open_box_menu {
		transform: translateX(0%);
	}

	.logo_top.centre-header {
		position: relative;
		z-index: 999;
	}
	.menu-toggle {
		position: relative;
		z-index: 999;
	}
	.info.right-header a {
		display: flex;
	}
	.phone-header {
		display: flex;
		flex-direction: column;
	}
	.info.right-header.header_mobile {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 100px;
	}
	.menu li a {
		text-align: center;
	}
	.menu-toggle {
		width: 40px;
		height: 28px;
		background-image: url(/wp-content/themes/theme/img/menu.svg);
		background-size: contain;
		background-repeat: no-repeat;
		transition: 0.5s;
		background-position: center;
	}
	.main-navigation.toggled .menu-toggle {
		background-image: url(/wp-content/themes/theme/img/close.svg);
	}
	.site-header.is-scrolled {
		padding: 10px 20px;
	}
	.site-header.is-scrolled {
		backdrop-filter: none;
	}
	.site-header.is-scrolled {
		background: rgb(35 31 31 / 90%);
	}
	.botton_hero__content {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
	.hero__logo-anim {
		padding-bottom: 110px;
	}
	.hero__title {
		font-size: 36px;
		max-width: 250px;
		margin: 0;
		padding-bottom: 40px;
	}
	section.hero {
		padding: 50px 0;
	}
	.right_botton_hero__content {
		margin-top: 30px;
	}
	.btn {
		padding: 14px 40px;
	}
	.concept {
		background-image: none;
		padding: 50px 0;
	}
	.concept__subtitle {
		padding-bottom: 40px;
	}
	.concept__signature {
		margin-top: 40px;
	}
	.concept__col--right {
		padding-left: 0;
		border-top: 1px solid #4A3F39;
		padding-top: 40px;
	}
	.concept__grid {
		gap: 80px;
	}
	.concept__subtitle svg {
		max-width: 180px;
	}
	.concept__grid:before {
		display: none;
	}
	.concept__script-title {
		margin-bottom: 25px;
		padding-bottom: 25px;
		position: relative;
	}
	.concept__script-title:before {
		content: "";
		background-color: #4A3F39;
		display: flex;
		width: 40px;
		height: 5px;
		position: absolute;
		bottom: 0;
	}
	.concept__main-text {
		margin-bottom: 0px;
	}
	.concept__badge-group {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 25px;
	}
	.interior-slider__slide img {
		height: 100%;
	}
	.interior-slider__slide img {
		height: 100%;
	}
	.slick-arrow {
		width: 40px;
		height: 32px;
		border-radius: 0;
		background-size: 14px;
	}
	.slick-next {
		right: 20px;
	}
	.slick-prev {
		left: 20px;
	}
	.why-bukovel__title {
		font-size: 36px;
	}

	.why-bukovel__side-label {
		font-size: 14px;
		margin-right: -5px;
		margin-top: -15px;
	}

	.why-bukovel__list .why-item:nth-child(1), .why-bukovel__list .why-item:nth-child(2), .why-bukovel__list .why-item:nth-child(3), .why-bukovel__list .why-item:nth-child(4), .why-bukovel__list .why-item:nth-child(5) {
		margin-top: 10px;
	}

	.why-bukovel__list .why-item {
		width: 320px;
		min-width: 320px;
	}

	.why-item__title {
		margin-bottom: 80px;
	}

	.why-item__num {
		margin-bottom: 80px;
	}

	.why-bukovel__list {
		width: 100%;
		overflow: scroll;
		display: flex;
		flex-direction: row;
		gap: 50px;
		padding-bottom: 40px;
	}

	section.why-bukovel {
		padding: 50px 0;
	}

	.why-bukovel__letters {
		margin-top: 80px;
	}

	.why-bukovel {
		background-size: cover;
	}
	.location {
		padding: 50px 0;
	}
	.location__grid {
		display: flex;
		flex-direction: column;
	}
	.location__info {
		width: 100%;
	}
	h2.location__title {
		font-size: 24px;
		line-height: 120%;
	}
	.location__bg-text {
		display: none;
	}
	.distance-row {
		padding: 20px 0;
	}
	.distance-row__text {
		max-width: 75%;
	}
	.location__distances {
		margin-bottom: 50px;
	}
	.location__features {
		display: flex;
		flex-direction: row;
		width: 100%;
		overflow-x: scroll;
		overflow-y: hidden;
	}
	.loc-feature {
		display: flex;
		flex-direction: column;
		padding-left: 10px !important;
		min-width: 250px;
	}
	
	.loc-feature:first-child img {
		width: 50%;
	}
	
	.loc-feature::before {
		height: 100%;
		width: 2px;
	}
	.loc-feature__text {
		margin-bottom: 30px;
	}
	.philosophy {
		height: 100vh;
	}
	.philosophy__title {
		font-size: 24px;
		margin-bottom: 20vh;
	}
	.philosophy__content {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	.infrastructure {
		padding: 50px 0;
	}
	.inf-item::before {
		height: 100%;
		width: 2px;
	}
	.infrastructure__grid {
		padding: 0;
		display: flex;
		flex-direction: row;
		width: 100%;
		overflow-x: scroll;
		overflow-y: hidden;
	}
	.inf-item {
		min-width: 95%;
	}
	.inf-item__title {
		margin-bottom: 30px;
	}
	.infrastructure .inf-item__num {
		margin-bottom: 45px;
	}
	.inf-item__image {
		height: 300px;
	}
	.inf-item__desc {
		margin-bottom: 40px;
	}
	.infrastructure__middle {
		padding: 0 0 50px;
		position: relative;
		padding-top: 30px;
	}

	.infrastructure__middle:before {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		margin: 0 auto;
		width: 40px;
		height: 5px;
		background-color: #4A3F39F3;
		top: 0;
	}
	.infrastructure__headline {
		font-size: 24px;
	}
	.js-spa-thumbs {
		display: none !important;
	}
	.spa-nav-next {
		right: 10px;
	}
	.spa-nav-prev {
		left: 10px;
	}
	
	.apartments-nav,
	.infrastructure-nav,
	.location-nav,
	.why-bukovel-nav {
		display: flex !important;
	}
	
	.spa-content__info {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		max-width: unset;
	}
	.cta__content {
		text-align: center;
	}
	.spa-header .spa-header__script svg {
		max-width: 102px;
	}

	.spa-header__script {
		top: -30px;
	}

	.apartments__title {
		font-size: 24px;
	}

	.apartments {
		padding: 50px 0;
	}

	.apartments__bg-text, .apartments__bg-text svg {
		width: 100%;
	}

	.apartments__icon {
		margin-bottom: 40px;
	}

	.apartments__subtitle {
		margin-bottom: 40px;
	}
	.apartments__title {
		padding-bottom: 50px;
	}

	.apartments__bg-text {
		margin-top: 24px;
	}

	.showcase-card {
		height: auto;
		min-width: 320px;
	}

	.showcase-card__img {
		height: 350px;
	}

	.showcase-card__info {
		position: relative;
		left: 0;
		right: 0;
		bottom: 0;
		margin-top: 25px;
	}

	.apartments__showcase {
		display: flex;
		flex-direction: row;
		overflow-x: scroll;
		overflow-y: hidden;
		scroll-behavior: smooth;
    	scrollbar-width: none;
	}
	
	.apartments__showcase::-webkit-scrollbar {
		display: none;
	}

	.apartments__bottom-layout {
		display: flex;
		flex-direction: column;
		padding: 60px 0;
	}
	.location__features.finance__stats {
		display: grid;
    	grid-template-columns: repeat(2, 1fr);
    	gap: 15px;
		padding-top: 40px;
	}

	.location__features.finance__stats .loc-feature__num + .loc-feature__text {
		font-size: 14px;
		margin-bottom: 20px;
	}

	.finance__bg-text.js-write-letters {
		right: -45px;
		left: auto;
		transform: rotate(
			270deg);
		top: 50%;
		max-height: 40px;
		width: 260px;
	}

	.finance__content {
		overflow: hidden;
	}

	.finance__bg-text.js-write-letters svg {
		width: 100%;
		height: 100%;
	}

	section.cta {
		padding: 50px 0;
	}

	.cta__title {
		font-size: 36px;
	}

	a.btn.cta__btn {
		padding: 14px 10px;
	}

	.cta__action {
		margin-top: 50px;
	}

	.inv-title {
		font-size: 36px;
	}

	.investment-format .container {
		padding-right: 20px;
	}

	.inv-desc {
		margin-bottom: 60px;
	}

	.box_booton_inv {
		display: flex;
		flex-direction: column;
		gap: 40px;
	}
	.inv-steps {
		width: 100%;
	}

	.investment-format__col.investment-format__col--img {
		width: calc(100% - -40px);
		margin-left: -20px;
	}

	section.partners {
		padding: 20px 0 40px;
	}

	.partner-card {
		width: 100%;
	}

	.partner-card__role {
		display: flex;
		position: relative;
		writing-mode: initial;
		transform: rotate(0deg);
		font-size: 36px;
		white-space: normal;
		right: auto;
		bottom: auto;
	}

	.top_partner-card {
		display: flex;
		flex-direction: column;
	}

	.partner-card__col {
		width: 100%;
	}

	.partner-card {
		padding: 30px 20px;
	}

	img.partner-photo {
		margin-bottom: 20px;
	}

	.partner-pos {
		margin-bottom: 30px;
	}

	.partner-card__col.partner-card__col--content {
		margin-top: 40px;
	}

	.booton_partner-card {
		width: 100%;
		margin-top: 40px;
	}

	.partner-card__role {
		-webkit-order: 1;
		-ms-flex-order: 1;
		order: 1;
	}

	.top_partner-card {
		-webkit-order: 2;
		-ms-flex-order:2;
		order:2;
	}
	.booton_partner-card {
		-webkit-order: 3;
		-ms-flex-order: 3;
		order: 3;
	}
	section.construction {
		padding: 40px 0;
	}
	.progress-title {
		margin-bottom: 40px;
		font-size: 36px;
	}
	.progress-gallery {
		padding-right: 0;
		max-width: 100vh;
		overflow-x: scroll;
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
	}
	.progress-item {
		width: 100%;
		min-width: 300px;
	}
	.mobile_scroll_box {
		width: 100%;
		overflow-x: scroll;
	}
	.construction__timeline {
		overflow: hidden;
	}
	.timeline-graphic {
		min-width: 1200px;
	}
	.timeline-items.is-active {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		min-width: 1200px;
		min=w: ;
	}
	.timeline-stage {
		min-width: 295px;
	}
	.mobile_scroll_box {
		width: 100%;
		overflow-x: scroll;
	}
	.construction__timeline {
		overflow: hidden;
	}
	.timeline-graphic {
		min-width: 1200px;
	}
	.timeline-items.is-active {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		min-width: 1200px;
		min=w: ;
	}
	.timeline-stage {
		min-width: 295px;
	}
	h2.faq__title {
		font-size: 36px;
	}
	.faq {
		padding: 50px 0;
	}
	.faq-item__question {
		font-size: 16px;
		width: calc(100% - 40px);
		padding-right: 30px;
		display: flex;
		justify-content: flex-start;
		text-align: left;
	}
	.faq-item__header {
		display: flex;
		flex-direction: row-reverse;
		gap: 0;
		padding: 30px 0;
		justify-content: flex-end;
	}
	.faq-item__toggle {
		position: absolute;
		right: 0;
	}
	span.faq-item__num {
		margin: 0;
		display: flex;
		justify-content: flex-start;
		width: 40px;
	}
	.faq-item__body {
		padding-left: 40px;
		max-width: 100%;
		padding-right: 30px;
	}
	.contact-footer__grid {
		display: flex;
		flex-direction: column;
	}
	.contact-footer__form-wrap {
		width: 100%;
		max-width: 100%;
		margin-right: 0;
	}
	.footer-bottom__col {
		width: 100%;
	}
	.footer-bottom__grid {
		display: flex;
		flex-direction: column-reverse;
	}
	.contacts-table__row {
		grid-template-columns: 100px 1fr;
	}
	.footer-bottom__last-row {
		margin-top: 100px;
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		justify-content: space-between;
		gap: 40px 20px;
	}
	section.footer-bottom {
		padding-bottom: 20px;
	}
	.footer-logo {
		width: 35px;
		height: 35px;
		display: inline-flex;
	}
	.footer-copyright {
		width: calc(100% - 70px);
		display: inline-flex;
		justify-content: flex-end;
		align-items: center;
	}
	.footer_img {
		width: 100%;
	}
	.footer-social-list a {
		font-size: 14px;
	}
	.footer-social-list {
		display: flex;
		justify-content: space-between;
		width: 100%;
	}
	.footer-bottom__col.footer-bottom__social {
		width: 100%;
	}
	section.contact-footer {
		padding: 50px 0;
	}

	.contact-title {
		font-size: 36px;
	}

	.wpcf7-form-control-wrap {
		width: 100%;
		display: flex;
	}
	
	.form_site {
		max-width: 100%;
	}

	.form_site input {
		width: 100%;
	}

	.div_button {
		margin-top: 50px;
	}
	section.contact-footer {
		padding: 50px 0;
	}
	.contact-title {
		font-size: 36px;
	}
	.wpcf7-form-control-wrap {
		width: 100%;
		display: flex;
	}
	.form_site input {
		width: 100%;
	}
	.div_button {
		margin-top: 50px;
	}
	.selector-row {
		gap: 20px;
	}
	.apt-drawer__panel {
		overflow-y: scroll;
		max-height: 100vh;
		display: flex;
		flex-direction: column;
		padding: 20px;
		align-items: flex-start;
	}
	button.apt-drawer__back {
		margin-top: 0;
	}
	button.apt-drawer__back.js-close-drawer {
		margin-bottom: 40px;
	}
	.apt-drawer__plan img {
		max-height: 380px;
	}
	.drawer-header {
		margin-bottom: 0;
	}
	.box_left-border {
		margin-bottom: 40px;
	}
	.loc-feature__text.fin-stat__value {
		max-width: 80%;
	}
	.finance .container {
		padding-bottom: 100px;
		background: var(--bg-dark);
		background-image: url(/wp-content/themes/theme/img/Untitled-12.jpg);
		background-size: cover;
		background-position: bottom center;
	}
	section.finance {
		padding-bottom: 0;
	}
	.spa-header__script {
		margin-left: 0;
		font-size: 65px;
		top: -20px;
	}
	.popup-title {
		font-size: 24px;
		margin-bottom: 15px;
	}

	.popup-desc {
		margin-bottom: 20px;
	}

	.form_site .div_button {
		margin-top: 0;
	}

	.form_site input {
		font-size: 16px;
	}
	.form_site input.wpcf7-submit {
		min-width: unset;
	}
	body .wpcf7-not-valid-tip {
		bottom: 5px;
	}
	.location__map {
		width: 100%;
	}
	.location__map img {
		max-height: initial;
	}
	.location__grid {
		gap: 50px;
	}
	.philosophy__content {
		padding: 30px 0;
	}
	.philosophy__content_img img.philosophy__badge {
		width: 80px;
		height: 80px;
	}
	.philosophy__title {
		margin-bottom: 5vh;
	}
	.cta__wrapper a.btn.cta__btn.js-call-popup {
		font-size: 13px;
	}
	.progress-gallery .progress-item img {
		max-height: 250px;
		object-fit: cover;
		object-position: center;
	}

}

@media screen and (max-width: 767px) {
	.hero__logo-anim {
		padding-top: 5%;
        padding-bottom: 50px;
    }
	
	.info.right-header a {
		padding: 5px;
		font-size: 12px;
	}
	.menu li a:before {
		bottom: -5px;
	}
	.menu li a:hover:before {
		width: 100%;
	}
	.info.right-header a:before {
		width: 95%;
		bottom: -5px;
	}
	
	.finance__stats .loc-feature {
        min-width: unset;
	}
	.loc-feature__text {
		font-size: 14px;
	}
	
	.location__map {
        touch-action: none;
		position: relative;
    }
	
	.location__map img {
		user-select: none;
		pointer-events: none;
		max-width: none;
    }
	
	.interior-slider__wrapper button {
		display: none !important;
	}
	
	.investment-format__col.investment-format__col--text {
		padding-top: 40px;
		padding-bottom: 0px;
	}
}

/* Приховуємо лише секцію будівництва. Останній пункт меню має залишатися видимим. */
.page-id-703 #construction {
	display: none !important;
}

/* Відступ для якірної навігації з урахуванням фіксованого хедера. */
#faq,
#contacts {
	scroll-margin-top: 90px;
}
.partners__list .partner-card:nth-child(1) {
    order: 2;
}

.partners__list .partner-card:nth-child(2) {
    order: 1;
}
#menu-item-702 {
    display: none !important;
}

#construction {
    display: none !important;
}
/* Запобігає накладанню пунктів меню на центральний логотип */
@media (min-width: 1021px) and (max-width: 1500px) {
	.site-header,
	.site-header.is-scrolled {
		padding-left: 20px;
		padding-right: 20px;
	}

	.menu.left-headr,
	.info.right-header {
		width: auto;
		flex: 1 1 0;
		min-width: 0;
	}

	.logo_top.centre-header {
		width: 44px;
		flex: 0 0 44px;
	}

	.main-navigation #primary-menu {
		flex-wrap: nowrap;
	}

	.menu li a {
		padding-left: 5px;
		padding-right: 5px;
		font-size: 11px;
		white-space: nowrap;
	}

	.info.right-header {
		gap: 8px;
	}

	.info.right-header a {
		font-size: 11px;
		white-space: nowrap;
	}
}

/* Вирівнювання значень у блоці «Дохідність» на мобільних */
@media screen and (max-width: 767px) {
	.location__features.finance__stats .fin-stat__value {
		display: flex;
		align-items: flex-end;
		justify-content: flex-start;
		width: 100%;
		height: 58px;
		max-width: 100%;
		margin-bottom: 0;
	}

	.location__features.finance__stats .fin-stat__value img {
		display: block;
		width: auto;
		height: 50px;
		max-width: 100%;
		max-height: 50px;
		object-fit: contain;
		object-position: left bottom;
	}

	.location__features.finance__stats .fin-stat__suf {
		align-self: flex-end;
		margin-top: 0;
		margin-bottom: 2px;
	}
}

/* Вирівнювання контактів у мобільній версії */
@media screen and (max-width: 767px) {
	#contacts .contacts-table__row {
		grid-template-columns: minmax(125px, 40%) minmax(0, 1fr);
		align-items: center;
		column-gap: 12px;
		min-height: 72px;
		padding: 16px 0;
	}

	#contacts .contacts-table__label {
		display: flex;
		align-items: center;
		margin: 0;
		line-height: 1.05;
		word-break: normal;
		overflow-wrap: normal;
	}

	#contacts .contacts-table__value {
		display: flex;
		align-items: center;
		min-width: 0;
		margin: 0;
		line-height: 1.2;
	}

	#contacts .contacts-table__value a {
		display: flex;
		align-items: center;
		margin: 0;
	}
}

/* Клікабельні логотипи партнерів */
.partner-logo-link {
	display: inline-block;
	width: max-content;
	line-height: 0;
	text-decoration: none;
	cursor: pointer;
}

.partner-logo-link .partner-logo {
	display: block;
}

.partner-logo-link:hover {
	opacity: 0.8;
}

/* ==========================================================
   КНОПКИ САЙТІВ КОМПАНІЙ У БЛОЦІ ПАРТНЕРІВ
   ========================================================== */

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

.partner-person-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
	width: 100%;
	margin-bottom: 32px;
}

.partner-person-text {
	flex: 1 1 auto;
	min-width: 0;
	padding-top: 2px;
}

.partner-person-row .partner-pos {
	margin-bottom: 0;
}

/* Використовує базовий стиль .btn, але має компактний розмір для картки. */
.partner-site-btn.btn {
	flex: 0 0 175px;
	width: 175px;
	min-width: 175px;
	min-height: 40px;
	padding: 10px 12px;
	background: var(--text-gold);
	color: var(--text-color);
	border: none;
	border-radius: 0;
	font-family: var(--font-sans);
	font-size: 10px;
	font-weight: 500;
	line-height: 1.15;
	text-align: center;
	text-transform: uppercase;
	white-space: normal;
	cursor: pointer;
}

.partner-site-btn.btn:hover {
	background: #fff;
	color: var(--text-color);
}

/* Логотипи визначаються окремими класами, а не порядком карток. */
.partner-card .partner-logo {
	display: block;
	height: auto;
	max-width: 100%;
	margin: 0;
	transform: none !important;
	object-fit: contain;
	object-position: left center;
}

.partner-card .partner-logo--mbd {
	width: 132px;
}

.partner-card .partner-logo--maestro {
	width: 250px;
}

/* На десктопі картки завжди розташовані у дві колонки. */
@media screen and (min-width: 1021px) {
	.partners__list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px;
	}

	.partners__list .partner-card {
		width: 100%;
		min-width: 0;
	}
}

/* На планшеті та телефоні картки йдуть одна під одною. */
@media screen and (max-width: 1020px) {
	.partners__list {
		display: flex;
		flex-direction: column;
	}

	.partners__list .partner-card {
		width: 100%;
	}

	.partner-person-row {
		gap: 12px;
	}

	.partner-site-btn.btn {
		flex-basis: 170px;
		width: 170px;
		min-width: 170px;
	}
}

@media screen and (max-width: 480px) {
	.partner-person-row {
		flex-direction: column;
		align-items: flex-start;
	}

	.partner-site-btn.btn {
		flex: 0 0 auto;
		width: 100%;
		min-width: 0;
		max-width: 240px;
	}
}

/* Пошта в один рядок у мобільній версії */
@media screen and (max-width: 767px) {

	#contacts .contacts-table__row {
		grid-template-columns: 125px minmax(0, 1fr) !important;
		column-gap: 12px !important;
	}

	#contacts .contacts-table__value a[href^="mailto:"] {
		display: block !important;
		width: max-content;
		max-width: none !important;

		white-space: nowrap !important;
		word-break: normal !important;
		overflow-wrap: normal !important;

		font-size: 13px !important;
		letter-spacing: -0.02em;
		line-height: 1 !important;
	}
}

/* Діапазон площ в один рядок на мобільних */
@media screen and (max-width: 767px) {
	.showcase-card__area {
		font-size: 46px;
		line-height: 1;
		letter-spacing: -1px;
		white-space: nowrap;
	}
}