/* ППЧ — спокойные анимации (fade / lift), с уважением к prefers-reduced-motion */

@keyframes ppch-fade-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes ppch-fade-up {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes ppch-scale-in {
  from {
    opacity: 0;
    transform: translateY(12px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .site-header {
    transition:
      box-shadow var(--dur-base) var(--ease-standard),
      background var(--dur-base) var(--ease-standard);
  }

  .site-header.is-scrolled {
    box-shadow: var(--shadow-sm);
  }

  .motion-fade-up {
    opacity: 0;
    transform: translateY(18px);
    transition:
      opacity var(--dur-slow) var(--ease-out),
      transform var(--dur-slow) var(--ease-out);
    transition-delay: var(--motion-delay, 0ms);
  }

  .motion-fade-up.is-inview {
    opacity: 1;
    transform: translateY(0);
  }

  .home-hero__inner.motion-fade-up {
    transform: translateY(22px);
  }

  .modal-dasha.is-open {
    animation: ppch-fade-in var(--dur-base) var(--ease-out);
  }

  .modal-dasha.is-open .modal-dasha__backdrop {
    animation: ppch-fade-in var(--dur-base) var(--ease-out);
  }

  .modal-dasha.is-open .modal-dasha__dialog {
    animation: ppch-scale-in var(--dur-slow) var(--ease-out);
  }

  .modal-club.is-open {
    animation: ppch-fade-in var(--dur-base) var(--ease-out);
  }

  .modal-club.is-open .modal-club__backdrop {
    animation: ppch-fade-in var(--dur-base) var(--ease-out);
  }

  .modal-club.is-open .modal-club__dialog {
    animation: ppch-scale-in var(--dur-slow) var(--ease-out);
  }

  .motion-lift {
    transition:
      transform var(--dur-base) var(--ease-standard),
      box-shadow var(--dur-base) var(--ease-standard),
      border-color var(--dur-fast) var(--ease-standard);
  }

  .motion-lift:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
  }

  .btn--primary:active,
  .btn--outline:active {
    transform: translateY(1px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .motion-fade-up {
    opacity: 1;
    transform: none;
  }
}
