/* AIS site-wide motion + lift. Additive; only active when body has .ais-anim
   (added by ais-motion.js only when motion is allowed) so it fails safe to visible. */

.ais-anim .ais-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .75s cubic-bezier(.2,.7,.2,1)}
.ais-anim .ais-reveal.is-in{opacity:1;transform:none}

/* gentle left-to-right cascade inside 3-col card grids */
.ais-anim .ais-featured-grid>.ais-reveal:nth-child(3n+2),
.ais-anim .ais-card-grid>.ais-reveal:nth-child(3n+2),
.ais-anim .ais-cross-grid>.ais-reveal:nth-child(3n+2),
.ais-anim .ais-dest-strip>.ais-reveal:nth-child(3n+2),
.ais-anim .ais-destination-grid>.ais-reveal:nth-child(3n+2){transition-delay:.08s}
.ais-anim .ais-featured-grid>.ais-reveal:nth-child(3n),
.ais-anim .ais-card-grid>.ais-reveal:nth-child(3n),
.ais-anim .ais-cross-grid>.ais-reveal:nth-child(3n),
.ais-anim .ais-dest-strip>.ais-reveal:nth-child(3n),
.ais-anim .ais-destination-grid>.ais-reveal:nth-child(3n){transition-delay:.16s}

/* warm depth + stronger hover lift on cards (overrides the cool navy hover) */
.ais-anim .ais-unified-card,
.ais-anim .ais-feature-card,
.ais-anim .ais-cross-card,
.ais-anim .ais-mini-card,
.ais-anim .ais-destination-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.ais-anim .ais-unified-card:hover,
.ais-anim .ais-feature-card:hover,
.ais-anim .ais-cross-card:hover,
.ais-anim .ais-mini-card:hover,
.ais-anim .ais-destination-card:hover{transform:translateY(-6px);box-shadow:0 30px 58px rgba(36,30,22,.18)}
