/* animations.css */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(200,16,46,.4)}70%{box-shadow:0 0 0 12px rgba(200,16,46,0)}}
@keyframes slideIn{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@keyframes laserBeam{0%{transform:scaleX(0);opacity:1}100%{transform:scaleX(1);opacity:0}}

.animate-fade-up{animation:fadeUp .6s ease both}
.animate-fade-up--1{animation-delay:.1s}
.animate-fade-up--2{animation-delay:.2s}
.animate-fade-up--3{animation-delay:.3s}
.animate-fade-up--4{animation-delay:.4s}

/* Scroll-triggered */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* Laser line animation on hero */
.laser-line{position:absolute;top:50%;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--clr-red),transparent);animation:pulse 3s infinite;pointer-events:none;opacity:.3}

/* WhatsApp float pulse */
.whatsapp-float__icon{animation:pulse 2.5s infinite}

/* Card hover glow */
.product-card::before{content:'';position:absolute;inset:0;border-radius:inherit;opacity:0;background:linear-gradient(135deg,rgba(200,16,46,.08),transparent);transition:opacity .3s ease;pointer-events:none}
.product-card{position:relative}
.product-card:hover::before{opacity:1}

/* Skeleton loader */
.skeleton{background:linear-gradient(90deg,var(--clr-mid) 25%,var(--clr-border) 50%,var(--clr-mid) 75%);background-size:200% 100%;animation:skeleton-wave 1.5s infinite}
@keyframes skeleton-wave{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* Page transition */
.page-transition{animation:fadeIn .4s ease}
