/**
 * Phase 8: Premium Theme Animation Engine.
 * Accessible, CSS-variable driven motion layer.
 */
.dsp-animation-engine-enabled [data-dsp-animate]{
	opacity:0;
	transform:translate3d(0,var(--dsp-animation-distance,28px),0);
	transition:opacity var(--dsp-animation-duration,700ms) var(--dsp-animation-ease,cubic-bezier(.2,.8,.2,1)),transform var(--dsp-animation-duration,700ms) var(--dsp-animation-ease,cubic-bezier(.2,.8,.2,1));
	transition-delay:var(--dsp-animation-item-delay,0ms);
	will-change:opacity,transform;
}
.dsp-animation-engine-enabled [data-dsp-animate].dsp-animated{opacity:1;transform:none;will-change:auto;}
.dsp-animation-style-none [data-dsp-animate]{opacity:1;transform:none;transition:none;}
.dsp-animation-style-fade [data-dsp-animate]{transform:none;}
.dsp-animation-style-fade-down [data-dsp-animate]{transform:translate3d(0,calc(var(--dsp-animation-distance,28px) * -1),0);}
.dsp-animation-style-fade-left [data-dsp-animate]{transform:translate3d(var(--dsp-animation-distance,28px),0,0);}
.dsp-animation-style-fade-right [data-dsp-animate]{transform:translate3d(calc(var(--dsp-animation-distance,28px) * -1),0,0);}
.dsp-animation-style-zoom [data-dsp-animate]{transform:scale(.94);}
.dsp-animation-style-flip [data-dsp-animate]{transform:perspective(900px) rotateX(10deg) translate3d(0,var(--dsp-animation-distance,28px),0);transform-origin:50% 100%;}
.dsp-animation-style-bounce [data-dsp-animate]{transition-timing-function:cubic-bezier(.22,1.25,.36,1);}
.dsp-animation-stagger-subtle [data-dsp-animate]:nth-child(2){--dsp-animation-item-delay:60ms;}
.dsp-animation-stagger-subtle [data-dsp-animate]:nth-child(3){--dsp-animation-item-delay:120ms;}
.dsp-animation-stagger-subtle [data-dsp-animate]:nth-child(4){--dsp-animation-item-delay:180ms;}
.dsp-animation-stagger-medium [data-dsp-animate]:nth-child(2){--dsp-animation-item-delay:90ms;}
.dsp-animation-stagger-medium [data-dsp-animate]:nth-child(3){--dsp-animation-item-delay:180ms;}
.dsp-animation-stagger-medium [data-dsp-animate]:nth-child(4){--dsp-animation-item-delay:270ms;}
.dsp-animation-stagger-bold [data-dsp-animate]:nth-child(2){--dsp-animation-item-delay:130ms;}
.dsp-animation-stagger-bold [data-dsp-animate]:nth-child(3){--dsp-animation-item-delay:260ms;}
.dsp-animation-stagger-bold [data-dsp-animate]:nth-child(4){--dsp-animation-item-delay:390ms;}
.dsp-animation-engine-enabled .dsp-builder-section,
.dsp-animation-engine-enabled .dsp-section,
.dsp-animation-engine-enabled .site-header,
.dsp-animation-engine-enabled .site-footer,
.dsp-animation-engine-enabled .widget,
.dsp-animation-engine-enabled article,
.dsp-animation-engine-enabled .product,
.dsp-animation-engine-enabled .service-card,
.dsp-animation-engine-enabled .portfolio-card,
.dsp-animation-engine-enabled .testimonial-card{
	backface-visibility:hidden;
}
.dsp-animation-hover-lift .card,
.dsp-animation-hover-lift .service-card,
.dsp-animation-hover-lift .portfolio-card,
.dsp-animation-hover-lift .testimonial-card,
.dsp-animation-hover-lift .product,
.dsp-animation-hover-lift article,
.dsp-animation-hover-zoom .card,
.dsp-animation-hover-zoom .service-card,
.dsp-animation-hover-zoom .portfolio-card,
.dsp-animation-hover-zoom .testimonial-card,
.dsp-animation-hover-zoom .product,
.dsp-animation-hover-glow .card,
.dsp-animation-hover-glow .service-card,
.dsp-animation-hover-glow .portfolio-card,
.dsp-animation-hover-glow .testimonial-card,
.dsp-animation-hover-tilt .card,
.dsp-animation-hover-tilt .service-card,
.dsp-animation-hover-tilt .portfolio-card,
.dsp-animation-hover-tilt .testimonial-card{
	transition:transform 260ms ease,box-shadow 260ms ease,filter 260ms ease;
}
@media (hover:hover){
	.dsp-animation-hover-lift .card:hover,
	.dsp-animation-hover-lift .service-card:hover,
	.dsp-animation-hover-lift .portfolio-card:hover,
	.dsp-animation-hover-lift .testimonial-card:hover,
	.dsp-animation-hover-lift .product:hover,
	.dsp-animation-hover-lift article:hover{transform:translateY(-6px);}
	.dsp-animation-hover-zoom .card:hover,
	.dsp-animation-hover-zoom .service-card:hover,
	.dsp-animation-hover-zoom .portfolio-card:hover,
	.dsp-animation-hover-zoom .testimonial-card:hover,
	.dsp-animation-hover-zoom .product:hover{transform:scale(1.025);}
	.dsp-animation-hover-glow .card:hover,
	.dsp-animation-hover-glow .service-card:hover,
	.dsp-animation-hover-glow .portfolio-card:hover,
	.dsp-animation-hover-glow .testimonial-card:hover{box-shadow:0 24px 70px rgba(15,23,42,.16);}
	.dsp-animation-hover-tilt .card:hover,
	.dsp-animation-hover-tilt .service-card:hover,
	.dsp-animation-hover-tilt .portfolio-card:hover,
	.dsp-animation-hover-tilt .testimonial-card:hover{transform:perspective(900px) rotateX(2deg) rotateY(-2deg) translateY(-4px);}
}
.dsp-animation-button-lift .button,
.dsp-animation-button-lift button,
.dsp-animation-button-lift input[type="submit"],
.dsp-animation-button-lift .wp-block-button__link,
.dsp-animation-button-shine .button,
.dsp-animation-button-shine button,
.dsp-animation-button-shine input[type="submit"],
.dsp-animation-button-shine .wp-block-button__link,
.dsp-animation-button-pulse .button,
.dsp-animation-button-pulse button,
.dsp-animation-button-pulse input[type="submit"],
.dsp-animation-button-pulse .wp-block-button__link,
.dsp-animation-button-outline .button,
.dsp-animation-button-outline button,
.dsp-animation-button-outline input[type="submit"],
.dsp-animation-button-outline .wp-block-button__link{position:relative;overflow:hidden;transition:transform 220ms ease,box-shadow 220ms ease,background 220ms ease,color 220ms ease;}
@media (hover:hover){
	.dsp-animation-button-lift .button:hover,
	.dsp-animation-button-lift button:hover,
	.dsp-animation-button-lift input[type="submit"]:hover,
	.dsp-animation-button-lift .wp-block-button__link:hover{transform:translateY(-2px);}
	.dsp-animation-button-pulse .button:hover,
	.dsp-animation-button-pulse button:hover,
	.dsp-animation-button-pulse input[type="submit"]:hover,
	.dsp-animation-button-pulse .wp-block-button__link:hover{animation:dsp-button-pulse 900ms ease both;}
}
.dsp-animation-button-shine .button::after,
.dsp-animation-button-shine button::after,
.dsp-animation-button-shine input[type="submit"]::after,
.dsp-animation-button-shine .wp-block-button__link::after{content:"";position:absolute;top:-40%;left:-80%;width:50%;height:180%;transform:rotate(24deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.36),transparent);transition:left 650ms ease;pointer-events:none;}
@media (hover:hover){.dsp-animation-button-shine .button:hover::after,.dsp-animation-button-shine button:hover::after,.dsp-animation-button-shine input[type="submit"]:hover::after,.dsp-animation-button-shine .wp-block-button__link:hover::after{left:125%;}}
@keyframes dsp-button-pulse{0%{box-shadow:0 0 0 0 rgba(15,23,42,.22);}100%{box-shadow:0 0 0 18px rgba(15,23,42,0);}}
.dsp-animation-hero-premium-rise .hero,
.dsp-animation-hero-premium-rise .dsp-hero,
.dsp-animation-hero-premium-rise .site-hero{animation:dsp-hero-rise 800ms var(--dsp-animation-ease,cubic-bezier(.2,.8,.2,1)) both;}
.dsp-animation-hero-cinematic .hero,
.dsp-animation-hero-cinematic .dsp-hero,
.dsp-animation-hero-cinematic .site-hero{animation:dsp-hero-cinematic 1100ms ease both;}
.dsp-animation-hero-zoom-focus .hero,
.dsp-animation-hero-zoom-focus .dsp-hero,
.dsp-animation-hero-zoom-focus .site-hero{animation:dsp-hero-zoom 900ms ease both;}
@keyframes dsp-hero-rise{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:none;}}
@keyframes dsp-hero-cinematic{from{opacity:0;filter:blur(8px);}to{opacity:1;filter:none;}}
@keyframes dsp-hero-zoom{from{opacity:0;transform:scale(.98);}to{opacity:1;transform:none;}}
.dsp-animation-menu-fade .sub-menu,
.dsp-animation-menu-fade .dsp-mega-menu-panel{transition:opacity 180ms ease;}
.dsp-animation-menu-fade-slide .sub-menu,
.dsp-animation-menu-fade-slide .dsp-mega-menu-panel{transition:opacity 200ms ease,transform 200ms ease;transform-origin:top center;}
.dsp-animation-menu-scale .sub-menu,
.dsp-animation-menu-scale .dsp-mega-menu-panel{transition:opacity 200ms ease,transform 200ms ease;transform-origin:top center;}
@media (prefers-reduced-motion:reduce){
	.dsp-animation-engine-enabled *,
	.dsp-animation-engine-enabled *::before,
	.dsp-animation-engine-enabled *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important;}
	.dsp-animation-engine-enabled [data-dsp-animate]{opacity:1!important;transform:none!important;}
}
