*,
:before,
:after {
	box-sizing: border-box;
}
:where(ul, ol):where([class]) {
	padding-left: 0;
}
body,
:where(blockquote, figure):where([class]) {
	margin: 0;
}
:where(h1, h2, h3, h4, h5, h6, p, ul, ol, dl):where([class]) {
	margin-top: 0;
	margin-bottom: 0;
}
:where(dd[class]) {
	margin-left: 0;
}
:where(fieldset[class]) {
	margin-left: 0;
	padding: 0;
	border: none;
}
:where(ul[class]) {
	list-style: none;
}
:where(address[class]) {
	font-style: normal;
}
p {
	--paragraphMarginBottom: 1.5rem;
	margin-top: 0;
	margin-bottom: 0;
}
p:where(:not([class]):not(:last-child)) {
	margin-bottom: var(--paragraphMarginBottom);
}
img,
video {
	display: block;
	max-width: 100%;
	height: auto;
}
input,
textarea,
select,
button {
	font: inherit;
}
html {
	height: 100%;
	scrollbar-gutter: stable;
}
html,
:has(:target) {
	scroll-behavior: smooth;
}
body {
	min-height: 100%;
	line-height: 1.5;
}
a:where([class]) {
	display: inline-flex;
}
button,
label {
	cursor: pointer;
}
:where([fill]:not([fill="none"]):not([fill^="url"])) {
	fill: currentColor;
}
:where([stroke]:not([stroke="none"]):not([stroke^="url"])) {
	stroke: currentColor;
}
svg * {
	transition-property: fill, stroke;
}
:where(table) {
	border-collapse: collapse;
	border-color: currentColor;
}
@media (prefers-reduced-motion: reduce) {
	*,
	:before,
	:after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
@font-face {
	font-family: Manrope;
	src: url(/assets/fonts/Manrope-Regular.woff2) format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: Manrope;
	src: url(/assets/fonts/Manrope-Medium.woff2) format("woff2");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: Manrope;
	src: url(/assets/fonts/Manrope-SemiBold.woff2) format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: Manrope;
	src: url(/assets/fonts/Manrope-Bold.woff2) format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
:root {
	--color-white: #ffffff;
	--color-black: #000000;
	--color-red-45: #e50000;
	--color-red-50: #ff0000;
	--color-red-55: #ff1919;
	--color-red-60: #ff3333;
	--color-red-80: #ff9999;
	--color-red-90: #ffcccc;
	--color-red-95: #ffe5e5;
	--color-red-99: #fffafa;
	--color-black-06: #0f0f0f;
	--color-black-08: #141414;
	--color-black-10: #1a1a1a;
	--color-black-12: #1f1f1f;
	--color-black-15: #262626;
	--color-black-20: #333333;
	--color-black-25: #404040;
	--color-black-30: #4c4c4c;
	--color-gray-60: #999999;
	--color-gray-65: #a6a6a6;
	--color-gray-70: #b3b3b3;
	--color-gray-75: #bfbfbf;
	--color-gray-90: #e4e4e7;
	--color-gray-95: #f1f1f3;
	--color-gray-97: #f7f7f8;
	--color-gray-99: #fcfcfd;
	--border: var(--border-width-s) solid var(--color-black-15);
	--border-width-l: 0.25rem;
	--border-width-m: 0.1875rem;
	--border-width-s: 0.0625rem;
	--border-radius-l: 0.75rem;
	--border-radius-m: 0.625rem;
	--border-radius-s: 0.5rem;
	--border-radius-xs: 0.375rem;
	--border-radius-xxs: 0.3125rem;
	--border-radius-xxxs: 0.25rem;
	--font-family-base: "Manrope", sans-serif;
	--container-width: clamp(80rem, 0rem + 100vw, 100rem);
	--container-padding-x: 1rem;
	--section-padding-y: clamp(
		2.5rem,
		1.7949380165rem + 2.8925619835vw,
		4.6875rem
	);
	--transition-duration: 0.2s;
	--transition-duration-longer: 0.4s;
}
.container {
	width: 100%;
	max-width: calc(var(--container-width) + var(--container-padding-x) * 2);
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--container-padding-x);
	padding-right: var(--container-padding-x);
}
.visually-hidden {
	position: absolute !important;
	width: 0.0625rem !important;
	height: 0.0625rem !important;
	margin: -0.0625rem !important;
	border: 0 !important;
	padding: 0 !important;
	white-space: nowrap !important;
	clip-path: inset(100%) !important;
	clip: rect(0 0 0 0) !important;
	overflow: hidden !important;
}
@media (min-width: 63.9385rem) {
	.visible-tablet {
		display: none !important;
	}
}
@media (max-width: 63.9375rem) {
	.hidden-tablet {
		display: none !important;
	}
}
@media (min-width: 47.9385rem) {
	.visible-mobile {
		display: none !important;
	}
}
@media (max-width: 47.9375rem) {
	.hidden-mobile {
		display: none !important;
	}
}
html.is-lock {
	overflow: hidden;
}
body {
	font-size: clamp(0.875rem, 0.7944214876rem + 0.3305785124vw, 1.125rem);
	display: flex;
	flex-direction: column;
	font-family: var(--font-family-base);
	color: var(--color-gray-60);
	background-color: var(--color-black-08);
}
main {
	flex-grow: 1;
}
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
	color: var(--color-white);
}
h1,
.h1 {
	font-size: clamp(1.75rem, 1.145661157rem + 2.479338843vw, 3.625rem);
	font-weight: 700;
}
h2,
.h2 {
	font-size: clamp(1.5rem, 1.0165289256rem + 1.9834710744vw, 3rem);
	font-weight: 700;
}
h3,
.h3 {
	font-size: clamp(1.25rem, 0.8873966942rem + 1.4876033058vw, 2.375rem);
	font-weight: 700;
}
h4,
.h4 {
	font-size: clamp(1.125rem, 1.0041322314rem + 0.4958677686vw, 1.5rem);
	font-weight: 600;
}
h5,
.h5 {
	font-size: clamp(1.125rem, 1.0444214876rem + 0.3305785124vw, 1.375rem);
	font-weight: 500;
}
h6,
.h6 {
	font-size: clamp(1rem, 0.9194214876rem + 0.3305785124vw, 1.25rem);
	font-weight: 600;
}
a,
button,
label,
input,
textarea,
select,
svg * {
	transition-duration: var(--transition-duration);
}
a {
	color: inherit;
}
@media (any-hover: hover) {
	a:hover {
		color: var(--color-red-45);
	}
}
@media (any-hover: none) {
	a:active {
		color: var(--color-red-45);
	}
}
a[class] {
	-webkit-text-decoration: none;
	text-decoration: none;
}
:focus-visible {
	outline: 0.125rem dashed var(--color-white);
	outline-offset: 0.25rem;
	transition-duration: 0s !important;
}
.header {
	position: sticky;
	z-index: 100;
	top: 0;
	width: 100%;
	padding-top: clamp(0.875rem, 0.7138429752rem + 0.6611570248vw, 1.375rem);
	padding-bottom: clamp(0.875rem, 0.7138429752rem + 0.6611570248vw, 1.375rem);
	border-bottom: var(--border-width-s) solid transparent;
	border-bottom: var(--border-width-s);
	animation-name: scrolling-header;
	animation-fill-mode: both;
	animation-timeline: scroll();
	animation-range: 0 6.25rem;
}
@keyframes scrolling-header {
	to {
		padding-top: 0.625rem;
		padding-bottom: 0.625rem;
		background-color: var(--color-black-08);
		border-color: var(--color-black-15);
	}
}
.header.is-fixed {
	position: fixed;
}
.header__inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	-moz-column-gap: 1rem;
	column-gap: 1rem;
}
.header__overlay-menu-dialog {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	flex-direction: column-reverse;
	justify-content: start;
	row-gap: 1rem;
	width: 100%;
	height: 100%;
	padding: var(--container-padding-x);
	background-color: var(--color-black-20);
	border: none;
	transition-duration: var(--transition-duration);
	transition-behavior: allow-discrete;
}
@media (min-width: 63.9385rem) {
	.header__overlay-menu-dialog {
		display: contents;
	}
}
.header__overlay-menu-dialog[open] {
	display: flex;
}
@starting-style {
	.header__overlay-menu-dialog[open] {
		opacity: 0;
		translate: 50%;
	}
}
.header__overlay-menu-dialog:not([open]) {
	opacity: 0;
	translate: 50%;
}
.header__menu {
	border-radius: var(--border-radius-l);
}
@media (max-width: 90rem) {
	.header__menu {
		border-radius: var(--border-radius-m);
	}
}
@media (min-width: 63.9385rem) {
	.header__menu {
		padding: clamp(0.5rem, 0rem + 0.625vw, 0.625rem);
		background-color: var(--color-black-06);
		outline: var(--border-width-l) solid var(--color-black-12);
	}
}
@media (max-width: 63.9375rem) {
	.header__menu {
		display: flex;
		justify-content: center;
		height: 100%;
		border-radius: 0;
		overflow-y: auto;
	}
}
.header__menu-list {
	display: flex;
	align-items: center;
	-moz-column-gap: 0.375rem;
	column-gap: 0.375rem;
}
@media (max-width: 63.9375rem) {
	.header__menu-list {
		flex-direction: column;
		row-gap: 1rem;
		margin-top: auto;
		margin-bottom: auto;
	}
}
.header__menu-link {
	padding: clamp(0.75rem, 0.25rem + 0.625vw, 0.875rem)
		clamp(1.25rem, 0.25rem + 1.25vw, 1.5rem);
	color: var(--color-gray-75);
	border-radius: var(--border-radius-s);
}
@media (max-width: 63.9375rem) {
	.header__menu-link {
		font-size: 1.25rem;
	}
}
@media (any-hover: hover) {
	.header__menu-link:hover {
		color: var(--color-white);
		background-color: var(--color-red-60);
	}
}
@media (any-hover: none) {
	.header__menu-link:active {
		color: var(--color-white);
		background-color: var(--color-red-60);
	}
}
.header__menu-link.is-active {
	font-weight: 500;
	color: var(--color-white);
	background-color: var(--color-black-10);
	pointer-events: none;
}
.header__actions {
	display: flex;
	align-items: center;
	-moz-column-gap: 0.625rem;
	column-gap: 0.625rem;
}
.header__burger-button {
	position: relative;
}
.logo {
	width: clamp(7.25rem, 5.5779958678rem + 6.8595041322vw, 12.4375rem);
}
.button {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	-moz-column-gap: 0.25rem;
	column-gap: 0.25rem;
	padding: clamp(0.875rem, -0.125rem + 1.25vw, 1.125rem)
		clamp(1.25rem, 0.25rem + 1.25vw, 1.5rem);
	font-weight: 600;
	color: var(--color-white);
	background-color: var(--color-red-45);
	border: none;
	border-radius: var(--border-radius-s);
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	cursor: pointer;
}
@media (max-width: 90rem) {
	.button {
		border-radius: var(--border-radius-xs);
	}
}
@media (any-hover: hover) {
	.button:hover {
		color: var(--color-white);
		background-color: var(--color-red-60);
	}
}
@media (any-hover: none) {
	.button:active {
		color: var(--color-white);
		background-color: var(--color-red-60);
	}
}
.button:active {
	scale: 1.05;
}
.button:disabled {
	color: var(--color-gray-60);
	background-color: var(--color-black-06);
	pointer-events: none;
}
.button:has(.button__icon:only-child) {
	width: clamp(2.75rem, -0.25rem + 3.75vw, 3.5rem);
	height: clamp(2.75rem, -0.25rem + 3.75vw, 3.5rem);
	padding: 0;
}
.button--transparent {
	background-color: transparent;
}
.button--transparent:has(.button__icon:only-child) {
	width: 2.75rem;
	height: 2.75rem;
}
.button--transparent:has(.button__icon:only-child) .button__icon {
	--iconSize: clamp(1.5rem, -1rem + 3.125vw, 2.125rem);
}
.button--black-10 {
	background-color: var(--color-black-10);
	border: var(--border);
}
.icon {
	--iconSize: clamp(1.5rem, 0.5rem + 1.25vw, 1.75rem);
	width: clamp(1.5rem, 0.5rem + 1.25vw, 1.75rem);
	width: var(--iconSize);
	height: clamp(1.5rem, 0.5rem + 1.25vw, 1.75rem);
	height: var(--iconSize);
	display: inline-flex;
}
.burger-button {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 3.1875rem;
	height: 3.1875rem;
	padding: 0;
	background-color: var(--color-black-10);
	border: var(--border-width-m) solid var(--color-black-15);
	border-radius: var(--border-radius-xs);
}
@media (any-hover: hover) {
	.burger-button:hover {
		background-color: var(--color-red-60);
		border-color: transparent;
	}
}
@media (any-hover: none) {
	.burger-button:active {
		background-color: var(--color-red-60);
		border-color: transparent;
	}
}
.burger-button.is-active .burger-button__line {
	stroke-dasharray: 90 207;
	stroke-dashoffset: -134;
}
.burger-button.is-active--2 {
	stroke-dasharray: 1 60;
	stroke-dashoffset: -30;
}
.burger-button:not(.is-active) .burger-button__line--3 {
	stroke-dasharray: 30 207;
	stroke-dashoffset: -30;
}
.burger-button__line {
	fill: none;
	stroke: var(--color-white);
	stroke-width: 6;
	stroke-linecap: round;
	stroke-dasharray: 60 207;
	transition: stroke-dasharray var(--transition-duration-longer)
			cubic-bezier(0.4, 0, 0.2, 1),
		stroke-dashoffset var(--transition-duration-longer)
			cubic-bezier(0.4, 0, 0.2, 1);
}
.burger-button__line--2 {
	stroke-dasharray: 60 60;
}
.footer {
	background-color: var(--color-black-06);
}
.footer__menu {
	--footerMenuColumns: 6;
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-columns: repeat(var(--footerMenuColumns), 1fr);
	grid-gap: 1.875rem clamp(0.625rem, 0.222107438rem + 1.652892562vw, 1.875rem);
	gap: 1.875rem clamp(0.625rem, 0.222107438rem + 1.652892562vw, 1.875rem);
	padding-top: clamp(3.125rem, 2.117768595rem + 4.132231405vw, 6.25rem);
	padding-bottom: clamp(3.125rem, 2.117768595rem + 4.132231405vw, 6.25rem);
	border-bottom: var(--border);
}
@media (max-width: 90rem) {
	.footer__menu {
		--footerMenuColumns: 3;
	}
}
@media (max-width: 47.9375rem) {
	.footer__menu {
		--footerMenuColumns: 2;
	}
}
.footer__menu-column {
	display: flex;
	flex-direction: column;
	align-items: start;
	row-gap: clamp(1rem, 0.8388429752rem + 0.6611570248vw, 1.5rem);
}
.footer__menu-lisr {
	display: flex;
	flex-direction: column;
	align-items: start;
	row-gap: clamp(0.5rem, 0.3791322314rem + 0.4958677686vw, 0.875rem);
}
.footer__extra {
	display: flex;
	justify-content: space-between;
	align-items: center;
	-moz-column-gap: 1rem;
	column-gap: 1rem;
	padding-top: clamp(1.25rem, 0.25rem + 1.25vw, 1.5rem);
	padding-bottom: clamp(1.25rem, 0.645661157rem + 2.479338843vw, 3.125rem);
}
@media (max-width: 47.9375rem) {
	.footer__extra {
		flex-direction: column;
		row-gap: 1.25rem;
	}
}
.soc1als__list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem clamp(0.625rem, -0.375rem + 1.25vw, 0.875rem);
}
.hero {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	padding-bottom: var(--section-padding-y);
	text-align: center;
}
@media (max-width: 47.9375rem) {
	.hero {
		min-height: 39.9375rem;
	}
}
.hero__pano {
	--heroGradientColorStart: var(--color-black-08);
	--heroGradientColorEnd: rgba(20, 20, 20, 0);
	--heroGradientHeight: 67.5%;
	--heroGradientTop: linear-gradient(
			to bottom,
			var(--heroGradientColorStart) 0%,
			var(--heroGradientColorEnd) 100%
		)
		50% 0/100% var(--heroGradientHeight);
	--heroGradientBottom: linear-gradient(
			to top,
			var(--heroGradientColorStart) 0%,
			var(--heroGradientColorEnd) 100%
		)
		50% 101%/100% var(--heroGradientHeight);
	display: flex;
	justify-content: center;
	align-items: center;
	flex-grow: 1;
	padding-top: clamp(9.375rem, 8.4684917355rem + 3.7190082645vw, 12.1875rem);
	padding-bottom: clamp(3.125rem, 1.493285124rem + 6.694214876vw, 8.1875rem);
	background: var(--heroGradientTop), var(--heroGradientBottom),
		url(./images/bg.png) 50% / cover;
	background-repeat: no-repeat;
}
.hero__play-button {
	width: clamp(12.5rem, 7.0609504132rem + 22.3140495868vw, 29.375rem);
	height: clamp(12.5rem, 7.0609504132rem + 22.3140495868vw, 29.375rem);
	padding: 0;
	background-color: transparent;
	border: none;
}
.hero__title {
	margin-top: -0.5em;
	margin-bottom: clamp(0.625rem, -0.375rem + 1.25vw, 0.875rem);
}
.hero_description {
	margin-bottom: clamp(1.875rem, 1.472107438rem + 1.652892562vw, 3.125rem);
}
.hero__body {
	padding-bottom: clamp(1.25rem, 0.645661157rem + 2.479338843vw, 3.125rem);
}
