/* ════════════════════════════════════════
   SahiDerma – Scroll Reveal Animations
   Trigger class: .reveal (added via JS)
   ════════════════════════════════════════ */

/* Base hidden state */
[data-anim] {
    opacity: 0;
    transition-property: opacity, transform;
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
    transition-duration: 0.75s;
    will-change: opacity, transform;
}

/* Delay helpers */
[data-anim-delay="100"] { transition-delay: 0.1s; }
[data-anim-delay="150"] { transition-delay: 0.15s; }
[data-anim-delay="200"] { transition-delay: 0.20s; }
[data-anim-delay="300"] { transition-delay: 0.30s; }
[data-anim-delay="400"] { transition-delay: 0.40s; }
[data-anim-delay="500"] { transition-delay: 0.50s; }
[data-anim-delay="600"] { transition-delay: 0.60s; }
[data-anim-delay="700"] { transition-delay: 0.70s; }
[data-anim-delay="800"] { transition-delay: 0.80s; }

/* Starting positions per type */
[data-anim="fade-up"]    { transform: translateY(50px); }
[data-anim="fade-down"]  { transform: translateY(-40px); }
[data-anim="fade-left"]  { transform: translateX(60px); }
[data-anim="fade-right"] { transform: translateX(-60px); }
[data-anim="zoom-in"]    { transform: scale(0.88); }
[data-anim="zoom-out"]   { transform: scale(1.1); }
[data-anim="fade"]       { transform: none; }

/* ── Revealed state (JS adds .anim-visible) ── */
[data-anim].anim-visible {
    opacity: 1;
    transform: none !important;
}

/* Respect user's reduced motion preference */
@media (prefers-reduced-motion: reduce) {
    [data-anim] {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}
