/* ==========================================================================
   Tamnature — Animations (keyframes & motion)
   ========================================================================== */

/* Soleil : rayons qui pulsent */
@keyframes pulse-rayons {
  0%, 100% { transform: scale(1); opacity: 0.9; }
  50%      { transform: scale(1.06); opacity: 1; }
}

.sun-rays {
  transform-origin: center;
  animation: pulse-rayons 8s ease-in-out infinite;
}

@keyframes sun-rotate {
  to { transform: rotate(360deg); }
}
.sun-rays-rotor {
  transform-origin: center;
  animation: sun-rotate 80s linear infinite;
}

/* Feuilles qui bougent au vent */
@keyframes wind-leaves {
  0%, 100% { transform: rotate(-1.2deg) translateY(0); }
  50%      { transform: rotate(2deg)    translateY(-1.5px); }
}

@keyframes wind-branch {
  0%, 100% { transform: rotate(-0.6deg); }
  50%      { transform: rotate(0.8deg); }
}

/* Oiseau qui plane */
@keyframes bird-fly {
  0%   { transform: translate(0, 0); }
  25%  { transform: translate(20px, -8px); }
  50%  { transform: translate(40px, 4px); }
  75%  { transform: translate(20px, -4px); }
  100% { transform: translate(0, 0); }
}
.bird-fly {
  animation: bird-fly 18s ease-in-out infinite;
}

@keyframes bird-wing {
  0%, 100% { transform: scaleY(1); }
  50%      { transform: scaleY(0.85); }
}
.bird-wing {
  transform-origin: center;
  animation: bird-wing 2.4s ease-in-out infinite;
}

/* Indicateur scroll */
@keyframes scroll-pulse {
  0%        { transform: scaleY(0); transform-origin: top; }
  50%       { transform: scaleY(1); transform-origin: top; }
  50.0001%  { transform-origin: bottom; }
  100%      { transform: scaleY(0); transform-origin: bottom; }
}

/* Hover lift utility */
@keyframes float-soft {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-6px); }
}
.float-soft { animation: float-soft 6s ease-in-out infinite; }

/* Boutons : petit frétillement kawaii au survol */
@keyframes btn-wiggle {
  0%   { transform: translateY(-3px) scale(1.04) rotate(0deg); }
  30%  { transform: translateY(-3px) scale(1.05) rotate(-1.4deg); }
  60%  { transform: translateY(-3px) scale(1.05) rotate(1.2deg); }
  100% { transform: translateY(-3px) scale(1.04) rotate(0deg); }
}

/* --- Reduced motion ---------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}
