/* Entradas discretas, aplicadas apenas depois que o script marca os elementos. */
@media (prefers-reduced-motion: no-preference) {
  html.motion-ready .hero-copy {
    animation: none;
  }

  html.motion-ready [data-reveal]:not(.is-visible) {
    opacity: 0;
    transform: translate3d(0, 14px, 0);
    filter: blur(2px);
  }

  html.motion-ready [data-reveal="media"]:not(.is-visible) {
    transform: translate3d(0, 18px, 0) scale(.985);
    filter: none;
  }

  html.motion-ready [data-reveal="card"]:not(.is-visible) {
    transform: translate3d(0, 16px, 0);
    filter: none;
  }

  html.motion-ready [data-reveal="side-start"] { --reveal-x: -42px; }
  html.motion-ready [data-reveal="side-end"] { --reveal-x: 42px; }
  html[lang="ar"].motion-ready [data-reveal="side-start"] { --reveal-x: 42px; }
  html[lang="ar"].motion-ready [data-reveal="side-end"] { --reveal-x: -42px; }
  html.motion-ready [data-reveal^="side-"]:not(.is-visible) {
    opacity: 0;
    transform: translate3d(var(--reveal-x), 0, 0);
    filter: none;
  }

  html.motion-ready [data-reveal].is-visible {
    animation: reveal-text .9s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay, 0ms) backwards;
  }

  html.motion-ready [data-reveal="media"].is-visible {
    animation-name: reveal-media;
    animation-duration: 1.1s;
  }

  html.motion-ready [data-reveal="card"].is-visible {
    animation-name: reveal-card;
    animation-duration: .95s;
  }

  html.motion-ready [data-reveal^="side-"].is-visible {
    animation-name: reveal-side;
    animation-duration: 1.05s;
  }

  @keyframes reveal-text {
    from { opacity: 0; transform: translate3d(0, 14px, 0); filter: blur(2px); }
    to { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }
  }

  @keyframes reveal-media {
    from { opacity: 0; transform: translate3d(0, 18px, 0) scale(.985); }
    to { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
  }

  @keyframes reveal-card {
    from { opacity: 0; transform: translate3d(0, 16px, 0); }
    to { opacity: 1; transform: translate3d(0, 0, 0); }
  }

  @keyframes reveal-side {
    from { opacity: 0; transform: translate3d(var(--reveal-x), 0, 0); }
    to { opacity: 1; transform: translate3d(0, 0, 0); }
  }

  @media (max-width: 1100px) {
    html.motion-ready [data-reveal="side-start"] { --reveal-x: -28px; }
    html.motion-ready [data-reveal="side-end"] { --reveal-x: 28px; }
    html[lang="ar"].motion-ready [data-reveal="side-start"] { --reveal-x: 28px; }
    html[lang="ar"].motion-ready [data-reveal="side-end"] { --reveal-x: -28px; }
  }

  @media (max-width: 700px) {
    html.motion-ready [data-reveal="side-start"] { --reveal-x: -18px; }
    html.motion-ready [data-reveal="side-end"] { --reveal-x: 18px; }
    html[lang="ar"].motion-ready [data-reveal="side-start"] { --reveal-x: 18px; }
    html[lang="ar"].motion-ready [data-reveal="side-end"] { --reveal-x: -18px; }
  }
}
