/* Motion is scoped to this page and only enabled after JavaScript is ready. */
body.opr-motion { scroll-behavior: smooth; }
body.opr-motion [data-opr-reveal] { opacity: 0; transform: translate3d(0, 26px, 0); transition: opacity .72s ease, transform .72s cubic-bezier(.2,.7,.2,1); transition-delay: var(--opr-delay, 0ms); }
body.opr-motion [data-opr-reveal].opr-visible { opacity: 1; transform: translate3d(0,0,0); }
body.opr-motion section[data-screen-label="Hero"] h1 { animation: opr-hero-in .8s cubic-bezier(.2,.8,.2,1) both; }
body.opr-motion section[data-screen-label="Hero"] h1 + p { animation: opr-hero-in .8s .13s cubic-bezier(.2,.8,.2,1) both; }
body.opr-motion section[data-screen-label="Hero"] button { animation: opr-hero-in .8s .26s cubic-bezier(.2,.8,.2,1) both; }
@keyframes opr-hero-in { from { opacity: 0; transform: translate3d(0,24px,0); } to { opacity: 1; transform: translate3d(0,0,0); } }
body.opr-motion header[data-screen-label="Header"] { transition: box-shadow .3s ease, background-color .3s ease; }
body.opr-motion header[data-screen-label="Header"].opr-scrolled { box-shadow: 0 8px 24px rgba(2,10,20,.2); }
body.opr-motion section[data-screen-label="Atletas confirmados"] img,
body.opr-motion section[data-screen-label="Provas"] img,
body.opr-motion section[data-screen-label="Patrocinadores"] img { transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .45s ease; }
body.opr-motion section[data-screen-label="Atletas confirmados"] a:hover img,
body.opr-motion section[data-screen-label="Atletas confirmados"] .opr-athlete-card:hover img,
body.opr-motion section[data-screen-label="Atletas confirmados"] a:focus-visible img,
body.opr-motion section[data-screen-label="Provas"] div[style*="aspect-ratio"]:hover img,
body.opr-motion section[data-screen-label="Patrocinadores"] img:hover { transform: scale(1.06); }
body.opr-motion section[data-screen-label="Atletas confirmados"] a { transition: filter .25s ease; }
body.opr-motion section[data-screen-label="Atletas confirmados"] a:hover { filter: drop-shadow(0 8px 12px rgba(13,27,42,.16)); }
body.opr-motion button, body.opr-motion a[style*="background:#E53935"], body.opr-motion a[style*="background:#1E88E5"] { transition: filter .22s ease, box-shadow .22s ease, translate .22s ease; }
body.opr-motion button:hover, body.opr-motion a[style*="background:#E53935"]:hover, body.opr-motion a[style*="background:#1E88E5"]:hover { filter: brightness(1.08); box-shadow: 0 10px 22px rgba(13,27,42,.2); translate: 0 -3px; }
body.opr-motion button:active, body.opr-motion a[style*="background:#E53935"]:active, body.opr-motion a[style*="background:#1E88E5"]:active { translate: 0 0; }
#opr-progress { position: fixed; inset: 0 auto auto 0; width: 100%; height: 3px; z-index: 1001; pointer-events: none; background: linear-gradient(90deg,#1E88E5,#E53935); transform: scaleX(0); transform-origin: left; }
@media (prefers-reduced-motion: reduce) {
  body.opr-motion, body.opr-motion * { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-delay: 0ms !important; transition-duration: .01ms !important; transition-delay: 0ms !important; }
  body.opr-motion [data-opr-reveal] { opacity: 1 !important; transform: none !important; }
  #opr-progress { display: none; }
}
