/* SlideSense 1.6: entrances run once, decorative motion stops after arrival. */
@media (prefers-reduced-motion: no-preference) {
  .ss-reveal {
    opacity: 0;
    transform: translateY(48px) scale(.98);
    transition: opacity .8s ease, transform .9s cubic-bezier(.16,1,.3,1), translate .3s ease, box-shadow .3s ease, border-color .3s ease;
    transition-delay: var(--ss-motion-delay, 0ms);
  }
  .ss-reveal.ss-reveal-turn { transform: translateY(48px) rotate(-4deg) scale(.94); }
  .ss-reveal.is-visible { opacity: 1; transform: none; }
  .ss-grid-three > .ss-reveal[data-reveal], .ss-component-cell.ss-reveal { transition-delay: var(--ss-motion-delay, var(--ss-component-delay, 0ms)); }
  .ss-reveal.is-visible .ss-benefit-heading svg { animation: ss-icon-turn 1s cubic-bezier(.16,1,.3,1) both; animation-delay: var(--ss-motion-delay, 0ms); }
  .ss-reveal.is-visible .ss-step-number, .ss-reveal.is-visible .ss-display-number, .ss-reveal.is-visible .ss-doc-icon { animation: ss-number-turn 1s cubic-bezier(.16,1,.3,1) both; animation-delay: var(--ss-motion-delay, 0ms); }
  .ss-reveal.is-visible .ss-component-image { animation: ss-component-arrive 1.1s cubic-bezier(.16,1,.3,1) backwards; animation-delay: var(--ss-motion-delay, 0ms); }
  .ss-reveal.is-visible .ss-check-list li { animation: ss-list-arrive .65s ease backwards; animation-delay: calc(var(--ss-motion-delay, 0ms) + 180ms); }
  .ss-reveal.is-visible .ss-check-list li:nth-child(even) { animation-delay: calc(var(--ss-motion-delay, 0ms) + 280ms); }
  .ss-button { transition: transform .3s ease, box-shadow .3s ease, background .3s ease; }
  .ss-component-image, .ss-slide-image { transition: transform .5s cubic-bezier(.16,1,.3,1); }
  @media (hover: hover) and (pointer: fine) {
    .ss-card:hover .ss-slide-image { transform: translateY(-8px) rotate(2deg) scale(1.04); }
    .ss-component-grid li:hover .ss-component-image, .ss-component-feature:hover .ss-component-image { transform: translateY(-7px) rotate(-6deg) scale(1.06); }
    .ss-benefit:hover .ss-benefit-heading svg { rotate: 12deg; }
    .ss-benefit-heading svg { transition: rotate .4s ease; }
    .ss-button:hover { transform: translateY(-4px) rotate(-1deg); }
  }
  @media (max-width: 700px) {
    .ss-reveal { transform: translateY(28px); transition-duration: .6s; }
    .ss-reveal.ss-reveal-turn { transform: translateY(28px) rotate(-2deg) scale(.98); }
    .ss-reveal.is-visible { transform: none; }
  }
}
@keyframes ss-icon-turn { from { opacity: 0; transform: rotate(-75deg) scale(.65); } to { opacity: 1; transform: rotate(0) scale(1); } }
@keyframes ss-number-turn { from { opacity: 0; rotate: -180deg; scale: .6; } to { opacity: 1; rotate: 0deg; scale: 1; } }
@keyframes ss-component-arrive { from { opacity: 0; transform: translateY(20px) rotate(12deg) scale(.88); } to { opacity: 1; transform: none; } }
@keyframes ss-list-arrive { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .wp-site-blocks *, .wp-site-blocks *::before, .wp-site-blocks *::after { animation: none !important; transition: none !important; }
  .ss-reveal, .ss-reveal.ss-reveal-turn { opacity: 1; transform: none; }
}
@media print {
  .ss-reveal, .ss-reveal.ss-reveal-turn { opacity: 1 !important; transform: none !important; }
  .wp-site-blocks *, .wp-site-blocks *::before, .wp-site-blocks *::after { animation: none !important; transition: none !important; }
}
