/* DBIM scroll reveal: fade + slide-up as sections enter the viewport, staggered children, subtle parallax.
   Progressive enhancement: nothing is hidden unless js/dbim-reveal.js adds html.dbim-rv (never under reduced motion). */
html.dbim-rv .rv {
    opacity: 0;
    transform: translate3d(0, 28px, 0);
    transition: opacity .7s cubic-bezier(.22, .61, .36, 1), transform .7s cubic-bezier(.22, .61, .36, 1);
    transition-delay: calc(var(--rv-i, 0) * 90ms);
}

html.dbim-rv .rv--fade {
    transform: none;
}

html.dbim-rv .rv--in {
    opacity: 1;
    transform: none;
}

/* settled elements drop will-change so they stay cheap and never trap fixed descendants */
html.dbim-rv .rv--done {
    transition: none;
    transition-delay: 0s;
}

/* parallax: the Incredible India video drifts slightly inside its card (set by js) */
.dbim-inc-video[data-parallax] {
    transform: translate3d(0, var(--py, 0px), 0) scale(1.12);
    will-change: transform;
}

@media (max-width: 767px) {
    html.dbim-rv .rv {
        transform: translate3d(0, 18px, 0);
        transition-duration: .5s;
    }
}

@media (prefers-reduced-motion: reduce) {
    html.dbim-rv .rv {
        opacity: 1;
        transform: none;
        transition: none;
    }

    .dbim-inc-video[data-parallax] {
        transform: none;
    }
}

@media print {
    html.dbim-rv .rv {
        opacity: 1;
        transform: none;
        transition: none;
    }
}