
body.karuna-conversion #content,body.karuna-conversion .site-content{padding:0;margin:0;background:#fff;}
body.karuna-conversion #content>.ast-container{max-width:none;padding:0;display:block;}
body.karuna-conversion .content-area,body.karuna-conversion .site-main,body.karuna-conversion article.page,body.karuna-conversion .entry-content{margin:0;padding:0;max-width:none;width:100%;border:0;}
body.karuna-conversion .entry-header{display:none;}
:is(.karuna-site,.karuna-site .karuna-container){display:block;--display:block;--flex-direction:row;--container-max-width:none;--width:auto;--min-height:0;--padding-top:0;--padding-right:0;--padding-bottom:0;--padding-left:0;--gap:0;--row-gap:0;--column-gap:0;--margin-top:0;--margin-right:0;--margin-bottom:0;--margin-left:0;flex-shrink:1;flex-grow:0;align-self:auto;min-height:0;min-width:0;width:var(--width,auto);max-width:none;position:relative;margin:0;padding:0;border:0;border-radius:0;background:transparent;}
.karuna-site .elementor-widget.karuna-native-widget,.karuna-site .karuna-native-widget>.elementor-widget-container{display:contents;}
.karuna-site .karuna-native-widget{color:inherit;font:inherit;}
.karuna-site .elementor-widget.karuna-widget-box{display:block;}
.karuna-site .karuna-container.karuna-native-direction{flex-direction:var(--flex-direction);}
.karuna-site .karuna-container.karuna-native-padding{padding:var(--padding-top) var(--padding-right) var(--padding-bottom) var(--padding-left);}
.karuna-site .karuna-container.karuna-native-margin{margin:var(--margin-top) var(--margin-right) var(--margin-bottom) var(--margin-left);}
.karuna-site .karuna-container.karuna-native-width{width:var(--width);}
.karuna-site .elementor-heading-title{font:inherit;color:inherit;line-height:inherit;padding:0;margin:0;}
.karuna-site .elementor-button{font:inherit;color:inherit;background:none;border:0;border-radius:0;box-shadow:none;padding:0;line-height:inherit;fill:currentColor;}
.karuna-site .elementor-button-content-wrapper,.karuna-site .elementor-button-text{display:contents;}
.karuna-site img{max-width:100%;height:auto;}
.karuna-site p{margin:0;}.karuna-site h1,.karuna-site h2,.karuna-site h3,.karuna-site h4{margin:0;padding:0;}
.karuna-site .elementor-widget-image img{display:inline-block;}

/* =============================================
   KARUNA'S 360° ACADEMY — MAIN STYLESHEET
   Brand Color: var(--e-global-color-primary,#372A74) (Deep Purple)
   ============================================= */

:root {
  --primary: var(--e-global-color-primary,#372A74);
  --primary-dark: var(--e-global-color-secondary,#251D55);
  --primary-light: var(--e-global-color-karuna-purple-light,#4D3E9E);
  --gold: var(--e-global-color-accent,#F5A623);
  --gold-light: var(--e-global-color-karuna-gold-light,#FFD166);
  --light: var(--e-global-color-karuna-light,#F8F7FF);
  --gray: var(--e-global-color-karuna-muted,#6B7280);
  --text: var(--e-global-color-text,#2D2D2D);
  --border: rgba(55,42,116,0.15);
  --shadow: 0 20px 60px rgba(55,42,116,0.15);
  --shadow-gold: 0 8px 30px rgba(245,166,35,0.3);
  --radius: 20px;
  --radius-sm: 12px;
  --transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

* { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: var(--e-global-typography-text-font-family,'Plus Jakarta Sans'), sans-serif;
  color: var(--text);
  background: #fff;
  overflow-x: hidden;
  cursor: none;
}

/* Display typography shared across the existing components. */
body.karuna-conversion .hero-title,
body.karuna-conversion .stat-num,
body.karuna-conversion .circle-center,
body.karuna-conversion .section-header h2,
body.karuna-conversion .model-text h2,
body.karuna-conversion .orbit-core-text,
body.karuna-conversion .class-top,
body.karuna-conversion .cta-banner h2,
body.karuna-conversion .page-hero h1,
body.karuna-conversion .about-content h2,
body.karuna-conversion .director-text h3,
body.karuna-conversion .acad-num,
body.karuna-conversion .acad-card h3,
body.karuna-conversion .board-logo,
body.karuna-conversion .learning-intro h2,
body.karuna-conversion .pillar-card h3,
body.karuna-conversion .small-cta h3,
body.karuna-conversion .form-card h2,
body.karuna-conversion .sw-headline,
body.karuna-conversion .contact-info h2,
body.karuna-conversion .contact-info h3,
body.karuna-conversion .map-section h2 { font-family: var(--e-global-typography-primary-font-family,'Playfair Display'), serif; }

/* Shared component declarations; individual rules retain their differences. */
body.karuna-conversion .btn-primary,
body.karuna-conversion .btn-secondary,
body.karuna-conversion .btn-outline,
body.karuna-conversion .btn-white,
body.karuna-conversion .filter-btn {
  font-family: var(--e-global-typography-text-font-family,'Plus Jakarta Sans'), sans-serif;
  cursor: pointer;
  transition: var(--transition);
  border-radius: 50px;
}
body.karuna-conversion .btn-primary,
body.karuna-conversion .btn-secondary,
body.karuna-conversion .btn-white {
  padding: 14px 28px;
  font-size: 0.95rem;
}
body.karuna-conversion .btn-primary,
body.karuna-conversion .btn-secondary,
body.karuna-conversion .btn-outline {
  display: inline-block;
  text-decoration: none;
}
body.karuna-conversion .class-card,
body.karuna-conversion .acad-card,
body.karuna-conversion .pillar-card {
  background: #fff;
  border: 2px solid var(--border);
  border-radius: var(--radius);
  transition: var(--transition);
}
body.karuna-conversion .class-card:hover,
body.karuna-conversion .acad-card:hover,
body.karuna-conversion .pillar-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow);
  border-color: var(--primary);
}
body.karuna-conversion .feature-card,
body.karuna-conversion .form-card,
body.karuna-conversion .testi-card {
  background: #fff;
  border-radius: var(--radius);
  border: 1px solid var(--border);
}
body.karuna-conversion .hero-bg,
body.karuna-conversion .cta-orbs {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
body.karuna-conversion .boards-inner,
body.karuna-conversion .hero-visual,
body.karuna-conversion .hero-circle,
body.karuna-conversion .model-wheel,
body.karuna-conversion .orbit-system,
body.karuna-conversion .orbit-core,
body.karuna-conversion .about-visual,
body.karuna-conversion .about-circle-big,
body.karuna-conversion .testi-avatar,
body.karuna-conversion .testi-controls,
body.karuna-conversion .step-num,
body.karuna-conversion .gal-overlay,
body.karuna-conversion .sw-benefits,
body.karuna-conversion .sw-contact,
body.karuna-conversion .soc-btn,
body.karuna-conversion .map-placeholder,
body.karuna-conversion .footer-socials a {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ===== CUSTOM CURSOR ===== */
body.karuna-conversion .cursor {
  width: 10px; height: 10px;
  background: var(--gold);
  border-radius: 50%;
  position: fixed; top: 0; left: 0;
  pointer-events: none; z-index: 10000;
  transition: transform 0.1s;
}
body.karuna-conversion .cursor-follower {
  width: 30px; height: 30px;
  border: 2px solid var(--primary);
  border-radius: 50%;
  position: fixed; top: 0; left: 0;
  pointer-events: none; z-index: 9999;
  transition: translate 0.15s ease, transform 0.15s ease;
  opacity: 0.6;
}

body:has(:is(a,
body.karuna-conversion button:not(.testi-dot, .lightbox-close), .feature-card, .class-card, .gal-item):hover) .cursor { transform: scale(2); }
body:has(:is(a,
body.karuna-conversion button:not(.testi-dot, .lightbox-close), .feature-card, .class-card, .gal-item):hover) .cursor-follower { transform: scale(1.5); }

/* ===== NAVBAR ===== */
body.karuna-conversion #navbar {
  position: fixed; top: 0; left: 0; right: 0;
  z-index: 1000;
  padding: 0 40px;
  background: rgba(255,255,255,0.95);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 4px 30px rgba(55,42,116,0.1);
  border-bottom: 1px solid var(--border);
  transition: var(--transition);
}
body.karuna-conversion .nav-inner {
  max-width: 1280px; margin: 0 auto;
  display: flex; align-items: center;
  justify-content: space-between;
  height: 72px;
}
body.karuna-conversion .nav-logo {
  display: flex; align-items: center; gap: 10px;
  text-decoration: none;
  font-family: var(--e-global-typography-text-font-family,'Plus Jakarta Sans'), sans-serif;
  font-size: 1rem; color: var(--primary);
  font-weight: 500;
}
body.karuna-conversion .nav-logo strong { color: var(--gold); font-weight: 700; }
body.karuna-conversion .nav-links {
  display: flex; list-style: none; gap: 8px; align-items: center;
}
body.karuna-conversion .nav-links a {
  text-decoration: none;
  color: var(--primary);
  font-size: 0.88rem;
  font-weight: 500;
  padding: 7px 14px;
  border-radius: 8px;
  transition: var(--transition);
  cursor: pointer;
}
body.karuna-conversion .nav-links a:hover { background: var(--light); color: var(--primary-light); }
body.karuna-conversion .nav-links a.nav-cta {
  background: var(--primary);
  color: #fff;
  padding: 8px 18px;
}
body.karuna-conversion .nav-links a.nav-cta:hover { background: var(--primary-light); transform: translateY(-2px); }

body.karuna-conversion .hamburger {
  display: none;
  flex-direction: column; gap: 5px;
  cursor: pointer; padding: 5px;
  background: none;
  border: none;
}
body.karuna-conversion .hamburger:focus {
  outline: none;
}
body.karuna-conversion .hamburger:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 3px;
  border-radius: 4px;
}
body.karuna-conversion .hamburger span {
  width: 24px; height: 2px;
  background: var(--primary);
  border-radius: 2px;
  transition: var(--transition);
}
body.karuna-conversion .mobile-menu {
  display: none;
  flex-direction: column;
  background: #fff;
  padding: 16px;
  border-top: 1px solid var(--border);
  box-shadow: 0 10px 30px rgba(55,42,116,0.1);
}
body.karuna-conversion .mobile-menu.open { display: flex; }
body.karuna-conversion .mobile-menu a {
  text-decoration: none;
  color: var(--primary);
  padding: 12px 16px;
  border-radius: 10px;
  font-weight: 500;
  cursor: pointer;
  transition: var(--transition);
}
body.karuna-conversion .mobile-menu a:hover { background: var(--light); }

/* ===== PAGES ===== */
body.karuna-conversion .karuna-site.page { display: none; min-height: 100vh; }
body.karuna-conversion .karuna-site.page.active { display: block; }

/* ===== HERO ===== */
body.karuna-conversion .hero {
  min-height: 100vh;
  background: var(--primary);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 100px 80px 60px;
  overflow: hidden;
}

body.karuna-conversion .orb {
  position: absolute; border-radius: 50%;
  filter: blur(80px); opacity: 0.3;
  animation: orbFloat 8s ease-in-out infinite;
}
body.karuna-conversion .orb1 { width: 500px; height: 500px; background: var(--primary-light); top: -100px; right: -100px; }
body.karuna-conversion .orb2 { width: 300px; height: 300px; background: var(--gold); bottom: 100px; left: 50px; animation-delay: -3s; }
body.karuna-conversion .orb3 { width: 200px; height: 200px; background: #7B68D4; top: 50%; left: 40%; animation-delay: -5s; }
@keyframes orbFloat {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-30px) scale(1.05); }
}
body.karuna-conversion .grid-lines {
  position: absolute; inset: 0;
  background-image: linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
  background-size: 60px 60px;
}

body.karuna-conversion .hero-content {
  position: relative; z-index: 2;
  max-width: 620px;
  color: #fff;
}
body.karuna-conversion .hero-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(245,166,35,0.15);
  border: 1px solid rgba(245,166,35,0.4);
  color: var(--gold-light);
  padding: 8px 16px;
  border-radius: 50px;
  font-size: 0.85rem; font-weight: 600;
  margin-bottom: 24px;
}
body.karuna-conversion .badge-dot {
  width: 8px; height: 8px;
  background: var(--gold);
  border-radius: 50%;
  animation: pulse 1.5s infinite;
}
@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } }

body.karuna-conversion .hero-title {
  font-size: clamp(3rem, 6vw, 5rem);
  font-weight: 900;
  line-height: 1.05;
  margin-bottom: 24px;
}
body.karuna-conversion .hero-title .line { display: block; overflow: hidden; }
body.karuna-conversion .hero-title .golden { color: var(--gold); }

body.karuna-conversion .hero-sub {
  font-size: 1.1rem; line-height: 1.7;
  color: rgba(255,255,255,0.8);
  margin-bottom: 36px;
  max-width: 500px;
}
body.karuna-conversion .hero-btns {
  display: flex; gap: 16px; flex-wrap: wrap;
  margin-bottom: 48px;
}
body.karuna-conversion .btn-primary {
  background: var(--gold);
  color: var(--primary-dark);
  border: none;

  font-weight: 700;

}
body.karuna-conversion .btn-primary:hover { background: var(--gold-light); transform: translateY(-3px); box-shadow: var(--shadow-gold); }
body.karuna-conversion .btn-primary.pulse { animation: btnPulse 2.5s ease-in-out infinite; }
@keyframes btnPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(245,166,35,0.4); }
  50% { box-shadow: 0 0 0 12px rgba(245,166,35,0); }
}
body.karuna-conversion .btn-secondary {
  background: transparent;
  color: #fff;
  border: 2px solid rgba(255,255,255,0.4);

  font-weight: 600;

    text-align: center;
}
body.karuna-conversion .btn-secondary:hover { border-color: #fff; background: rgba(255,255,255,0.08); transform: translateY(-3px); }

body.karuna-conversion .hero-stats {
  display: flex; align-items: center; gap: 24px;
}
body.karuna-conversion .stat { text-align: center; }
body.karuna-conversion .stat-num { font-size: 2rem; font-weight: 800; color: var(--gold); }
body.karuna-conversion .stat p { font-size: 0.8rem; color: rgba(255,255,255,0.6); margin-top: 4px; }
body.karuna-conversion .stat-divider { width: 1px; height: 40px; background: rgba(255,255,255,0.2); }

body.karuna-conversion .hero-visual {
  position: relative;

  width: 480px; height: 480px;
  flex-shrink: 0;
}
body.karuna-conversion .hero-circle {
  width: 300px; height: 300px;
  border-radius: 50%;
  background: rgba(255,255,255,0.05);

  position: relative;
}
body.karuna-conversion .circle-ring {
  position: absolute; border-radius: 50%;
  border: 2px dashed rgba(245,166,35,0.3);
}
body.karuna-conversion .ring1 { width: 320px; height: 320px; animation: ringRotate 15s linear infinite; }
body.karuna-conversion .ring2 { width: 380px; height: 380px; animation: ringRotate 25s linear infinite reverse; }
@keyframes ringRotate { to { transform: rotate(360deg); } }
body.karuna-conversion .circle-center {
  font-size: 3.5rem; font-weight: 900;
  color: var(--gold);
  text-align: center;
  line-height: 1;
}

body.karuna-conversion .floating-card {
  position: absolute;
  background: rgba(255,255,255,0.12);
  backdrop-filter: blur(15px);
  border: 1px solid rgba(255,255,255,0.2);
  color: #fff;
  padding: 10px 18px;
  border-radius: 50px;
  font-size: 0.85rem; font-weight: 600;
  white-space: nowrap;
}
body.karuna-conversion .card1 { top: 60px; left: -20px; animation: float1 4s ease-in-out infinite; }
body.karuna-conversion .card2 { top: 40%; right: -30px; animation: float2 5s ease-in-out infinite; }
body.karuna-conversion .card3 { bottom: 80px; left: 10px; animation: float1 3.5s ease-in-out infinite reverse; }
@keyframes float1 { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@keyframes float2 { 0%,100% { transform: translateY(0); } 50% { transform: translateY(10px); } }

body.karuna-conversion .scroll-hint {
  position: absolute; bottom: 30px; left: 50%;
  transform: translateX(-50%);
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  color: rgba(255,255,255,0.5); font-size: 0.75rem;
}
body.karuna-conversion .scroll-mouse {
  width: 22px; height: 36px;
  border: 2px solid rgba(255,255,255,0.3);
  border-radius: 12px;
  position: relative;
}
body.karuna-conversion .scroll-mouse::after {
  content: '';
  position: absolute; top: 6px; left: 50%;
  transform: translateX(-50%);
  width: 3px; height: 6px;
  background: var(--gold);
  border-radius: 2px;
  animation: scrollDown 1.5s ease-in-out infinite;
}
@keyframes scrollDown { 0% { top: 6px; opacity: 1; } 100% { top: 20px; opacity: 0; } }

/* ===== BOARDS STRIP ===== */
body.karuna-conversion .boards-strip {
  background: var(--gold);
  padding: 16px 0;
}
body.karuna-conversion .boards-inner {
  max-width: 1280px; margin: 0 auto;
     gap: 20px;
  padding: 0 40px; flex-wrap: wrap;
}
body.karuna-conversion .board-label { font-weight: 700; color: var(--primary-dark); font-size: 0.9rem; }
body.karuna-conversion .board-pills { display: flex; gap: 10px; }
body.karuna-conversion .pill {
  background: var(--primary);
  color: #fff;
  padding: 6px 18px;
  border-radius: 50px;
  font-size: 0.85rem; font-weight: 700;
  letter-spacing: 0.5px;
}

/* ===== SECTIONS ===== */
body.karuna-conversion .section { padding: 100px 0; }
body.karuna-conversion .container { max-width: 1280px; margin: 0 auto; padding: 0 40px; }
body.karuna-conversion .section-header { text-align: center; margin-bottom: 60px; }
body.karuna-conversion .section-tag {
  display: inline-block;
  background: rgba(55,42,116,0.1);
  color: var(--primary);
  padding: 6px 16px;
  border-radius: 50px;
  font-size: 0.8rem; font-weight: 700;
  letter-spacing: 1px; text-transform: uppercase;
  margin-bottom: 14px;
}
body.karuna-conversion .section-header h2 {
  font-size: clamp(2rem, 4vw, 3rem);
  color: var(--primary-dark);
  margin-bottom: 12px;
}
body.karuna-conversion .section-header p { color: var(--gray); font-size: 1.05rem; }
body.karuna-conversion .gold { color: var(--gold); }

/* ===== FEATURES ===== */
body.karuna-conversion .features { background: var(--light); }
body.karuna-conversion .features-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px;
}
body.karuna-conversion .feature-card {

  padding: 36px 28px;
  text-align: center;
  position: relative; overflow: hidden;

  transition: var(--transition);
}
body.karuna-conversion .feature-card:hover { transform: translateY(-8px); box-shadow: var(--shadow); }
body.karuna-conversion .feat-icon { font-size: 2.5rem; margin-bottom: 16px; display: block; }
body.karuna-conversion .feature-card h3 { font-size: 1.1rem; color: var(--primary-dark); margin-bottom: 10px; font-weight: 700; }
body.karuna-conversion .feature-card p { font-size: 0.9rem; color: var(--gray); line-height: 1.6; }
body.karuna-conversion .feat-glow {
  position: absolute; bottom: -50px; right: -50px;
  width: 120px; height: 120px;
  background: var(--gold);
  border-radius: 50%; opacity: 0;
  filter: blur(40px);
  transition: var(--transition);
}
body.karuna-conversion .feature-card:hover .feat-glow { opacity: 0.15; }

/* ===== 360 MODEL ===== */
body.karuna-conversion .model-section { background: #fff; }
body.karuna-conversion .model-layout {
  display: grid; grid-template-columns: 1fr 1fr; gap: 80px;
  align-items: center;
}
body.karuna-conversion .model-text h2 { font-size: 2.5rem; color: var(--primary-dark); margin-bottom: 16px; }
body.karuna-conversion .model-text > p { color: var(--gray); line-height: 1.7; margin-bottom: 32px; }
body.karuna-conversion .model-points { display: flex; flex-direction: column; gap: 20px; margin-bottom: 32px; }
body.karuna-conversion .mp {
  display: flex; gap: 16px; align-items: flex-start;
}
body.karuna-conversion .mp > span { font-size: 1.5rem; flex-shrink: 0; }
body.karuna-conversion .mp strong { display: block; color: var(--primary-dark); font-weight: 600; margin-bottom: 4px; }
body.karuna-conversion .mp p { color: var(--gray); font-size: 0.9rem; }/* ===== ORBIT ANIMATION ===== */

body.karuna-conversion .orbit-system {
  position: relative;
  width: 380px; height: 380px;

}
body.karuna-conversion .orbit-core {
  position: relative; z-index: 10;
  width: 120px; height: 120px;
  background: var(--primary);
  border-radius: 50%;
   flex-direction: column;

  box-shadow: 0 0 0 12px rgba(55,42,116,0.12), 0 0 60px rgba(55,42,116,0.3);
}
body.karuna-conversion .orbit-core-glow {
  position: absolute; inset: -20px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(55,42,116,0.3) 0%, transparent 70%);
  animation: coreGlow 3s ease-in-out infinite;
}
@keyframes coreGlow {
  0%, 100% { transform: scale(1); opacity: 0.7; }
  50% { transform: scale(1.15); opacity: 1; }
}
body.karuna-conversion .orbit-core-text {
  font-size: 1.6rem; font-weight: 900;
  color: var(--gold); line-height: 1;
}
body.karuna-conversion .orbit-core small { font-size: 0.65rem; color: rgba(255,255,255,0.7); font-weight: 600; letter-spacing: 1px; text-transform: uppercase; }

body.karuna-conversion .orbit-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1.5px dashed rgba(55,42,116,0.2);
}
body.karuna-conversion .orbit-ring-1 { inset: 60px; animation: orbitSpin 8s linear infinite; }
body.karuna-conversion .orbit-ring-2 { inset: 30px; animation: orbitSpin 12s linear infinite reverse; }
body.karuna-conversion .orbit-ring-3 { inset: 8px; animation: orbitSpin 16s linear infinite; }
body.karuna-conversion .orbit-ring-4 { inset: -10px; animation: orbitSpin 10s linear infinite reverse; }
@keyframes orbitSpin { to { transform: rotate(360deg); } }

body.karuna-conversion .orbit-planet {
  position: absolute;
  top: -22px; left: 50%;
  transform: translateX(-50%);
  display: flex; flex-direction: column; align-items: center; gap: 4px;
}
body.karuna-conversion .orbit-planet .planet-icon {
  width: 44px; height: 44px;
  background: #fff;
  border-radius: 50%;
  border: 2px solid var(--border);
  box-shadow: 0 4px 20px rgba(55,42,116,0.15);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem;
  animation: orbitSpin 8s linear infinite reverse;
}
body.karuna-conversion .orbit-ring-2 .planet-icon { animation-duration: 12s; }
body.karuna-conversion .orbit-ring-3 .planet-icon { animation-duration: 16s; }
body.karuna-conversion .orbit-ring-4 .planet-icon { animation-duration: 10s; }
body.karuna-conversion .planet-label {
  font-size: 0.68rem; font-weight: 700;
  color: var(--primary);
  text-transform: uppercase; letter-spacing: 0.5px;
  background: #fff;
  padding: 2px 8px;
  border-radius: 50px;
  border: 1px solid var(--border);
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(55,42,116,0.1);
  animation: orbitSpin 8s linear infinite reverse;
}
body.karuna-conversion .orbit-ring-2 .planet-label { animation-duration: 12s; }
body.karuna-conversion .orbit-ring-3 .planet-label { animation-duration: 16s; }
body.karuna-conversion .orbit-ring-4 .planet-label { animation-duration: 10s; }

/* ===== CLASS CARDS ===== */
body.karuna-conversion .classes-section { background: var(--light); }
body.karuna-conversion .class-cards {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px;
  align-items: stretch;
}
body.karuna-conversion .class-card {

  padding: 32px; display: flex; flex-direction: column;
  gap: 20px;
  position: relative;
}

body.karuna-conversion .class-top {
  font-size: 1.4rem; font-weight: 700;
  color: var(--primary-dark);
  line-height: 1.3;
}
body.karuna-conversion .class-top small { font-size: 0.85rem; font-weight: 500; opacity: 0.7; font-family: var(--e-global-typography-text-font-family,'Plus Jakarta Sans'), sans-serif; }
body.karuna-conversion .class-body { flex: 1; }
body.karuna-conversion .class-cat {
  font-size: 0.78rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 1px;
  color: var(--gold); margin-bottom: 6px; margin-top: 14px;
}
body.karuna-conversion .class-card p { font-size: 0.9rem; color: var(--gray); }
body.karuna-conversion .btn-outline {
  background: transparent;
  border: 2px solid var(--primary);
  color: var(--primary);
  padding: 12px 24px;

  font-size: 0.9rem; font-weight: 600;

  text-align: center;

}
body.karuna-conversion .btn-outline:hover { background: var(--primary); color: #fff; }

/* ===== SKILLS ===== */
body.karuna-conversion .skills-section { background: var(--primary); }
body.karuna-conversion .skills-section .section-tag { background: rgba(245,166,35,0.15); color: var(--gold-light); }
body.karuna-conversion .skills-section .section-header h2 { color: #fff; }
body.karuna-conversion .skills-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px;
}
body.karuna-conversion .skill-item {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--radius);
  padding: 32px 24px;
  text-align: center;
  transition: var(--transition);
}
body.karuna-conversion .skill-item:hover { background: rgba(255,255,255,0.1); transform: translateY(-6px); border-color: var(--gold); }
body.karuna-conversion .skill-icon { font-size: 2.5rem; margin-bottom: 16px; display: block; }
body.karuna-conversion .skill-item h3 { color: #fff; font-size: 1rem; font-weight: 700; margin-bottom: 8px; }
body.karuna-conversion .skill-item p { color: rgba(255,255,255,0.6); font-size: 0.88rem; line-height: 1.5; }

/* ===== TESTIMONIALS ===== */
body.karuna-conversion .testimonials { background: var(--light); }
body.karuna-conversion .testi-slider { position: relative; overflow: hidden; }
body.karuna-conversion .testi-track {
  display: flex; gap: 24px;
  transition: transform 0.5s cubic-bezier(0.4,0,0.2,1);
  will-change: transform;
}
body.karuna-conversion .testi-card {
  flex: 0 0 calc((100% - 48px) / 3);
  width: calc((100% - 48px) / 3);
  max-width: calc((100% - 48px) / 3);

  padding: 32px;

  box-shadow: 0 4px 20px rgba(55,42,116,0.06);
  display: flex;
  flex-direction: column;
}
body.karuna-conversion .stars { color: var(--gold); font-size: 1.2rem; margin-bottom: 16px; letter-spacing: 2px; }
body.karuna-conversion .testi-card p {
  color: var(--gray);
  line-height: 1.7;
  font-size: 0.95rem;
  margin-bottom: 20px;
  font-style: italic;
  flex-grow: 1;
}
body.karuna-conversion .testi-author { display: flex; align-items: center; gap: 12px; margin-top: auto; }
body.karuna-conversion .testi-avatar {
  width: 44px; height: 44px;
  background: var(--primary);
  color: #fff;
  border-radius: 50%;

  font-weight: 700; font-size: 1.1rem;
  flex-shrink: 0;
}
body.karuna-conversion .testi-author strong { display: block; color: var(--primary-dark); font-size: 0.95rem; }
body.karuna-conversion .testi-author span { color: var(--gray); font-size: 0.8rem; }
body.karuna-conversion .testi-controls {

  gap: 16px;
  margin-top: 24px;
}
body.karuna-conversion .testi-dots {
  display: flex; justify-content: center; gap: 8px;
  margin-top: 0;
}
body.karuna-conversion .testi-dot {
  border: 0; padding: 0;
  width: 8px; height: 8px;
  border-radius: 50%;
  background: rgba(55,42,116,0.2);
  cursor: pointer; transition: var(--transition);
}
body.karuna-conversion .testi-dot.active { background: var(--primary); width: 24px; border-radius: 4px; }
body.karuna-conversion .testi-dot:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}
body.karuna-conversion .testi-toggle-btn,
body.karuna-conversion .testi-nav-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid var(--border);
  background: #ffffff;
  color: var(--primary);
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(55, 42, 116, 0.08);
  transition: all 0.25s ease;
  flex-shrink: 0;
  padding: 0;
}
body.karuna-conversion .testi-toggle-btn:hover,
body.karuna-conversion .testi-nav-btn:hover {
  background: var(--primary);
  color: #ffffff;
  border-color: var(--primary);
  transform: scale(1.06);
  box-shadow: 0 4px 12px rgba(55, 42, 116, 0.18);
}
body.karuna-conversion .testi-toggle-btn:focus-visible,
body.karuna-conversion .testi-nav-btn:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}
body.karuna-conversion .testi-toggle-btn .testi-toggle-icon,
body.karuna-conversion .testi-nav-btn .testi-nav-icon {
  display: block;
}
body.karuna-conversion .testi-toggle-btn.paused {
  background: rgba(55, 42, 116, 0.08);
  color: var(--primary);
  border-color: rgba(55, 42, 116, 0.2);
}
body.karuna-conversion .testi-toggle-btn.paused:hover {
  background: var(--primary);
  color: #ffffff;
}

body.karuna-conversion .testi-toggle-btn .icon-play,
body.karuna-conversion .testi-toggle-btn.paused .icon-pause { display: none; }
body.karuna-conversion .testi-toggle-btn.paused .icon-play { display: block; }

/* Screen reader only utility */
body.karuna-conversion .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Prefers reduced motion */
@media (prefers-reduced-motion: reduce) {
  body.karuna-conversion .testi-track {
    transition: none !important;
  }
  body.karuna-conversion .testi-dot,
body.karuna-conversion .testi-toggle-btn,
body.karuna-conversion .testi-nav-btn {
    transition: none !important;
  }
}

/* ===== CTA BANNER ===== */
body.karuna-conversion .cta-banner {
  background: var(--primary-dark);
  padding: 80px 0;
  text-align: center;
  position: relative; overflow: hidden;
}

body.karuna-conversion .cta-orb {
  position: absolute;
  width: 400px; height: 400px;
  border-radius: 50%;
  background: var(--gold);
  filter: blur(100px); opacity: 0.08;
}
body.karuna-conversion .cta-orb:first-child { top: -100px; left: -100px; }
body.karuna-conversion .cta-orb:last-child { bottom: -100px; right: -100px; }
body.karuna-conversion .cta-banner h2 {
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  color: #fff; margin-bottom: 12px;
}
body.karuna-conversion .cta-banner p { color: rgba(255,255,255,0.7); font-size: 1rem; margin-bottom: 32px; }
body.karuna-conversion .cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
body.karuna-conversion .btn-white {
  background: #fff; color: var(--primary);
  border: none;
    font-weight: 700;

}
body.karuna-conversion .btn-white:hover { background: var(--light); transform: translateY(-3px); }

/* ===== PAGE HERO ===== */
body.karuna-conversion .page-hero {
  padding: 140px 40px 80px;
  text-align: center;
  background: var(--primary);
  position: relative; overflow: hidden;
}
body.karuna-conversion .page-hero-bg {
  position: absolute; inset: 0;
  background: radial-gradient(ellipse at center, rgba(245,166,35,0.1) 0%, transparent 70%);
}
body.karuna-conversion .page-hero h1 {
  font-size: clamp(2.5rem, 5vw, 4rem);
  color: #fff; margin-bottom: 12px;
  position: relative;
}
body.karuna-conversion .page-hero p { color: rgba(255,255,255,0.7); font-size: 1.1rem; margin-bottom: 20px; }
body.karuna-conversion .breadcrumb {
  color: rgba(255,255,255,0.5); font-size: 0.85rem;
}
body.karuna-conversion .breadcrumb-list {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 8px;
}
body.karuna-conversion .breadcrumb-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,0.7);
}
body.karuna-conversion .breadcrumb a {
  cursor: pointer;
  color: var(--gold);
  text-decoration: none;
  padding: 2px 4px;
  border-radius: 4px;
  transition: var(--transition);
}
body.karuna-conversion .breadcrumb a:hover {
  text-decoration: underline;
  color: var(--gold-light);
}
body.karuna-conversion .breadcrumb a:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
  text-decoration: underline;
  color: var(--gold-light);
}
body.karuna-conversion .breadcrumb-separator {
  color: rgba(255,255,255,0.5);
  user-select: none;
}

/* ===== ABOUT PAGE ===== */
body.karuna-conversion .about-grid {
  display: grid; grid-template-columns: 1fr 1.5fr; gap: 80px;
  align-items: center; margin-bottom: 80px;
}
body.karuna-conversion .about-visual {
  position: relative;

  height: 400px;
}
body.karuna-conversion .about-circle-big {
  width: 280px; height: 280px;
  border-radius: 50%;
  background: var(--primary);

  box-shadow: 0 30px 80px rgba(55,42,116,0.3);
}
body.karuna-conversion .about-badge-float {
  position: absolute;
  background: #fff;
  border: 2px solid var(--border);
  padding: 10px 18px;
  border-radius: 50px;
  font-size: 0.85rem; font-weight: 600;
  color: var(--primary);
  box-shadow: 0 8px 24px rgba(55,42,116,0.1);
}
body.karuna-conversion .b1 { top: 40px; right: 0; animation: float1 4s ease-in-out infinite; }
body.karuna-conversion .b2 { bottom: 80px; right: 20px; animation: float2 5s ease-in-out infinite; }
body.karuna-conversion .b3 { top: 50%; left: 0; animation: float1 3.5s ease-in-out infinite reverse; }

body.karuna-conversion .about-content h2 { font-size: 2.5rem; color: var(--primary-dark); margin: 12px 0 16px; }
body.karuna-conversion .about-content p { color: var(--gray); line-height: 1.7; margin-bottom: 14px; }
body.karuna-conversion .vmm-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 24px; }
body.karuna-conversion .vmm-card {
  background: var(--light); border-radius: var(--radius-sm);
  padding: 20px; border-left: 4px solid var(--gold);
}
body.karuna-conversion .vmm-card h3 { color: var(--primary-dark); margin-bottom: 6px; font-size: 0.95rem; }
body.karuna-conversion .vmm-card p { color: var(--gray); font-size: 0.85rem; margin: 0; }

body.karuna-conversion .director-section { margin-bottom: 80px; }
body.karuna-conversion .director-card {
  display: flex; gap: 40px; align-items: center;
  background: var(--primary);
  border-radius: var(--radius);
  padding: 48px;
}
body.karuna-conversion .director-avatar {
  width: 120px; height: 120px;
  background: rgba(255,255,255,0.1);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 4rem; flex-shrink: 0;
}
body.karuna-conversion .director-text .section-tag { background: rgba(245,166,35,0.2); color: var(--gold-light); }
body.karuna-conversion .director-text h3 { color: #fff; font-size: 1.8rem; margin: 8px 0 16px; }
body.karuna-conversion .director-text blockquote {
  color: rgba(255,255,255,0.8); font-style: italic;
  font-size: 1rem; line-height: 1.7;
  border-left: 3px solid var(--gold);
  padding-left: 20px; margin-bottom: 16px;
}
body.karuna-conversion .director-text strong { color: var(--gold); font-size: 0.9rem; }

/* ===== HORIZONTAL TIMELINE ===== */
body.karuna-conversion .timeline {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  overflow-x: auto;
  padding: 20px 0 40px;
}
body.karuna-conversion .tl-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-width: 150px;
  max-width: 190px;
  flex: 1;
}
body.karuna-conversion .tl-dot {
  width: 44px; height: 44px;
  background: var(--primary);
  border-radius: 50%;
  flex-shrink: 0; z-index: 2;
  border: 4px solid #fff;
  box-shadow: 0 0 0 3px var(--primary);
  margin-bottom: 16px;
}
body.karuna-conversion .tl-connector {
  flex: 1;
  height: 3px;
  background: linear-gradient(90deg, var(--primary), var(--primary-light));
  align-self: center;
  margin-top: -68px;
  min-width: 20px;
  opacity: 0.2;
  position: relative;
  z-index: 1;
}
body.karuna-conversion .tl-content h3 { color: var(--primary-dark); font-weight: 700; margin-bottom: 6px; font-size: 0.92rem; }
body.karuna-conversion .tl-content p { color: var(--gray); font-size: 0.8rem; line-height: 1.5; }

/* ===== ACADEMICS PAGE ===== */
body.karuna-conversion .academics-grid {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px;
  margin-bottom: 80px;
}
body.karuna-conversion .acad-card {

   padding: 36px;
   position: relative;
}

body.karuna-conversion .acad-card.gold-card { background: var(--primary); border-color: var(--primary); }
body.karuna-conversion .acad-card.gold-card h3,
body.karuna-conversion .acad-card.gold-card .acad-num { color: #fff; }
body.karuna-conversion .acad-card.gold-card p { color: rgba(255,255,255,0.75); }
body.karuna-conversion .acad-num {
  font-size: 3rem; font-weight: 900;
  color: rgba(55,42,116,0.1);
  line-height: 1; margin-bottom: 8px;
}
body.karuna-conversion .acad-card h3 {
  font-size: 1.4rem; color: var(--primary-dark);
  margin-bottom: 12px;
}
body.karuna-conversion .acad-card h3 small { font-size: 0.85rem; font-family: var(--e-global-typography-text-font-family,'Plus Jakarta Sans'), sans-serif; opacity: 0.7; }
body.karuna-conversion .acad-card p { color: var(--gray); line-height: 1.6; margin-bottom: 20px; }
body.karuna-conversion .acad-tags { display: flex; flex-wrap: wrap; gap: 8px; }
body.karuna-conversion .acad-tags span {
  background: rgba(55,42,116,0.08);
  color: var(--primary);
  padding: 4px 12px;
  border-radius: 50px;
  font-size: 0.8rem; font-weight: 600;
}
body.karuna-conversion .acad-card.gold-card .acad-tags span {
  background: rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.9);
}

body.karuna-conversion .boards-big-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px;
}
body.karuna-conversion .board-big-card {
  text-align: center; padding: 32px 20px;
  border: 2px solid var(--border);
  border-radius: var(--radius);
  transition: var(--transition);
}
body.karuna-conversion .board-big-card:hover { border-color: var(--primary); transform: translateY(-4px); }
body.karuna-conversion .board-logo {
  font-size: 2rem; font-weight: 900;
  color: var(--primary);
  margin-bottom: 12px;
  display: block;
}
body.karuna-conversion .board-logo.cam { font-size: 1.5rem; }
body.karuna-conversion .board-big-card h3 { color: var(--primary-dark); font-size: 0.95rem; margin-bottom: 8px; }
body.karuna-conversion .board-big-card p { color: var(--gray); font-size: 0.85rem; line-height: 1.5; }

/* ===== LEARNING PAGE ===== */
body.karuna-conversion .learning-intro {
  text-align: center; max-width: 700px; margin: 0 auto 60px;
}
body.karuna-conversion .learning-intro h2 { font-size: 2.5rem; color: var(--primary-dark); margin-bottom: 16px; }
body.karuna-conversion .learning-intro p { color: var(--gray); font-size: 1.05rem; line-height: 1.7; }
body.karuna-conversion .learning-pillars {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px;
  margin-bottom: 60px;
}
body.karuna-conversion .pillar-card {

   padding: 40px;

}

body.karuna-conversion .pillar-icon { font-size: 2.5rem; margin-bottom: 16px; display: block; }
body.karuna-conversion .pillar-card h3 { font-size: 1.4rem; color: var(--primary-dark); margin-bottom: 12px; }
body.karuna-conversion .pillar-card > p { color: var(--gray); line-height: 1.6; margin-bottom: 20px; }
body.karuna-conversion .pillar-card ul { list-style: none; display: flex; flex-direction: column; gap: 8px; }
body.karuna-conversion .pillar-card ul li {
  display: flex; align-items: center; gap: 10px;
  color: var(--gray); font-size: 0.9rem;
}
body.karuna-conversion .pillar-card ul li::before {
  content: '✓';
  color: var(--gold);
  font-weight: 700;
  flex-shrink: 0;
}
body.karuna-conversion .small-cta {
  padding: 48px; border-radius: var(--radius);
  margin-top: 20px;
}
body.karuna-conversion .small-cta h3 { font-size: 1.8rem; color: var(--gold); }

/* ===== ADMISSIONS ===== */
body.karuna-conversion .admissions-layout {
  display: grid; grid-template-columns: 1fr 1fr; gap: 60px;
  align-items: flex-start;
}
body.karuna-conversion .form-card {

  padding: 40px;
  box-shadow: var(--shadow);

}
body.karuna-conversion .form-card h2 {
  font-size: 1.6rem; color: var(--primary-dark); margin-bottom: 6px;
}
body.karuna-conversion .form-card > p { color: var(--gray); margin-bottom: 28px; font-size: 0.9rem; }
body.karuna-conversion .form-group { margin-bottom: 16px; }
body.karuna-conversion .form-label {
  display: block;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--primary-dark);
  margin-bottom: 6px;
  text-align: left;
  letter-spacing: 0.2px;
  cursor: pointer;
}
body.karuna-conversion .form-label .required {
  color: #d93025;
  font-weight: 700;
  margin-left: 2px;
}
body.karuna-conversion .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 16px; }
body.karuna-conversion .form-row .form-group { margin-bottom: 0; }
body.karuna-conversion .form-input {
  width: 100%; padding: 14px 16px;
  border: 2px solid var(--border);
  border-radius: var(--radius-sm);
  font-size: 0.9rem; font-family: var(--e-global-typography-text-font-family,'Plus Jakarta Sans'), sans-serif;
  color: var(--text); transition: var(--transition);
  background: var(--light);
  outline: none; appearance: none;
}
body.karuna-conversion .form-input:focus { border-color: var(--primary); background: #fff; box-shadow: 0 0 0 4px rgba(55,42,116,0.08); }
body.karuna-conversion .form-textarea { height: 100px; resize: vertical; }
body.karuna-conversion select.form-input { cursor: pointer; }
body.karuna-conversion .full-btn { width: 100%; padding: 16px; font-size: 1rem; border-radius: var(--radius-sm); }
body.karuna-conversion .form-note { text-align: center; color: var(--gray); font-size: 0.8rem; margin-top: 12px; }
body.karuna-conversion .form-privacy-notice {
  font-size: 0.8rem;
  line-height: 1.5;
  color: var(--gray);
  margin-bottom: 16px;
  text-align: left;
}
body.karuna-conversion .form-privacy-notice a {
  color: var(--primary);
  text-decoration: underline;
  font-weight: 600;
  transition: var(--transition);
}
body.karuna-conversion .form-privacy-notice a:hover {
  color: var(--primary-light);
}
body.karuna-conversion .form-privacy-notice a:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
  border-radius: 2px;
}

body.karuna-conversion .process-steps { display: flex; flex-direction: column; gap: 20px; margin: 24px 0; }
body.karuna-conversion .step { display: flex; align-items: flex-start; gap: 20px; }
body.karuna-conversion .step-num {
  width: 48px; height: 48px;
  background: var(--primary);
  color: #fff; border-radius: 50%;

  font-weight: 700; font-size: 0.9rem;
  flex-shrink: 0;
}
body.karuna-conversion .step h3 { color: var(--primary-dark); font-weight: 700; margin-bottom: 4px; font-size: 1rem; }
body.karuna-conversion .step p { color: var(--gray); font-size: 0.85rem; }
body.karuna-conversion .docs-needed {
  background: var(--light); border-radius: var(--radius-sm);
  padding: 24px; border-left: 4px solid var(--gold);
}
body.karuna-conversion .docs-needed h3 { color: var(--primary-dark); margin-bottom: 12px; font-size: 1rem; }
body.karuna-conversion .docs-needed ul { list-style: none; display: flex; flex-direction: column; gap: 8px; }
body.karuna-conversion .docs-needed li { color: var(--gray); font-size: 0.9rem; display: flex; gap: 8px; align-items: center; }
body.karuna-conversion .docs-needed li::before { content: '•'; color: var(--gold); font-weight: 700; }

body.karuna-conversion .phone-error-msg { color: #d93025; font-size: 0.85rem; margin-top: 6px; font-weight: 500; }
body.karuna-conversion .full-btn:disabled { opacity: 0.7; }

/* ===== GALLERY ===== */
body.karuna-conversion .gallery-filter {
  display: flex; gap: 12px; justify-content: center;
  margin-bottom: 40px; flex-wrap: wrap;
}
body.karuna-conversion .filter-btn {
  padding: 10px 24px;
  border: 2px solid var(--border);

  background: #fff; color: var(--gray);
  font-weight: 600; font-size: 0.88rem;

}
body.karuna-conversion .filter-btn:hover,
body.karuna-conversion .filter-btn.active {
  background: var(--primary); color: #fff; border-color: var(--primary);
}
body.karuna-conversion .gallery-grid {
  columns: 3;
  column-gap: 16px;
}
body.karuna-conversion .gal-item {
  break-inside: avoid;
  margin-bottom: 16px;
  border-radius: var(--radius-sm); overflow: hidden;
  cursor: pointer;
  transition: var(--transition);
  display: inline-block;
  width: 100%;
  background: none;
  border: none;
  padding: 0;
  text-align: inherit;
  font: inherit;
  color: inherit;
}
body.karuna-conversion .gal-item:focus-visible {
  outline: 3px solid var(--primary);
  outline-offset: 3px;
}
body.karuna-conversion .gal-item:focus-visible .gal-overlay { opacity: 1; }
body.karuna-conversion .gal-item.hidden { display: none; }
body.karuna-conversion .gal-inner {
  width: 100%;
  position: relative; overflow: hidden;
  transition: var(--transition);
}
body.karuna-conversion .gal-photo { width: 100%; height: auto; display: block; transition: var(--transition); }
body.karuna-conversion .gal-overlay {
  position: absolute; inset: 0;
  background: rgba(55,42,116,0.85);

  opacity: 0; transition: var(--transition);
}
body.karuna-conversion .gal-overlay p { color: #fff; font-weight: 600; font-size: 0.9rem; }
body.karuna-conversion .gal-item:hover .gal-overlay { opacity: 1; }
body.karuna-conversion .gal-item:hover .gal-photo { transform: scale(1.03); }

/* ===== SPEAKWELL SECTION ===== */
body.karuna-conversion .speakwell-section { margin: 60px 0 80px; }

body.karuna-conversion .speakwell-banner {
  background: linear-gradient(135deg, var(--e-global-color-primary,#372A74) 0%, var(--e-global-color-secondary,#251D55) 50%, #1A1030 100%);
  border-radius: 28px;
  overflow: hidden;
  position: relative;
  padding: 0;
  box-shadow: 0 40px 80px rgba(55,42,116,0.4);
}

/* Tape banners */
body.karuna-conversion .speakwell-tape {
  background: var(--e-global-color-accent,#F5A623);
  padding: 10px 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
}
body.karuna-conversion .tape-top { transform: rotate(-2.5deg) scaleX(1.1); margin: 20px -20px 0; }
body.karuna-conversion .tape-bottom { transform: rotate(-2.5deg) scaleX(1.1); margin: 0 -20px 20px; }

body.karuna-conversion .tape-track {
  display: flex; gap: 32px;
  white-space: nowrap;
  animation: tapeMarch 12s linear infinite;
  width: max-content;
}
body.karuna-conversion .tape-reverse { animation-direction: reverse; animation-duration: 10s; }
body.karuna-conversion .tape-track span {
  font-size: 0.85rem; font-weight: 900;
  color: var(--e-global-color-primary,#372A74);
  letter-spacing: 2px; text-transform: uppercase;
  font-family: var(--e-global-typography-text-font-family,'Plus Jakarta Sans'), sans-serif;
  flex-shrink: 0;
}
@keyframes tapeMarch {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

body.karuna-conversion .speakwell-content {
  padding: 40px 60px 50px;
  text-align: center;
  position: relative;
  z-index: 1;
}

body.karuna-conversion .sw-badge {
  display: inline-block;
  background: rgba(245,166,35,0.15);
  border: 1px solid rgba(245,166,35,0.4);
  color: var(--e-global-color-karuna-gold-light,#FFD166);
  padding: 8px 20px;
  border-radius: 50px;
  font-size: 0.85rem; font-weight: 700;
  margin-bottom: 24px;
}

body.karuna-conversion .sw-headline {
  font-size: clamp(2.5rem, 6vw, 4.5rem);
  font-weight: 900;
  line-height: 1.05;
  margin-bottom: 28px;
  color: #fff;
}
body.karuna-conversion .sw-gold { color: var(--e-global-color-accent,#F5A623); }
body.karuna-conversion .sw-white { color: #fff; }

body.karuna-conversion .sw-collab-label {
  color: var(--e-global-color-accent,#F5A623);
  font-size: 1rem; font-weight: 600;
  margin-bottom: 16px;
  letter-spacing: 0.5px;
}

body.karuna-conversion .sw-logo-box {
  background: #fff;
  border-radius: 16px;
  padding: 20px 36px;
  display: inline-block;
  margin-bottom: 36px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.3);
}
body.karuna-conversion .sw-logo-inner {
  display: flex; align-items: center; gap: 14px;
}

body.karuna-conversion .sw-benefits {

  gap: 32px; margin-bottom: 36px;
  flex-wrap: wrap;
}
body.karuna-conversion .sw-benefit { text-align: center; }
body.karuna-conversion .sw-benefit-icon { font-size: 1.5rem; display: block; margin-bottom: 8px; }
body.karuna-conversion .sw-benefit p { color: rgba(255,255,255,0.7); font-size: 0.88rem; line-height: 1.5; }
body.karuna-conversion .sw-benefit p strong { color: #fff; display: block; }
body.karuna-conversion .sw-divider {
  width: 1px; height: 50px;
  background: rgba(255,255,255,0.15);
}

body.karuna-conversion .sw-contact {

  gap: 16px; flex-wrap: wrap;
}
body.karuna-conversion .sw-contact-label {
  color: rgba(255,255,255,0.6);
  font-size: 0.88rem; font-weight: 500;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  padding: 10px 20px; border-radius: 50px;
}
body.karuna-conversion .sw-phone {
  background: var(--e-global-color-accent,#F5A623);
  color: var(--e-global-color-secondary,#251D55);
  font-weight: 800; font-size: 1rem;
  padding: 12px 28px; border-radius: 50px;
  text-decoration: none;
  transition: var(--transition);
  display: inline-block;
  box-shadow: 0 6px 20px rgba(245,166,35,0.4);
}
body.karuna-conversion .sw-phone:hover { background: var(--e-global-color-karuna-gold-light,#FFD166); transform: translateY(-3px); box-shadow: 0 10px 30px rgba(245,166,35,0.5); }

/* ===== CONTACT ===== */
body.karuna-conversion .contact-layout {
  display: grid; grid-template-columns: 1fr 1fr; gap: 60px;
  margin-bottom: 60px;
}
body.karuna-conversion .contact-info h2,
body.karuna-conversion .contact-info h3 {
  font-size: 1.8rem; color: var(--primary-dark); margin-bottom: 24px;
}
body.karuna-conversion .contact-cards { display: flex; flex-direction: column; gap: 16px; margin-bottom: 32px; }
body.karuna-conversion .contact-card {
  display: flex; gap: 16px; align-items: flex-start;
  background: var(--light); border-radius: var(--radius-sm);
  padding: 20px;
}
body.karuna-conversion .cc-icon { font-size: 1.5rem; flex-shrink: 0; }
body.karuna-conversion .contact-card h3 { color: var(--primary-dark); font-weight: 700; margin-bottom: 4px; font-size: 0.95rem; }
body.karuna-conversion .contact-card p { color: var(--gray); font-size: 0.85rem; margin-bottom: 2px; }
body.karuna-conversion .social-links h3 { color: var(--primary-dark); margin-bottom: 12px; font-weight: 700; }
body.karuna-conversion .socials { display: flex; gap: 12px; }
body.karuna-conversion .soc-btn {
  width: 44px; height: 44px;
  border-radius: 50%; background: var(--primary);
  color: #fff; text-decoration: none;

  font-weight: 700; font-size: 0.9rem;
  transition: var(--transition);
}
body.karuna-conversion .soc-btn:hover { transform: translateY(-4px); }
body.karuna-conversion .soc-btn:focus-visible {
  outline: 3px solid var(--primary);
  outline-offset: 3px;
  transform: translateY(-2px);
}
body.karuna-conversion .soc-btn.fb { background: #1877F2; }
body.karuna-conversion .soc-btn.ig { background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888); }
body.karuna-conversion .soc-btn.li { background: #0A66C2; }
body.karuna-conversion .soc-btn.wa { background: #25D366; }
body.karuna-conversion .soc-btn.tw { background: #1DA1F2; }
body.karuna-conversion .map-section h2 { font-size: 1.8rem; color: var(--primary-dark); margin-bottom: 20px; }
body.karuna-conversion .map-placeholder {
  background: var(--light);
  border-radius: var(--radius);
  height: 250px;

  border: 2px dashed var(--border);
}
body.karuna-conversion .map-inner { text-align: center; }
body.karuna-conversion .map-pin { font-size: 3rem; margin-bottom: 8px; display: block; }
body.karuna-conversion .map-inner p { color: var(--gray); font-size: 0.95rem; }

/* ===== FOOTER ===== */
body.karuna-conversion .footer { background: var(--primary-dark); color: rgba(255,255,255,0.7); }
body.karuna-conversion .footer-top { padding: 80px 0 40px; }
body.karuna-conversion .footer-grid {
  display: grid; grid-template-columns: 2fr 1fr 1fr 1.5fr; gap: 48px;
}
body.karuna-conversion .footer-brand p { font-size: 0.88rem; line-height: 1.7; margin-bottom: 20px; color: rgba(255,255,255,0.5); }
body.karuna-conversion .footer-socials { display: flex; gap: 10px; }
body.karuna-conversion .footer-socials a {
  width: 36px; height: 36px;
  border-radius: 50%;
  background: rgba(255,255,255,0.1);
  color: #fff; text-decoration: none;

  font-size: 0.8rem; font-weight: 700;
  transition: var(--transition);
}
body.karuna-conversion .footer-socials a:hover { background: var(--gold); color: var(--primary-dark); }
body.karuna-conversion .footer-socials a:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
  background: var(--gold);
  color: var(--primary-dark);
}
body.karuna-conversion .footer-links h3,
body.karuna-conversion .footer-contact h3 {
  color: #fff; font-size: 0.95rem; font-weight: 700;
  margin-bottom: 16px; letter-spacing: 0.5px;
}
body.karuna-conversion .footer-links a {
  display: block; color: rgba(255,255,255,0.55);
  text-decoration: none; font-size: 0.88rem;
  margin-bottom: 10px; transition: var(--transition);
  cursor: pointer;
}
body.karuna-conversion .footer-links a:hover { color: var(--gold); padding-left: 4px; }
body.karuna-conversion .footer-contact p { font-size: 0.88rem; margin-bottom: 10px; }
body.karuna-conversion .footer-boards { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 16px; }
body.karuna-conversion .footer-boards span {
  background: rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.7);
  padding: 4px 12px;
  border-radius: 4px;
  font-size: 0.75rem; font-weight: 700;
}
body.karuna-conversion .footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.08);
  padding: 20px 0; text-align: center;
}
body.karuna-conversion .footer-bottom p { font-size: 0.82rem; color: rgba(255,255,255,0.35); }

/* ===== WHATSAPP FLOAT ===== */
body.karuna-conversion .whatsapp-float {
  position: fixed; bottom: 28px; right: 28px;
  width: 58px; height: 58px;
  background: #25D366;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem;
  box-shadow: 0 8px 25px rgba(37,211,102,0.4);
  z-index: 9000;
  text-decoration: none;
  animation: waFloat 3s ease-in-out infinite;
  transition: transform 0.3s;
}
body.karuna-conversion .whatsapp-float:hover { transform: scale(1.1) !important; }
body.karuna-conversion .whatsapp-float:focus-visible {
  outline: 3px solid #128C7E;
  outline-offset: 3px;
  box-shadow: 0 0 0 3px #ffffff, 0 8px 25px rgba(37,211,102,0.6);
  transform: scale(1.08) !important;
}
@keyframes waFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}

/* ===== TOAST ===== */
body.karuna-conversion .toast {
  position: fixed; bottom: 100px; right: 28px;
  background: var(--primary);
  color: #fff;
  padding: 14px 24px;
  border-radius: var(--radius-sm);
  font-size: 0.9rem; font-weight: 600;
  box-shadow: var(--shadow);
  transform: translateX(120%);
  transition: transform 0.4s cubic-bezier(0.4,0,0.2,1);
  z-index: 9500;
}
body.karuna-conversion .toast.show { transform: translateX(0); }
body.karuna-conversion .toast.error { background: #d93025; }

/* ===== REVEAL ANIMATIONS ===== */
body.karuna-conversion .reveal,
body.karuna-conversion .reveal-right,
body.karuna-conversion .reveal-up {
  opacity: 0;
  transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}
body.karuna-conversion .reveal { transform: translateY(40px); }
body.karuna-conversion .reveal-right { transform: translateX(60px); }
body.karuna-conversion .reveal-up { transform: translateY(50px); transition-delay: var(--delay, 0s); }

body.karuna-conversion .reveal.visible,
body.karuna-conversion .reveal-right.visible,
body.karuna-conversion .reveal-up.visible {
  opacity: 1;
  transform: translate(0);
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1100px) {
  body.karuna-conversion .features-grid { grid-template-columns: repeat(2, 1fr); }
  body.karuna-conversion .skills-grid { grid-template-columns: repeat(2, 1fr); }
  body.karuna-conversion .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  body.karuna-conversion .boards-big-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 900px) {
  body.karuna-conversion .hero { flex-direction: column; padding: 100px 32px 60px; text-align: center; }
  body.karuna-conversion .hero-btns { justify-content: center; }
  body.karuna-conversion .hero-stats { justify-content: center; }
  body.karuna-conversion .hero-visual { display: none; }
  body.karuna-conversion .model-layout { grid-template-columns: 1fr; }
  body.karuna-conversion .model-wheel { display: none; }
  body.karuna-conversion .class-cards { grid-template-columns: 1fr; }
  body.karuna-conversion .about-grid { grid-template-columns: 1fr; }
  body.karuna-conversion .about-visual { display: none; }
  body.karuna-conversion .director-card { flex-direction: column; text-align: center; }
  body.karuna-conversion .admissions-layout { grid-template-columns: 1fr; }
  body.karuna-conversion .contact-layout { grid-template-columns: 1fr; }
  body.karuna-conversion .academics-grid { grid-template-columns: 1fr; }
  body.karuna-conversion .learning-pillars { grid-template-columns: 1fr; }
  body.karuna-conversion .nav-links { display: none; }
  body.karuna-conversion .hamburger { display: flex; }
  body.karuna-conversion .testi-card {
    flex: 0 0 calc((100% - 24px) / 2);
    width: calc((100% - 24px) / 2);
    max-width: calc((100% - 24px) / 2);
  }
  body.karuna-conversion .gallery-grid { columns: 2; }
  body.karuna-conversion .timeline { justify-content: flex-start; padding-left: 10px; padding-bottom: 20px; -webkit-overflow-scrolling: touch; scroll-snap-type: x mandatory; }
  body.karuna-conversion .tl-item { min-width: 220px; scroll-snap-align: center; }
}

@media (max-width: 600px) {
  body.karuna-conversion .section { padding: 60px 0; }
  body.karuna-conversion .container { padding: 0 20px; }
  body.karuna-conversion #navbar { padding: 0 20px; }
  body.karuna-conversion .hero { padding: 90px 20px 50px; }
  body.karuna-conversion .page-hero { padding: 110px 20px 60px; }
  body.karuna-conversion .features-grid { grid-template-columns: 1fr; }
  body.karuna-conversion .skills-grid { grid-template-columns: 1fr; }
  body.karuna-conversion .gallery-grid { columns: 1; }
  body.karuna-conversion .testi-card { flex: 0 0 100%; width: 100%; max-width: 100%; }
  body.karuna-conversion .footer-grid { grid-template-columns: 1fr; }
  body.karuna-conversion .form-row { grid-template-columns: 1fr; gap: 16px; }
  body.karuna-conversion .lightbox-close { top: 15px; right: 20px; font-size: 2.5rem; }
}

/* ===== LIGHTBOX ===== */
body.karuna-conversion #lightbox {
  position: fixed;
  inset: 0; width: 100%; height: 100%;
  max-width: none; max-height: none; margin: 0; padding: 0; border: 0;
  background: rgba(10, 5, 25, 0.95);
  z-index: 9999;
  display: none; flex-direction: column; align-items: center; justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease, display 0.3s allow-discrete, overlay 0.3s allow-discrete;
  backdrop-filter: blur(10px);
}
body.karuna-conversion #lightbox[open] { display: flex; opacity: 1; }
body.karuna-conversion #lightbox::backdrop { background: transparent; }
body:has(#lightbox[open]) { overflow: hidden; }
@starting-style { #lightbox[open] { opacity: 0; } }
body.karuna-conversion #lightbox img {
  max-width: 90%;
  max-height: 80vh;
  border-radius: var(--radius-sm);
  box-shadow: 0 20px 60px rgba(0,0,0,0.5);
  transform: scale(0.9);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  object-fit: contain;
}
body.karuna-conversion #lightbox[open] img { transform: scale(1); }
@starting-style { #lightbox[open] img { transform: scale(0.9); } }
body.karuna-conversion .lightbox-caption {
  color: #fff;
  font-size: 1rem;
  font-weight: 500;
  margin-top: 16px;
  text-align: center;
  max-width: 90%;
}
body.karuna-conversion .lightbox-close {
  position: absolute;
  top: 30px; right: 40px;
  color: #fff;
  font-size: 3rem;
  font-weight: 300;
  cursor: pointer;
  transition: var(--transition);
  background: none;
  border: none;
  padding: 0;
  line-height: 1;
}
body.karuna-conversion .lightbox-close:hover {
  color: var(--gold);
  transform: scale(1.1);
}
body.karuna-conversion .lightbox-close:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 4px;
  border-radius: 4px;
  color: var(--gold);
}

body.karuna-conversion{--primary:var(--e-global-color-primary,#372A74);--primary-dark:var(--e-global-color-secondary,#251D55);--text:var(--e-global-color-text,#2D2D2D);--gold:var(--e-global-color-accent,#F5A623);--light:var(--e-global-color-karuna-light,#F8F7FF);--gray:var(--e-global-color-karuna-muted,#6B7280);--gold-light:var(--e-global-color-karuna-gold-light,#FFD166);--primary-light:var(--e-global-color-karuna-purple-light,#4D3E9E);}

body.karuna-conversion .karuna-site .hero-title{color:inherit;}
body.karuna-conversion .karuna-site .elementor-button.karuna-text-link{background:none;padding:0;border:0;border-radius:0;box-shadow:none;}
body.karuna-conversion #navbar .karuna-site-menu .xpro-elementor-horizontal-navbar-nav>li:last-child>a{color:#fff;background:var(--primary);border-radius:50px;padding:10px 24px;}
.karuna-site-menu .xpro-elementor-horizontal-menu-toggler:before{content:'☰';font:26px/1 'Plus Jakarta Sans',sans-serif;color:var(--primary);}.karuna-site-menu .xpro-elementor-horizontal-menu-close:before{content:'×';font:30px/1 sans-serif;color:var(--primary);}.karuna-site-menu .xpro-elementor-horizontal-menu-toggler i,.karuna-site-menu .xpro-elementor-horizontal-menu-close i{display:none;}
.karuna-site .karuna-navigation{min-width:0;margin-left:auto;}.karuna-site .nav-logo{flex-shrink:0;}.karuna-site .karuna-site-menu{margin:0;width:auto;}
.karuna-site-menu ul{margin:0;padding:0;list-style:none;}.karuna-site-menu .xpro-elementor-horizontal-navbar-nav{gap:20px;}
.karuna-site-menu a{font-family:'Plus Jakarta Sans',sans-serif;white-space:nowrap;}
.karuna-site-menu .xpro-elementor-horizontal-navbar-nav>li:last-child>a{background:var(--primary);color:#fff;border-radius:50px;padding:10px 24px;}
.karuna-site-menu .xpro-elementor-horizontal-navbar-nav>li:last-child>a:hover{background:var(--gold);}
body.admin-bar.karuna-conversion #navbar{top:32px;}
.karuna-site .gal-item:focus-visible{outline:3px solid var(--primary);outline-offset:3px;}

.karuna-site .e-con.karuna-container:is(.features-grid,.skills-grid,.boards-big-grid,.class-cards,.model-layout,.about-grid,.vmm-cards,.academics-grid,.learning-pillars,.admissions-layout,.contact-layout,.footer-grid){display:flex;flex-wrap:wrap;}
.karuna-site .features-grid>*,.karuna-site .skills-grid>*,.karuna-site .boards-big-grid>*{flex:0 0 calc((100% - 72px)/4);min-width:0;}
.karuna-site .class-cards>*{flex:0 0 calc((100% - 56px)/3);min-width:0;}
.karuna-site .model-layout>*{flex:0 0 calc((100% - 80px)/2);min-width:0;}
.karuna-site .about-grid>:first-child{flex:1 1 0;}.karuna-site .about-grid>:last-child{flex:1.5 1 0;}
.karuna-site .vmm-cards>*{flex:0 0 calc((100% - 16px)/2);min-width:0;}
.karuna-site .academics-grid>*,.karuna-site .learning-pillars>*{flex:0 0 calc((100% - 28px)/2);min-width:0;}
.karuna-site .admissions-layout>*,.karuna-site .contact-layout>*{flex:0 0 calc((100% - 60px)/2);min-width:0;}
.karuna-site .footer-grid>:nth-child(1){flex:2 1 0;}.karuna-site .footer-grid>:nth-child(2),.karuna-site .footer-grid>:nth-child(3){flex:1 1 0;}.karuna-site .footer-grid>:nth-child(4){flex:1.5 1 0;min-width:0;}
.karuna-site :is(.features-grid,.skills-grid,.boards-big-grid){gap:24px!important;}.karuna-site .class-cards{gap:28px!important;}.karuna-site :is(.model-layout,.about-grid){gap:80px!important;}.karuna-site .vmm-cards{gap:16px!important;}.karuna-site :is(.academics-grid,.learning-pillars){gap:28px!important;}.karuna-site :is(.admissions-layout,.contact-layout){gap:60px!important;}.karuna-site .footer-grid{gap:48px!important;}

@media(max-width:1100px){.karuna-site .features-grid>*,.karuna-site .skills-grid>*,.karuna-site .boards-big-grid>*{flex-basis:calc((100% - 24px)/2);}.karuna-site .footer-grid>*{flex:0 0 calc((100% - 32px)/2)!important;}.karuna-site .footer-grid{gap:32px!important;}}
@media(max-width:900px){.karuna-site .model-layout>*,.karuna-site .class-cards>*,.karuna-site .about-grid>*,.karuna-site .admissions-layout>*,.karuna-site .contact-layout>*,.karuna-site .academics-grid>*,.karuna-site .learning-pillars>*{flex:0 0 100%!important;}}
@media(max-width:600px){.karuna-site .features-grid>*,.karuna-site .skills-grid>*,.karuna-site .footer-grid>*{flex:0 0 100%!important;}}

/* Karuna footer alignment: keep native Button links aligned with their headings. */
body.karuna-conversion .karuna-site .footer-grid {
  align-items: flex-start;
}
body.karuna-conversion .karuna-site .footer-grid > .karuna-container {
  min-width: 0;
}
body.karuna-conversion .karuna-site .footer-links,
body.karuna-conversion .karuna-site .footer-links .elementor-button {
  text-align: start;
}
body.karuna-conversion .karuna-site .footer-links .elementor-button {
  white-space: normal;
  overflow-wrap: break-word;
}
body.karuna-conversion .karuna-site .footer-links > .elementor-widget:last-child .elementor-button {
  margin-bottom: 0;
}
/* End Karuna footer alignment. */

/* Karuna About mobile layout: no changes above the existing 900px breakpoint. */
@media (max-width: 900px) {
  body.karuna-conversion #page-about .timeline {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0;
    padding: 8px 4px 24px;
    overflow: visible;
    scroll-snap-type: none;
  }
  body.karuna-conversion #page-about .timeline > .tl-item {
    flex: 0 0 auto;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 20px;
    width: 100%;
    min-width: 0;
    max-width: none;
    padding: 8px 0;
    text-align: start;
  }
  body.karuna-conversion #page-about .tl-item > .tl-dot {
    flex: 0 0 44px;
    width: 44px;
    min-width: 44px;
    max-width: 44px;
    height: 44px;
    margin: 0;
  }
  body.karuna-conversion #page-about .tl-item > .tl-content {
    flex: 1 1 0;
    min-width: 0;
    overflow-wrap: break-word;
  }
  body.karuna-conversion #page-about .timeline > .tl-connector {
    flex: 0 0 24px;
    align-self: flex-start;
    width: 3px;
    min-width: 3px;
    height: 24px;
    min-height: 24px;
    margin: 0 0 0 20.5px;
    background: linear-gradient(180deg, var(--primary), var(--primary-light));
  }
}
@media (max-width: 600px) {
  body.karuna-conversion #page-about .director-card {
    padding: 28px 24px;
    gap: 24px;
  }
  body.karuna-conversion #page-about .director-text {
    width: 100%;
    min-width: 0;
    overflow-wrap: break-word;
  }
  body.karuna-conversion #page-about .director-text blockquote {
    margin-inline: 0;
    padding-left: 16px;
  }
}
@media (max-width: 480px) {
  body.karuna-conversion #page-about .vmm-cards > .vmm-card {
    flex: 0 0 100%;
    min-width: 0;
  }
}
/* End Karuna About mobile layout. */


/* ==========================================================================
   TUITION CLASSES PAGE CUSTOM STYLES (Added for Page 105)
   ========================================================================== */
.tuition-hero-section {
  padding: 130px 24px 80px !important;
  text-align: center;
  background: #372A74 !important;
  background: radial-gradient(ellipse at center, rgba(245, 166, 35, 0.12) 0%, rgba(37, 29, 85, 0.85) 60%, #251D55 100%) !important;
  position: relative;
  overflow: hidden;
  color: #FFFFFF !important;
}
.tuition-location-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(245, 166, 35, 0.15) !important;
  border: 1px solid rgba(245, 166, 35, 0.4) !important;
  color: #FFD166 !important;
  padding: 8px 22px;
  border-radius: 50px;
  font-size: 0.9rem;
  font-weight: 600;
  margin-bottom: 24px;
}
.tuition-hero-title {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(2.4rem, 5vw, 4.2rem) !important;
  font-weight: 900 !important;
  color: #FFFFFF !important;
  line-height: 1.15 !important;
  margin: 0 auto 18px !important;
  max-width: 900px;
}
.tuition-hero-title .gold {
  color: #F5A623 !important;
}
.tuition-hero-desc {
  font-size: 1.12rem !important;
  line-height: 1.75 !important;
  color: rgba(255, 255, 255, 0.88) !important;
  max-width: 780px;
  margin: 0 auto 30px !important;
}
.tuition-board-strip {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  margin: 0 auto 36px;
  max-width: 800px;
}
.tuition-board-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.14) !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  color: #FFFFFF !important;
  padding: 7px 18px;
  border-radius: 50px;
  font-size: 0.88rem;
  font-weight: 600;
}
.tuition-btn-gold {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: #F5A623 !important;
  color: #251D55 !important;
  font-weight: 700 !important;
  padding: 14px 34px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  font-size: 0.96rem !important;
  box-shadow: 0 8px 24px rgba(245, 166, 35, 0.35) !important;
}
.tuition-btn-outline {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: transparent !important;
  color: #FFFFFF !important;
  border: 2px solid rgba(255, 255, 255, 0.45) !important;
  font-weight: 600 !important;
  padding: 12px 28px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  font-size: 0.96rem !important;
}
