/* ============================================================
   JAMMU LOGISTICS — ANIMATIONS CSS (Safe & High Performance)
   Scroll animations, hover effects, micro-interactions
   ============================================================ */

/* Safe & instant visibility: elements are ALWAYS visible */
[data-animate] {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
  transition: opacity 0.4s ease, transform 0.4s ease;
}

/* In Elementor Editor, Preview, and Frontend, ensure 100% visibility */
.elementor-editor-active [data-animate],
.elementor-editor-preview [data-animate],
.elementor-edit-area [data-animate],
.elementor [data-animate],
[data-animate].is-visible {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

/* ---- Hero entrance animation ---- */
.hero-headline {
  animation: heroIn 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.05s both;
}

.hero-subtext {
  animation: heroIn 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.15s both;
}

.hero-ctas {
  animation: heroIn 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.25s both;
}

.hero-trust-chips {
  animation: heroIn 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.35s both;
}

.hero-visual {
  animation: heroVisual 0.9s cubic-bezier(0.16, 1, 0.3, 1) 0.15s both;
}

@keyframes heroIn {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: none; }
}

@keyframes heroVisual {
  from { opacity: 0; transform: translateX(24px) scale(0.98); }
  to   { opacity: 1; transform: none; }
}

/* ---- Pulse for CTA button ---- */
@keyframes pulseCta {
  0%   { box-shadow: 0 0 0 0 hsla(24, 95%, 52%, 0.4); }
  70%  { box-shadow: 0 0 0 12px hsla(24, 95%, 52%, 0); }
  100% { box-shadow: 0 0 0 0 hsla(24, 95%, 52%, 0); }
}

.btn--pulse {
  animation: pulseCta 2s ease-in-out infinite;
}

/* Hover elevations */
.service-card {
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.service-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 16px 32px rgba(15, 23, 42, 0.08);
}
