@keyframes s4r-reveal-up {
  from { opacity: .4; transform: translate3d(var(--s4r-entry-x, 0px), var(--s4r-entry-y, 64px), 0); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes s4r-banner-title {
  from { opacity: .35; transform: translateX(var(--s4r-banner-x, clamp(-64px, -4vw, -16px))); }
  to { opacity: 1; transform: translateX(0); }
}
.s4r-reveal-enter {
  animation: s4r-reveal-up 1.15s cubic-bezier(.22, .61, .36, 1) var(--s4r-reveal-delay, 0ms) backwards;
}
.s4r-banner-title-enter {
  animation: s4r-banner-title 1.2s cubic-bezier(.22, .61, .36, 1) var(--s4r-reveal-delay, 0ms) backwards;
}
[data-s4r-entry="left"] { --s4r-entry-x: clamp(-64px, -4vw, -16px); --s4r-entry-y: 0px; }
[data-s4r-entry="right"] { --s4r-entry-x: clamp(16px, 4vw, 64px); --s4r-entry-y: 0px; }
@media (max-width: 767px) {
  .s4r-reveal-enter { --s4r-entry-y: 44px; }
  [data-s4r-entry="left"], [data-s4r-entry="right"] { --s4r-entry-y: 0px; }
}
@media (prefers-reduced-motion: reduce) {
  /* Deslocamento menor, conforme pedido de manter a entrada mesmo neste modo. */
  .s4r-reveal-enter, .s4r-banner-title-enter {
    --s4r-entry-y: 32px;
    --s4r-banner-x: clamp(-32px, -4vw, -12px);
    animation-duration: 1.1s;
    animation-delay: 0s;
  }
  [data-s4r-entry="left"] { --s4r-entry-x: clamp(-32px, -4vw, -12px); --s4r-entry-y: 0px; }
  [data-s4r-entry="right"] { --s4r-entry-x: clamp(12px, 4vw, 32px); --s4r-entry-y: 0px; }
}
@media print {
  .s4r-reveal-enter, .s4r-banner-title-enter { animation: none; }
}
