* {
  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: kemerik-3d;
  src: url(/3d_paralax/src/fonts/kamerik205-heavy.woff2);
  font-weight: 900;
}
@font-face {
  font-family: merriweather-italic-3d;
  src: url(/3d_paralax/src/fonts/merriweather-regular-italic.woff2);
}

body {
  background-color: #000;
  color: #fff;
  font-family: kemerik-3d;
}

.logo {
  --logo-size: calc(var(--index) * 7.8);

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

.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: tranform;
  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(80px) scale(0.88);
}

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

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

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

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

.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.73);
  line-height: 3;
}

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

.layer-4,
.layer-5,
.layer-6 {
  pointer-events: none;
}
