/* ---------- animaciones de entrada (dan dinamismo al index) ---------- */
@media (prefers-reduced-motion: no-preference){
  /* Hero: aparece con una pequeña secuencia al cargar la página. */
  .hero-copy > *{
    opacity:0;transform:translateY(16px);
    animation:karla-fade-up .7s cubic-bezier(.22,.61,.36,1) forwards;
  }
  .hero-copy .eyebrow{animation-delay:.05s;}
  .hero-copy h1{animation-delay:.15s;}
  .hero-copy p{animation-delay:.3s;}
  .hero-copy .hero-ctas{animation-delay:.42s;}

  /* Resto de secciones: se revelan al hacer scroll (activado por site.js). */
  .reveal{
    opacity:0;transform:translateY(28px);
    transition:opacity .7s cubic-bezier(.22,.61,.36,1), transform .7s cubic-bezier(.22,.61,.36,1);
    transition-delay:var(--reveal-delay,0s);
  }
  .reveal.is-visible{opacity:1;transform:none;}

  .shop-grid .shop-card:nth-child(1){--reveal-delay:0s;}
  .shop-grid .shop-card:nth-child(2){--reveal-delay:.1s;}
  .shop-grid .shop-card:nth-child(3){--reveal-delay:.2s;}
  .trust-grid li:nth-child(1){--reveal-delay:0s;}
  .trust-grid li:nth-child(2){--reveal-delay:.08s;}
  .trust-grid li:nth-child(3){--reveal-delay:.16s;}
  .trust-grid li:nth-child(4){--reveal-delay:.24s;}
  .review-track .review-card:nth-child(1){--reveal-delay:0s;}
  .review-track .review-card:nth-child(2){--reveal-delay:.08s;}
  .review-track .review-card:nth-child(3){--reveal-delay:.16s;}
  .review-track .review-card:nth-child(n+4){--reveal-delay:.22s;}

  /* Fotos: pequeño zoom suave al pasar el cursor, para que la página se sienta viva. */
  .shop-card .cover img,
  .mega-book .cover img,
  .review-card .avatar,
  .footer-social a,
  .pay-badge img{
    transition:transform .45s cubic-bezier(.22,.61,.36,1);
  }
  .shop-card:hover .cover img,
  .mega-book:hover .cover img{transform:scale(1.045);}
  .review-card:hover .avatar{transform:scale(1.12);}

  @keyframes karla-fade-up{to{opacity:1;transform:none;}}
}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1 !important;transform:none !important;}
  .hero-copy > *{opacity:1 !important;transform:none !important;animation:none !important;}
}