body {
  cursor: none !important;
}

a {
  cursor: none;
}

html,
body {
  height: 100%;
  margin: 0;
}

.custom-cursor {
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none; /* Чтобы курсор не мешал кликам */
  transform: translate(-50%, -50%); /* Центрируем изображение */
  width: 13vw;
  height: 22vh;
  background: url("../images/cursor.png") no-repeat center / contain;
  z-index: 9999;
}

.wrapper {
  width: 100%;
  height: 100vh;
  background: url("../images/bg.webp") center no-repeat;
  background-size: cover;
  position: relative;
}

.app {
  width: 100%;
  height: 100vh;
  display: block;
  position: relative;
  inset: 0;
  overflow: hidden;
}

.item1 {
  max-width: 22vw;
  position: absolute;
  top: 13vh;
  left: 9vw;
  z-index: 1;
}

.item1__image {
  display: block;
  width: 100%;
  transform-origin: center center;
  transition: scale 0.3s ease;
  animation: swing-small 2s ease-in-out infinite;
}

.item1:hover {
  animation: pulse-small 0.6s ease-in-out infinite alternate;
}

.item2 {
  max-width: 37vw;
  position: absolute;
  top: 0vh;
  left: 30vw;
  z-index: 1;
  transition: transform 0.3s ease;
}

.item2:hover {
  animation: pulse 0.6s ease-in-out infinite alternate;
}

.item2__image {
  display: block;
  width: 100%;
  transform-origin: top center;
  animation: swing2 2.5s ease-in-out infinite;
}

.item3 {
  max-width: 23vw;
  position: absolute;
  top: 30vh;
  left: 69vw;
  z-index: 0;
}

.item3__image {
  display: block;
  width: 100%;
  transform-origin: center center;
  transition: scale 0.3s ease;
  animation: swing-small 2s ease-in-out infinite;
}

.item3:hover {
  animation: pulse-small 0.6s ease-in-out infinite alternate;
}


/* Анимации */
@keyframes swing2 {
  0% {
    transform: rotate(2deg) scale(1.02);
  }
  50% {
    transform: rotate(-2deg) scale(1);
  }
  100% {
    transform: rotate(2deg) scale(1.02);
  }
}

@keyframes pulse {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}

@keyframes pulse-small {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.08);
  }
}

@keyframes swing-small {
  0% {
    transform: rotate(-2deg);
  }
  50% {
    transform: rotate(2deg);
  }
  100% {
    transform: rotate(-2deg);
  }
}

/* Адаптив */
@media (max-height: 749px) {
  .item2 {
    left: 33vw;
    max-width: 33vw;
  }
}
