* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  --index: calc(1vw + 1vh);
  --transition: 1.5s cubic-bezier(0.05, 0.5, 0, 1);
}

@font-face {
  font-family: kamerik-3d;
  src: url(../fonts/kamerik205-heavy.woff2);
  font-weight: 900;
}
@font-face {
  font-family: merriweather-italic-3d;
  src: url(../fonts/merriweather-regular-italic.woff2);
}
body {
  background-color: #000;
  color: #fff;
  font-family: kamerik-3d;
}

.logo {
  --logo-size: calc(var(--index) * 7.8);
  width: calc(var(--index) * 7.8);
  height: calc(var(--index) * 7.8);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  left: calc(50% - var(--logo-size) / 2);
  top: calc(var(--index) * 2.8);
  z-index: 1;
}

.layers {
  overflow: hidden;
  perspective: 1000px;
}
.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: -8vw;
  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(80px) scale(0.88);
}

.layer-3 {
  transform: translateZ(180px) scale(0.8);
}

.hero-content {
  font-size: calc(var(--index) * 2.9);
  text-align: center;
  text-transform: uppercase;
  letter-spacing: calc(var(--index) * -0.15);
  line-height: 1.35em;
  margin-top: calc(var(--index) * 5.5);
}
.hero-content span {
  display: block;
}
.hero-content-p {
  text-transform: none;
  font-family: merriweather-italic-3d;
  letter-spacing: normal;
  font-size: calc(var(--index) * 0.75);
  line-height: 3;
}

.button-start {
  font-family: Arial;
  font-weight: 600;
  text-transform: uppercase;
  font-size: calc(var(--index) * 0.7);
  letter-spacing: -0.02vw;
  padding: calc(var(--index) * 0.7) calc(var(--index) * 1.4);
  background-color: transparent;
  color: #fff;
  border-radius: 10em;
  border: rgba(255, 255, 255, 0.4) 3px solid;
  outline: none;
  cursor: pointer;
}

.layer-4 {
  transform: translateZ(190px) scale(0.9);
  pointer-events: none;
}

.layer-5 {
  transform: translateZ(300px) scale(0.9);
  pointer-events: none;
}

.layer-6 {
  transform: translateZ(380px);
  pointer-events: none;
}