/* === ELEVANA DESKTOP + HERO FINAL v5 === */

/* 1. Container — responsive desktop scaling */
@media (min-width: 768px) {
  .elevana-fullpage { max-width: 860px !important; }
}
@media (min-width: 1100px) {
  .elevana-fullpage { max-width: 1100px !important; }
}
@media (min-width: 1400px) {
  .elevana-fullpage { max-width: 1380px !important; }
}

/* 2. Hero — clean solid blue gradient, no tile pattern */
.hero {
  background-color: #1565c0 !important;
  background-image: linear-gradient(135deg, #0a2f6e 0%, #1565c0 50%, #1e88e5 100%) !important;
  background-size: 100% 100% !important;
  background-repeat: no-repeat !important;
}

/* 3. Hero H1 — bold white text, dark-blue frosted card */
.hero h1 {
  color: #ffffff !important;
  text-shadow: none !important;
  background: rgba(3, 15, 60, 0.60) !important;
  border-radius: 14px !important;
  padding: 24px 32px !important;
}

/* 4. Hero H1 span — sky blue sub-heading */
.hero h1 span {
  color: #bbdefb !important;
  text-shadow: none !important;
  background: transparent !important;
  display: block !important;
  font-size: 0.78em !important;
  margin-top: 10px !important;
}

/* 5. Hero paragraph — white text */
.hero > p {
  color: #ffffff !important;
}

/* 6. Hero padding on wide screens */
@media (min-width: 900px) {
  .hero { padding: 80px 60px 100px !important; }
}
@media (min-width: 1200px) {
  .hero { padding: 100px 100px 120px !important; }
}

/* 7. Highlights — 4 columns on desktop */
@media (min-width: 900px) {
  .highlights > .aos-init,
  .highlights > div[class*="aos"] {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
  }
}

/* 8. Wider padding on large screens */
@media (min-width: 1100px) {
  .testimonials, .cases, .blog-preview, .featured-in {
    padding-left: 60px !important; padding-right: 60px !important;
  }
  .metrics { padding: 50px 60px !important; }
}

/* 9. No horizontal overflow */
html, body { overflow-x: hidden !important; max-width: 100vw !important; }


/* 10. Fix: Override transparent webkit text fill from gradient-text effect */
.hero h1 {
  -webkit-text-fill-color: #ffffff !important;
}
.hero h1 span {
  -webkit-text-fill-color: #bbdefb !important;
}

/* =====================================================
   ELEVANA SITE-WIDE RESPONSIVE CSS
   Mobile (≤480px) | Tablet (≤768px) | Laptop (≤1024px)
   ===================================================== */

/* ── Global mobile resets ── */
@media (max-width: 768px) {
  img { max-width: 100%; height: auto; }
  .wp-block-columns { flex-wrap: wrap !important; }
  .wp-block-column { flex-basis: 100% !important; width: 100% !important; }
  table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  iframe { max-width: 100%; }
}

/* ── Theme header responsive ── */
@media (max-width: 768px) {
  #elite-header .elite-nav-wrap,
  .elite-menu-wrap, .elite-main-nav { display: none !important; }
  #elite-header { padding: 0 16px !important; }
  .elite-logo img { height: 52px !important; }
  .elite-mobile-menu-btn { display: block !important; }
}

/* ── PRO Communicator page responsive ── */
@media (max-width: 1024px) {
  #pro-page { --pad-x: 40px; }
  #pro-hero { padding: 70px var(--pad-x) 60px; }
}
@media (max-width: 768px) {
  #pro-page { --pad-x: 20px; --max-w: 100%; }
  #pro-hero { padding: 48px 20px 40px; }
  #pro-hero .pro-logo { height: 110px !important; }
  #pro-hero h1 { font-size: clamp(1.8rem, 6vw, 2.6rem) !important; }
  #pro-hero .hero-sub { font-size: 1rem !important; }
  .pro-hero-btns { flex-direction: column; align-items: center; gap: 12px; }
  .pro-btn-gold, .pro-btn-outline { width: 100%; max-width: 320px; text-align: center; }
  .pro-stats { grid-template-columns: repeat(2, 1fr) !important; gap: 1px !important; }
  .pro-who-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
  .pro-curriculum-grid { grid-template-columns: 1fr !important; }
  .pro-outcomes-grid { grid-template-columns: 1fr !important; }
  .pro-pricing-cards { flex-direction: column !important; align-items: center !important; }
  .pro-pricing-card { width: 100% !important; max-width: 380px !important; }
  .pro-section { padding: 48px 20px !important; }
  .pro-section-inner { padding: 0 !important; }
}
@media (max-width: 480px) {
  #pro-hero { padding: 36px 16px 32px; }
  #pro-hero .pro-logo { height: 80px !important; }
  #pro-hero h1 { font-size: 1.7rem !important; }
  .pro-stats { grid-template-columns: repeat(2, 1fr) !important; }
  .pro-stat-num { font-size: 2rem !important; }
  .pro-faq-q { font-size: 0.9rem !important; padding: 14px 16px !important; }
  #pro-page { --pad-x: 16px; }
}

/* ── Chatbot widget responsive ── */
@media (max-width: 480px) {
  #elv-window { 
    width: calc(100vw - 24px) !important; 
    right: 12px !important;
    bottom: 80px !important;
    max-height: 70vh !important;
    border-radius: 16px !important;
  }
  #elv-toggle { right: 12px !important; bottom: 12px !important; }
  #elv-hint { right: 12px !important; bottom: 80px !important; max-width: calc(100vw - 40px) !important; }
}

/* ── Homepage / general pages responsive ── */
@media (max-width: 768px) {
  .elevana-hero, .hero-section, [class*="hero"] { padding: 40px 16px !important; }
  .elevana-section, [class*="section"] { padding: 40px 20px !important; }
  h1 { font-size: clamp(1.8rem, 6vw, 2.4rem) !important; }
  h2 { font-size: clamp(1.4rem, 5vw, 2rem) !important; }
  h3 { font-size: clamp(1.1rem, 4vw, 1.5rem) !important; }
  .wp-block-group { padding-left: 16px !important; padding-right: 16px !important; }
  .is-layout-flex { flex-wrap: wrap !important; }
}
@media (max-width: 480px) {
  body { font-size: 15px !important; }
  .wp-block-cover { min-height: 50vh !important; }
  .wp-block-button__link { padding: 12px 24px !important; font-size: 0.9rem !important; }
}

/* ELEVANA CHATBOT — Premium Navy/Gold (site-wide, exact PRO Communicator match) */
@keyframes chatPulse{0%,100%{box-shadow:0 4px 20px rgba(201,168,76,.3)}50%{box-shadow:0 8px 30px rgba(201,168,76,.5)}}
@keyframes avatarGlow{0%,100%{box-shadow:0 0 8px rgba(201,168,76,.3)}50%{box-shadow:0 0 20px rgba(201,168,76,.7)}}
@keyframes coinShine{
0%,100%{transform:rotateY(0deg);filter:brightness(1.0) drop-shadow(0 0 4px rgba(201,168,76,.2))}
25%{transform:rotateY(65deg);filter:brightness(1.6) drop-shadow(0 0 18px rgba(201,168,76,1))}
50%{transform:rotateY(0deg);filter:brightness(1.0) drop-shadow(0 0 4px rgba(201,168,76,.2))}
75%{transform:rotateY(-65deg);filter:brightness(1.6) drop-shadow(0 0 18px rgba(201,168,76,1))}}
#elv-toggle{background:linear-gradient(135deg,#0c1b33 0%,#1a4c8b 100%)!important;border:2px solid rgba(201,168,76,.6)!important;border-radius:50px!important;animation:chatPulse 2.5s ease-in-out infinite!important}
#elv-avatar{border:2px solid rgba(201,168,76,.5)!important;border-radius:50%!important;background:#fff!important;overflow:hidden!important;animation:avatarGlow 3s ease-in-out infinite!important;padding:2px!important}
#elv-avatar img{animation:coinShine 2.8s ease-in-out infinite!important;transform-origin:center!important;transform-style:preserve-3d!important}
#elv-window{background:#0a1628!important;border:1px solid rgba(201,168,76,.3)!important;border-radius:20px!important;box-shadow:0 24px 80px rgba(0,0,0,.6)!important;overflow:hidden!important}
#elv-header{background:linear-gradient(135deg,#0c1b33 0%,#1a3a6b 100%)!important;border-bottom:1px solid rgba(201,168,76,.25)!important;padding:16px 18px!important}
#elv-hname{color:#fff!important;font-weight:700!important;font-size:.98rem!important}
#elv-hstatus{color:rgba(201,168,76,.85)!important;font-size:.78rem!important}
#elv-msgs{background:#0a1628!important;padding:16px!important}
#elv-input-row{background:#0d1e38!important;border-top:1px solid rgba(201,168,76,.12)!important;padding:12px 14px!important}
#elv-input{background:rgba(255,255,255,.06)!important;border:1px solid rgba(201,168,76,.25)!important;border-radius:24px!important;color:rgba(255,255,255,.9)!important;padding:10px 16px!important}
#elv-input::placeholder{color:rgba(255,255,255,.4)!important}
#elv-send{background:linear-gradient(135deg,#c9a84c 0%,#d9b860 100%)!important;border-radius:50%!important;border:none!important;color:#0c1b33!important;min-width:40px!important;min-height:40px!important}
#elv-footer{background:#080f1e!important;border-top:1px solid rgba(201,168,76,.12)!important;color:rgba(255,255,255,.3)!important;font-size:.72rem!important;text-align:center!important;padding:8px!important}
#elv-footer a{color:rgba(201,168,76,.6)!important}
#elv-hint{background:linear-gradient(135deg,#0c1b33 0%,#0f2044 100%)!important;border:1px solid rgba(201,168,76,.45)!important;color:rgba(255,255,255,.92)!important;border-radius:16px 16px 4px 16px!important;padding:14px 18px!important;box-shadow:0 4px 20px rgba(0,0,0,.4)!important}
.elv-bubble{background:linear-gradient(135deg,#0f2044 0%,#1a3a6b 100%)!important;color:rgba(255,255,255,.92)!important;border:1px solid rgba(201,168,76,.2)!important;border-radius:4px 16px 16px 16px!important}
.elv-btn,.green-btn{background:rgba(201,168,76,.1)!important;color:rgb(240,223,160)!important;border:1px solid rgba(201,168,76,.4)!important;border-radius:8px!important;padding:8px 14px!important;font-weight:600!important}
.elv-btn:hover,.green-btn:hover{background:rgba(201,168,76,.2)!important;border-color:rgba(201,168,76,.7)!important;color:#fff!important}

/* ── HERO PREMIUM ANIMATED BACKGROUND (GLOBAL) ── */
@keyframes elvAurora{
  0%{opacity:.5;transform:scale(1) translateY(0)}
  50%{opacity:1;transform:scale(1.07) translateY(-12px)}
  100%{opacity:.6;transform:scale(1.03) translateY(5px)}
}
@keyframes elvShimmer{
  0%{background-position:200% center}
  100%{background-position:-100% center}
}
@keyframes elvPulse{
  0%,100%{box-shadow:0 0 60px rgba(201,168,76,.08),inset 0 0 120px rgba(10,22,60,.6)}
  50%{box-shadow:0 0 110px rgba(201,168,76,.22),inset 0 0 200px rgba(10,22,60,.9),0 0 55px rgba(26,74,180,.15)}
}
@keyframes elvStars{
  0%,100%{opacity:.35}
  50%{opacity:.85}
}
section.hero{
  background:radial-gradient(ellipse 120% 80% at 50% 0%,#0d2a5c 0%,#020d2e 60%,#010818 100%)!important;
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(201,168,76,.2)!important;
  animation:elvPulse 7s ease-in-out infinite!important
}
section.hero::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  background:
    /* Aurora glow layers */
    radial-gradient(ellipse 70% 55% at 50% 5%,rgba(26,74,180,.58) 0%,transparent 65%),
    radial-gradient(ellipse 38% 28% at 8% 62%,rgba(201,168,76,.16) 0%,transparent 55%),
    radial-gradient(ellipse 38% 28% at 92% 38%,rgba(201,168,76,.16) 0%,transparent 55%),
    radial-gradient(ellipse 25% 18% at 65% 82%,rgba(100,160,255,.1) 0%,transparent 50%),
    /* Gold star particle dots */
    radial-gradient(circle 3px at 18% 22%,rgba(201,168,76,.75) 0%,transparent 80%),
    radial-gradient(circle 2px at 73% 13%,rgba(201,168,76,.7) 0%,transparent 80%),
    radial-gradient(circle 2px at 38% 77%,rgba(201,168,76,.55) 0%,transparent 80%),
    radial-gradient(circle 3px at 84% 64%,rgba(201,168,76,.65) 0%,transparent 80%),
    radial-gradient(circle 2px at 52% 33%,rgba(255,255,255,.45) 0%,transparent 80%),
    radial-gradient(circle 2px at 29% 54%,rgba(130,180,255,.55) 0%,transparent 80%),
    radial-gradient(circle 3px at 61% 69%,rgba(201,168,76,.6) 0%,transparent 80%),
    radial-gradient(circle 2px at 44% 14%,rgba(255,255,255,.5) 0%,transparent 80%),
    radial-gradient(circle 2px at 78% 44%,rgba(201,168,76,.45) 0%,transparent 80%),
    radial-gradient(circle 2px at 12% 73%,rgba(255,255,255,.4) 0%,transparent 80%),
    radial-gradient(circle 2px at 91% 82%,rgba(201,168,76,.5) 0%,transparent 80%),
    radial-gradient(circle 2px at 6% 38%,rgba(130,180,255,.45) 0%,transparent 80%),
    radial-gradient(circle 3px at 56% 88%,rgba(201,168,76,.5) 0%,transparent 80%),
    radial-gradient(circle 2px at 32% 8%,rgba(255,255,255,.55) 0%,transparent 80%),
    radial-gradient(circle 2px at 68% 28%,rgba(201,168,76,.4) 0%,transparent 80%),
    radial-gradient(circle 2px at 22% 88%,rgba(201,168,76,.45) 0%,transparent 80%)!important;
  animation:elvAurora 9s ease-in-out infinite alternate!important;
  pointer-events:none!important
}
.hero-bg-video{
  position:absolute!important;
  top:0!important;left:0!important;
  width:100%!important;height:100%!important;
  z-index:1!important;
  pointer-events:none!important;
  opacity:1!important;
  background:linear-gradient(105deg,transparent 35%,rgba(201,168,76,.07) 45%,rgba(255,220,120,.13) 50%,rgba(201,168,76,.07) 55%,transparent 65%)!important;
  background-size:300% 100%!important;
  animation:elvShimmer 5s linear 1s infinite!important
}
.hero-vid-overlay{display:none!important}
section.hero .hc-slides,section.hero .hc-dots{position:relative!important;z-index:4!important}
section.hero::after{
  position:absolute!important;
  z-index:10!important;
  bottom:0!important;
  top:auto!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  white-space:nowrap!important;
  background:linear-gradient(135deg,#c9a84c 0%,#e8cc6e 40%,#c9a84c 100%)!important;
  color:#0a1628!important;
  font-weight:900!important;
  letter-spacing:.13em!important;
  border-radius:0 0 20px 20px!important;
  padding:11px 36px!important;
  font-size:.83rem!important;
  box-shadow:0 -2px 20px rgba(201,168,76,.5),0 4px 24px rgba(201,168,76,.3)!important;
  text-shadow:0 1px 2px rgba(255,255,255,.2)!important;
  border-top:1px solid rgba(255,255,255,.25)!important;
}
section.hero>p,section.hero h1{position:relative!important;z-index:5!important}
section.hero h1,section.hero .hc-slide h1,section.hero .hc-slide blockquote{color:#fff!important}
.hc-slide p{color:rgba(255,255,255,0.85)!important}
@media(max-width:768px){.hero-bg-video{width:100%!important;height:100%!important}}
/* ── ELV HERO PREMIUM CAROUSEL ── */

/* Hero content wrapper */
.elv-hero-wrap{position:relative;z-index:4;width:100%;display:flex;flex-direction:column;align-items:center;}

/* Slides container — fixed-height so crossfade works without layout jump */
.elv-slides-wrap{
  position:relative;
  width:100%;
  min-height:320px;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* All slides: absolutely stacked, invisible */
.elv-slide{
  position:absolute;
  top:0;left:0;right:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:52px 28px 32px;
  opacity:0;
  transform:translateY(14px);
  transition:opacity 0.9s ease,transform 0.9s ease;
  pointer-events:none;
  will-change:opacity,transform;
  backface-visibility:hidden;
}

/* Active slide: visible */
.elv-slide--on{
  position:relative;
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}

/* Program tag (★ ELEVANA PRO LEADER) */
.elv-prog-tag{
  display:inline-block;
  background:linear-gradient(90deg,#c9a84c 0%,#e8cc6e 50%,#c9a84c 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  font-size:0.78rem;
  font-weight:700;
  letter-spacing:0.25em;
  text-transform:uppercase;
  margin-bottom:18px;
  opacity:0.9;
}

/* Big headline */
.elv-headline{
  font-size:clamp(1.9rem,4.2vw,3.1rem)!important;
  font-weight:900!important;
  line-height:1.08!important;
  color:#fff!important;
  text-transform:uppercase!important;
  margin:0 0 16px!important;
  letter-spacing:0.02em!important;
  text-shadow:0 2px 24px rgba(0,0,0,.55)!important;
}

/* Short punchy tagline */
.elv-tagline{
  font-size:clamp(0.9rem,1.8vw,1.15rem)!important;
  font-weight:400!important;
  color:rgba(220,192,110,0.92)!important;
  letter-spacing:0.18em!important;
  text-transform:uppercase!important;
  margin:0 0 30px!important;
}

/* CTA button row */
.elv-cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

/* Gold primary CTA */
.elv-cta-gold{
  display:inline-flex;align-items:center;justify-content:center;
  padding:13px 30px;
  border-radius:50px;
  background:linear-gradient(135deg,#b8922e 0%,#e8cc6e 45%,#c9a84c 100%);
  color:#0a1628!important;
  font-size:0.83rem;font-weight:800;
  letter-spacing:0.08em;text-transform:uppercase;
  text-decoration:none!important;
  box-shadow:0 4px 22px rgba(201,168,76,.4),0 0 0 1px rgba(201,168,76,.25);
  transition:all 0.3s ease;
  white-space:nowrap;
}
.elv-cta-gold:hover{
  box-shadow:0 6px 32px rgba(201,168,76,.6),0 0 0 1px rgba(201,168,76,.4);
  transform:translateY(-2px);
  color:#0a1628!important;
}

/* Outline secondary CTA */
.elv-cta-outline{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 28px;
  border-radius:50px;
  border:1.5px solid rgba(201,168,76,.55);
  color:rgba(255,255,255,.9)!important;
  background:rgba(201,168,76,.06);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  font-size:0.83rem;font-weight:600;
  letter-spacing:0.06em;text-transform:uppercase;
  text-decoration:none!important;
  transition:all 0.3s ease;
  white-space:nowrap;
}
.elv-cta-outline:hover{
  background:rgba(201,168,76,.16);
  border-color:rgba(201,168,76,.85);
  color:#fff!important;
}

/* Nav dots */
.elv-nav-dots{
  display:flex;gap:10px;justify-content:center;
  position:relative;z-index:5;
  padding:20px 0 32px;
}
.elv-ndot{
  width:9px;height:9px;border-radius:50%;
  background:rgba(255,255,255,.3);
  border:none;cursor:pointer;padding:0;
  transition:all 0.35s ease;
  box-shadow:none;
}
.elv-ndot--on{
  background:#c9a84c;
  width:26px;border-radius:4px;
  box-shadow:0 0 10px rgba(201,168,76,.65);
}

/* Mobile responsive */
@media(max-width:600px){
  .elv-slide{padding:38px 16px 24px;}
  .elv-cta-row{flex-direction:column;align-items:center;}
  .elv-cta-gold,.elv-cta-outline{width:100%;max-width:300px;}
  .elv-slides-wrap{min-height:280px;}
}

/* ── PRO LEADER PAGE — GLOBAL RESPONSIVE ── */
/* Prevent horizontal overflow on all devices */
.page-id-48 body,.page-id-48 .wp-site-blocks,.page-id-48 .entry-content{overflow-x:hidden!important;max-width:100vw!important;}
.page-id-48 .wp-block-post-content{padding:0!important;}
/* Ensure theme wrapper doesn't add excess padding on mobile */
@media(max-width:768px){
  .page-id-48 .wp-block-group{padding-left:0!important;padding-right:0!important;}
  .page-id-48 .wp-site-blocks>*{padding-left:0!important;padding-right:0!important;}
  .page-id-48 iframe{max-width:100%!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important;}
  .page-id-48 .elv-hero h1{font-size:clamp(1.6rem,6vw,2.2rem)!important;}
  .page-id-48 .hero-buttons{flex-direction:column!important;align-items:center!important;}
  .page-id-48 .hero-buttons .btn{width:90%!important;max-width:280px!important;justify-content:center!important;}
}
@media(max-width:480px){
  .page-id-48 iframe{min-height:180px!important;}
  .page-id-48 .program-snapshot,.page-id-48 .framework-grid,.page-id-48 .outcome-grid{grid-template-columns:1fr!important;}
  .page-id-48 .card-grid,.page-id-48 .price-grid{grid-template-columns:1fr!important;}
}

/* ── HOMEPAGE PAGE TITLE: hide ELEVANA heading above hero ── */
.home .wp-block-post-title { display:none!important; }

/* ── HEADER LOGO: make Elevana logo bigger ── */
#elite-header .elite-logo img,
.elite-logo img {
  width:130px!important;
  height:130px!important;
  max-width:130px!important;
  min-width:130px!important;
  object-fit:contain!important;
}

/* ── FOOTER: ensure footer displays on all pages ── */
.elevana-footer { display:block!important; }
/* === PRO CONSULTANT PAGE FIXES === */
.floating-enquire-btn{display:none!important}
.elv-fcols{display:grid!important;grid-template-columns:1.15fr 1fr 1fr 0.9fr!important;gap:22px!important;max-width:1200px!important;margin:0 auto!important}
.elevana-footer .elv-fcol h4{font-size:16px!important;font-weight:700!important;letter-spacing:2px!important;text-transform:uppercase!important;color:rgba(255,255,255,0.92)!important;margin-bottom:16px!important}
.elv-fcol a{color:rgba(255,255,255,0.78)!important;text-decoration:none!important;font-size:14px!important;display:block!important;padding:6px 0!important;transition:color 0.2s!important}
.elv-fcol a:hover{color:#fff!important}
.elv-fbottom{max-width:1200px!important;margin:26px auto 0!important;padding-top:20px!important;border-top:1px solid rgba(255,255,255,0.10)!important;color:rgba(255,255,255,0.62)!important;font-size:0.95rem!important;text-align:center!important}
.elevana-footer{background:radial-gradient(1200px 600px at 20% -10%,rgba(255,255,255,0.10),transparent 60%),#0b1220!important;padding:56px 20px 28px!important}


/* Hide page title on Karka page */
body.page-id-1223 .wp-block-post-title { display: none !important; }

/* === CHATBOT TOGGLE ANIMATION === */
@keyframes ec-pulse-ring {
  0% { box-shadow: 0 0 0 0 rgba(37,99,235,0.5), 0 4px 20px rgba(0,0,0,0.25); }
  70% { box-shadow: 0 0 0 12px rgba(37,99,235,0), 0 6px 24px rgba(0,0,0,0.3); }
  100% { box-shadow: 0 0 0 0 rgba(37,99,235,0), 0 4px 20px rgba(0,0,0,0.25); }
}
@keyframes ec-float {
  0%,100% { transform: translateY(0px); }
  40% { transform: translateY(-7px); }
  70% { transform: translateY(-4px); }
}
@keyframes ec-badge-pop {
  0%,100% { transform: scale(1); }
  50% { transform: scale(1.3); }
}
#ec-toggle {
  animation: ec-pulse-ring 2.4s ease-out infinite, ec-float 5s ease-in-out infinite !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}
#ec-toggle:hover {
  animation: none !important;
  transform: scale(1.06) translateY(-3px) !important;
}
/* Notification badge bounce */
#ec-toggle .ec-unread-badge,
#ec-toggle [class*="unread"],
#ec-toggle [class*="badge"] {
  animation: ec-badge-pop 2s ease-in-out infinite !important;
}

/* === MARGA + KARKA PROGRAMMES STRIP (hero area) === */
.elevana-programmes-strip {
  display: flex;
  justify-content: center;
  gap: 16px;
  padding: 12px 24px 20px;
  background: linear-gradient(135deg, #0a1628 0%, #0d1f3c 100%);
  flex-wrap: wrap;
}
.elevana-prog-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(201,168,76,0.35);
  border-radius: 50px;
  padding: 10px 20px;
  color: #fff;
  text-decoration: none !important;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.3px;
  transition: background 0.25s, border-color 0.25s, transform 0.2s;
  cursor: pointer;
}
.elevana-prog-badge:hover {
  background: rgba(201,168,76,0.15);
  border-color: rgba(201,168,76,0.7);
  transform: translateY(-2px);
  color: #f5d97e !important;
  text-decoration: none !important;
}
.elevana-prog-badge .ep-icon {
  font-size: 18px;
  line-height: 1;
}
.elevana-prog-badge .ep-label strong {
  display: block;
  color: #c9a84c;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.elevana-prog-badge .ep-label span {
  font-size: 12px;
  color: rgba(255,255,255,0.65);
}
.elevana-prog-strip-label {
  width: 100%;
  text-align: center;
  color: rgba(255,255,255,0.45);
  font-size: 11px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 4px;
}