/* ============================================
   ARTECH — Reveal Animations
   ============================================ */

/* Elements start visible — JS adds .will-reveal to hide them before animating */
.will-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}

.will-reveal.reveal--left  { transform: translateX(-28px); }
.will-reveal.reveal--right { transform: translateX(28px); }
.will-reveal.reveal--scale { transform: translateY(12px) scale(0.97); transition: opacity 0.5s ease, transform 0.5s ease; }
.will-reveal.reveal--fade  { transform: none; }

.will-reveal.is-revealed {
  opacity: 1;
  transform: none;
}

/* ============================================
   HERO ENTRANCE ANIMATIONS
   ============================================ */
@keyframes heroUp {
  from { opacity: 0; transform: translateY(28px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes heroBgIn {
  from { transform: scale(1.06); }
  to   { transform: scale(1); }
}

/* -- Index hero -- */
.hero__label        { animation: heroUp 0.6s ease 0.15s both; }
.hero__title        { animation: heroUp 0.75s ease 0.25s both; }
.hero__desc         { animation: heroUp 0.6s ease 0.42s both; }
.hero__cta          { animation: heroUp 0.6s ease 0.58s both; }
.hero__stats        { animation: heroUp 0.6s ease 0.7s  both; }

/* -- Storitve hero -- */
.storitve-hero__label   { animation: heroUp 0.6s ease 0.15s both; }
.storitve-hero__title   { animation: heroUp 0.75s ease 0.25s both; }
.storitve-hero__desc    { animation: heroUp 0.6s ease 0.42s both; }
.storitve-hero__buttons { animation: heroUp 0.6s ease 0.58s both; }
.storitve-hero__counter { animation: heroUp 0.6s ease 0.65s both; }

/* -- O nas hero -- */
.about-hero__eyebrow { animation: heroUp 0.6s ease 0.15s both; }
.about-hero__title   { animation: heroUp 0.75s ease 0.25s both; }
.about-hero__desc    { animation: heroUp 0.6s ease 0.42s both; }
.about-hero__specs   { animation: heroUp 0.5s ease 0.65s both; }

/* -- Page hero (Galerija, Kontakt) -- */
.page-hero h1              { animation: heroUp 0.75s ease 0.15s both; }
.page-hero__subtitle       { animation: heroUp 0.6s ease 0.3s  both; }
.page-header__left         { animation: heroUp 0.7s ease 0.15s both; }
.page-header__stats        { animation: heroUp 0.6s ease 0.35s both; }

/* -- Hero background subtle zoom-out -- */
.hero__bg picture,
.storitve-hero__bg picture,
.about-hero__bg picture    { animation: heroBgIn 1.6s cubic-bezier(0.16, 1, 0.3, 1) both; }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .hero__label, .hero__title, .hero__desc, .hero__cta, .hero__stats,
  .storitve-hero__label, .storitve-hero__title, .storitve-hero__desc,
  .storitve-hero__buttons, .storitve-hero__counter,
  .about-hero__eyebrow, .about-hero__title, .about-hero__desc, .about-hero__specs,
  .page-hero h1, .page-hero__subtitle, .page-header__left, .page-header__stats,
  .hero__bg picture, .storitve-hero__bg picture, .about-hero__bg picture {
    animation: none;
  }
}
