@charset "UTF-8";
@font-face {
		font-family: 'Helvetica Neue';
		src: url('../fonts/helveticaneuecyr-roman.woff') format('woff'), url('../fonts/helveticaneuecyr-roman.ttf') format('truetype');
		font-weight: normal;
		font-style: normal;
		font-display: swap;
}
@font-face {
		font-family: 'GT America Condensed';
		src: url('../fonts/gt-america-condensed-bold.woff') format('woff'), url('../fonts/gt-america-condensed-bold.ttf') format('truetype');
		font-weight: bold;
		font-style: normal;
		font-display: swap;
}
@font-face {
		font-family: 'GT America Condensed';
		src: url('../fonts/gt-america-condensed-black-trial.woff') format('woff'), url('../fonts/gt-america-condensed-black-trial.ttf') format('truetype');
		font-weight: 900;
		font-style: normal;
		font-display: swap;
}
:root {
		font-size: 0.833333vw;
		--side-padding: 16px;
		--font: "Helvetica Neue", Helvetica, -apple-system, Arial, system-ui, "sans-serif";
		--font-title: "GT America Condensed", Helvetica, -apple-system, Arial, system-ui, "sans-serif";
		--black: #222222;
		--light: #DCDCDC;
		--dark-brown: #211F1B;
		--light-brown: #767572;
		--warm-grey: #AFA7A2;
		--error: #D84343;
		--brown: #544F47;
		--med-light: #A59E94;
		--body: #202020;
		--menu: #3F3B33;
		--preloader-line: #55514B;
		--panorama: #151515;
		--panorama-dark: #0C0C0C;
		--borders: rgba(220, 220, 220, 0.24);
		--red: #D84343;
		--x: 0;
		--y: 0;
}
@media only screen and (min-width: 700px) and (max-width: 1099px) {
		:root {
				--side-padding: 20px;
		}
}
@media only screen and (min-width: 1100px) and (max-width: 1399px) {
		:root {
				--side-padding: 24px;
		}
}
@media only screen and (min-width: 1400px) {
		:root {
				--side-padding: 32px;
		}
}
html, body {
		height: 100%;
		box-sizing: border-box;
		text-rendering: optimizeLegibility !important;
		-webkit-font-smoothing: antialiased;
}
* {
		-webkit-overflow-scrolling: auto;
		scroll-snap-stop: always;
}
body {
		margin: 0;
		padding: 0;
		background: var(--body);
		font: normal 12px/1 var(--font);
		text-transform: uppercase;
		color: var(--brown);
		-webkit-text-size-adjust: none;
		display: flex;
		flex-direction: column;
		--x: 0.5;
		--y: 0.5;
}
*, *:before, *:after {
		box-sizing: border-box;
}
form, fieldset {
		margin: 0;
		padding: 0;
		border: 0;
}
.input {
		-webkit-appearance: none;
		display: block;
		width: 100%;
		outline: none;
		box-shadow: none;
		background: none;
		border-radius: 0;
		border: 0;
		border-bottom: 1px solid var(--borders);
		font: normal 12px/1 var(--font);
		text-transform: uppercase;
		text-align: left;
		color: var(--light);
		padding: 4px 0 15px 0;
}
@media only screen and (min-width: 1400px) {
		.input {
				font-size: 14px;
		}
}
.input::-webkit-input-placeholder {
		opacity: 1;
		color: rgba(220, 220, 220, 0.40);
}
.input::-moz-placeholder {
		opacity: 1;
		color: rgba(220, 220, 220, 0.40);
}
.input:-ms-input-placeholder {
		opacity: 1;
		color: rgba(220, 220, 220, 0.40);
}
.input:focus::-webkit-input-placeholder {
		opacity: 0.5 !important;
}
.input:focus::-moz-placeholder {
		opacity: 0.5 !important;
}
.input:focus:-ms-input-placeholder {
		opacity: 0.5 !important;
}
.input::-ms-clear {
		display: none;
}
button::-moz-focus-inner {
		border: 0;
}
textarea {
		resize: none;
}
video {
		/*
	-webkit-mask-image: -webkit-radial-gradient(white, black);
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility: hidden;
	*/
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		background-color: #000;
		background-image: inherit;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: 50% 50%;
		pointer-events: none !important;
}
header, nav, section, article, aside, footer, menu, time, figure, figcaption, main {
		display: block;
}
img, svg, picture {
		border: 0;
		vertical-align: top;
}
a {
		color: var(--med-light);
		text-decoration: none;
		outline: none;
		cursor: pointer;
}
strong {
		font-weight: bold;
}
.swiper {
		overflow: hidden;
}
.swiper-wrapper {
		display: flex;
}
.swiper-slide {
		flex: 0 0 auto;
		width: 100%;
		-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.custom-cursor {
		position: fixed;
		pointer-events: none;
		mix-blend-mode: difference;
		width: 12px;
		height: 12px;
		border-radius: 50%;
		background-color: white;
		backface-visibility: hidden;
		transition: transform 0.2s linear;
		transform: translate(calc(50vw + 100vw * var(--x)), calc(50vh + 100vh * var(--y)));
		z-index: 2000;
		display: none;
		margin: -6px;
}
@media (pointer:fine) {
		.custom-cursor {
				display: block !important;
		}
}
.safari .custom-cursor {
		transition-duration: 0.1s;
}
.header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 100;
		pointer-events: none;
		padding: var(--side-padding);
		display: flex;
		align-items: center;
		transform: translate3d(0, -100%, 0);
		opacity: 0;
		backface-visibility: hidden;
		will-change: transform, opacity;
		font-size: 12px;
		line-height: 1.25;
		gap: var(--side-padding);
		--color: #fff;
		color: var(--color);
		mix-blend-mode: difference;
		transition-property: transform, opacity, color;
		transition-duration: 1s;
		transition-delay: 0s, 0s, 0.5s;
		transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}
@media only screen and (min-width: 1100px) and (max-width: 1399px) {
		.header {
				padding-top: 20px;
				padding-bottom: 20px;
		}
}
@media only screen and (min-width: 1400px) {
		.header {
				padding-top: 24px;
				padding-bottom: 24px;
				font-size: 14px;
		}
}
html.ready .header.visible, .slide-3 .header {
		transform: translate3d(0, 0, 0);
		opacity: 1;
}
.logo {
		cursor: pointer;
		user-select: none;
		margin: 0;
		font: 900 16px/0.833333 var(--font-title);
		width: 7.5em;
		text-align: left;
		color: inherit;
		letter-spacing: -0.008333em;
		position: relative;
		z-index: 2;
}
@media only screen and (min-width: 1400px) {
		.logo {
				font-size: 24px;
		}
}
.logo.clone {
		--top: var(--side-padding);
		--left: var(--side-padding);
		position: fixed;
		top: var(--top);
		left: var(--top);
		pointer-events: none;
		color: var(--light);
		opacity: 0;
		transition: opacity 1s cubic-bezier(0.645, 0.045, 0.355, 1);
		z-index: 200 !important;
}
a.logo {
		pointer-events: all;
		user-select: none;
}