.reveal-left,.reveal-right{opacity:0;transition:opacity .72s ease-out,transform .72s cubic-bezier(.22,.61,.36,1)}
.reveal-left{transform:translateX(-48px)}.reveal-right{transform:translateX(48px);transition-delay:110ms}
.reveal-row.is-visible .reveal-left,.reveal-row.is-visible .reveal-right{opacity:1;transform:translateX(0)}
.serim-product-row.is-reversed .reveal-left{order:2}.serim-product-row.is-reversed .reveal-right{order:1}
@media(max-width:800px){.serim-product-row.is-reversed .reveal-left,.serim-product-row.is-reversed .reveal-right{order:initial}}
@media(prefers-reduced-motion:reduce){.reveal-left,.reveal-right{opacity:1;transform:none;transition:none}}

/* Shared homepage motion: reveal only opacity and transform to avoid layout shift. */
.js-reveal{--reveal-delay:0ms;opacity:0;will-change:opacity,transform;transition:opacity 700ms cubic-bezier(.22,1,.36,1),transform 700ms cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay)}
.js-reveal.reveal-up{transform:translateY(clamp(28px,3vw,48px))}.js-reveal.reveal-left{transform:translateX(clamp(-52px,-3vw,-28px))}.js-reveal.reveal-right{transform:translateX(clamp(28px,3vw,52px))}.js-reveal.reveal-scale{transform:scale(.97)}
.js-reveal.is-visible{opacity:1;transform:none}
.js-reveal.reveal-stagger:nth-child(2){--reveal-delay:80ms}.js-reveal.reveal-stagger:nth-child(3){--reveal-delay:160ms}.js-reveal.reveal-stagger:nth-child(4){--reveal-delay:240ms}
@media(max-width:800px){.js-reveal.reveal-left,.js-reveal.reveal-right{transform:translateY(24px)}.js-reveal.reveal-scale{transform:scale(.985)}}
@media(prefers-reduced-motion:reduce){.js-reveal,.js-reveal.reveal-left,.js-reveal.reveal-right,.js-reveal.reveal-up,.js-reveal.reveal-scale{opacity:1;transform:none;transition:none}}
