:root {
  --atletic-car-width: 235px;
  --equipment-width: 220px;
  --racing-car-width: 90px;
}

@media (max-width: 1500px) {
  :root {
    --atletic-car-width: calc(235px * 0.75);
    --equipment-width: calc(220px * 0.75);
    --racing-car-width: calc(90px * 0.75);
  }
}

.moving-logo {
  position: relative;
  top: 73px;
  width: var(--atletic-car-width);
  left: -30vw;
  animation-fill-mode: forwards;
  z-index: 1 !important;
  pointer-events: auto;

  -webkit-user-drag: none; /* Safari, Chrome */
  user-drag: none;         /* budoucí standardy */
  user-select: none;       /* zabrání výběru textu/obrázku */
  -moz-user-select: none;
}

@media (max-width: 1500px) {
  .moving-logo {
    top: 57px;
    /* left: -80vw; */
  }
}

@media (max-width: 1000px) {
  .moving-logo {
    top: 92px; /* menší velikost pro mobil */
    left: -80vw; /* menší velikost pro mobil */
  }
}

.moving-logo.mirrored {
  transform: scaleX(-1);
}

/* Animace doprava */
@keyframes moveRight {
  from {
    left: calc(0vw - var(--atletic-car-width));
  }
  to {
    left: 100vw;
  } /* projede přes celou obrazovku */
}

/* Animace doleva */
@keyframes moveLeft {
  from {
    left: 100vw;
  }
  to {
    left: calc(0vw - var(--atletic-car-width));
  }
}

/* Závodní animace doprava */
@keyframes raceRight {
  from {
    left: calc(0vw - var(--racing-car-width));
  }
  to {
    left: 100vw;
  } /* projede přes celou obrazovku */
}

@keyframes raceLeft {
  from {
    left: 100vw;
  }
  to {
    left: calc(0vw - var(--racing-car-width));
  }
}

/* Mobilní animace */
@media (max-width: 1000px) {
  @keyframes moveRight {
    from {
      left: calc(0vw - var(--atletic-car-width));
    } /* start mimo obrazovku */
    to {
      left: 100vw;
    }
  }

  @keyframes moveLeft {
    from {
      left: 100vw;
    }
    to {
      left: calc(0vw - var(--atletic-car-width));
    }
  }
}

.moving-car-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120px; /* výška oblasti pro oštěp */
  overflow: visible; /* oštěp může vyjet mimo kontejner */
  pointer-events: none; /* zabrání interakci s oštěpem */
  z-index: 6 !important; /* pod logo a navigaci */
  margin: 0;
  padding: 0;
}

.moving-car-wrapper img {
  display: block; /* odstraní inline mezeru */
  margin: 0;
  padding: 0;
}

.moving-javelin {
  position: relative; /* aby šlo animovat přes pozici */
  left: -35vw; /* start mimo obrazovku */
  top: 50px; /* výška letu, uprav podle potřeby */
  width: var(--equipment-width); /* velikost oštěpu  230 */
  transform-origin: 81% 50%; /* bod rotace při naklánění */
  opacity: 0;
  user-drag: none; /* pro WebKit (Chrome, Safari) */
  -webkit-user-drag: none;
  pointer-events: none; /* zabraňuje i klikání, pokud chceš */
  z-index: -1 !important;
}

@keyframes throw_javelin {
  0% {
    opacity: 1;
    left: calc(0vw - var(--equipment-width));
    top: 5px; /* 5 */
    transform: scale(1.05);
    rotate: -25deg;
  }
  25% {
    top: -45px;
  }
  50% {
    top: -75px;
  }
  75% {
    top: -10px;
  }
  99.9% {
    opacity: 1;
  }
  100% {
    left: 100vw;
    top: 65px;
    transform: scale(1.05);
    opacity: 0;
    rotate: 14deg;
  }
}

/* Mobilní animace */
@media (max-width: 1000px) {
  @keyframes throw_javelin {
    0% {
      opacity: 1;
      left: calc(0vw - var(--equipment-width));
      top: 5px;
      transform: scale(1.05);
      rotate: -25deg;
    }
    25% {
      top: -45px;
    }
    50% {
      top: -75px;
    }
    75% {
      top: -10px;
    }
    99.9% {
      opacity: 1;
    }
    100% {
      left: 100vw;
      top: 65px;
      transform: scale(1.05);
      opacity: 0;
      rotate: 14deg;
    }
  }
}

@keyframes throw_hammer {
  0% {
    opacity: 1;
    left: calc(0vw - var(--equipment-width));
    /* left: 10vw; */
    top: 25px;
    transform: scale(1);
    rotate: -20deg;
  }
  50% {
    top: -70px;
  }
  99.9% {
    opacity: 1;
  }
  100% {
    left: 100vw;
    top: 65px;
    transform: scale(0.9);
    opacity: 0;
    rotate: 30deg;
  }
}

@media (max-width: 1000px) {
  @keyframes throw_hammer {
    0% {
      opacity: 1;
      left: calc(0vw - var(--equipment-width));
      top: 25px;
      transform: scale(1);
      rotate: -20deg;
    }
    50% {
      top: -70px;
    }
    99.9% {
      opacity: 1;
    }
    100% {
      left: 100vw;
      top: 65px;
      transform: scale(0.9);
      opacity: 0;
      rotate: 30deg;
    }
  }
}

img[src="../photos/siluety/final/onroad.png"],
img[src="../photos/siluety/final/offroad.png"] {
  position: absolute;
  width: var(--racing-car-width); /* šířka obrázku */
  height: auto; /* zachování proporcí */
  top: 90px;
}


@media screen and (max-width: 1500px) {
  img[src="../photos/siluety/final/onroad.png"],
  img[src="../photos/siluety/final/offroad.png"] {
    top: 69px;
  }
}

@media screen and (max-width: 1000px) {
  img[src="../photos/siluety/final/hammer_car.png"], img[src="../photos/siluety/final/hammer_car_equipment.png"] ,img[src="../photos/siluety/final/javelin_car.png"], img[src="../photos/siluety/final/javelin_car_equipment.png"] {
    top: 112px;
  }
  img[src="../photos/siluety/final/onroad.png"],
  img[src="../photos/siluety/final/offroad.png"] {
    top: 125px;
  }
}
