* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
:root {
	--index: calc(1vw + 1vh);
	--transition: 1.5s cubic-bezier(.05, .5, 0, 1);
}

@font-face {
	font-family: capitellum-tough;
	src: url(../fonts/capitellum-tough.woff2);
}
@font-face {
	font-family: goosberry;
	src: url(../fonts/goosberry.woff2);
	font-weight: 200;
}
body {
	overflow-y: hidden; 
	background-color: #000;
	color: #fff;
	font-family: goosberry;
	text-transform: uppercase;

}
.link {
	justify-content: center;
	align-items: center;
	text-align: center;
	display: flex;
	text-decoration: inherit;
	color: inherit;
	background-size: contain;
	margin-left: 4vw;
	margin-right: 4vw;
}



canvas {
 position: absolute;
}
.layers {
	perspective: 1000px;
	overflow: hidden;
}
.layers__container {
	height: 100vh;
	min-height: 500px;
	transform-style: preserve-3d;
	transform: rotateX(var(--move-y)) rotateY(var(--move-x));
	will-change: transform;
	transition: transform var(--transition);
}

.layers__item {
	position: absolute;
	inset: -5vw;
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: center;
	justify-content: center;
}
.layer-1 {
	transform: translateZ(-55px) scale(1.06);
}
.layer-2 {
	transform: translateZ(70px);
}
.layer-3 {
	transform: translateZ(180px) scale(.8);
}
.layer-4 {
	transform: translateZ(190px) scale(.9);
}
.layer-5 {
	position: absolute;
	background-repeat: repeat;
	background-size: contain;
	transform: translateZ(280px) scale(.35);
	z-index: 1;
	max-height: 200px;
	top: auto;
	bottom: 15vh;
}
.layer-6 {
	transform: translateZ(300px);
}
.layer-7 {
	--logo-size: calc(var(--index) * 30);
	--width-border: calc(var(--logo-size));
	width: var(--width-border);
	height: var(--logo-size);
	position: absolute;
	background-repeat: no-repeat;
	background-size: contain;
	transform: translateZ(380px) scale(.2);
	right: auto;
	bottom: auto;
	top: calc(33vh - calc(var(--logo-size) / 2 ));
	left: calc(40vw - calc(var(--width-border) / 2));
}


.hero-content {
	font-size: calc(var(--index) * 2.5);
	text-align: center;
	text-transform: uppercase;
	letter-spacing: calc(var(--index) * -.15);
	line-height: 1.35em;
	margin-top: calc(var(--index) * 5.5);
}
.hero-content span {
	display: block;
}
.hero-content__p {
	font-family: capitellum-tough;
	text-transform: none;
	letter-spacing: normal;
	font-size: calc(var(--index) * .73);
	line-height: 5;
}
.button-start {
	font-family: Arial;
	font-weight: 600;
	text-transform: uppercase;
	font-size: calc(var(--index) * .71);
	letter-spacing: -.02vw;
	padding: calc(var(--index) * .7) calc(var(--index) * 1.25);
	background-color: transparent;
	color: #fff;
	border-radius: 10em;
	border: rgb(255 255 255 / .4) 3px solid;
	outline: none;
	cursor: pointer;
	margin-top: calc(var(--index) * 2.5);
}
.layer-4, .layer-6 {
	pointer-events: none;
}