/* Movimento editorial leve: feedback, hierarquia e leitura, sem dependências externas. */
:root{--motion-fast:170ms;--motion-medium:260ms;--motion-ease:cubic-bezier(.2,.72,.25,1)}

@media(prefers-reduced-motion:no-preference){
  .siteNav a,.siteBrand,.siteLogin,.coverLogin,.coverCta,.button,.directoryLink,.readlink,.searchform button,.homeSearch button,.siteMenuButton,button:not(:disabled),[role="button"]{transition:color var(--motion-fast) var(--motion-ease),background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),box-shadow var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease)}
  .siteLogin:active,.coverLogin:active,.coverCta:active,.button:active,.directoryLink:active,.searchform button:active,.homeSearch button:active,.siteMenuButton:active,button:not(:disabled):active,[role="button"]:active{transform:translateY(0) scale(.98)}

  .motion-card{transition:transform var(--motion-medium) var(--motion-ease),box-shadow var(--motion-medium) var(--motion-ease),border-color var(--motion-medium) var(--motion-ease),background-color var(--motion-medium) var(--motion-ease)}
  .motion-card:focus-within{transform:translateY(-2px);border-color:#b8cdf7}
  .motion-section .sectionHead h2,.motion-section>.container>h2,.motion-section>h2,.motion-section>h3{transition:color var(--motion-medium) var(--motion-ease),translate var(--motion-medium) var(--motion-ease)}
  .siteNav.open{animation:motion-menu-in 210ms var(--motion-ease) both;transform-origin:top center}
  .motion-intro{animation:motion-rise-in 560ms var(--motion-ease) both}
  .motion-intro-visual{animation:motion-rise-in 700ms var(--motion-ease) 100ms both}

  .motion-ready .motion-reveal:not(.motion-visible){opacity:0;translate:0 14px}
  .motion-reveal{transition:opacity 420ms var(--motion-ease),translate 420ms var(--motion-ease);transition-delay:var(--motion-delay,0ms)}
  .motion-reveal.motion-visible{opacity:1;translate:0 0}
  .motion-reading-progress{position:fixed;inset:0 auto auto 0;z-index:1000;width:100%;height:3px;pointer-events:none;background:linear-gradient(90deg,#1d5fe8,#6ca2ff);transform:scaleX(var(--reading-progress,0));transform-origin:left center;will-change:transform}

  @media(hover:hover){
    .siteNav a:hover,.siteBrand:hover{transform:translateY(-1px)}
    .siteLogin:hover,.coverLogin:hover,.coverCta:hover,.button:hover,.directoryLink:hover,.searchform button:hover,.homeSearch button:hover,button:not(:disabled):hover,[role="button"]:hover{transform:translateY(-2px)}
    .coverCta>span[aria-hidden="true"],.readlink>span[aria-hidden="true"]{display:inline-block;transition:transform var(--motion-fast) var(--motion-ease)}
    .coverCta:hover>span[aria-hidden="true"],.readlink:hover>span[aria-hidden="true"]{transform:translateX(4px)}
    .motion-section:hover .sectionHead h2,.motion-section>.container:hover>h2,.motion-section:hover>h2,.motion-section:hover>h3{color:#1d5fe8;translate:2px 0}
  }
}

@media(min-width:701px) and (hover:hover) and (prefers-reduced-motion:no-preference){
  .motion-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px -22px rgba(16,24,40,.3);border-color:#c6d7f6}
  .homeCoverPage .coverMascots{animation:motion-float 7s ease-in-out infinite}
}

@keyframes motion-rise-in{from{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes motion-menu-in{from{opacity:0;transform:translate3d(0,-6px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes motion-float{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-5px,0)}}

@media(prefers-reduced-motion:reduce){
  .motion-reading-progress{display:none}
  .motion-card{transition:none!important}
  .motion-section .sectionHead h2,.motion-section>.container>h2,.motion-section>h2,.motion-section>h3{transition:none!important;translate:none!important}
}
