/**
 * New Media Animation (NMA) — Site-Wide Ambient Motion & Creative Animation Engine
 * Continuous, smooth 60fps GPU-accelerated ambient movement across the ENTIRE frontend website.
 */

/* ==========================================================================
   1. GLOBAL KEYFRAME ANIMATIONS (जो हमेशा अपने आप चलती रहती हैं)
   ========================================================================== */

/* 1.1 Smooth Vertical Floating Bob (Hero badges, Floating chips, Tags) */
@keyframes nmaAmbientFloat {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}

/* 1.2 Gentle Breathing Drift (Decorative Hero Cards & Stat Badges) */
@keyframes nmaHeroDrift {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(-7px) rotate(0.8deg);
  }
}

/* 1.3 3D Icon Breathing & Hover Tilt */
@keyframes nmaFloat3d {
  0%, 100% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(-5px) scale(1.025);
  }
}

/* 1.4 Live Status Pulsing Dot (Placement Live Status, Hiring Tags) */
@keyframes nmaLivePulse {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(225, 29, 72, 0.65);
  }
  50% {
    transform: scale(1.22);
    box-shadow: 0 0 0 7px rgba(225, 29, 72, 0);
  }
}

/* 1.5 Star Twinkling Sparkle (Ratings, Accreditations) */
@keyframes nmaStarSparkle {
  0%, 100% {
    transform: scale(1) rotate(0deg);
    filter: drop-shadow(0 0 0px #F59E0B);
  }
  50% {
    transform: scale(1.25) rotate(10deg);
    filter: drop-shadow(0 0 5px #F59E0B);
  }
}

/* 1.6 Avatar Ring Breathing Warm Glow (Faculty Mentors & Placed Students) */
@keyframes nmaAvatarBreathing {
  0%, 100% {
    box-shadow: 0 6px 18px rgba(245, 158, 11, 0.35), 0 0 0 2px rgba(225, 29, 72, 0.2);
  }
  50% {
    box-shadow: 0 9px 24px rgba(225, 29, 72, 0.38), 0 0 0 3.5px rgba(255, 201, 40, 0.55);
  }
}

/* 1.7 Accent Rail Gradient Shimmer (Top of Cards & Slabs) */
@keyframes nmaRailShimmer {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* 1.8 Headline Text Gradient Shimmer */
@keyframes nmaHeadlineShimmer {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* 1.9 Concentric Play Button Pulse Rings (Showreel Video) */
@keyframes nmaPlayPulse {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(225, 29, 72, 0.7);
  }
  70% {
    transform: scale(1.05);
    box-shadow: 0 0 0 16px rgba(225, 29, 72, 0);
  }
  100% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(225, 29, 72, 0);
  }
}

/* 1.10 WhatsApp Button Expanding Pulse Ring */
@keyframes nmaPulseWhatsapp {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.55);
  }
  70% {
    box-shadow: 0 0 0 12px rgba(34, 197, 94, 0);
  }
}

/* 1.11 Ambient Light Sheen Wave across Buttons */
@keyframes nmaSheenSweep {
  0% {
    transform: translateX(-150%) skewX(-20deg);
  }
  20%, 100% {
    transform: translateX(250%) skewX(-20deg);
  }
}

/* 1.12 Gentle Icon Floating & Breathing Scale */
@keyframes nmaFeatureIconFloat {
  0%, 100% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(-4px) scale(1.04);
  }
}


/* ==========================================================================
   2. SITE-WIDE SECTION-BY-SECTION AMBIENT ANIMATIONS
   ========================================================================== */

/* 2.1 Announcement Bar: Continuous Live Pulse & Gradient Shimmer */
.announcement-bar,
.top-announcement-bar {
  position: relative;
  overflow: hidden;
}
.announcement-dot,
.live-indicator-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22C55E;
  animation: nmaLivePulse 1.8s ease-in-out infinite !important;
}

/* 2.2 Header & Navigation Bar */
.brand-logo-img,
.site-logo {
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.site-logo:hover .brand-logo-img {
  transform: scale(1.04) translateY(-1px) !important;
}
.nav-hiring-pulse,
.nav-badge-pulse,
.btn-nav-admissions {
  animation: nmaLivePulse 2.2s ease-in-out infinite !important;
}

/* 2.3 Hero Section: Headline, Floating Badges, Stats & CTA Sheen */
.hero-tag-badge,
.hero-pill-badge,
.section-tag,
.hero-kicker-badge {
  display: inline-flex !important;
  align-items: center !important;
  animation: nmaAmbientFloat 3.5s ease-in-out infinite !important;
}

/* Hero Main Title Gradient Shimmer */
.hero-headline-gradient,
.hero-gradient-text {
  background: linear-gradient(135deg, #0F172A 0%, #E11D48 45%, #F59E0B 75%, #0F172A 100%);
  background-size: 250% 250%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: nmaHeadlineShimmer 7s ease-in-out infinite !important;
}

/* Hero Stats Badges / Floating Info Pills */
.hero-stat-card,
.stat-counter-badge,
.hero-floating-card {
  animation: nmaHeroDrift 4s ease-in-out infinite !important;
}

/* Hero CTA Button Ambient Sheen Wave */
.hero-btn-explore,
.btn-hero-primary {
  position: relative !important;
  overflow: hidden !important;
}
.hero-btn-explore::before,
.btn-hero-primary::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 40% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.35), transparent) !important;
  animation: nmaSheenSweep 4.5s ease-in-out infinite !important;
  pointer-events: none !important;
}

/* 2.4 Why Choose NMA / Features Grid */
.feature-card,
.benefit-card {
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease, border-color 0.25s ease !important;
}
.feature-card:hover,
.benefit-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 36px -8px rgba(0, 0, 0, 0.12), 0 0 0 1.5px #E11D48 !important;
}
.feature-icon-box,
.feature-icon,
.benefit-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  animation: nmaFeatureIconFloat 3.5s ease-in-out infinite !important;
  transition: transform 0.3s ease !important;
}
.feature-card:hover .feature-icon-box {
  transform: scale(1.12) rotate(3deg) !important;
}

/* 2.5 Video Showreel Section */
.showreel-play-btn,
.video-play-button {
  animation: nmaPlayPulse 2.2s cubic-bezier(0.4, 0, 0.6, 1) infinite !important;
}
.showreel-player-card,
.showreel-video-container {
  transition: transform 0.35s ease, box-shadow 0.35s ease !important;
}
.showreel-video-container:hover {
  transform: scale(1.015) !important;
  box-shadow: 0 20px 48px -10px rgba(225, 29, 72, 0.25) !important;
}

/* 2.6 Course Cards: Automatic Ambient Float & Guaranteed Red Hover */
.course-code-floating-chip {
  animation: nmaAmbientFloat 3.2s ease-in-out infinite !important;
}
.course-3d-icon {
  animation: nmaFloat3d 4s ease-in-out infinite !important;
}
.course-rating-pill .rating-star {
  animation: nmaStarSparkle 2.5s ease-in-out infinite !important;
}
.course-card-accent-rail {
  animation: nmaRailShimmer 4s ease infinite !important;
}

/* Guaranteed Title Red Hover for Course Cards */
.course-card:hover .course-card-title,
.course-card[data-color-theme]:hover .course-card-title,
.course-card .course-card-title:hover,
.course-card-title:hover {
  color: #E11D48 !important;
  text-shadow: 0 2px 8px rgba(225, 29, 72, 0.22) !important;
}

/* 2.7 Faculty Mentors Section */
.trainer-avatar-wrap {
  animation: nmaAvatarBreathing 3.5s ease-in-out infinite !important;
}
.trainer-card:hover .trainer-name {
  color: #E11D48 !important;
}
.trainer-exp-badge svg {
  animation: nmaStarSparkle 2.5s ease-in-out infinite !important;
}

/* 2.8 Placement Cards Section */
.nma-placement-card .status-pulse-dot {
  animation: nmaLivePulse 1.8s ease-in-out infinite !important;
}
.nma-placement-card .placement-avatar-ring {
  animation: nmaAvatarBreathing 3.5s ease-in-out infinite !important;
}
.nma-placement-card:hover .placement-student-name {
  color: #E11D48 !important;
}

/* 2.9 Floating WhatsApp & Floating Action Triggers */
.floating-whatsapp-btn,
.nma-whatsapp-float,
.wa-float-badge {
  animation: nmaPulseWhatsapp 2s infinite !important;
}

/* 2.10 Footer & Global Buttons */
.footer-social-btn,
.social-icon-link {
  transition: transform 0.25s ease, background-color 0.25s ease !important;
}
.footer-social-btn:hover,
.social-icon-link:hover {
  transform: translateY(-4px) scale(1.1) !important;
  color: #E11D48 !important;
}

.btn-primary:hover svg,
.btn-secondary:hover svg,
.explore-action-btn:hover svg,
.course-curriculum-btn:hover .btn-arrow-circle {
  transform: translateX(4px);
  transition: transform 0.2s ease;
}

/* Accessibility: Respect user's motion preferences */
@media (prefers-reduced-motion: reduce) {
  *, ::before, ::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
