* {
    font-family: Arial, Helvetica, sans-serif;
    text-decoration: none;
    cursor: none;
}

body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    background-color: black;
}

body::-webkit-scrollbar {
  display: none;
}

::selection {
  background-color: #450c4d; /* farba pozadia označenia */
  color: #ffffff; /* farba textu v označení */
  text-shadow: 0.35vw 0.35vw 0.15vw rgba(0, 0, 0, 0.594);
}

.background {
  position: absolute;
  top: -30vw;
  left: -50%;
  width: 200vw;
  height: 500vh;
  pointer-events: none;
  will-change: transform;
  --dot-bg: rgba(0, 0, 0, 0.456);
  --dot-color: rgba(255, 255, 255, 0.119);
  --dot-size: 0.1vw;
  --dot-space: 8vw;
  background:
    linear-gradient(90deg, var(--dot-bg) calc(var(--dot-space) - var(--dot-size)), transparent 1%) center / var(--dot-space) var(--dot-space),
    linear-gradient(var(--dot-bg) calc(var(--dot-space) - var(--dot-size)), transparent 1%) center / var(--dot-space) var(--dot-space),
    var(--dot-color);
}





.cursor-dot, .cursor-ring {
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 9999;
  opacity: 1;
  transition: opacity 0.3s ease;
}

.cursor-hidden .cursor-dot,
.cursor-hidden .cursor-ring {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.cursor-dot {
  width: 0.35vw;
  height: 0.35vw;
  border: 0.1vw solid white;
  mix-blend-mode: difference;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  background-color: transparent;
  transition: border-color 0.5s cubic-bezier(0.39, 0.35, 0, 0.61), width 0.5s cubic-bezier(0.39, 0.35, 0, 0.61), height 0.5s cubic-bezier(0.39, 0.35, 0, 0.61), box-shadow 1s cubic-bezier(0.39, 0.35, 0, 0.61);
}

.cursor-dot.light-bg {
  border-color: black;
}


.cursor-ring {
  width: 3vw;
  height: 3vw;
  border: 0.1vw solid white;
  mix-blend-mode: difference;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  background-color: transparent;
  transition: background-color 0.5s cubic-bezier(0.39, 0.35, 0, 0.61), border-color 0.5s cubic-bezier(0.39, 0.35, 0, 0.61), width 0.5s cubic-bezier(0.39, 0.35, 0, 0.61), height 0.5s cubic-bezier(0.39, 0.35, 0, 0.61), box-shadow 1s cubic-bezier(0.39, 0.35, 0, 0.61);
}

.cursor-hover .cursor-dot {
  background-color: rgb(255, 255, 255);
  box-shadow: 0vw 0vw 0.5vw 0vw white;
  width: 0.75vw;
  height: 0.75vw;
}

.cursor-hover .cursor-ring {
  background-color: rgba(255, 255, 255, 0);
  border-color: rgba(255, 255, 255, 0);
  width: 0vw;
  height: 0vw;
}
