/* ==========================================================================
   SUNSHINE MAKEUP STUDIO & ACADEMY - ACADEMY PAGE & SYSTEM STYLING
   Luxury Editorial Design System for Homepage & Dedicated Academy Page
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Alex+Brush&family=Playfair+Display:ital,wght@0,500;0,600;0,700;0,800;1,400;1,600;1,700&family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');

:root {
  --sunshine-burgundy: #8B1D38;
  --sunshine-burgundy-dark: #580B1B;
  --sunshine-burgundy-hover: #A32444;
  --sunshine-burgundy-light: #B23253;
  --sunshine-gold: #C89D66;
  --sunshine-gold-light: #DEBC97;
  --sunshine-blush-bg: #FAF3EF;
  --sunshine-blush-card: #FFFFFF;
  --sunshine-blush-badge: #FDECE5;
  --sunshine-border-luxury: #F2DDD2;
  --sunshine-border-card: #EAE0D8;
  --sunshine-text-title: #1E1315;
  --sunshine-text-body: #4A3E3D;
  --sunshine-text-muted: #766460;
  --sunshine-font-serif: 'Playfair Display', Georgia, 'Times New Roman', serif;
  --sunshine-font-sans: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --sunshine-font-script: 'Alex Brush', cursive;
  --sunshine-ease: cubic-bezier(0.16, 1, 0.3, 1);
}

/* ==========================================================================
   1. HOMEPAGE ACADEMY SECTION WRAPPER & COMPONENTS (PRESERVED)
   ========================================================================== */
.sunshine-academy-section {
  position: relative;
  background-color: var(--sunshine-blush-bg);
  background: radial-gradient(circle at 10% 15%, rgba(255, 255, 255, 0.98) 0%, #FAF3EF 55%, #F4ECE4 100%);
  padding: 85px 0 95px 0;
  overflow: hidden;
  font-family: var(--sunshine-font-sans);
  color: var(--sunshine-text-body);
}

.sunshine-academy-bg-decor {
  position: absolute;
  pointer-events: none;
  z-index: 1;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.14;
}

.sunshine-academy-bg-decor.top-right {
  top: 0;
  right: 0;
  width: 320px;
  height: 320px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none' stroke='%238B1D38' stroke-width='1.2'%3E%3Cpath d='M190 10 C140 30 110 80 130 130 C150 180 190 190 190 190'/%3E%3Cpath d='M130 70 C100 60 70 80 80 110 C90 140 120 135 130 130'/%3E%3Cpath d='M150 40 C120 20 90 40 100 70 C110 100 140 90 150 80'/%3E%3Cpath d='M170 110 C150 120 140 150 160 170 C180 190 200 170 190 150'/%3E%3Cpath d='M130 130 C110 150 90 170 60 180'/%3E%3Cpath d='M100 110 C80 120 60 140 40 170'/%3E%3C/svg%3E");
}

.sunshine-academy-bg-decor.bottom-left {
  bottom: 0;
  left: 0;
  width: 280px;
  height: 280px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none' stroke='%238B1D38' stroke-width='1.2'%3E%3Cpath d='M10 190 C60 170 90 120 70 70 C50 20 10 10 10 10'/%3E%3Cpath d='M70 130 C100 140 130 120 120 90 C110 60 80 65 70 70'/%3E%3Cpath d='M50 160 C80 180 110 160 100 130 C90 100 60 110 50 120'/%3E%3Cpath d='M30 90 C50 80 60 50 40 30 C20 10 0 30 10 50'/%3E%3C/svg%3E");
}

.sunshine-academy-bg-decor.bottom-right {
  bottom: 0;
  right: 0;
  width: 240px;
  height: 240px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none' stroke='%238B1D38' stroke-width='1.2'%3E%3Cpath d='M190 190 C140 170 110 120 130 70 C150 20 190 10 190 10'/%3E%3Cpath d='M130 130 C100 140 70 120 80 90 C90 60 120 65 130 70'/%3E%3C/svg%3E");
}

.sunshine-academy-intro {
  position: relative;
  z-index: 2;
  padding-right: 25px;
}

.sunshine-academy-tag {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}

.sunshine-academy-tag .tag-line {
  display: inline-block;
  width: 34px;
  height: 1.5px;
  background-color: var(--sunshine-burgundy);
  opacity: 0.75;
}

.sunshine-academy-tag .tag-text {
  font-family: var(--sunshine-font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 3.5px;
  color: var(--sunshine-burgundy);
  text-transform: uppercase;
}

.sunshine-academy-title {
  font-family: var(--sunshine-font-serif);
  font-size: 46px;
  font-weight: 700;
  line-height: 1.18;
  color: var(--sunshine-text-title);
  margin-bottom: 20px;
  letter-spacing: -0.5px;
}

.sunshine-academy-title .title-highlight {
  color: var(--sunshine-burgundy);
  font-weight: 700;
}

.sunshine-academy-desc {
  font-family: var(--sunshine-font-sans);
  font-size: 14.5px;
  line-height: 1.85;
  color: var(--sunshine-text-body);
  margin-bottom: 26px;
  font-weight: 400;
}

.sunshine-academy-desc b {
  color: var(--sunshine-text-title);
  font-weight: 600;
}

.sunshine-academy-highlights {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 24px;
  padding-top: 22px;
  border-top: 1px solid var(--sunshine-border-luxury);
}

.sunshine-highlight-item {
  display: flex;
  align-items: center;
  gap: 10px;
  transition: transform 0.3s ease;
}

.sunshine-highlight-icon {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background-color: var(--sunshine-blush-badge);
  border: 1.5px solid var(--sunshine-border-luxury);
  color: var(--sunshine-burgundy);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  flex-shrink: 0;
  transition: all 0.3s var(--sunshine-ease);
}

.sunshine-highlight-item:hover .sunshine-highlight-icon {
  background-color: var(--sunshine-burgundy);
  color: #FFFFFF;
  border-color: var(--sunshine-burgundy);
  transform: scale(1.08);
}

.sunshine-highlight-text {
  font-family: var(--sunshine-font-sans);
  font-size: 12.5px;
  font-weight: 600;
  color: var(--sunshine-text-title);
  line-height: 1.28;
}

.sunshine-academy-showcase {
  position: relative;
  max-width: 430px;
  margin: 0 auto;
  z-index: 2;
}

.sunshine-showcase-arch {
  position: relative;
  width: 100%;
  height: 410px;
  border-radius: 215px 215px 24px 24px;
  overflow: hidden;
  box-shadow: 0 20px 45px rgba(139, 29, 56, 0.15);
  border: 6px solid #FFFFFF;
  background-color: #FAF3EF;
}

.sunshine-showcase-main-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 20%;
  transition: transform 0.6s var(--sunshine-ease);
}

.sunshine-showcase-arch:hover .sunshine-showcase-main-img {
  transform: scale(1.04);
}

.sunshine-badge-experience {
  position: absolute;
  top: 15px;
  left: -22px;
  width: 118px;
  height: 118px;
  border-radius: 50%;
  background: linear-gradient(135deg, #8B1D38 0%, #580B1B 100%) !important;
  color: #FFFFFF !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  box-shadow: 0 12px 30px rgba(139, 29, 56, 0.35), 0 4px 10px rgba(0, 0, 0, 0.2) !important;
  border: 4px solid #FFFFFF !important;
  z-index: 5 !important;
  padding: 6px !important;
  transition: transform 0.35s var(--sunshine-ease);
}

.sunshine-badge-experience:hover {
  transform: scale(1.08);
}

.sunshine-badge-num {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 34px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  color: #FFFFFF !important;
  letter-spacing: -0.5px !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.35) !important;
  display: block;
}

.sunshine-badge-label {
  font-family: var(--sunshine-font-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.2px !important;
  line-height: 1.25 !important;
  color: #FFFFFF !important;
  margin-top: 3px !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.35) !important;
  display: block;
}

.sunshine-script-accent {
  position: absolute;
  bottom: 45px;
  left: -32px;
  font-family: var(--sunshine-font-script) !important;
  font-size: 34px;
  line-height: 1.1;
  color: var(--sunshine-burgundy) !important;
  display: flex;
  flex-direction: column;
  z-index: 3;
  pointer-events: none;
  text-shadow: 0 2px 10px rgba(255, 255, 255, 0.95);
}

.sunshine-showcase-mini-card {
  position: absolute;
  bottom: -18px;
  right: -22px;
  width: 140px;
  height: 175px;
  background-color: #FFFFFF;
  padding: 5px;
  border-radius: 14px;
  box-shadow: 0 14px 35px rgba(0, 0, 0, 0.18);
  transform: rotate(6deg);
  z-index: 3;
  transition: transform 0.4s var(--sunshine-ease);
}

.sunshine-showcase-mini-card:hover {
  transform: rotate(0deg) scale(1.05);
}

.sunshine-showcase-mini-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 9px;
}

.sunshine-academy-cards-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-top: 50px;
  position: relative;
  z-index: 2;
}

.sunshine-course-card {
  background-color: var(--sunshine-blush-card) !important;
  border-radius: 18px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid var(--sunshine-border-card) !important;
  box-shadow: 0 10px 28px rgba(139, 29, 56, 0.06) !important;
  transition: all 0.35s var(--sunshine-ease);
  display: flex;
  flex-direction: column;
  overflow: hidden !important;
  height: 100%;
}

.sunshine-course-card:hover {
  transform: translateY(-8px);
  border-color: rgba(139, 29, 56, 0.35) !important;
  box-shadow: 0 20px 45px rgba(139, 29, 56, 0.14) !important;
}

.sunshine-course-media {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: 260px;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background-color: #F8EFEA;
  border-radius: 0 !important;
}

.sunshine-course-media img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  object-fit: contain !important;
  transition: transform 0.5s var(--sunshine-ease);
}

.sunshine-course-card:hover .sunshine-course-media img {
  transform: scale(1.03);
}

.sunshine-course-body {
  padding: 22px 20px 24px 20px !important;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-grow: 1;
  justify-content: space-between;
  background-color: #FFFFFF;
}

.sunshine-course-title {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 23px !important;
  font-weight: 700 !important;
  color: var(--sunshine-burgundy) !important;
  margin-bottom: 5px !important;
  letter-spacing: -0.3px;
  line-height: 1.25;
}

.sunshine-course-subtitle {
  font-family: var(--sunshine-font-sans) !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  color: var(--sunshine-text-muted) !important;
  text-transform: uppercase;
  margin-bottom: 16px !important;
  line-height: 1.2;
}

.sunshine-course-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--sunshine-burgundy) 0%, var(--sunshine-burgundy-hover) 100%) !important;
  color: #FFFFFF !important;
  font-family: var(--sunshine-font-sans) !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  padding: 9px 26px !important;
  border-radius: 50px !important;
  text-decoration: none;
  border: 1px solid transparent;
  box-shadow: 0 4px 14px rgba(139, 29, 56, 0.26);
  transition: all 0.3s var(--sunshine-ease);
  cursor: pointer;
}

.sunshine-course-btn i {
  font-size: 12px;
  margin-left: 7px;
  transition: transform 0.25s ease;
}

.sunshine-course-btn:hover {
  background: linear-gradient(135deg, var(--sunshine-burgundy-dark) 0%, var(--sunshine-burgundy) 100%) !important;
  color: #FFFFFF !important;
  box-shadow: 0 8px 22px rgba(139, 29, 56, 0.38);
  transform: translateY(-2px);
}

.sunshine-course-btn:hover i {
  transform: translateX(4px);
}

.sunshine-academy-viewall-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  color: var(--sunshine-burgundy) !important;
  border: 1.5px solid var(--sunshine-burgundy);
  font-family: var(--sunshine-font-sans) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px;
  padding: 11px 32px;
  border-radius: 50px;
  text-decoration: none;
  transition: all 0.3s var(--sunshine-ease);
}

.sunshine-academy-viewall-btn:hover {
  background-color: var(--sunshine-burgundy);
  color: #FFFFFF !important;
  box-shadow: 0 8px 24px rgba(139, 29, 56, 0.25);
  transform: translateY(-2px);
}


/* ==========================================================================
   2. DEDICATED ACADEMY PAGE HERO SECTION (.sunshine-academy-hero-section)
   ========================================================================== */
.sunshine-academy-hero-section {
  position: relative !important;
  background: linear-gradient(135deg, #FFF7F4 0%, #FEEDE6 50%, #FDE4DB 100%) !important;
  padding: 55px 0 65px 0 !important;
  overflow: hidden !important;
  font-family: var(--sunshine-font-sans) !important;
  color: var(--sunshine-text-body) !important;
  border-bottom: 1px solid #F3DDD3 !important;
}

/* Background Soft Organic Blush Halo & Watermarks */
.academy-hero-blush-swoop {
  position: absolute !important;
  right: -60px !important;
  top: -40px !important;
  width: 700px !important;
  height: 650px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(254, 219, 214, 0.65) 0%, rgba(254, 232, 227, 0.3) 60%, transparent 80%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.academy-hero-decor {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 1 !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}

.academy-hero-decor.floral-left {
  top: -10px !important;
  left: -20px !important;
  width: 290px !important;
  height: 290px !important;
  opacity: 0.26 !important;
  background-image: url("data:image/svg+xml,%3Csvg width='320' height='320' viewBox='0 0 320 320' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-10 10C35 40 75 90 90 145C100 185 85 220 50 250C30 270 5 285 -20 290' stroke='%23BA1B4D' stroke-width='1.4' stroke-opacity='0.45'/%3E%3Cpath d='M90 145C130 110 180 85 235 80C265 75 295 85 315 105' stroke='%23BA1B4D' stroke-width='1.2' stroke-opacity='0.35'/%3E%3Cpath d='M45 65C70 45 105 50 125 75C140 95 135 125 115 140' stroke='%23BA1B4D' stroke-width='1' stroke-opacity='0.3' stroke-dasharray='3 3'/%3E%3Cpath d='M80 180C110 160 145 170 165 200C180 225 170 255 145 270' stroke='%23BA1B4D' stroke-width='1' stroke-opacity='0.3' stroke-dasharray='3 3'/%3E%3Ccircle cx='90' cy='145' r='3' fill='%23BA1B4D' fill-opacity='0.4'/%3E%3Ccircle cx='125' cy='75' r='2.5' fill='%23BA1B4D' fill-opacity='0.4'/%3E%3C/svg%3E") !important;
}

.academy-hero-decor.floral-right {
  bottom: -30px !important;
  right: -20px !important;
  width: 280px !important;
  height: 280px !important;
  opacity: 0.25 !important;
  background-image: url("data:image/svg+xml,%3Csvg width='340' height='340' viewBox='0 0 340 340' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M360 360C300 280 240 200 280 100C300 50 240 60 200 90' stroke='%238B1D38' stroke-width='1.2' stroke-opacity='0.6'/%3E%3Cpath d='M310 320C250 250 190 180 170 100' stroke='%238B1D38' stroke-width='1' stroke-opacity='0.4' stroke-dasharray='3 3'/%3E%3C/svg%3E") !important;
}

/* Floating Sparkles */
.academy-hero-sparkle {
  position: absolute !important;
  color: #D4904C !important;
  text-shadow: 0 0 8px rgba(212, 144, 76, 0.45) !important;
  pointer-events: none !important;
  z-index: 1 !important;
  user-select: none !important;
  animation: academySparklePulse 3.5s infinite alternate ease-in-out !important;
}

.academy-hero-sparkle.sp-1 { top: 38px !important; left: 24px !important; font-size: 17px !important; opacity: 0.75 !important; animation-delay: 0s !important; }
.academy-hero-sparkle.sp-2 { top: 48% !important; left: 47% !important; font-size: 15px !important; opacity: 0.65 !important; animation-delay: 1.2s !important; }
.academy-hero-sparkle.sp-3 { top: 180px !important; left: 60px !important; font-size: 13px !important; opacity: 0.55 !important; animation-delay: 2.2s !important; }

@keyframes academySparklePulse {
  0% { transform: scale(0.85); opacity: 0.35; }
  100% { transform: scale(1.18); opacity: 0.85; }
}

/* 1. LEFT COLUMN: CONTENT, TAG & BREADCRUMBS */
.academy-hero-content {
  position: relative !important;
  z-index: 2 !important;
  padding-right: 15px !important;
}

.academy-hero-breadcrumb-wrap {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 16px !important;
  flex-wrap: wrap !important;
}

.academy-hero-tag {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  background: rgba(255, 241, 237, 0.95) !important;
  border: 1.2px solid #F4C4B8 !important;
  padding: 5px 16px !important;
  border-radius: 50px !important;
  font-family: var(--sunshine-font-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--sunshine-burgundy) !important;
  letter-spacing: 0.8px !important;
  text-transform: uppercase !important;
  box-shadow: 0 2px 8px rgba(139, 29, 56, 0.04) !important;
}

.academy-hero-tag .tag-icon {
  font-size: 11.5px !important;
  color: var(--sunshine-burgundy) !important;
  line-height: 1 !important;
}

.breadcrumb-dash {
  color: #E2B2A6 !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  line-height: 1 !important;
}

.academy-hero-breadcrumb {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-family: var(--sunshine-font-sans) !important;
  font-size: 11.5px !important;
}

.academy-hero-breadcrumb .bc-link {
  color: #554C4E !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  transition: color 0.25s ease !important;
}

.academy-hero-breadcrumb .bc-link:hover {
  color: var(--sunshine-burgundy) !important;
}

.academy-hero-breadcrumb .bc-sep {
  color: #D3A59B !important;
  font-size: 11px !important;
}

.academy-hero-breadcrumb .bc-current {
  color: var(--sunshine-burgundy) !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px !important;
}

/* Main Heading */
.academy-hero-title {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 38px !important;
  font-weight: 700 !important;
  color: #1A1516 !important;
  line-height: 1.22 !important;
  margin-bottom: 14px !important;
  letter-spacing: -0.3px !important;
}

.academy-hero-title .script-mathura-wrap {
  position: relative !important;
  display: inline-block !important;
}

.academy-hero-title .script-mathura {
  font-family: 'Alex Brush', cursive, var(--sunshine-font-serif) !important;
  font-size: 58px !important;
  color: #941C35 !important;
  font-weight: 400 !important;
  display: inline-block !important;
  margin-left: 4px !important;
  line-height: 0.9 !important;
  vertical-align: -3px !important;
}

.academy-hero-title .script-heart {
  font-size: 26px !important;
  color: #941C35 !important;
  font-weight: 300 !important;
  display: inline-block !important;
  margin-left: 2px !important;
  transform: rotate(12deg) translateY(-8px) !important;
  line-height: 1 !important;
}

.academy-hero-title .script-underline-flourish {
  position: absolute !important;
  bottom: -6px !important;
  left: 6px !important;
  width: 96% !important;
  height: 16px !important;
  pointer-events: none !important;
}

/* Description */
.academy-hero-desc {
  font-family: var(--sunshine-font-sans) !important;
  font-size: 13.5px !important;
  line-height: 1.7 !important;
  color: #554C4E !important;
  margin-bottom: 24px !important;
  max-width: 530px !important;
}

.academy-hero-desc b {
  color: #1A1516 !important;
  font-weight: 600 !important;
}

/* Action Button: Book Free Demo Class */
.academy-hero-btns {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-bottom: 26px !important;
}

.academy-btn-primary {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: linear-gradient(135deg, #7A122B 0%, #911A37 100%) !important;
  color: #FFFFFF !important;
  font-family: var(--sunshine-font-sans) !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  padding: 10px 10px 10px 22px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  box-shadow: 0 8px 24px rgba(122, 18, 43, 0.32) !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
  border: none !important;
}

.academy-btn-primary:hover {
  background: linear-gradient(135deg, #5C0B1E 0%, #7A122B 100%) !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 28px rgba(122, 18, 43, 0.45) !important;
}

.academy-btn-primary .btn-icon-calendar {
  font-size: 15px !important;
  color: #FFFFFF !important;
  line-height: 1 !important;
}

.academy-btn-primary .btn-text {
  color: #FFFFFF !important;
  line-height: 1 !important;
}

.academy-btn-primary .btn-arrow-circle {
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background: #FFFFFF !important;
  color: #7A122B !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 11px !important;
  margin-left: 6px !important;
  transition: transform 0.25s ease !important;
}

.academy-btn-primary:hover .btn-arrow-circle {
  transform: translateX(3px) !important;
}

/* 4 Feature Pillars Row */
.academy-hero-pillars {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  padding-top: 18px !important;
  border-top: 1px solid #EFCBC1 !important;
  flex-wrap: nowrap !important;
}

.academy-pillar-col {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: 0 14px !important;
  transition: transform 0.3s ease !important;
}

.academy-pillar-col:first-child {
  padding-left: 0 !important;
}

.academy-pillar-col .pillar-icon-badge {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background-color: #FEECE8 !important;
  border: 1.5px solid #F7CBC1 !important;
  color: var(--sunshine-burgundy) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 15px !important;
  flex-shrink: 0 !important;
  margin-bottom: 8px !important;
  box-shadow: 0 4px 10px rgba(139, 29, 56, 0.06) !important;
  transition: transform 0.3s ease, background-color 0.3s ease, color 0.3s ease !important;
}

.academy-pillar-col:hover .pillar-icon-badge {
  background-color: var(--sunshine-burgundy) !important;
  color: #FFFFFF !important;
  border-color: var(--sunshine-burgundy) !important;
  transform: translateY(-3px) scale(1.05) !important;
}

.academy-pillar-col .pillar-title {
  font-family: var(--sunshine-font-sans) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #282122 !important;
  line-height: 1.25 !important;
  white-space: normal !important;
}

.pillar-divider {
  width: 1px !important;
  height: 38px !important;
  background: #EBC6BC !important;
  margin: 0 2px !important;
  flex-shrink: 0 !important;
}

/* 2. RIGHT COLUMN: VISUAL COMPOSITION / ARCH & FLOATING THUMBNAILS */
.academy-hero-visual-wrap {
  position: relative !important;
  width: 100% !important;
  max-width: 500px !important;
  height: 460px !important;
  margin: 0 auto !important;
  z-index: 2 !important;
}

/* Soft Glow Halo behind Arch */
.academy-arch-halo {
  position: absolute !important;
  top: 10px !important;
  right: 15px !important;
  width: 390px !important;
  height: 430px !important;
  border-radius: 140px 240px 50px 50px !important;
  background: radial-gradient(circle, rgba(246, 203, 195, 0.45) 0%, rgba(254, 230, 225, 0.1) 70%, transparent 100%) !important;
  filter: blur(12px) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Botanical Watercolor Roses */
.academy-flower-decor {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 3 !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}

.academy-flower-decor.rose-top-right {
  top: -10px !important;
  right: -20px !important;
  width: 130px !important;
  height: 130px !important;
  opacity: 0.85 !important;
  background-image: url("data:image/svg+xml,%3Csvg width='140' height='140' viewBox='0 0 140 140' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M50 35C65 18 90 20 102 34C114 48 112 70 98 84C84 98 60 100 45 88C30 75 32 50 50 35Z' fill='%23F6BEB1' fill-opacity='0.45'/%3E%3Cpath d='M58 44C68 32 85 34 94 45C102 56 100 70 90 80C80 90 66 90 56 80C46 70 48 54 58 44Z' fill='%23E98F82' fill-opacity='0.6'/%3E%3Cpath d='M65 52C72 45 82 46 88 54C92 60 90 70 82 75C75 80 68 76 64 70C60 64 62 56 65 52Z' fill='%23BA2A46' fill-opacity='0.75'/%3E%3Cpath d='M25 80C10 88 2 75 10 60C18 50 32 60 25 80Z' fill='%237D9667' fill-opacity='0.65'/%3E%3Cpath d='M105 85C118 92 125 80 118 68C110 58 100 68 105 85Z' fill='%238FA875' fill-opacity='0.6'/%3E%3C/svg%3E") !important;
}

.academy-flower-decor.rose-bottom-right {
  bottom: 0px !important;
  right: -25px !important;
  width: 110px !important;
  height: 110px !important;
  opacity: 0.8 !important;
  background-image: url("data:image/svg+xml,%3Csvg width='120' height='120' viewBox='0 0 120 120' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M40 28C52 14 72 16 82 26C92 36 90 54 80 65C70 76 50 78 38 68C28 58 30 40 40 28Z' fill='%23F6BEB1' fill-opacity='0.4'/%3E%3Cpath d='M46 35C54 25 68 26 75 34C80 42 80 54 72 62C65 68 54 68 47 62C40 54 42 42 46 35Z' fill='%23E98F82' fill-opacity='0.55'/%3E%3Cpath d='M52 42C58 36 66 38 70 44C74 50 70 58 64 60C58 62 52 60 50 54C48 48 50 44 52 42Z' fill='%23C93E57' fill-opacity='0.7'/%3E%3Cpath d='M85 70C98 75 102 62 95 52C88 45 80 55 85 70Z' fill='%238DA378' fill-opacity='0.6'/%3E%3C/svg%3E") !important;
}

.academy-flower-decor.rose-left {
  top: 140px !important;
  left: -20px !important;
  width: 90px !important;
  height: 90px !important;
  opacity: 0.7 !important;
  background-image: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 65C15 55 10 35 25 20C40 5 65 10 75 25C85 40 75 65 60 75C45 85 35 75 30 65Z' fill='%23F4B5A6' fill-opacity='0.45'/%3E%3Cpath d='M35 55C25 45 25 30 38 22C50 15 65 20 70 32C75 45 68 60 55 65C45 70 38 62 35 55Z' fill='%23E9897E' fill-opacity='0.6'/%3E%3Cpath d='M42 45C38 38 42 28 50 25C58 22 65 28 65 35C65 42 58 48 50 48C45 48 43 46 42 45Z' fill='%23D4586B' fill-opacity='0.75'/%3E%3Cpath d='M15 70C5 75 0 65 5 55C10 48 20 55 15 70Z' fill='%238DA378' fill-opacity='0.65'/%3E%3C/svg%3E") !important;
}

/* Grand Burgundy & Gold Dome Arch Frame */
.academy-arch-outer-frame {
  position: absolute !important;
  top: 15px !important;
  right: 15px !important;
  width: 380px !important;
  height: 420px !important;
  border-radius: 140px 240px 30px 40px !important;
  border: 6px solid #6E0E24 !important;
  box-shadow: inset 0 0 0 2px #DFB34E, 0 20px 48px rgba(110, 14, 36, 0.28) !important;
  overflow: hidden !important;
  z-index: 2 !important;
  background: #6E0E24 !important;
  transition: transform 0.4s var(--sunshine-ease) !important;
}

.academy-arch-inner-mat {
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  border-radius: 134px 234px 24px 34px !important;
  position: relative !important;
}

.arch-model-photo {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 84% 28% !important;
  display: block !important;
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.academy-arch-outer-frame:hover .arch-model-photo {
  transform: scale(1.04) !important;
}

/* Two Vertically Stacked Floating Thumbnail Cards */
.academy-hero-thumbs-col {
  position: absolute !important;
  top: 55px !important;
  left: -15px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  z-index: 4 !important;
}

.academy-hero-thumb-card {
  width: 135px !important;
  height: 125px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  border: 4px solid #FFFFFF !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18) !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease !important;
}

.academy-hero-thumb-card:hover {
  transform: translateY(-3px) scale(1.05) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22) !important;
}

.academy-hero-thumb-card .thumb-photo {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.academy-hero-thumb-card .eye-photo {
  object-position: 33% 40% !important;
  transform: scale(1.4) !important;
  transform-origin: 33% 40% !important;
}

.academy-hero-thumb-card .face-photo {
  object-position: 50% 15% !important;
}

/* Right Circular Badge "20+ Yrs Excellence" */
.academy-hero-badge {
  position: absolute !important;
  bottom: 85px !important;
  right: -15px !important;
  width: 96px !important;
  height: 96px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #741128 0%, #540818 100%) !important;
  color: #FFFFFF !important;
  border: 2.2px solid #DFB34E !important;
  box-shadow: 0 0 0 3px #FFFFFF, 0 10px 25px rgba(110, 14, 36, 0.35) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  z-index: 5 !important;
  padding: 6px !important;
  transition: transform 0.35s ease !important;
}

.academy-hero-badge:hover {
  transform: rotate(8deg) scale(1.06) !important;
}

.academy-hero-badge .badge-icon {
  font-size: 15px !important;
  color: #DFB34E !important;
  margin-bottom: 2px !important;
  line-height: 1 !important;
}

.academy-hero-badge .badge-title {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: #FFFFFF !important;
}

.academy-hero-badge .badge-sub {
  font-family: var(--sunshine-font-sans) !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: #FFFFFF !important;
  margin-top: 2px !important;
  line-height: 1 !important;
}

.academy-hero-badge .badge-flourish {
  color: #DFB34E !important;
  font-size: 10px !important;
  line-height: 1 !important;
  margin-top: 2px !important;
}


/* ==========================================================================
   3. ABOUT OUR COURSES / ACADEMY MISSION SECTION (.academy-story-section)
   ========================================================================== */
.academy-story-section {
  padding: 85px 0 90px 0 !important;
  background-color: #FFFFFF !important;
  font-family: var(--sunshine-font-sans) !important;
  position: relative !important;
}

/* Section Header Shared */
.sunshine-section-tag {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #FFF5F0 !important;
  border: 1px solid #F3D5C8 !important;
  padding: 4px 14px !important;
  border-radius: 50px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--sunshine-burgundy) !important;
  text-transform: uppercase !important;
  letter-spacing: 1.2px !important;
  margin-bottom: 12px !important;
}

.sunshine-section-title {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 34px !important;
  font-weight: 700 !important;
  color: var(--sunshine-text-title) !important;
  line-height: 1.25 !important;
  margin-bottom: 18px !important;
}

.sunshine-section-title .title-accent {
  color: var(--sunshine-burgundy) !important;
}

.academy-story-lead {
  font-size: 15px !important;
  line-height: 1.8 !important;
  color: #2D2224 !important;
  font-weight: 500 !important;
  margin-bottom: 16px !important;
  padding-left: 16px !important;
  border-left: 3.5px solid var(--sunshine-burgundy) !important;
}

.academy-story-p {
  font-size: 14px !important;
  line-height: 1.75 !important;
  color: var(--sunshine-text-body) !important;
  margin-bottom: 16px !important;
}

/* Key Academy Perks Grid */
.academy-perks-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 14px !important;
  margin: 24px 0 28px 0 !important;
}

.academy-perk-card {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  background: #FFFDFB !important;
  border: 1px solid #F3E8E2 !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  transition: all 0.3s ease !important;
}

.academy-perk-card:hover {
  transform: translateY(-3px) !important;
  border-color: #DEBC97 !important;
  box-shadow: 0 8px 20px rgba(139, 29, 56, 0.08) !important;
}

.academy-perk-icon {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  border-radius: 10px !important;
  background: #FDECE5 !important;
  color: var(--sunshine-burgundy) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 15px !important;
}

.academy-perk-info h5 {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  color: var(--sunshine-text-title) !important;
  margin-bottom: 2px !important;
}

.academy-perk-info p {
  font-size: 12px !important;
  line-height: 1.45 !important;
  color: var(--sunshine-text-muted) !important;
  margin: 0 !important;
}

/* Left Image Collage in About */
.academy-story-visual {
  position: relative !important;
  max-width: 480px !important;
  margin: 0 auto !important;
}

.academy-story-main-img {
  width: 82% !important;
  height: 380px !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  border: 5px solid #FFFFFF !important;
  box-shadow: 0 16px 40px rgba(139, 29, 56, 0.14) !important;
}

.academy-story-main-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.academy-story-sub-img1 {
  position: absolute !important;
  top: -20px !important;
  right: 0 !important;
  width: 170px !important;
  height: 150px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  border: 4px solid #FFFFFF !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.16) !important;
  z-index: 2 !important;
}

.academy-story-sub-img1 img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.academy-story-sub-img2 {
  position: absolute !important;
  bottom: -20px !important;
  right: 20px !important;
  width: 180px !important;
  height: 160px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  border: 4px solid #FFFFFF !important;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.18) !important;
  z-index: 2 !important;
}

.academy-story-sub-img2 img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.academy-story-seal {
  position: absolute !important;
  bottom: 30px !important;
  left: -15px !important;
  background: linear-gradient(135deg, #8B1D38 0%, #580B1B 100%) !important;
  color: #FFFFFF !important;
  padding: 12px 20px !important;
  border-radius: 16px !important;
  border: 2px solid #DEBC97 !important;
  box-shadow: 0 10px 25px rgba(139, 29, 56, 0.35) !important;
  z-index: 3 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.academy-story-seal i {
  font-size: 24px !important;
  color: #DEBC97 !important;
}

.academy-story-seal strong {
  display: block !important;
  font-family: var(--sunshine-font-serif) !important;
  font-size: 14px !important;
  color: #FFFFFF !important;
  line-height: 1.2 !important;
}

.academy-story-seal span {
  font-size: 10.5px !important;
  color: #F8E7D8 !important;
}


/* ==========================================================================
   4. POPULAR COURSES GRID SECTION (.academy-courses-section)
   ========================================================================== */
.academy-courses-section {
  padding: 85px 0 95px 0 !important;
  background: linear-gradient(180deg, #FAF3EF 0%, #FFFDFB 100%) !important;
  position: relative !important;
  font-family: var(--sunshine-font-sans) !important;
}

.academy-section-header {
  text-align: center !important;
  max-width: 720px !important;
  margin: 0 auto 50px auto !important;
}

.academy-section-header .sunshine-section-tag {
  margin-bottom: 12px !important;
}

.academy-section-header p {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: var(--sunshine-text-body) !important;
}

/* 12 Courses Grid */
.academy-pg-cards-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 28px !important;
}

.academy-pg-card {
  background: #FFFFFF !important;
  border-radius: 20px !important;
  border: 1px solid var(--sunshine-border-card) !important;
  box-shadow: 0 10px 30px rgba(88, 11, 27, 0.05) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  transition: all 0.35s var(--sunshine-ease) !important;
  position: relative !important;
}

.academy-pg-card:hover {
  transform: translateY(-8px) !important;
  border-color: #DEBC97 !important;
  box-shadow: 0 20px 45px rgba(139, 29, 56, 0.14) !important;
}

/* Media Box */
.academy-pg-card-media {
  position: relative !important;
  width: 100% !important;
  height: 240px !important;
  overflow: hidden !important;
  background: #FDF0E9 !important;
}

.academy-pg-card-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.6s ease !important;
}

.academy-pg-card:hover .academy-pg-card-media img {
  transform: scale(1.06) !important;
}

.academy-pg-card-badge {
  position: absolute !important;
  top: 14px !important;
  left: 14px !important;
  background: rgba(88, 11, 27, 0.9) !important;
  backdrop-filter: blur(6px) !important;
  color: #FFFFFF !important;
  padding: 5px 14px !important;
  border-radius: 50px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.8px !important;
  border: 1px solid rgba(222, 188, 151, 0.4) !important;
  z-index: 2 !important;
}

.academy-pg-card-duration {
  position: absolute !important;
  bottom: 14px !important;
  right: 14px !important;
  background: rgba(255, 255, 255, 0.95) !important;
  backdrop-filter: blur(6px) !important;
  color: var(--sunshine-burgundy) !important;
  padding: 4px 12px !important;
  border-radius: 50px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
}

/* Card Body */
.academy-pg-card-body {
  padding: 24px 22px !important;
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
  justify-content: space-between !important;
  text-align: center !important;
}

.academy-pg-card-title {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--sunshine-text-title) !important;
  margin-bottom: 6px !important;
  line-height: 1.3 !important;
  transition: color 0.3s ease !important;
}

.academy-pg-card:hover .academy-pg-card-title {
  color: var(--sunshine-burgundy) !important;
}

.academy-pg-card-tagline {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1.8px !important;
  color: var(--sunshine-burgundy) !important;
  text-transform: uppercase !important;
  margin-bottom: 16px !important;
}

.academy-pg-card-features {
  display: flex !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-bottom: 20px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid #F3EAE4 !important;
  flex-wrap: wrap !important;
}

.academy-pg-feature-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  font-size: 11.5px !important;
  color: var(--sunshine-text-muted) !important;
  font-weight: 500 !important;
}

.academy-pg-feature-item i {
  color: var(--sunshine-gold) !important;
  font-size: 12px !important;
}

.academy-pg-card-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: linear-gradient(135deg, var(--sunshine-burgundy) 0%, var(--sunshine-burgundy-hover) 100%) !important;
  color: #FFFFFF !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  padding: 10px 24px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  box-shadow: 0 6px 18px rgba(139, 29, 56, 0.28) !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
}

.academy-pg-card-btn:hover {
  background: linear-gradient(135deg, var(--sunshine-burgundy-dark) 0%, var(--sunshine-burgundy) 100%) !important;
  color: #FFFFFF !important;
  box-shadow: 0 10px 25px rgba(139, 29, 56, 0.4) !important;
  transform: translateY(-2px) !important;
}

.academy-pg-card-btn i {
  font-size: 12px !important;
  transition: transform 0.25s ease !important;
}

.academy-pg-card-btn:hover i {
  transform: translateX(4px) !important;
}


/* ==========================================================================
   5. WHY CHOOSE SUNSHINE ACADEMY (.academy-whychoose-section)
   ========================================================================== */
.academy-whychoose-section {
  padding: 85px 0 90px 0 !important;
  background-color: #FFFFFF !important;
  font-family: var(--sunshine-font-sans) !important;
  position: relative !important;
}

.academy-why-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 24px 0 0 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

.academy-why-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 16px !important;
  background: #FFFDFB !important;
  border: 1px solid #F3E8E2 !important;
  border-radius: 16px !important;
  padding: 18px 20px !important;
  transition: all 0.3s ease !important;
}

.academy-why-item:hover {
  transform: translateX(6px) !important;
  border-color: #DEBC97 !important;
  box-shadow: 0 8px 22px rgba(139, 29, 56, 0.08) !important;
}

.academy-why-icon {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  border-radius: 12px !important;
  background: #FDECE5 !important;
  color: var(--sunshine-burgundy) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  transition: all 0.3s ease !important;
}

.academy-why-item:hover .academy-why-icon {
  background: var(--sunshine-burgundy) !important;
  color: #FFFFFF !important;
}

.academy-why-content h4 {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 16.5px !important;
  font-weight: 700 !important;
  color: var(--sunshine-text-title) !important;
  margin-bottom: 4px !important;
}

.academy-why-content p {
  font-size: 13px !important;
  line-height: 1.6 !important;
  color: var(--sunshine-text-body) !important;
  margin: 0 !important;
}

/* Why Choose Visual */
.academy-why-visual {
  position: relative !important;
  max-width: 460px !important;
  margin: 0 auto !important;
}

.academy-why-main-img {
  width: 85% !important;
  height: 390px !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  border: 6px solid #FFFFFF !important;
  box-shadow: 0 18px 45px rgba(139, 29, 56, 0.16) !important;
}

.academy-why-main-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.academy-why-sub-img {
  position: absolute !important;
  bottom: -25px !important;
  right: -10px !important;
  width: 200px !important;
  height: 200px !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  border: 5px solid #FFFFFF !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.2) !important;
  z-index: 2 !important;
}

.academy-why-sub-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.academy-why-floating-badge {
  position: absolute !important;
  top: 25px !important;
  left: -20px !important;
  background: linear-gradient(135deg, #8B1D38 0%, #580B1B 100%) !important;
  color: #FFFFFF !important;
  padding: 14px 20px !important;
  border-radius: 18px !important;
  border: 2px solid #DEBC97 !important;
  box-shadow: 0 10px 28px rgba(139, 29, 56, 0.35) !important;
  z-index: 3 !important;
  text-align: center !important;
}

.academy-why-floating-badge strong {
  display: block !important;
  font-family: var(--sunshine-font-serif) !important;
  font-size: 24px !important;
  color: #FFFFFF !important;
  line-height: 1 !important;
}

.academy-why-floating-badge span {
  font-size: 10.5px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  color: #DEBC97 !important;
}


/* ==========================================================================
   6. ACADEMY LUXURY ACHIEVEMENT COUNTERS BANNER (EXACT TO REFERENCE IMAGE)
   ========================================================================== */
.academy-counter-section {
  position: relative !important;
  background: linear-gradient(135deg, #5C0B1B 0%, #460613 50%, #2E020A 100%) !important;
  padding: 65px 0 70px 0 !important;
  font-family: var(--sunshine-font-sans) !important;
  color: #FFFFFF !important;
  overflow: hidden !important;
  border-top: 1px solid rgba(222, 188, 151, 0.22) !important;
  border-bottom: 1px solid rgba(222, 188, 151, 0.22) !important;
}

/* Background Golden Silk Curves & Leaf Outlines */
.academy-cnt-bg-decor {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.academy-cnt-bg-decor.left-waves {
  top: 0 !important;
  left: 0 !important;
  width: 280px !important;
  height: 100% !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 280' fill='none'%3E%3Cpath d='M-40 220 C50 170 120 80 90 -20' stroke='%23DEBC97' stroke-width='1.5' stroke-opacity='0.5'/%3E%3Cpath d='M-10 250 C80 190 160 90 130 -30' stroke='%23DEBC97' stroke-width='1.2' stroke-opacity='0.35'/%3E%3Cpath d='M-70 190 C30 140 90 60 70 -40' stroke='%23DEBC97' stroke-width='0.9' stroke-opacity='0.25'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  opacity: 0.9 !important;
}

.academy-cnt-bg-decor.right-leaves {
  top: 0 !important;
  right: 0 !important;
  width: 260px !important;
  height: 100% !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 260' fill='none'%3E%3Cpath d='M280 20 C190 40 150 130 190 220' stroke='%23DEBC97' stroke-width='1.3' stroke-opacity='0.4'/%3E%3Cpath d='M240 50 C170 90 140 150 160 230' stroke='%23DEBC97' stroke-width='0.9' stroke-opacity='0.3' stroke-dasharray='3 3'/%3E%3Cpath d='M210 90 C160 120 130 170 150 240' stroke='%23DEBC97' stroke-width='0.8' stroke-opacity='0.22'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  opacity: 0.85 !important;
}

/* Horizontal Row Container with Dividers */
.academy-cnt-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
  z-index: 2 !important;
  gap: 0 !important;
}

/* Individual Glassmorphic Card */
.academy-cnt-card {
  flex: 1 !important;
  min-width: 0 !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.025) 100%) !important;
  border: 1px solid rgba(222, 188, 151, 0.3) !important;
  border-radius: 22px !important;
  padding: 32px 16px 26px 16px !important;
  margin: 0 10px !important;
  text-align: center !important;
  box-shadow: 0 14px 35px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.16) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease !important;
  position: relative !important;
}

.academy-cnt-card:hover {
  transform: translateY(-6px) !important;
  border-color: rgba(222, 188, 151, 0.65) !important;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
}

/* Icon Container with Rose Gold Button & Glowing Partial Arc Ring */
.academy-cnt-icon-wrap {
  position: relative !important;
  width: 72px !important;
  height: 72px !important;
  margin: 0 auto 16px auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.academy-cnt-icon-ring {
  position: absolute !important;
  inset: -3px !important;
  border-radius: 50% !important;
  border: 2px solid transparent !important;
  border-top-color: #F8E2D4 !important;
  border-right-color: #DEBC97 !important;
  border-bottom-color: rgba(222, 188, 151, 0.25) !important;
  transform: rotate(-35deg) !important;
  filter: drop-shadow(0 0 5px rgba(222, 188, 151, 0.6)) !important;
  pointer-events: none !important;
  transition: transform 0.6s ease !important;
}

.academy-cnt-card:hover .academy-cnt-icon-ring {
  transform: rotate(145deg) !important;
}

.academy-cnt-icon-circle {
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #FDE8DD 0%, #E8B69E 50%, #C9876C 100%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #550917 !important;
  font-size: 21px !important;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.35), inset 0 1px 1px rgba(255, 255, 255, 0.7) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.8) !important;
  transition: transform 0.3s ease !important;
}

.academy-cnt-card:hover .academy-cnt-icon-circle {
  transform: scale(1.06) !important;
}

.academy-cnt-icon-circle i {
  color: #550917 !important;
}

/* Number */
.academy-cnt-number {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 44px !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  line-height: 1 !important;
  margin-bottom: 6px !important;
  letter-spacing: -0.5px !important;
  display: flex !important;
  align-items: baseline !important;
  justify-content: center !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.45) !important;
}

.academy-cnt-number .counter {
  font-family: var(--sunshine-font-serif) !important;
  color: #FFFFFF !important;
}

.academy-cnt-number .cnt-plus {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 28px !important;
  color: #DEBC97 !important;
  margin-left: 2px !important;
  font-weight: 500 !important;
}

/* Title / Label */
.academy-cnt-title {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 16.5px !important;
  font-weight: 600 !important;
  color: #FFFDFB !important;
  letter-spacing: 0.3px !important;
  margin-bottom: 12px !important;
  line-height: 1.3 !important;
}

/* Bottom Flourish Ornament */
.academy-cnt-flourish {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  opacity: 0.75 !important;
  transition: opacity 0.3s ease !important;
}

.academy-cnt-card:hover .academy-cnt-flourish {
  opacity: 1 !important;
}

.academy-cnt-flourish .flourish-line {
  display: inline-block !important;
  width: 24px !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, #DEBC97) !important;
}

.academy-cnt-flourish .flourish-line:last-child {
  background: linear-gradient(90deg, #DEBC97, transparent) !important;
}

.academy-cnt-flourish .flourish-icon {
  font-size: 11px !important;
  color: #DEBC97 !important;
  line-height: 1 !important;
}

/* Vertical Divider with Centered Golden Diamond */
.academy-cnt-divider {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  height: 140px !important;
  width: 20px !important;
  flex-shrink: 0 !important;
}

.academy-cnt-divider::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 50% !important;
  width: 1px !important;
  transform: translateX(-50%) !important;
  background: linear-gradient(180deg, transparent 0%, rgba(222, 188, 151, 0.45) 30%, rgba(222, 188, 151, 0.45) 70%, transparent 100%) !important;
}

.academy-cnt-diamond {
  position: relative !important;
  z-index: 2 !important;
  color: #DEBC97 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  filter: drop-shadow(0 0 4px rgba(222, 188, 151, 0.8)) !important;
  background: #460613 !important;
  padding: 2px 0 !important;
}


/* ==========================================================================
   7. STUDENT LEARNING METHODOLOGY (.academy-curriculum-section)
   ========================================================================== */
.academy-curriculum-section {
  padding: 85px 0 90px 0 !important;
  background-color: #FFFDFB !important;
  font-family: var(--sunshine-font-sans) !important;
}

.academy-steps-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  margin-top: 40px !important;
  position: relative !important;
}

.academy-step-card {
  background: #FFFFFF !important;
  border: 1px solid var(--sunshine-border-card) !important;
  border-radius: 18px !important;
  padding: 26px 20px !important;
  text-align: center !important;
  box-shadow: 0 8px 24px rgba(88, 11, 27, 0.04) !important;
  transition: all 0.35s ease !important;
  position: relative !important;
}

.academy-step-card:hover {
  transform: translateY(-6px) !important;
  border-color: #DEBC97 !important;
  box-shadow: 0 16px 36px rgba(139, 29, 56, 0.12) !important;
}

.academy-step-num {
  position: absolute !important;
  top: -14px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: var(--sunshine-burgundy) !important;
  color: #FFFFFF !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 3px solid #FFFFFF !important;
  box-shadow: 0 4px 10px rgba(139, 29, 56, 0.3) !important;
}

.academy-step-icon {
  width: 50px !important;
  height: 50px !important;
  border-radius: 50% !important;
  background: #FFF0E8 !important;
  color: var(--sunshine-burgundy) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  margin: 10px auto 14px auto !important;
  transition: all 0.3s ease !important;
}

.academy-step-card:hover .academy-step-icon {
  background: var(--sunshine-burgundy) !important;
  color: #FFFFFF !important;
}

.academy-step-card h4 {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--sunshine-text-title) !important;
  margin-bottom: 8px !important;
}

.academy-step-card p {
  font-size: 12.5px !important;
  line-height: 1.6 !important;
  color: var(--sunshine-text-body) !important;
  margin: 0 !important;
}


/* ==========================================================================
   8. STUDENT & CLIENT TESTIMONIALS (.academy-testi-section)
   ========================================================================== */
.academy-testi-section {
  padding: 85px 0 95px 0 !important;
  background: linear-gradient(180deg, #FAF3EF 0%, #FFFDFB 50%, #FAF3EF 100%) !important;
  font-family: var(--sunshine-font-sans) !important;
  position: relative !important;
  overflow: hidden !important;
}

.academy-testi-header {
  text-align: center !important;
  max-width: 680px !important;
  margin: 0 auto 40px auto !important;
}

.academy-testi-header p {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: var(--sunshine-text-body) !important;
  margin-top: 6px !important;
}

/* Slick Carousel Slide Spacing & Layout */
.academy-testi-section .testi_slider {
  display: block !important;
  margin: 0 -12px !important;
  position: relative !important;
}

.academy-testi-section .testi_slider.slick-initialized {
  visibility: visible !important;
}

.academy-testi-section .testi_slider .slick-list {
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  position: relative !important;
  display: block !important;
}

.academy-testi-section .testi_slider .slick-track {
  display: flex !important;
  align-items: stretch !important;
  position: relative !important;
  top: 0 !important;
  left: 0 !important;
}

.academy-testi-section .testi_slider .slick-slide {
  padding: 14px 12px !important;
  outline: none !important;
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
}

.academy-testi-section .testi_slider .col-xl-4 {
  padding: 14px 12px !important;
  outline: none !important;
  box-sizing: border-box !important;
}

.academy-testi-section .testi_slider .slick-slide .academy-testi-card,
.academy-testi-section .testi_slider .col-xl-4 .academy-testi-card {
  width: 100% !important;
  height: 100% !important;
}

/* Luxury Testimonial Card */
.academy-testi-card {
  background: #FFFFFF !important;
  border: 1.5px solid #F2DDD2 !important;
  border-radius: 22px !important;
  padding: 32px 26px 26px 26px !important;
  box-shadow: 0 12px 35px rgba(88, 11, 27, 0.06), 0 2px 8px rgba(0, 0, 0, 0.02) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  transition: all 0.35s var(--sunshine-ease) !important;
  position: relative !important;
  height: 100% !important;
  min-height: 290px !important;
}

.academy-testi-card:hover {
  transform: translateY(-6px) !important;
  border-color: #DEBC97 !important;
  box-shadow: 0 20px 45px rgba(139, 29, 56, 0.12) !important;
}

/* Top Meta Row in Card */
.academy-testi-top-meta {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 14px !important;
}

.academy-testi-rating-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.academy-testi-stars {
  color: #E2A03F !important;
  font-size: 13px !important;
  display: flex !important;
  gap: 3px !important;
}

.academy-testi-badge {
  background: #FFF0E8 !important;
  color: var(--sunshine-burgundy) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 3px 9px !important;
  border-radius: 50px !important;
  border: 1px solid #F5D9CD !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
}

.academy-testi-quote-icon {
  font-size: 24px !important;
  color: #F0D5C9 !important;
  opacity: 0.8 !important;
}

/* Comment Text */
.academy-testi-comment {
  font-size: 13.5px !important;
  line-height: 1.75 !important;
  color: #382B2E !important;
  font-style: italic !important;
  margin-bottom: 22px !important;
  flex-grow: 1 !important;
}

/* User Info Row */
.academy-testi-user {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding-top: 16px !important;
  border-top: 1px solid #F5E8E0 !important;
}

.academy-testi-avatar {
  position: relative !important;
  width: 50px !important;
  height: 50px !important;
  border-radius: 50% !important;
  padding: 2px !important;
  background: linear-gradient(135deg, #DEBC97 0%, #8B1D38 100%) !important;
  flex-shrink: 0 !important;
}

.academy-testi-avatar img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 50% !important;
  background: #FFFFFF !important;
}

.academy-testi-info h4 {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--sunshine-text-title) !important;
  margin: 0 0 2px 0 !important;
}

.academy-testi-info span {
  font-size: 11.5px !important;
  color: var(--sunshine-text-muted) !important;
  font-weight: 500 !important;
}

/* Slick Dots Styling in Testimonial Slider */
.academy-testi-section .slick-dots {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 35px 0 0 0 !important;
}

.academy-testi-section .slick-dots li {
  margin: 0 !important;
}

.academy-testi-section .slick-dots li button {
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background: #E5D0C5 !important;
  border: none !important;
  font-size: 0 !important;
  padding: 0 !important;
  transition: all 0.35s ease !important;
  cursor: pointer !important;
}

.academy-testi-section .slick-dots li.slick-active button {
  width: 28px !important;
  border-radius: 20px !important;
  background: var(--sunshine-burgundy) !important;
  box-shadow: 0 3px 8px rgba(139, 29, 56, 0.3) !important;
}


/* ==========================================================================
   9. ADMISSION CALL TO ACTION BANNER (.academy-cta-banner)
   ========================================================================== */
.academy-cta-banner {
  margin: 20px 0 80px 0 !important;
  background: linear-gradient(135deg, #580B1B 0%, #8B1D38 60%, #A32444 100%) !important;
  border-radius: 26px !important;
  padding: 48px 40px !important;
  color: #FFFFFF !important;
  box-shadow: 0 18px 45px rgba(88, 11, 27, 0.3) !important;
  border: 1.5px solid rgba(222, 188, 151, 0.45) !important;
  position: relative !important;
  overflow: hidden !important;
  text-align: center !important;
}

.academy-cta-decor {
  position: absolute !important;
  pointer-events: none !important;
  opacity: 0.15 !important;
}

.academy-cta-decor.left {
  top: 0;
  left: 0;
  width: 180px;
  height: 180px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none' stroke='%23FFFFFF' stroke-width='1.5'%3E%3Cpath d='M10 190 C60 170 90 120 70 70 C50 20 10 10 10 10'/%3E%3C/svg%3E");
  background-size: contain;
}

.academy-cta-decor.right {
  bottom: 0;
  right: 0;
  width: 180px;
  height: 180px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none' stroke='%23FFFFFF' stroke-width='1.5'%3E%3Cpath d='M190 10 C140 30 110 80 130 130 C150 180 190 190 190 190'/%3E%3C/svg%3E");
  background-size: contain;
}

.academy-cta-banner h3 {
  font-family: var(--sunshine-font-serif) !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  margin-bottom: 12px !important;
}

.academy-cta-banner p {
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #F8E7D8 !important;
  max-width: 640px !important;
  margin: 0 auto 28px auto !important;
}

.academy-cta-btn-group {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}

.academy-cta-btn-light {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #FFFFFF !important;
  color: var(--sunshine-burgundy) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  padding: 12px 30px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2) !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
}

.academy-cta-btn-light:hover {
  background: #FAF3EF !important;
  color: var(--sunshine-burgundy-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.28) !important;
}

.academy-cta-btn-outline {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: transparent !important;
  color: #FFFFFF !important;
  border: 1.5px solid #DEBC97 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 11px 28px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
}

.academy-cta-btn-outline:hover {
  background: rgba(255, 255, 255, 0.15) !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
}


/* ==========================================================================
   10. RESPONSIVE BREAKPOINTS
   ========================================================================== */
@media (max-width: 1199.98px) {
  .academy-hero-title {
    font-size: 33px !important;
  }
  .academy-hero-title .script-mathura {
    font-size: 50px !important;
  }
  .academy-hero-visual-wrap {
    max-width: 450px !important;
    height: 430px !important;
  }
  .academy-arch-outer-frame {
    width: 340px !important;
    height: 390px !important;
    right: 10px !important;
  }
  .academy-arch-halo {
    width: 350px !important;
    height: 400px !important;
  }
  .academy-hero-thumbs-col {
    top: 45px !important;
    left: -10px !important;
    gap: 14px !important;
  }
  .academy-hero-thumb-card {
    width: 120px !important;
    height: 112px !important;
    border-radius: 16px !important;
  }
  .academy-hero-badge {
    width: 86px !important;
    height: 86px !important;
    bottom: 70px !important;
    right: -10px !important;
  }
  .academy-pillar-col {
    padding: 0 10px !important;
  }
  .academy-pillar-col .pillar-title {
    font-size: 10.5px !important;
  }
  .academy-pg-cards-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 22px !important;
  }
  .academy-steps-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
  }
}

@media (max-width: 991.98px) {
  .sunshine-academy-hero-section {
    padding: 45px 0 55px 0 !important;
  }
  .academy-hero-content {
    padding-right: 0 !important;
    text-align: left !important;
    margin-bottom: 20px !important;
  }
  .academy-hero-title {
    font-size: 32px !important;
    line-height: 1.25 !important;
  }
  .academy-hero-title .script-mathura {
    font-size: 48px !important;
  }
  .academy-hero-desc {
    max-width: 100% !important;
    font-size: 13.5px !important;
  }
  .academy-hero-pillars {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px 6px !important;
    padding-top: 16px !important;
  }
  .pillar-divider {
    display: none !important;
  }
  .academy-pillar-col {
    padding: 0 !important;
  }
  .academy-hero-visual-wrap {
    max-width: 440px !important;
    height: 420px !important;
    margin: 30px auto 0 auto !important;
  }
  .academy-story-visual {
    margin-bottom: 45px !important;
  }
  .academy-pg-cards-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 22px !important;
  }
  .academy-testi-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
  }
  .academy-why-visual {
    margin-top: 40px !important;
  }
}

@media (max-width: 767.98px) {
  .sunshine-academy-hero-section {
    padding: 38px 0 45px 0 !important;
  }
  .academy-hero-title {
    font-size: 28px !important;
  }
  .academy-hero-title .script-mathura {
    font-size: 42px !important;
  }
  .academy-hero-desc {
    font-size: 13px !important;
    margin-bottom: 20px !important;
  }
  .academy-hero-pillars {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 14px 10px !important;
  }
  .academy-pillar-col {
    flex-direction: row !important;
    text-align: left !important;
    gap: 10px !important;
    align-items: center !important;
  }
  .academy-pillar-col .pillar-icon-badge {
    margin-bottom: 0 !important;
    width: 40px !important;
    height: 40px !important;
    font-size: 14px !important;
  }
  .academy-pillar-col .pillar-title {
    font-size: 11px !important;
    line-height: 1.25 !important;
  }
  .academy-hero-visual-wrap {
    max-width: 380px !important;
    height: 390px !important;
  }
  .academy-arch-outer-frame {
    width: 290px !important;
    height: 350px !important;
    right: 10px !important;
    border-width: 5px !important;
  }
  .academy-hero-thumb-card {
    width: 110px !important;
    height: 102px !important;
    border-radius: 14px !important;
    border-width: 3px !important;
  }
  .academy-hero-thumbs-col {
    top: 40px !important;
    left: -5px !important;
    gap: 12px !important;
  }
  .academy-hero-badge {
    width: 78px !important;
    height: 78px !important;
    bottom: 55px !important;
    right: -5px !important;
  }
  .academy-hero-badge .badge-icon {
    font-size: 12px !important;
  }
  .academy-hero-badge .badge-title {
    font-size: 13px !important;
  }
  .academy-hero-badge .badge-sub {
    font-size: 7px !important;
  }
  .academy-counter-box {
    margin-bottom: 16px !important;
  }
}

@media (max-width: 575.98px) {
  .sunshine-academy-hero-section {
    padding: 30px 0 40px 0 !important;
  }
  .academy-hero-breadcrumb-wrap {
    gap: 8px !important;
    margin-bottom: 14px !important;
  }
  .academy-hero-tag {
    font-size: 10px !important;
    padding: 4px 12px !important;
  }
  .academy-hero-tag .tag-icon {
    font-size: 10.5px !important;
  }
  .breadcrumb-dash {
    display: none !important;
  }
  .academy-hero-breadcrumb {
    font-size: 11px !important;
    width: 100% !important;
    margin-top: 2px !important;
  }
  .academy-hero-title {
    font-size: 24px !important;
    line-height: 1.25 !important;
  }
  .academy-hero-title .script-mathura {
    font-size: 36px !important;
  }
  .academy-hero-title .script-heart {
    font-size: 20px !important;
  }
  .academy-btn-primary {
    width: 100% !important;
    justify-content: center !important;
    font-size: 13px !important;
    padding: 10px 18px !important;
  }
  .academy-hero-btns {
    width: 100% !important;
  }
  .academy-hero-visual-wrap {
    max-width: 320px !important;
    height: 350px !important;
  }
  .academy-arch-outer-frame {
    width: 245px !important;
    height: 310px !important;
    right: 5px !important;
    border-width: 4.5px !important;
    border-radius: 110px 180px 24px 30px !important;
  }
  .academy-arch-inner-mat {
    border-radius: 105px 175px 20px 26px !important;
  }
  .academy-hero-thumbs-col {
    top: 35px !important;
    left: -8px !important;
    gap: 10px !important;
  }
  .academy-hero-thumb-card {
    width: 95px !important;
    height: 88px !important;
    border-radius: 12px !important;
    border-width: 3px !important;
  }
  .academy-hero-badge {
    width: 70px !important;
    height: 70px !important;
    bottom: 45px !important;
    right: -5px !important;
  }
  .academy-hero-badge .badge-icon {
    font-size: 11px !important;
  }
  .academy-hero-badge .badge-title {
    font-size: 12px !important;
  }
  .academy-hero-badge .badge-sub {
    font-size: 6.5px !important;
  }
  .academy-flower-decor.rose-top-right {
    width: 85px !important;
    height: 85px !important;
    top: -5px !important;
    right: -15px !important;
  }
  .academy-flower-decor.rose-bottom-right {
    width: 75px !important;
    height: 75px !important;
    bottom: 0 !important;
    right: -15px !important;
  }
  .sunshine-section-title {
    font-size: 26px !important;
  }
  .academy-perks-grid {
    grid-template-columns: 1fr !important;
  }
  .academy-pg-cards-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  .academy-steps-grid {
    grid-template-columns: 1fr !important;
    gap: 26px !important;
  }
  .academy-testi-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  .academy-cta-banner {
    padding: 32px 20px !important;
  }
  .academy-cta-banner h3 {
    font-size: 23px !important;
  }
}
