/* ================================================================
   MAHASHAKTI RADIANCE — THEME UPGRADE
   Premium Spiritual Design Override
   ================================================================
   OVERRIDE-ONLY: Loaded after existing CSS.
   Enhances visual properties (colors, shadows, borders, backgrounds,
   fonts, border-radius, transitions, transforms, animations, gradients).
   Does NOT redefine layout properties unless fixing a specific issue.
   ================================================================ */

/* Google Font Import */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700;800;900&family=Cinzel+Decorative:wght@400;700;900&display=swap');


/* ================================================================
   1. CSS VARIABLES
   ================================================================ */
:root {
  /* Brand Palette */
  --ms-primary: #8B0000;
  --ms-primary-light: #AB1600;
  --ms-primary-dark: #5C0000;
  --ms-accent: #D4A017;
  --ms-accent-light: #FFD700;
  --ms-accent-warm: #E8B731;
  --ms-accent-glow: rgba(212, 160, 23, 0.25);

  /* Backgrounds */
  --ms-bg-warm: #FFF9F5;
  --ms-bg-cream: #FFFAF5;
  --ms-bg-section: #FAF5EF;
  --ms-bg-light: #FEFCFA;
  --ms-dark: #1A0A0A;
  --ms-dark-deep: #0D0505;

  /* Text */
  --ms-text: #2D2D2D;
  --ms-text-light: #6B6B6B;
  --ms-text-muted: #999999;

  /* Gradients */
  --ms-gradient-primary: linear-gradient(135deg, #8B0000 0%, #AB1600 50%, #C41E00 100%);
  --ms-gradient-gold: linear-gradient(135deg, #D4A017, #FFD700, #E8B731);
  --ms-gradient-gold-subtle: linear-gradient(135deg, #D4A017, #E8C84A);
  --ms-gradient-hero: linear-gradient(135deg, rgba(139, 0, 0, 0.92), rgba(26, 10, 10, 0.88));
  --ms-gradient-footer: linear-gradient(180deg, #1A0A0A 0%, #0D0505 100%);
  --ms-gradient-card: linear-gradient(180deg, #AB1600 0%, rgba(255, 157, 142, 0.87) 100%);
  --ms-gradient-warm: linear-gradient(135deg, #FFF9F5 0%, #FAF0E6 100%);

  /* Shadows */
  --ms-shadow-card: 0 4px 24px rgba(0, 0, 0, 0.06);
  --ms-shadow-card-strong: 0 6px 32px rgba(0, 0, 0, 0.08);
  --ms-shadow-hover: 0 16px 48px rgba(139, 0, 0, 0.14);
  --ms-shadow-hover-deep: 0 20px 56px rgba(139, 0, 0, 0.18);
  --ms-shadow-glow: 0 0 30px rgba(212, 160, 23, 0.2);
  --ms-shadow-glow-strong: 0 0 40px rgba(212, 160, 23, 0.35);
  --ms-shadow-gold-btn: 0 4px 20px rgba(212, 160, 23, 0.35);
  --ms-shadow-primary-btn: 0 4px 20px rgba(139, 0, 0, 0.3);

  /* Border Radius */
  --ms-radius: 16px;
  --ms-radius-sm: 8px;
  --ms-radius-lg: 24px;
  --ms-radius-pill: 50px;

  /* Transitions */
  --ms-transition: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  --ms-transition-fast: 0.2s ease;
  --ms-transition-slow: 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}


/* ================================================================
   2. GLOBAL POLISH
   ================================================================ */

/* Smooth Scroll */
html {
  scroll-behavior: smooth !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* Body refinement */
body {
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: optimizeLegibility !important;
}

/* Selection colors — divine gold */
::selection {
  background: var(--ms-accent) !important;
  color: #fff !important;
}

::-moz-selection {
  background: var(--ms-accent) !important;
  color: #fff !important;
}

/* Smooth scrollbar with brand colors */
::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: var(--ms-bg-warm);
}

::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, var(--ms-primary-light), var(--ms-primary));
  border-radius: 10px;
  border: 2px solid var(--ms-bg-warm);
}

::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, var(--ms-primary), var(--ms-primary-dark));
}

/* Firefox scrollbar */
* {
  scrollbar-width: thin;
  scrollbar-color: var(--ms-primary-light) var(--ms-bg-warm);
}

/* All links: smooth transitions */
a {
  transition: color var(--ms-transition), opacity var(--ms-transition), transform var(--ms-transition) !important;
}

/* All images: smooth rendering */
img {
  image-rendering: auto !important;
  transition: transform var(--ms-transition-slow), filter var(--ms-transition), box-shadow var(--ms-transition) !important;
}

/* Focus states — accessible gold ring */
*:focus-visible {
  outline: 2px solid var(--ms-accent) !important;
  outline-offset: 2px !important;
}


/* ================================================================
   3. HEADER — GLASSMORPHISM
   ================================================================ */

/* Glassmorphism header bar */
.innerheaderbar {
  background: rgba(255, 255, 255, 0.92) !important;
  backdrop-filter: blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
  border-bottom: 1px solid rgba(139, 0, 0, 0.04) !important;
  box-shadow: 0 2px 24px rgba(0, 0, 0, 0.05) !important;
  transition: all var(--ms-transition) !important;
}

/* Sticky header state — deeper glass with gold accent */
header.sticky .innerheaderbar,
.sticky-top .innerheaderbar {
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 4px 32px rgba(0, 0, 0, 0.08) !important;
  border-bottom: 1px solid rgba(212, 160, 23, 0.1) !important;
}

/* Logo — subtle golden glow */
.headermainlogosetting {
  transition: all var(--ms-transition) !important;
  filter: drop-shadow(0 2px 8px rgba(212, 160, 23, 0.1)) !important;
}

.headermainlogosetting:hover {
  filter: drop-shadow(0 4px 16px rgba(212, 160, 23, 0.25)) !important;
  transform: scale(1.03) !important;
}

/* Nav links — uppercase, letter-spacing, gold underline on hover */
.customnavbarsetting .nav-link {
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 13px !important;
  color: var(--ms-text) !important;
  position: relative !important;
  transition: color var(--ms-transition) !important;
}

.customnavbarsetting .nav-link::after {
  content: '' !important;
  position: absolute !important;
  bottom: 2px !important;
  left: 50% !important;
  width: 0 !important;
  height: 2px !important;
  background: var(--ms-gradient-gold) !important;
  transition: all var(--ms-transition) !important;
  transform: translateX(-50%) !important;
  border-radius: 2px !important;
}

.customnavbarsetting .nav-link:hover::after,
.customnavbarsetting .nav-link.active::after {
  width: 65% !important;
}

.customnavbarsetting .nav-link:hover {
  color: var(--ms-primary) !important;
  background: transparent !important;
}

/* Cart link subtle styling */
.customnavbarsetting .nav-link[href*="cart"] {
  position: relative !important;
}

.customnavbarsetting .nav-link.active,
.customnavbarsetting ul li.nav-item > a.active,
.customnavbarsetting ul li.nav-item > a.nav-link.active {
  color: #8B0000 !important;
  background-color: transparent !important;
  background: none !important;
}

/* Override sticky active too */
header.sticky .customnavbarsetting ul li.nav-item > a.active,
header.sticky .customnavbarsetting ul li.nav-item > a.nav-link.active {
  color: #8B0000 !important;
  background-color: transparent !important;
  background: none !important;
}

/* Service dropdown button — match nav-link style */
.serviceheaderbtncss {
  font-weight: 700 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: var(--ms-text) !important;
  background: none !important;
  border: none !important;
  box-shadow: none !important;
}

.serviceheaderbtncss:hover {
  color: var(--ms-primary) !important;
}

.serviceheaderbtncss.active {
  color: #8B0000 !important;
  background-color: transparent !important;
  background: none !important;
}

header.sticky .serviceheaderbtncss.active {
  color: #8B0000 !important;
  background-color: transparent !important;
}

/* Upcoming Workshop button — red gradient */
.customupcomingbtnsetting {
  background: var(--ms-gradient-primary) !important;
  border: none !important;
  border-radius: var(--ms-radius-pill) !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  transition: all var(--ms-transition) !important;
  box-shadow: 0 0 12px rgba(139, 0, 0, 0.3), 0 0 25px rgba(139, 0, 0, 0.15) !important;
  animation: upcomingNeon 2.5s ease-in-out infinite !important;
  position: relative !important;
  overflow: hidden !important;
}

.customupcomingbtnsetting::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent) !important;
  transition: left 0.6s !important;
}

.customupcomingbtnsetting:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 32px rgba(139, 0, 0, 0.4), var(--ms-shadow-glow) !important;
  color: #fff !important;
}

.customupcomingbtnsetting:hover::before {
  left: 100% !important;
}

@keyframes upcomingNeon {
  0%, 100% { box-shadow: 0 0 12px rgba(139, 0, 0, 0.3), 0 0 25px rgba(139, 0, 0, 0.12); }
  50% { box-shadow: 0 0 18px rgba(139, 0, 0, 0.45), 0 0 35px rgba(139, 0, 0, 0.2); }
}

/* Service sub-menus — open to the right properly */
li.dropdown-submenu.servicenewdropdownsubmenucss {
  position: relative !important;
}

ul.dropdown-menu.servicemenudropdownnewcss,
.servicemenudropdownnewcss {
  left: 100% !important;
  top: 0 !important;
  margin-left: 0 !important;
  margin-top: 0 !important;
  border-radius: 12px !important;
  border: 1px solid rgba(0,0,0,0.06) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.12) !important;
  border-top: 3px solid #D4A017 !important;
  width: auto !important;
  min-width: 220px !important;
}

li.dropdown-submenu.submenudropdownlinewcss {
  position: relative !important;
}

ul.dropdown-menu.submenudropdownulnewservice,
.submenudropdownulnewservice {
  left: 100% !important;
  top: 0 !important;
  margin-left: 0 !important;
  margin-top: 0 !important;
  border-radius: 12px !important;
  border: 1px solid rgba(0,0,0,0.06) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.12) !important;
  border-top: 3px solid #D4A017 !important;
  width: auto !important;
  min-width: 220px !important;
}

/* Dropdown menus — rounded, shadow, gold top border, slide-in */
.customnavbarsetting .dropdown-menu {
  border: none !important;
  border-radius: 12px !important;
  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.12) !important;
  border-top: 3px solid var(--ms-accent) !important;
  overflow: visible !important;
  animation: fadeInDown 0.3s ease forwards !important;
  background: #fff !important;
}

.navbar-expand-lg .navbar-nav .dropdown-menu {
  border: none !important;
  border-radius: 12px !important;
  border-top: 3px solid var(--ms-accent) !important;
  overflow: visible !important;
}

.dropdown-item:hover,
.dropdown-item:focus {
  background-color: var(--ms-bg-warm) !important;
  color: var(--ms-primary) !important;
  padding-left: 24px !important;
}

.dropdown-item.active,
.dropdown-item:active {
  background-color: rgba(139, 0, 0, 0.06) !important;
  color: var(--ms-primary) !important;
}

/* Social icons in header */
.headersociallinkboxleft ul li a {
  transition: all var(--ms-transition) !important;
  border-radius: 50% !important;
}

.headersociallinkboxleft ul li a:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 4px 12px rgba(139, 0, 0, 0.2) !important;
}

.headersociallinkboxleft ul li a img {
  transition: all var(--ms-transition) !important;
}


/* ================================================================
   4. HERO / BANNER — DRAMATIC
   ================================================================ */

/* Main banner — red-gold gradient */
.mainbannersection {
  background: linear-gradient(160deg, #8B0000 0%, #AB1600 35%, #C42D1A 65%, #D4A017 100%) !important;
}

.mainbannersection::before {
  display: none !important;
  content: none !important;
}

/* Hero heading — Cinzel, white on gradient banner */
.mevheadingsetting {
  font-family: 'Cinzel', serif !important;
  font-weight: 700 !important;
  color: #fff !important;
  font-size: clamp(1.6rem, 4vw, 2.6rem) !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.2) !important;
  letter-spacing: 0.04em !important;
}

.mevinnerheading {
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) !important;
}

/* Hero CTA — gold gradient button, shine on hover */
.customenquirybtnsetting {
  background: var(--ms-gradient-gold) !important;
  color: var(--ms-dark) !important;
  border: none !important;
  border-radius: var(--ms-radius-pill) !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  transition: all var(--ms-transition) !important;
  box-shadow: var(--ms-shadow-gold-btn) !important;
  position: relative !important;
  overflow: hidden !important;
}

.customenquirybtnsetting::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent) !important;
  transition: left 0.5s !important;
}

.customenquirybtnsetting:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 36px rgba(212, 160, 23, 0.5), var(--ms-shadow-glow-strong) !important;
  color: var(--ms-dark) !important;
}

.customenquirybtnsetting:hover::before {
  left: 100% !important;
}

/* Inner page banner — transparent, parent has gradient */
.programinnerbannertop {
  background: transparent !important;
}

.programinnerbannertop h1,
.programinnerbannertop h2 {
  font-family: 'Cinzel', serif !important;
  font-weight: 700 !important;
  text-shadow: 0 0 40px rgba(212, 160, 23, 0.25), 0 2px 6px rgba(0, 0, 0, 0.3) !important;
}

/* Banner text section */
.bannerinnertextsection h1 {
  font-family: 'Cinzel', serif !important;
  text-shadow: 0 0 30px rgba(212, 160, 23, 0.2) !important;
}

.custommainbannertextsection h1 {
  font-family: 'Cinzel', serif !important;
  text-shadow: 0 0 40px rgba(212, 160, 23, 0.3), 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}


/* ================================================================
   5. SECTION HEADINGS — PREMIUM
   ================================================================ */

.mainheadingbox {
  position: relative !important;
}

/* Section heading h2 — Cinzel font, centered */
.mainheadingbox h2 {
  font-family: 'Cinzel', serif !important;
  font-weight: 700 !important;
  color: var(--ms-text) !important;
  letter-spacing: 0.03em !important;
}

/* Gold underline ::after below h2 */
.mainheadingbox::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 60px !important;
  height: 3px !important;
  background: var(--ms-gradient-gold) !important;
  border-radius: 2px !important;
}

/* Category heading h4 — golden uppercase */
.mainheadingbox h4,
.customhomepagecategoryheading {
  color: var(--ms-accent) !important;
  font-weight: 600 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
}

.customhomepagecategoryheading::after {
  background: var(--ms-gradient-gold) !important;
}

/* Homepage empowering heading */
.customhomepageemporweringheading {
  font-family: 'Cinzel', serif !important;
}

.customhomepageemporweringheading::after {
  background: var(--ms-gradient-gold) !important;
}


/* ================================================================
   6. CARDS — MODERN LIFT EFFECT (Grid View)
   ================================================================ */

.gridviewinnersection {
  border-radius: var(--ms-radius) !important;
  overflow: hidden !important;
  box-shadow: var(--ms-shadow-card) !important;
  transition: all var(--ms-transition) !important;
  border: 1px solid rgba(139, 0, 0, 0.03) !important;
  background: #fff !important;
}

.gridviewinnersection:hover {
  transform: translateY(-10px) !important;
  box-shadow: var(--ms-shadow-hover-deep) !important;
  border-color: rgba(212, 160, 23, 0.15) !important;
}

/* Card image — zoom on parent hover */
.gridviewimgbox {
  overflow: hidden !important;
}

.gridviewimgbox img {
  transition: transform var(--ms-transition-slow) !important;
  object-fit: cover !important;
}

.gridviewinnersection:hover .gridviewimgbox img {
  transform: scale(1.08) !important;
}

/* Card content */
.gridviewinfoinnerbox h2 {
  font-family: 'Cinzel', serif !important;
  font-weight: 600 !important;
  transition: color var(--ms-transition-fast) !important;
}

.gridviewinnersection:hover .gridviewinfoinnerbox h2 {
  color: var(--ms-primary) !important;
}

/* Card action link — gold accent on hover */
.gridcartleft {
  transition: color var(--ms-transition-fast), gap var(--ms-transition-fast) !important;
}

.gridcartleft:hover {
  color: var(--ms-accent) !important;
}


/* ================================================================
   7. WORKSHOP CARDS
   ================================================================ */

/* Workshop image box — rounded, shadow, hover lift */
.workshopimagebox {
  border-radius: var(--ms-radius-lg) !important;
  box-shadow: 0 8px 40px rgba(139, 0, 0, 0.14) !important;
  transition: all var(--ms-transition) !important;
  overflow: hidden !important;
  position: relative !important;
}

/* Gradient overlay on workshop images */
.workshopimagebox::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, transparent 60%) !important;
  pointer-events: none !important;
  border-radius: var(--ms-radius-lg) !important;
}

.workshopimagebox:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 56px rgba(139, 0, 0, 0.22) !important;
}

/* Workshop inner image — hover zoom */
.workshopinnerimagebox img {
  transition: transform var(--ms-transition-slow) !important;
  border-radius: var(--ms-radius) !important;
}

.workshopimagebox:hover .workshopinnerimagebox img,
.workshopinnerimagebox img:hover {
  transform: scale(1.05) !important;
}

.workshopinnerimagebox h1 {
  font-family: 'Cinzel', serif !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
}

/* Workshop text box — Cinzel heading */
.workshoptextbox h1,
.workshoptextbox h2 {
  font-family: 'Cinzel', serif !important;
  font-weight: 700 !important;
  position: relative !important;
}

.workshoptextbox h1::after {
  content: '' !important;
  display: block !important;
  position: relative !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  width: 50px !important;
  height: 3px !important;
  margin: 10px auto 0 !important;
  background: var(--ms-gradient-gold) !important;
  border-radius: 2px !important;
}

/* Inner workshop box hover lift */
.innerworkshopbox {
  transition: transform var(--ms-transition) !important;
}

.innerworkshopbox:hover {
  transform: translateY(-4px) !important;
}

.workshopimageboxsetting img {
  transition: transform var(--ms-transition-slow) !important;
}

.workshopimageboxsetting:hover img {
  transform: scale(1.06) !important;
}


/* ================================================================
   8. SERVICE CARDS
   ================================================================ */

.serviceinnersectionbox {
  border-radius: var(--ms-radius) !important;
  overflow: hidden !important;
  box-shadow: var(--ms-shadow-card) !important;
  transition: all var(--ms-transition) !important;
}

.serviceinnersectionbox:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--ms-shadow-hover) !important;
}

/* Service image — zoom on hover */
.serviceimginnerbox img {
  transition: transform var(--ms-transition-slow) !important;
}

.serviceinnersectionbox:hover .serviceimginnerbox img {
  transform: scale(1.08) !important;
}

.serviceinnersectionbox h5 {
  font-family: 'Cinzel', serif !important;
  transition: color var(--ms-transition-fast) !important;
}

.serviceinnersectionbox:hover h5 {
  color: var(--ms-primary) !important;
}

/* Gold gradient animated border */
.bottombordranimation::after {
  background: var(--ms-gradient-gold) !important;
  height: 3px !important;
}

.bottombordranimation:hover::after {
  width: 100% !important;
}

/* Service text styling */
.servicestextboxright h4 {
  color: var(--ms-primary) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
}

.servicestextboxright h1 {
  font-family: 'Cinzel', serif !important;
}

.servicestextboxleft h1 {
  font-family: 'Cinzel', serif !important;
}

.servicestextboxright ul li a:hover {
  color: var(--ms-primary) !important;
}

.servicestextboxright ul li a span {
  color: var(--ms-accent) !important;
}


/* ================================================================
   9. BLOG CARDS
   ================================================================ */

/* Blog card — rounded, shadow, hover lift */
.bloginnerboxsection {
  border-radius: var(--ms-radius) !important;
  overflow: hidden !important;
  box-shadow: var(--ms-shadow-card) !important;
  transition: all var(--ms-transition) !important;
  border: 1px solid rgba(139, 0, 0, 0.03) !important;
}

.bloginnerboxsection:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--ms-shadow-hover) !important;
  border-color: rgba(212, 160, 23, 0.1) !important;
}

/* Blog image — zoom on hover, rounded corners */
.bloginnerimgleftbox img {
  transition: transform var(--ms-transition-slow) !important;
  border-radius: var(--ms-radius) 0 0 var(--ms-radius) !important;
}

.bloginnerboxsection:hover .bloginnerimgleftbox img {
  transform: scale(1.06) !important;
}

/* Blog heading */
.bloginnerimgleftbox h3 {
  font-family: 'Cinzel', serif !important;
}

/* Blog date box — gradient background */
.blogdatebox {
  background: var(--ms-gradient-primary) !important;
  border-radius: var(--ms-radius-sm) !important;
  box-shadow: 0 4px 16px rgba(139, 0, 0, 0.2) !important;
}

.blogdatebox h1 {
  font-family: 'Cinzel', serif !important;
  color: #fff !important;
}

.blogdatebox h6 {
  color: rgba(255, 255, 255, 0.85) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}

/* Blog main text heading */
.blogmaintextheading h1 {
  font-family: 'Cinzel', serif !important;
  transition: color var(--ms-transition-fast) !important;
}

.blogmaintextheading h1:hover {
  color: var(--ms-primary) !important;
}

/* Blog sidebar heading — Cinzel, gold border bottom */
.customblogsidebarheading {
  font-family: 'Cinzel', serif !important;
  color: var(--ms-primary) !important;
  border-bottom: 2px solid rgba(139, 0, 0, 0.06) !important;
  position: relative !important;
}

.customblogsidebarheading::after {
  content: '' !important;
  position: absolute !important;
  bottom: -2px !important;
  left: 0 !important;
  width: 40px !important;
  height: 2px !important;
  background: var(--ms-gradient-gold) !important;
}

/* Blog category box heading */
.blogcategorybox h2,
.blogcategorytagsbox h2 {
  font-family: 'Cinzel', serif !important;
  color: var(--ms-primary) !important;
}

/* Blog sidebar tag button — pill shape, fill on hover */
.blogsidebartagbutton {
  border-radius: var(--ms-radius-pill) !important;
  border: 1px solid rgba(139, 0, 0, 0.12) !important;
  transition: all var(--ms-transition) !important;
  font-weight: 500 !important;
}

.blogsidebartagbutton:hover {
  background: var(--ms-primary) !important;
  color: #fff !important;
  border-color: var(--ms-primary) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(139, 0, 0, 0.2) !important;
}

/* Blog category tags box items */
.blogcategorytagsbox ul li a {
  border-radius: var(--ms-radius-pill) !important;
  border: 1px solid rgba(139, 0, 0, 0.1) !important;
  transition: all var(--ms-transition) !important;
}

.blogcategorytagsbox ul li a:hover {
  background: var(--ms-primary) !important;
  color: #fff !important;
  border-color: var(--ms-primary) !important;
}

/* Blog main heading */
.blogmainheading h2 {
  font-family: 'Cinzel', serif !important;
}


/* ================================================================
   10. TESTIMONIALS — ELEGANT
   ================================================================ */

/* Testimonials section — warm background */
.testimonialsmainsection {
  background: linear-gradient(180deg, var(--ms-bg-warm) 0%, var(--ms-bg-cream) 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Decorative radial glow */
.testimonialsmainsection::before {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 600px !important;
  height: 600px !important;
  background: radial-gradient(circle, rgba(212, 160, 23, 0.05) 0%, transparent 70%) !important;
  pointer-events: none !important;
}

/* Testimonial cards — white, large rounded, centered, hover lift */
.peoplereviewinnerbox {
  background: #fff !important;
  border-radius: 20px !important;
  box-shadow: var(--ms-shadow-card) !important;
  text-align: center !important;
  transition: all var(--ms-transition) !important;
  border: 1px solid rgba(139, 0, 0, 0.03) !important;
  position: relative !important;
}

/* Quote mark decoration ::before */
.peoplereviewinnerbox::before {
  content: '\201C' !important;
  position: absolute !important;
  top: 16px !important;
  left: 24px !important;
  font-size: 5rem !important;
  color: rgba(212, 160, 23, 0.08) !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  line-height: 1 !important;
  pointer-events: none !important;
}

.peoplereviewinnerbox:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--ms-shadow-hover) !important;
}

/* People image — circle with gold border + glow */
.peopleimgbox img {
  border-radius: 50% !important;
  border: 3px solid var(--ms-accent) !important;
  box-shadow: 0 0 24px var(--ms-accent-glow) !important;
  transition: all var(--ms-transition) !important;
  object-fit: cover !important;
}

.peoplereviewinnerbox:hover .peopleimgbox img {
  transform: scale(1.08) !important;
  box-shadow: 0 0 32px rgba(212, 160, 23, 0.35) !important;
  border-color: var(--ms-accent-light) !important;
}

/* Review text — italic, light color */
.peoplereviewtextsetting {
  font-style: italic !important;
  color: var(--ms-text-light) !important;
  line-height: 1.8 !important;
}

.peoplereviewinnerbox h4 {
  font-style: italic !important;
  color: var(--ms-text-light) !important;
  line-height: 1.7 !important;
}

/* Reviewer name */
.peoplereviewinnerbox h2 {
  font-family: 'Cinzel', serif !important;
  font-weight: 600 !important;
  color: var(--ms-text) !important;
}

.peoplereviewinnerbox h6 {
  color: var(--ms-text-muted) !important;
}


/* ================================================================
   11. SUBSCRIBE / NEWSLETTER — BOLD
   ================================================================ */

.mainsubscribesection {
  background: var(--ms-gradient-primary) !important;
  background-size: 200% 200% !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Decorative orbs */
.mainsubscribesection::before {
  content: '' !important;
  position: absolute !important;
  top: -100px !important;
  right: -100px !important;
  width: 400px !important;
  height: 400px !important;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, transparent 70%) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}

.mainsubscribesection::after {
  content: '' !important;
  position: absolute !important;
  bottom: -80px !important;
  left: -80px !important;
  width: 300px !important;
  height: 300px !important;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.06) 0%, transparent 70%) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}

/* Subscribe headings — Cinzel */
.subscribetextleftbox h1,
.subscribetextleftbox h2 {
  font-family: 'Cinzel', serif !important;
  font-weight: 700 !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.15) !important;
}

.subscribetextrightbox h1 {
  font-family: 'Cinzel', serif !important;
}

/* Subscribe button — gold gradient */
.customsubscribebtnsetting {
  background: var(--ms-gradient-gold) !important;
  color: var(--ms-dark) !important;
  border: none !important;
  border-radius: var(--ms-radius-sm) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  transition: all var(--ms-transition) !important;
  box-shadow: var(--ms-shadow-gold-btn) !important;
}

.customsubscribebtnsetting:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 32px rgba(212, 160, 23, 0.5) !important;
}

/* Newsletter form inputs in subscribe section */
.subscribetextrightbox {
  background: rgba(255, 255, 255, 0.08) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border-radius: var(--ms-radius-lg) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
}


/* ================================================================
   12. BUTTONS — CONSISTENT
   ================================================================ */

/* Primary action buttons — gradient red bg, rounded pill, hover lift + glow */
.previousworkshopbtnsetting,
.cartcheckoutbtn,
.contactusbtnsetting,
.customloginbtn {
  background: var(--ms-gradient-primary) !important;
  background-size: 200% 200% !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--ms-radius-pill) !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  transition: all var(--ms-transition) !important;
  cursor: pointer !important;
  box-shadow: var(--ms-shadow-primary-btn) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Shine / shimmer animation on primary buttons */
.previousworkshopbtnsetting::before,
.cartcheckoutbtn::before,
.contactusbtnsetting::before,
.customloginbtn::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent) !important;
  transition: left 0.6s !important;
}

.previousworkshopbtnsetting:hover,
.cartcheckoutbtn:hover,
.contactusbtnsetting:hover,
.customloginbtn:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 32px rgba(139, 0, 0, 0.4), var(--ms-shadow-glow) !important;
  color: #fff !important;
  animation: gradientShift 3s ease infinite !important;
}

.previousworkshopbtnsetting:hover::before,
.cartcheckoutbtn:hover::before,
.contactusbtnsetting:hover::before,
.customloginbtn:hover::before {
  left: 100% !important;
}

/* Gold gradient buttons */
.footersubcribebtnsetting,
.customsubscribebtnsetting {
  background: var(--ms-gradient-gold) !important;
  color: var(--ms-dark) !important;
  border: none !important;
  border-radius: var(--ms-radius-pill) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  transition: all var(--ms-transition) !important;
  box-shadow: var(--ms-shadow-gold-btn) !important;
}

.footersubcribebtnsetting:hover,
.customsubscribebtnsetting:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 32px rgba(212, 160, 23, 0.5) !important;
  color: var(--ms-dark) !important;
}

/* Empower ritual read more — red with white text, hover darken */
.empowerritualreadmorebtn {
  background: transparent !important;
  color: var(--ms-primary) !important;
  border: 2px solid var(--ms-primary) !important;
  border-radius: var(--ms-radius-pill) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  transition: all var(--ms-transition) !important;
  position: relative !important;
  overflow: hidden !important;
}

.empowerritualreadmorebtn::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--ms-gradient-primary) !important;
  opacity: 0 !important;
  transition: opacity var(--ms-transition) !important;
  border-radius: var(--ms-radius-pill) !important;
  z-index: -1 !important;
}

.empowerritualreadmorebtn:hover {
  color: #fff !important;
  border-color: transparent !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 24px rgba(139, 0, 0, 0.25) !important;
}

.empowerritualreadmorebtn:hover::before {
  opacity: 1 !important;
}

/* View all buttons — outline style, fill on hover */
.peopleviewallbtnbox a,
.peopleviewallbtnbox button {
  border: 2px solid var(--ms-primary) !important;
  border-radius: var(--ms-radius-pill) !important;
  color: var(--ms-primary) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  transition: all var(--ms-transition) !important;
  background: transparent !important;
  position: relative !important;
  overflow: hidden !important;
  z-index: 1 !important;
}

.peopleviewallbtnbox a::before,
.peopleviewallbtnbox button::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--ms-gradient-primary) !important;
  z-index: -1 !important;
  opacity: 0 !important;
  transition: opacity var(--ms-transition) !important;
  border-radius: var(--ms-radius-pill) !important;
}

.peopleviewallbtnbox a:hover,
.peopleviewallbtnbox button:hover {
  color: #fff !important;
  border-color: transparent !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 24px rgba(139, 0, 0, 0.25) !important;
}

.peopleviewallbtnbox a:hover::before,
.peopleviewallbtnbox button:hover::before {
  opacity: 1 !important;
}

/* Event text box buttons */
.eventtextmiddlesection a,
.textboxevent a {
  background: var(--ms-primary) !important;
  border-radius: var(--ms-radius-pill) !important;
  transition: all var(--ms-transition) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}

.eventtextmiddlesection a:hover,
.textboxevent a:hover {
  background: var(--ms-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
  color: #fff !important;
}

/* Contact us button right */
.contactusbtnrightbox a {
  background: var(--ms-gradient-primary) !important;
  border-radius: var(--ms-radius-sm) !important;
  transition: all var(--ms-transition) !important;
  color: #fff !important;
}

.contactusbtnrightbox a:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--ms-shadow-primary-btn) !important;
  background: var(--ms-dark) !important;
  color: #fff !important;
}

/* Join group button */
.joingroupbtnright a {
  background: var(--ms-dark) !important;
  border-radius: var(--ms-radius-sm) !important;
  transition: all var(--ms-transition) !important;
}

.joingroupbtnright a:hover {
  background: var(--ms-primary) !important;
  transform: translateY(-2px) !important;
}


/* ================================================================
   13. EMPOWERING RITUALS
   ================================================================ */

.empoweringritualmainbannerhomepage {
  background: var(--ms-gradient-warm) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Decorative golden orb */
.empoweringritualmainbannerhomepage::before {
  content: '' !important;
  position: absolute !important;
  top: -80px !important;
  right: -80px !important;
  width: 300px !important;
  height: 300px !important;
  background: radial-gradient(circle, rgba(212, 160, 23, 0.08) 0%, transparent 70%) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}

.empoweringritualmainbannerhomepage::after {
  content: '' !important;
  position: absolute !important;
  bottom: -60px !important;
  left: -60px !important;
  width: 250px !important;
  height: 250px !important;
  background: radial-gradient(circle, rgba(139, 0, 0, 0.05) 0%, transparent 70%) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}

/* Empowering ritual headings */
.empowerritualtextleftbox h2 {
  font-family: 'Cinzel', serif !important;
}

/* Empowering ritual image — subtle float animation */
.empowerritualimgrightbox img {
  border-radius: var(--ms-radius-lg) !important;
  box-shadow: 0 8px 40px rgba(139, 0, 0, 0.14) !important;
  animation: float 6s ease-in-out infinite !important;
}

/* Golden border frame around image */
.empowerritualimgrightbox::before {
  content: '' !important;
  position: absolute !important;
  top: -10px !important;
  right: -10px !important;
  bottom: -10px !important;
  left: -10px !important;
  border: 2px solid rgba(212, 160, 23, 0.15) !important;
  border-radius: calc(var(--ms-radius-lg) + 4px) !important;
  pointer-events: none !important;
}


/* ================================================================
   14. CONTACT PAGE
   ================================================================ */

.contactusrightformbox {
  background: #fff !important;
  border-radius: var(--ms-radius-lg) !important;
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.08) !important;
  border: 1px solid rgba(139, 0, 0, 0.03) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Gold top border */
.contactusrightformbox::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: var(--ms-gradient-gold) !important;
}

.contactusrightformbox h2 {
  font-family: 'Cinzel', serif !important;
}

/* Form inputs — bottom border style, gold glow on focus */
.contactusrightformbox input,
.contactusrightformbox textarea,
.customfromcontactus {
  border: none !important;
  border-bottom: 2px solid #e8e8e8 !important;
  border-radius: 0 !important;
  transition: border-color var(--ms-transition), box-shadow var(--ms-transition) !important;
  background: transparent !important;
}

.contactusrightformbox input:focus,
.contactusrightformbox textarea:focus,
.customfromcontactus:focus {
  border-bottom-color: var(--ms-accent) !important;
  box-shadow: 0 2px 0 0 rgba(212, 160, 23, 0.3) !important;
  outline: none !important;
}

/* Labels — clean typography */
.customcontactuslabel {
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  color: var(--ms-text) !important;
}

/* Contact info heading */
.contactuslefttextbox h2 {
  font-family: 'Cinzel', serif !important;
}

.contactuslefttextbox h2::after {
  background: var(--ms-gradient-gold) !important;
}

.contactuslefttextbox h3 {
  font-family: 'Cinzel', serif !important;
}


/* ================================================================
   15. ABOUT PAGE
   ================================================================ */

.ourteaminnerbox {
  border-radius: var(--ms-radius) !important;
  overflow: hidden !important;
  transition: all var(--ms-transition) !important;
  text-align: center !important;
}

.ourteaminnerbox:hover {
  transform: translateY(-8px) !important;
}

.ourteamimgbox {
  box-shadow: var(--ms-shadow-card) !important;
  border-radius: var(--ms-radius) !important;
  overflow: hidden !important;
  transition: box-shadow var(--ms-transition) !important;
}

.ourteaminnerbox:hover .ourteamimgbox {
  box-shadow: var(--ms-shadow-hover) !important;
}

/* Team image — zoom on hover */
.ourteamimgbox img {
  transition: transform var(--ms-transition-slow) !important;
}

.ourteaminnerbox:hover .ourteamimgbox img {
  transform: scale(1.06) !important;
}

/* Team member name */
.ourteaminnerbox h4 {
  font-family: 'Cinzel', serif !important;
  color: var(--ms-primary) !important;
}

/* About section headings */
.aboutustextrightsection h6 {
  color: var(--ms-primary) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
}

.aboutustextrightsection h3 {
  font-family: 'Cinzel', serif !important;
}

/* About image hover */
.aboutusimgleftsection img {
  transition: transform var(--ms-transition-slow) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
}

.aboutusimgleftsection:hover img {
  transform: scale(1.03) !important;
}

/* Vision/Mission box */
.ourvisionbox {
  border-radius: var(--ms-radius-lg) !important;
  transition: all var(--ms-transition) !important;
}

.ourvisionbox:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08) !important;
}

.ourvisionbox h3 {
  font-family: 'Cinzel', serif !important;
  color: var(--ms-primary) !important;
}


/* ================================================================
   16. EVENTS
   ================================================================ */

.innersectioneventbox {
  border-radius: var(--ms-radius) !important;
  box-shadow: var(--ms-shadow-card) !important;
  transition: all var(--ms-transition) !important;
  overflow: hidden !important;
  border: 1px solid rgba(139, 0, 0, 0.03) !important;
}

.innersectioneventbox:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--ms-shadow-hover) !important;
}

/* Date box — gradient bg */
.dateboxevent {
  background: var(--ms-gradient-primary) !important;
  border-radius: var(--ms-radius-sm) !important;
  box-shadow: 0 4px 12px rgba(139, 0, 0, 0.2) !important;
}

.dateboxevent h3 {
  font-family: 'Cinzel', serif !important;
  color: #fff !important;
}

.dateboxevent h6 {
  color: rgba(255, 255, 255, 0.85) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}

/* Event text box headings */
.textboxevent h2 {
  font-family: 'Cinzel', serif !important;
  transition: color var(--ms-transition-fast) !important;
}

.textboxevent h2:hover {
  color: var(--ms-primary) !important;
}

/* Event image hover */
.imageboxevent img {
  transition: transform var(--ms-transition-slow) !important;
}

.innersectioneventbox:hover .imageboxevent img {
  transform: scale(1.06) !important;
}

/* Event single page */
.eventsinglepagedescription h1 {
  font-family: 'Cinzel', serif !important;
}

.eventsingletextrightsection h2 {
  font-family: 'Cinzel', serif !important;
}

.eventbuyticketdatebox {
  background: var(--ms-gradient-primary) !important;
  border-radius: var(--ms-radius-sm) !important;
  box-shadow: 0 4px 12px rgba(139, 0, 0, 0.2) !important;
}

.eventbuyticketdatebox h6 {
  font-family: 'Cinzel', serif !important;
}

/* Month border separator */
.maineventtopmonthborder::after {
  background: linear-gradient(90deg, rgba(139, 0, 0, 0.15), transparent) !important;
}


/* ================================================================
   17. FOOTER — DARK PREMIUM
   ================================================================ */

.mainfootersection {
  background: var(--ms-gradient-footer) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Gold top border */
.mainfootersection::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--ms-primary), var(--ms-accent), var(--ms-primary)) !important;
}

/* Footer section headings — gold color, Cinzel */
.aboutboxheadingsetting,
.aboutbox h3 {
  font-family: 'Cinzel', serif !important;
  color: var(--ms-accent) !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  position: relative !important;
}

.aboutboxheadingsetting::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 30px !important;
  height: 2px !important;
  background: var(--ms-gradient-gold) !important;
  border-radius: 2px !important;
}

/* Footer links — gold on hover */
.mainfootersection a {
  transition: color var(--ms-transition) !important;
}

.mainfootersection a:hover {
  color: var(--ms-accent) !important;
}

/* Footer link items with underline animation */
.aboutbox ul li a {
  position: relative !important;
}

.aboutbox ul li a::before {
  content: '' !important;
  position: absolute !important;
  bottom: -2px !important;
  left: 0 !important;
  width: 0 !important;
  height: 1px !important;
  background: var(--ms-gradient-gold) !important;
  transition: width var(--ms-transition-fast) !important;
}

.aboutbox ul li a:hover {
  color: var(--ms-accent) !important;
}

.aboutbox ul li a:hover::before {
  width: 100% !important;
}

/* Footer bottom border */
.footerbottomlastmainsection {
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* Footer logo */
.footerlogoimgbox a img {
  filter: drop-shadow(0 2px 8px rgba(212, 160, 23, 0.1)) !important;
  transition: all var(--ms-transition) !important;
}

.footerlogoimgbox a img:hover {
  filter: drop-shadow(0 4px 16px rgba(212, 160, 23, 0.2)) !important;
}

/* Footer social icons */
.callusboxleft ul li a img {
  transition: all var(--ms-transition) !important;
  opacity: 0.8 !important;
}

.callusboxleft ul li a img:hover {
  transform: translateY(-4px) scale(1.1) !important;
  opacity: 1 !important;
  filter: drop-shadow(0 4px 8px var(--ms-accent-glow)) !important;
}

/* Footer headings */
.callusboxleft h1 {
  font-family: 'Cinzel', serif !important;
}

.aboutbox h2 {
  font-family: 'Cinzel', serif !important;
}

/* Footer newsletter input */
.customfromnewsletter {
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: var(--ms-radius-pill) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  transition: all var(--ms-transition-fast) !important;
}

.customfromnewsletter:focus {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.25) !important;
  box-shadow: 0 0 0 3px rgba(212, 160, 23, 0.08) !important;
}

/* Privacy policy links */
.privacypolicyheadinglinkbox a {
  transition: color var(--ms-transition-fast) !important;
}

.privacypolicyheadinglinkbox a:hover {
  color: var(--ms-accent) !important;
}


/* ================================================================
   18. LOGIN / AUTH
   ================================================================ */

/* Login form box — white, rounded, shadow */
.loginrightformbox {
  background: #fff !important;
  border-radius: var(--ms-radius-lg) !important;
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.08) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Gold top accent */
.loginrightformbox::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: var(--ms-gradient-gold) !important;
}

.loginrightformbox h2 {
  font-family: 'Cinzel', serif !important;
}

.loginrightformbox p a {
  color: var(--ms-primary) !important;
  font-weight: 600 !important;
  transition: color var(--ms-transition-fast) !important;
}

.loginrightformbox p a:hover {
  color: var(--ms-primary-dark) !important;
}

/* Login form inputs */
.customloginformsetting {
  border: 2px solid rgba(139, 0, 0, 0.06) !important;
  border-radius: var(--ms-radius-sm) !important;
  transition: all var(--ms-transition-fast) !important;
}

.customloginformsetting:focus {
  border-color: var(--ms-primary) !important;
  box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.06) !important;
  outline: none !important;
}

/* Login button */
.customloginbtn {
  background: var(--ms-gradient-primary) !important;
  background-size: 200% 200% !important;
  border: none !important;
  border-radius: var(--ms-radius-sm) !important;
  box-shadow: var(--ms-shadow-primary-btn) !important;
}

.customloginbtn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(139, 0, 0, 0.3) !important;
  animation: gradientShift 3s ease infinite !important;
}

/* Login banner image */
.loginbannerleftbox {
  border-radius: var(--ms-radius) !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
}

.loginbannerleftbox img {
  transition: transform var(--ms-transition-slow) !important;
}

.loginbannerleftbox:hover img {
  transform: scale(1.03) !important;
}

/* Register link */
.customregisterloginlink {
  color: var(--ms-primary) !important;
  transition: color var(--ms-transition-fast) !important;
}

.customregisterloginlink:hover {
  color: var(--ms-primary-dark) !important;
}


/* ================================================================
   19. OWL CAROUSEL OVERRIDE
   ================================================================ */

/* Nav buttons — circle, white bg, primary on hover */
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next {
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.95) !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important;
  border: 2px solid rgba(139, 0, 0, 0.06) !important;
  transition: all var(--ms-transition) !important;
  color: var(--ms-primary) !important;
}

.owl-carousel .owl-nav button:hover {
  background: var(--ms-primary) !important;
  color: #fff !important;
  border-color: var(--ms-primary) !important;
  transform: scale(1.1) translateY(-50%) !important;
  box-shadow: 0 6px 20px rgba(139, 0, 0, 0.25) !important;
}

.owl-carousel .owl-nav button span {
  font-size: 22px !important;
  line-height: 1 !important;
  transition: color var(--ms-transition-fast) !important;
}

.owl-carousel .owl-nav button:hover span {
  color: #fff !important;
}

/* Dots — gold active with wider pill shape */
.owl-carousel .owl-dots .owl-dot span {
  background: #ddd !important;
  transition: all var(--ms-transition) !important;
  border-radius: 50% !important;
}

.owl-carousel .owl-dots .owl-dot.active span {
  background: var(--ms-accent) !important;
  width: 28px !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 8px var(--ms-accent-glow) !important;
}

.owl-carousel .owl-dots .owl-dot:hover span {
  background: var(--ms-primary) !important;
  transform: scale(1.2) !important;
}


/* ================================================================
   20. MODAL
   ================================================================ */

#ContentModel .modal-content {
  border-radius: 20px !important;
  border: none !important;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.2) !important;
  overflow: hidden !important;
}

#ContentModel .modal-header {
  border-bottom: 1px solid rgba(139, 0, 0, 0.04) !important;
}

#ContentModel .modal-footer {
  border-top: 1px solid rgba(139, 0, 0, 0.04) !important;
}

#ContentModel .btn-close {
  transition: all var(--ms-transition-fast) !important;
}

#ContentModel .btn-close:hover {
  transform: rotate(90deg) !important;
}

/* ================================================================
   UPCOMING WORKSHOP POPUP — PREMIUM OVERLAY
   ================================================================ */
.customindexevent {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9999 !important;
  background: rgba(0, 0, 0, 0.75) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  overflow-y: auto !important;
  padding: 30px 15px !important;
}


/* Banner section — contained, rounded */
.customindexevent .mainevevtbannersection {
  max-width: 900px !important;
  margin: 0 auto !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  position: relative !important;
  z-index: 1 !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3) !important;
}

.customindexevent .custombannerimage {
  width: 100% !important;
  height: auto !important;
  max-height: 450px !important;
  object-fit: contain !important;
  display: block !important;
  background: #1A0A0A !important;
}

/* Close button — clean circle */
.customindexevent img.customcrossimgsetting {
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  width: 40px !important;
  height: 40px !important;
  background: rgba(255, 255, 255, 0.95) !important;
  border-radius: 50% !important;
  padding: 10px !important;
  cursor: pointer !important;
  z-index: 10 !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.3s !important;
}

.customindexevent img.customcrossimgsetting:hover {
  transform: rotate(90deg) scale(1.1) !important;
  box-shadow: 0 4px 20px rgba(139, 0, 0, 0.3) !important;
}

/* Overlay text on banner */
.customindexevent .maineventtextsection {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  top: auto !important;
  padding: 30px !important;
  background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.7) 100%) !important;
}

.customindexevent .maineventtextsection h1 {
  color: #fff !important;
  font-size: clamp(1.4rem, 3vw, 2rem) !important;
  margin: 10px 0 0 !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

.customindexevent .eventlogoimage img {
  width: 60px !important;
  border-radius: 12px !important;
}

/* Workshop list section */
.customindexevent .maineventinnersectionbox {
  max-width: 900px !important;
  margin: 0 auto !important;
  background: #fff !important;
  border-radius: 0 0 20px 20px !important;
  padding: 30px !important;
  margin-top: -1px !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Workshop cards */
.customindexevent .innersectioneventbox {
  background: #fff !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  border-radius: 16px !important;
  padding: 24px !important;
  margin-bottom: 16px !important;
  transition: all 0.3s !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04) !important;
}

.customindexevent .innersectioneventbox .row {
  align-items: center !important;
}

.customindexevent .innersectioneventbox:hover {
  box-shadow: 0 8px 32px rgba(139, 0, 0, 0.1) !important;
  transform: translateY(-2px) !important;
}

.customindexevent .innersectioneventbox a {
  text-decoration: none !important;
}

/* Date — inline with calendar icon */
.customindexevent .col-md-1 {
  display: none !important;
}

/* Expand text column since date col is hidden */
.customindexevent .innersectioneventbox .col-md-7 {
  flex: 0 0 60% !important;
  max-width: 60% !important;
}

.customindexevent .innersectioneventbox .col-md-4 {
  flex: 0 0 40% !important;
  max-width: 40% !important;
}

/* Text content */
.customindexevent .textboxevent h5 {
  color: #C85A00 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  margin-bottom: 8px !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.customindexevent .textboxevent h4 {
  color: #1A0A0A !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
}

.customindexevent .textboxevent p {
  color: #666 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

/* Continue button */
.customindexevent .previousworkshopbtnsetting {
  background: linear-gradient(160deg, #C85A00 0%, #E87E20 40%, #D4A017 100%) !important;
  color: #fff !important;
  padding: 8px 24px !important;
  border-radius: 50px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  display: inline-block !important;
  margin-top: 10px !important;
}

/* Workshop image */
.customindexevent .imageboxevent {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.customindexevent .imageboxevent img {
  border-radius: 12px !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
}

/* No workshops message */
.customindexevent h3 {
  text-align: center !important;
  color: #888 !important;
  font-size: 1rem !important;
  padding: 20px !important;
}

/* Tablet popup adjustments */
@media (max-width: 991px) {
  .customindexevent .mainevevtbannersection {
    max-width: 100% !important;
    border-radius: 0 !important;
  }
  .customindexevent .maineventinnersectionbox {
    max-width: 100% !important;
    border-radius: 0 !important;
    padding: 20px 15px !important;
  }
  .customindexevent {
    padding: 0 !important;
  }
}

/* Mobile popup adjustments */
@media (max-width: 768px) {
  .customindexevent .custombannerimage {
    max-height: 300px !important;
  }
  .customindexevent .innersectioneventbox .row {
    display: flex !important;
    flex-direction: column !important;
  }
  .customindexevent .innersectioneventbox .col-md-7 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    order: 2 !important;
  }
  .customindexevent .innersectioneventbox .col-md-4 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    order: 1 !important;
    margin-bottom: 16px !important;
  }
  .customindexevent .imageboxevent img {
    height: 200px !important;
    object-fit: contain !important;
  }
  .customindexevent .previousworkshopbtnsetting {
    display: block !important;
    text-align: center !important;
    margin-top: 16px !important;
  }
  .customindexevent .maineventtextsection {
    padding: 20px !important;
  }
  .customindexevent .maineventtextsection h1 {
    font-size: 1.2rem !important;
  }
  .customindexevent .eventlogoimage img {
    width: 40px !important;
  }
}

/* Modal backdrop */
.modal-backdrop {
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
}


/* ================================================================
   21. ANIMATIONS (KEYFRAMES)
   ================================================================ */

/* Fade In Down — dropdown menus */
@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-15px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Fade In Up — content reveal */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Golden Glow — pulsing gold shadow */
@keyframes goldenGlow {
  0%, 100% {
    box-shadow: 0 0 20px rgba(212, 160, 23, 0.15),
                0 0 40px rgba(212, 160, 23, 0.05);
  }
  50% {
    box-shadow: 0 0 35px rgba(212, 160, 23, 0.3),
                0 0 70px rgba(212, 160, 23, 0.1);
  }
}

/* Shimmer — shine effect moving left to right */
@keyframes shimmer {
  0% {
    background-position: -200% center;
  }
  100% {
    background-position: 200% center;
  }
}

/* Float — gentle up-down */
@keyframes float {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-12px);
  }
}

/* Gradient Shift — bg gradient animation */
@keyframes gradientShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* Slide In Right */
@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(40px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Pulse — scale pulse */
@keyframes pulse {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.04);
  }
}

/* Spin — for loading states */
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* Glow Pulse — for gold accents */
@keyframes glowPulse {
  0%, 100% {
    filter: drop-shadow(0 0 8px rgba(212, 160, 23, 0.15));
  }
  50% {
    filter: drop-shadow(0 0 20px rgba(212, 160, 23, 0.3));
  }
}

/* Breathe — subtle scale breathing */
@keyframes breathe {
  0%, 100% {
    transform: scale(1);
    opacity: 0.8;
  }
  50% {
    transform: scale(1.02);
    opacity: 1;
  }
}


/* ================================================================
   22. HOVER SHINE EFFECT FOR BUTTONS
   ================================================================ */

/* Reusable btn-shine class — add to any button element */
.btn-shine {
  position: relative !important;
  overflow: hidden !important;
}

.btn-shine::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent) !important;
  transition: left 0.5s !important;
}

.btn-shine:hover::after {
  left: 100% !important;
}

/* Apply shine automatically to primary action buttons */
.customupcomingbtnsetting,
.customenquirybtnsetting,
.previousworkshopbtnsetting,
.contactusbtnsetting,
.customloginbtn,
.cartcheckoutbtn {
  position: relative !important;
  overflow: hidden !important;
}


/* ================================================================
   23. SCROLL PROGRESS BAR (top of page)
   ================================================================
   NOTE: Pure CSS scroll progress requires JS for accurate tracking.
   Below is a CSS-only approximation using linear-gradient on body.
   For production, attach a small JS snippet:

   window.addEventListener('scroll', () => {
     const scrolled = (window.scrollY / (document.documentElement.scrollHeight - window.innerHeight)) * 100;
     document.documentElement.style.setProperty('--scroll-progress', scrolled + '%');
   });
   ================================================================ */

/* CSS scroll progress bar indicator */
body::before {
  content: '' !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: var(--scroll-progress, 0%) !important;
  height: 3px !important;
  background: var(--ms-gradient-gold) !important;
  z-index: 99999 !important;
  transition: width 0.1s linear !important;
  pointer-events: none !important;
}


/* ================================================================
   24. CART / PDF
   ================================================================ */

.pdfcartmainbox {
  border-radius: var(--ms-radius) !important;
  box-shadow: var(--ms-shadow-card) !important;
  overflow: hidden !important;
  transition: all var(--ms-transition) !important;
  border: 1px solid rgba(139, 0, 0, 0.03) !important;
}

.pdfcartmainbox:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--ms-shadow-hover) !important;
}

.pdfcartmainbox:hover .pdfcartimgbox img {
  transform: scale(1.05) !important;
}

/* Cart checkout button — consistent with other buttons */
.cartcheckoutbtn {
  background: var(--ms-gradient-gold) !important;
  color: var(--ms-dark) !important;
  border: none !important;
  border-radius: var(--ms-radius-pill) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  box-shadow: var(--ms-shadow-gold-btn) !important;
}

.cartcheckoutbtn:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 28px rgba(212, 160, 23, 0.45) !important;
  color: var(--ms-dark) !important;
}

/* PDF file headings */
.mainpdffileheading {
  font-family: 'Cinzel', serif !important;
}

.mainpdffileheading a {
  transition: color var(--ms-transition-fast) !important;
}

.mainpdffileheading a:hover {
  color: var(--ms-primary) !important;
}

/* PDF price box */
.pdffilepricebox h3 {
  font-family: 'Cinzel', serif !important;
  color: var(--ms-primary) !important;
}

/* PDF cart subtotal */
.pdfcartsubtoalboxbottom {
  border-radius: var(--ms-radius) !important;
  background: var(--ms-gradient-warm) !important;
}

.pdfcartsubtoalboxbottom h4 {
  font-family: 'Cinzel', serif !important;
}

.pdfcartsubtoalboxbottom h2 {
  font-family: 'Cinzel', serif !important;
  color: var(--ms-primary) !important;
}

/* Cart text box */
.pdfcarttextbox h4 {
  font-family: 'Cinzel', serif !important;
}

.pdfcarttextbox h3 {
  font-family: 'Cinzel', serif !important;
  color: var(--ms-primary) !important;
}


/* ================================================================
   25. SWITCH MANTRA BOOK SECTION
   ================================================================ */

.switchmantrabookpagesection {
  background: var(--ms-gradient-warm) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Read More button — orange-gold navigation style */
.bookpagereadmorebtnsetting {
  color: #C85A00 !important;
  border-color: #C85A00 !important;
  background: transparent !important;
  transition: all 0.3s !important;
}

.bookpagereadmorebtnsetting:hover {
  background: linear-gradient(160deg, #C85A00 0%, #E87E20 40%, #D4A017 100%) !important;
  color: #fff !important;
  border-color: #C85A00 !important;
}

/* Buy Now button — red action style */
.publisherbottombtnbox ul li:last-child a {
  background: linear-gradient(135deg, #8B0000, #AB1600) !important;
  color: #fff !important;
  border-color: #8B0000 !important;
  transition: all 0.3s !important;
}

.publisherbottombtnbox ul li:last-child a:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(139,0,0,0.3) !important;
}

/* Sale badge — bigger, golden pulse */
.bookpagesaleboxtop span {
  background: linear-gradient(135deg, #8B0000, #AB1600) !important;
  width: 65px !important;
  height: 65px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  box-shadow: 0 4px 16px rgba(139,0,0,0.3) !important;
  animation: salePulse 2s ease-in-out infinite !important;
}

@keyframes salePulse {
  0%, 100% { box-shadow: 0 4px 16px rgba(139,0,0,0.3); }
  50% { box-shadow: 0 4px 24px rgba(139,0,0,0.5); }
}

/* Decorative orb */
.switchmantrabookpagesection::before {
  content: '' !important;
  position: absolute !important;
  width: 300px !important;
  height: 300px !important;
  background: radial-gradient(circle, rgba(139, 0, 0, 0.04) 0%, transparent 70%) !important;
  top: -60px !important;
  left: -60px !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}

.switchmantra-lefttext h2 {
  font-family: 'Cinzel', serif !important;
}

.switchmantra-lefttext a {
  background: var(--ms-gradient-primary) !important;
  border-radius: var(--ms-radius-pill) !important;
  box-shadow: var(--ms-shadow-primary-btn) !important;
  transition: all var(--ms-transition) !important;
}

.switchmantra-lefttext a:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 28px rgba(139, 0, 0, 0.3) !important;
}

.switchmantra-rightimg img {
  border-radius: var(--ms-radius) !important;
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.1) !important;
  transition: transform var(--ms-transition-slow) !important;
}

.switchmantra-rightimg img:hover {
  transform: rotate(-2deg) scale(1.02) !important;
}


/* ================================================================
   ADDITIONAL PREMIUM POLISH
   ================================================================ */

/* Haleem Kriya / Blog detail pages */
.haleemkriyamainleftsection {
  border-radius: var(--ms-radius) !important;
  overflow: hidden !important;
  box-shadow: var(--ms-shadow-card) !important;
}

.haleemkriyamainimagebox img {
  transition: transform var(--ms-transition-slow) !important;
}

.haleemkriyamainimagebox:hover img {
  transform: scale(1.03) !important;
}

.haleemkriyatextsection h1 {
  font-family: 'Cinzel', serif !important;
}

.haleemkriyaCommentboxsection h5 {
  color: var(--ms-primary) !important;
}

/* Course page */
.coursedetailmainbox {
  border-radius: var(--ms-radius-lg) !important;
  box-shadow: var(--ms-shadow-card) !important;
  transition: all var(--ms-transition) !important;
}

.coursedetailmainbox h2 {
  font-family: 'Cinzel', serif !important;
}

.courselessonbox {
  transition: all var(--ms-transition) !important;
  border-radius: var(--ms-radius-sm) !important;
}

.courselessonbox:hover {
  background: var(--ms-bg-warm) !important;
  transform: translateX(4px) !important;
  box-shadow: var(--ms-shadow-card) !important;
}

.courselessonbox .lesson-number {
  background: var(--ms-primary) !important;
}

/* ================================================================
   SERVICE & WORKSHOP DETAIL PAGES — REDESIGN
   ================================================================ */

/* Banner section — gradient matching hero */
.mainbannersection {
  background: linear-gradient(160deg, #8B0000 0%, #AB1600 35%, #C42D1A 65%, #D4A017 100%) !important;
  position: relative !important;
}

.programinnerbannertop {
  padding: 30px 0 !important;
  text-align: center !important;
}

.programinnerbannertop::before {
  display: none !important;
}

.programinnerbannertop h2 {
  color: #fff !important;
  font-size: clamp(1.6rem, 4vw, 2.6rem) !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.2) !important;
}

/* Content section */
.mainbannersectionprograms {
  background: #fff !important;
  padding: 60px 0 !important;
}

.mainbannerprograminnersection {
  max-width: 900px !important;
  margin: 0 auto !important;
}

/* Service image — rounded, shadow, centered */
.mainbannerprogramimgbox {
  text-align: center !important;
  margin-bottom: 30px !important;
}

.mainbannerprogramimgbox img {
  max-width: 100% !important;
  border-radius: 20px !important;
  box-shadow: 0 12px 48px rgba(0,0,0,0.1) !important;
}

/* Service title */
.mainbannerprograminnersection h1 {
  font-size: clamp(1.4rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  color: #1A0A0A !important;
  margin-bottom: 20px !important;
  position: relative !important;
  padding-bottom: 16px !important;
}

.mainbannerprograminnersection h1::after {
  content: '' !important;
  display: block !important;
  width: 60px !important;
  height: 3px !important;
  background: linear-gradient(90deg, #D4A017, #FFD700) !important;
  margin-top: 12px !important;
  border-radius: 2px !important;
}

/* Service description text */
.mainbannerprograminnersection p,
.customservicehaleemsetting {
  color: #555 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
}

/* Join group / Book session — simple inline CTA */
div.joingroupmainbox,
.joingroupmainbox {
  border: none !important;
  border-radius: 0 !important;
  background: linear-gradient(160deg, #8B0000 0%, #AB1600 35%, #C42D1A 65%, #D4A017 100%) !important;
  padding: 35px 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  top: 0 !important;
  position: relative !important;
  max-width: 100% !important;
  width: 100% !important;
}

div.joingroupmainbox .container .row {
  align-items: center !important;
}

div.joingroupmainbox .joingrouptextleftinner h6,
.joingroupmainbox .joingrouptextleftinner h6 {
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  margin: 0 !important;
}

div.joingroupmainbox .joingroupbtnright,
.joingroupmainbox .joingroupbtnright {
  text-align: right !important;
}

div.joingroupmainbox .joingroupbtnright a,
.joingroupmainbox .joingroupbtnright a {
  background: #fff !important;
  color: #8B0000 !important;
  padding: 12px 32px !important;
  border-radius: 50px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: all 0.3s !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.15) !important;
  border: none !important;
}

div.joingroupmainbox .joingroupbtnright a:hover,
.joingroupmainbox .joingroupbtnright a:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,0.25) !important;
}

@media (max-width: 767px) {
  div.joingroupmainbox .container .row {
    text-align: center !important;
  }
  div.joingroupmainbox .joingrouptextleftinner h6 {
    margin-bottom: 16px !important;
  }
  div.joingroupmainbox .joingroupbtnright,
  .joingroupmainbox .joingroupbtnright {
    text-align: center !important;
    margin-top: 16px !important;
  }
}

.joingroupmainbox .joingroupbtnright a {
  background: linear-gradient(160deg, #C85A00 0%, #E87E20 40%, #D4A017 100%) !important;
  color: #fff !important;
  padding: 12px 32px !important;
  border-radius: 50px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: all 0.3s !important;
  box-shadow: 0 4px 16px rgba(200,90,0,0.25) !important;
}

.joingroupmainbox .joingroupbtnright a:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 28px rgba(200,90,0,0.35) !important;
}

/* Workshop data page improvements */
.workshopimagebox {
  border-radius: 20px !important;
  overflow: hidden !important;
}

.workshoptextbox {
  padding: 20px !important;
}

.workshoptextbox h1 {
  color: #1A0A0A !important;
  font-size: clamp(1.2rem, 2.5vw, 1.6rem) !important;
}

.workshoptextbox h6 {
  color: #555 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

/* Service list items */
.mainbannersectionprograms ul {
  list-style: none !important;
  padding: 0 !important;
}

.mainbannersectionprograms ul li a {
  display: block !important;
  padding: 12px 20px !important;
  margin-bottom: 8px !important;
  background: #fff !important;
  border: 1px solid rgba(212,160,23,0.1) !important;
  border-radius: 12px !important;
  color: #1A0A0A !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.3s !important;
  cursor: pointer !important;
}

.mainbannersectionprograms ul li a:hover {
  border-color: rgba(212,160,23,0.3) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.06) !important;
  color: #8B0000 !important;
  transform: translateX(4px) !important;
}

@media (max-width: 767px) {
  .joingroupmainbox {
    padding: 20px !important;
    text-align: center !important;
  }
  .joingroupmainbox .joingroupbtnright {
    margin-top: 16px !important;
  }
  .mainbannerprograminnersection h1::after {
    margin: 12px auto 0 !important;
  }
}

/* Program inner section headings */
.mainbannerprograminnersection h1 {
  font-family: 'Cinzel', serif !important;
}

/* Workshop listing page improvements */
.maineventinnersectionbox {
  padding: 50px 0 !important;
  background: #fff !important;
}

.maineventinnersectionbox .innersectioneventbox {
  background: #fff !important;
  border: 1px solid rgba(212,160,23,0.1) !important;
  border-radius: 20px !important;
  padding: 24px !important;
  margin-bottom: 20px !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.05) !important;
  transition: all 0.3s !important;
}

.maineventinnersectionbox .innersectioneventbox:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 40px rgba(139,0,0,0.08) !important;
  border-color: rgba(212,160,23,0.25) !important;
}

.maineventinnersectionbox .innersectioneventbox a {
  text-decoration: none !important;
}

.maineventinnersectionbox .textboxevent h4 {
  color: #1A0A0A !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
}

.maineventinnersectionbox .textboxevent h5 {
  color: #C85A00 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

.maineventinnersectionbox .textboxevent p {
  color: #666 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

.maineventinnersectionbox .previousworkshopbtnsetting {
  background: linear-gradient(160deg, #C85A00 0%, #E87E20 40%, #D4A017 100%) !important;
  color: #fff !important;
  padding: 10px 28px !important;
  border-radius: 50px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  display: inline-block !important;
  margin-top: 12px !important;
}

.maineventinnersectionbox .imageboxevent img {
  border-radius: 16px !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
}

.maineventinnersectionbox .dateboxevent {
  background: linear-gradient(135deg, #8B0000, #AB1600) !important;
  border-radius: 12px !important;
  padding: 12px !important;
  text-align: center !important;
}

.maineventinnersectionbox .dateboxevent h6 {
  color: #fff !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

/* Service page card styling */
.serviceinnersectionbox {
  border-radius: 20px !important;
  overflow: hidden !important;
  border: 1px solid rgba(212,160,23,0.1) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.06) !important;
  transition: all 0.4s !important;
  background: #fff !important;
}

.serviceinnersectionbox:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 50px rgba(139,0,0,0.1) !important;
  border-color: rgba(212,160,23,0.3) !important;
}

.serviceinnersectionbox h5 {
  padding: 16px 20px !important;
  text-align: center !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #1A0A0A !important;
}

.serviceimginnerbox {
  height: 240px !important;
  overflow: hidden !important;
}

.serviceimginnerbox img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.5s !important;
}

.serviceinnersectionbox:hover .serviceimginnerbox img {
  transform: scale(1.06) !important;
}

/* Tab settings */
.customtabssetting {
  transition: all var(--ms-transition-fast) !important;
  border-radius: var(--ms-radius-sm) !important;
}

.customtabssetting.active {
  box-shadow: var(--ms-shadow-card) !important;
}

/* Blog links navigation bar */
.bloginnerlinksbtnsection {
  border-radius: var(--ms-radius-pill) !important;
  box-shadow: var(--ms-shadow-card) !important;
  transition: all var(--ms-transition) !important;
}

/* Workshop section — relative for line positioning */
.mainworkshopsection > .container > .row {
  position: relative !important;
}

/* Workshop image line — centered vertical connector */
img.worshopline {
  opacity: 0.3 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}

/* Blog category box */
.blogcategorybox {
  border-radius: var(--ms-radius) !important;
  box-shadow: var(--ms-shadow-card) !important;
  border: 1px solid rgba(139, 0, 0, 0.04) !important;
  transition: all var(--ms-transition) !important;
}

.blogcategorytagsbox {
  border-radius: var(--ms-radius) !important;
  box-shadow: var(--ms-shadow-card) !important;
  border: 1px solid rgba(139, 0, 0, 0.04) !important;
}

/* Program section cards */
.mainprograminnerbox h1 {
  font-family: 'Cinzel', serif !important;
  color: var(--ms-primary) !important;
}

.programinnerimgbox img {
  transition: transform var(--ms-transition-slow) !important;
}

.programinnerimgbox img:hover {
  transform: scale(1.06) !important;
}

/* Service dropdown mega menu polish */
ul.dropdown-menu-desktop {
  border-radius: var(--ms-radius) !important;
  border: none !important;
  box-shadow: 0 16px 56px rgba(0, 0, 0, 0.12) !important;
  border-top: 3px solid var(--ms-accent) !important;
}

h6.dropmaintitle {
  background: var(--ms-primary) !important;
  border-radius: var(--ms-radius-sm) !important;
}

/* Blog view more button */
.bolgviewmorebtn a {
  color: var(--ms-primary) !important;
  transition: all var(--ms-transition-fast) !important;
}

.bolgviewmorebtn a:hover {
  color: var(--ms-accent) !important;
}

/* General form inputs with accent glow on focus */
input.form-control:focus,
textarea.form-control:focus,
select.form-control:focus {
  border-color: var(--ms-accent) !important;
  box-shadow: 0 0 0 3px var(--ms-accent-glow) !important;
}

/* Service link box icon hover */
i.fa.fa-angle-double-right {
  transition: all var(--ms-transition) !important;
}

.servicestextboxright ul li a:hover i {
  color: var(--ms-primary) !important;
}

/* Event page specific */
.eventbuyticketdatebox h3 {
  font-weight: 600 !important;
}


/* ================================================================
   RESPONSIVE ADJUSTMENTS
   ================================================================ */

@media (max-width: 991px) {
  /* Disable nav link underline animation on mobile */
  .customnavbarsetting .nav-link::after {
    display: none !important;
  }

  /* Mobile header — clean white background */
  .innerheaderbar {
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
  }

  /* Mobile navbar collapse — white bg, proper spacing */
  #mobile-header .navbar-collapse,
  #mobile-header .customnavbarsetting {
    background: #fff !important;
  }

  #mobile-header .navbar-collapse.show,
  #mobile-header .navbar-collapse.collapsing {
    background: #fff !important;
    padding: 10px 0 !important;
  }

  /* Mobile nav links — clean styling */
  #mobile-header .customnavbarsetting ul li.nav-item > a,
  #mobile-header .customnavbarsetting .nav-link {
    color: #1A0A0A !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 12px 20px !important;
    margin-left: 10px !important;
    border-bottom: 1px solid rgba(0,0,0,0.05) !important;
    background: transparent !important;
  }

  #mobile-header .customnavbarsetting ul li.nav-item > a.active,
  #mobile-header .customnavbarsetting .nav-link.active {
    color: #8B0000 !important;
    background: rgba(139,0,0,0.04) !important;
  }

  /* Mobile service dropdown button */
  #mobile-header .serviceheaderbtncss {
    color: #1A0A0A !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 12px 20px !important;
    margin-left: 10px !important;
    width: 100% !important;
    text-align: left !important;
    border-bottom: 1px solid rgba(0,0,0,0.05) !important;
  }

  #mobile-header .servicetopdropdowncss {
    width: 100% !important;
  }

  /* Mobile dropdown menus — no absolute, flow naturally */
  #mobile-header .servicedropdownnewcss,
  #mobile-header .dropdown-menu {
    position: relative !important;
    width: 100% !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    border-top: none !important;
    padding: 0 0 0 16px !important;
    background: #f9f9f9 !important;
  }

  /* Mobile sub-dropdown menus */
  #mobile-header .servicemenudropdownnewcss,
  #mobile-header .submenudropdownulnewservice {
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    border-top: none !important;
    padding: 0 0 0 16px !important;
    background: #f3f3f3 !important;
  }

  /* Mobile dropdown items */
  #mobile-header .servicenamenewcss,
  #mobile-header .childservicenamenewcss,
  #mobile-header .dropdown-item {
    color: #333 !important;
    font-size: 13px !important;
    padding: 10px 12px !important;
    border-bottom: 1px solid rgba(0,0,0,0.04) !important;
  }

  #mobile-header .servicenewdropdownsubmenucss:hover,
  #mobile-header .submenudropdownlinewcss:hover {
    background: rgba(139,0,0,0.06) !important;
  }

  #mobile-header .servicenewdropdownsubmenucss:hover .servicenamenewcss,
  #mobile-header .submenudropdownlinewcss:hover .childservicenamenewcss {
    color: #8B0000 !important;
    background: transparent !important;
  }

  /* Hide social icons on mobile header to save space */
  #mobile-header .headersociallinkboxleft {
    display: none !important;
  }

  /* Reduce card hover lift on mobile (touch devices) */
  .gridviewinnersection:hover,
  .bloginnerboxsection:hover,
  .serviceinnersectionbox:hover,
  .innersectioneventbox:hover {
    transform: translateY(-4px) !important;
  }

  /* Reduce float animation on mobile for performance */
  .empowerritualimgrightbox img {
    animation: none !important;
  }

  /* Hide scroll progress on mobile */
  body::before {
    display: none !important;
  }
}

@media (max-width: 576px) {
  /* Even more subtle hover on small screens */
  .gridviewinnersection:hover,
  .bloginnerboxsection:hover,
  .serviceinnersectionbox:hover {
    transform: translateY(-3px) !important;
  }

  /* Blog image full rounded on mobile */
  .bloginnerimgleftbox img {
    border-radius: var(--ms-radius) var(--ms-radius) 0 0 !important;
  }

  /* Full width buttons on mobile */
  .previousworkshopbtnsetting,
  .cartcheckoutbtn,
  .contactusbtnsetting,
  .empowerritualreadmorebtn {
    border-radius: var(--ms-radius-pill) !important;
  }
}

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

  .empowerritualimgrightbox img {
    animation: none !important;
  }

  body::before {
    transition: none !important;
  }
}


/* ================================================================
   DRAMATIC VISUAL IMPACT UPGRADE
   Inspired by Isha Foundation, Deepak Chopra, Gaia
   Premium Spiritual Design Patterns
   ================================================================ */


/* ================================================================
   D1. HERO SECTION — COMPLETE TRANSFORMATION
   ================================================================ */

.mainbannersection.mainheadingradiancebox {
  min-height: 85vh !important;
  display: flex !important;
  align-items: center !important;
  background: linear-gradient(135deg, #1A0A0A 0%, #3D0C0C 30%, #5C1515 60%, #2D0808 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Animated floating golden orb — top right */
.mainbannersection.mainheadingradiancebox::before {
  content: '' !important;
  position: absolute !important;
  width: 500px !important;
  height: 500px !important;
  background: radial-gradient(circle, rgba(212, 160, 23, 0.12) 0%, transparent 70%) !important;
  border-radius: 50% !important;
  top: -100px !important;
  right: -100px !important;
  animation: breathe 8s ease-in-out infinite !important;
}

/* Animated floating crimson orb — bottom left */
.mainbannersection.mainheadingradiancebox::after {
  content: '' !important;
  position: absolute !important;
  width: 400px !important;
  height: 400px !important;
  background: radial-gradient(circle, rgba(171, 22, 0, 0.15) 0%, transparent 70%) !important;
  border-radius: 50% !important;
  bottom: -80px !important;
  left: -80px !important;
  animation: breathe 10s ease-in-out infinite reverse !important;
}

/* Hero heading — HUGE with dramatic glow */
.custommainbannertextsection h1,
.bannerinnertextsection h1 {
  font-family: 'Cinzel', serif !important;
  font-size: clamp(2rem, 5vw, 4rem) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  color: #fff !important;
  text-shadow: 0 0 80px rgba(212, 160, 23, 0.3), 0 4px 16px rgba(0,0,0,0.4) !important;
  max-width: 800px !important;
  margin: 0 auto 30px !important;
  text-align: center !important;
  letter-spacing: 0.02em !important;
}

/* Hero paragraph with gold divider above */
.custommainbannertextsection p,
.bannerinnertextsection p {
  color: rgba(255, 255, 255, 0.75) !important;
  font-size: 16px !important;
  line-height: 1.8 !important;
  max-width: 700px !important;
  margin: 0 auto 30px !important;
  text-align: center !important;
  position: relative !important;
  padding-top: 30px !important;
}

.custommainbannertextsection p::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 60px !important;
  height: 2px !important;
  background: linear-gradient(90deg, #D4A017, #FFD700) !important;
}


/* ================================================================
   D2. SECTION BACKGROUNDS — ALTERNATING WARM/WHITE RHYTHM
   ================================================================ */

.empoweringritualmainbannerhomepage {
  background: linear-gradient(180deg, #FFF9F5 0%, #FFF3EB 100%) !important;
  padding: 100px 0 !important;
}

.mainprogramsection {
  padding: 80px 0 !important;
}

.bestsellermainbox {
  padding: 100px 0 !important;
  background: #fff !important;
}

.mainworkshopsection {
  background: linear-gradient(180deg, #FFF9F5 0%, #FFF3EB 50%, #FFF9F5 100%) !important;
  padding: 40px 0 !important;
}

.testimonialsmainsection {
  background: linear-gradient(180deg, #1A0A0A 0%, #2D1010 100%) !important;
  padding: 100px 0 !important;
}

/* Testimonial headings white on dark bg */
.testimonialsmainsection .mainheadingbox h2 {
  color: #fff !important;
}

.testimonialsmainsection .mainheadingbox h4 {
  color: #D4A017 !important;
}

.mainsubscribesection {
  padding: 80px 0 !important;
}

.blogmainsection {
  padding: 80px 0 !important;
  background: #fff !important;
}


/* ================================================================
   D3. CARD GRID — DRAMATIC HOVER + GLASSMORPHISM
   ================================================================ */

.gridviewinnersection {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1px solid rgba(0,0,0,0.04) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.04) !important;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
  overflow: hidden !important;
}

.gridviewinnersection:hover {
  transform: translateY(-12px) scale(1.02) !important;
  box-shadow: 0 24px 60px rgba(139, 0, 0, 0.15), 0 0 30px rgba(212, 160, 23, 0.08) !important;
  border-color: rgba(212, 160, 23, 0.2) !important;
}

/* Card action button — prominent gradient */
.gridviewinfoinnerbox button,
.gridviewinfoinnerbox form button {
  background: linear-gradient(135deg, #8B0000, #AB1600) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 10px 24px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.5px !important;
  transition: all 0.3s ease !important;
  width: 100% !important;
  cursor: pointer !important;
  margin-top: 10px !important;
}

.gridviewinfoinnerbox button:hover,
.gridviewinfoinnerbox form button:hover {
  background: linear-gradient(135deg, #AB1600, #D4A017) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(139, 0, 0, 0.3) !important;
}


/* ================================================================
   D4. WORKSHOP CARDS — DRAMATIC OVERLAY
   ================================================================ */

.workshopimagebox {
  border-radius: 24px !important;
  overflow: hidden !important;
  position: relative !important;
  box-shadow: 0 12px 40px rgba(0,0,0,0.12) !important;
  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.workshopimagebox:hover {
  transform: translateY(-8px) scale(1.02) !important;
  box-shadow: 0 24px 64px rgba(139, 0, 0, 0.2), 0 0 40px rgba(212, 160, 23, 0.1) !important;
}

.workshopinnerimagebox {
  position: relative !important;
}

.workshopinnerimagebox h1 {
  font-family: 'Cinzel', serif !important;
  font-size: clamp(1.2rem, 2.5vw, 1.8rem) !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.3) !important;
  letter-spacing: 0.03em !important;
}


/* ================================================================
   D5. INNER PAGE BANNER — RED-GOLD GRADIENT
   ================================================================ */

.mainbannersection {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(160deg, #8B0000 0%, #AB1600 35%, #C42D1A 65%, #D4A017 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  min-height: auto !important;
}

.mainbannersection::before {
  display: none !important;
  content: none !important;
}

.mainbannersection .container {
  background: transparent !important;
  position: relative !important;
  z-index: 2 !important;
}

.programinnerbannertop {
  position: relative !important;
  z-index: 2 !important;
  text-align: center !important;
  padding: 40px 20px !important;
}

.programinnerbannertop h2 {
  font-family: 'Cinzel', serif !important;
  font-size: clamp(1.8rem, 4vw, 3rem) !important;
  font-weight: 700 !important;
  color: #fff !important;
  text-shadow: 0 0 60px rgba(212, 160, 23, 0.2), 0 2px 8px rgba(0,0,0,0.3) !important;
  letter-spacing: 0.05em !important;
  background: linear-gradient(135deg, #fff 60%, #D4A017) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}


/* ================================================================
   D6. TESTIMONIALS — DARK PREMIUM SECTION
   ================================================================ */

.testimonialsmainsection {
  background: linear-gradient(135deg, #1A0A0A 0%, #2D1010 60%, #1A0A0A 100%) !important;
  position: relative !important;
}

.testimonialsmainsection::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(ellipse at center, rgba(212, 160, 23, 0.04) 0%, transparent 60%) !important;
  pointer-events: none !important;
}

.peoplereviewinnerbox {
  background: rgba(255, 255, 255, 0.03) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 24px !important;
  padding: 40px 30px !important;
  text-align: center !important;
}

.peoplereviewinnerbox:hover {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(212, 160, 23, 0.15) !important;
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3), 0 0 30px rgba(212, 160, 23, 0.08) !important;
}

.peoplereviewinnerbox h4 {
  color: rgba(255, 255, 255, 0.7) !important;
}

.peoplereviewinnerbox h2 {
  color: #fff !important;
}

.peoplereviewinnerbox h6 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.peopleimgbox img {
  border: 3px solid rgba(212, 160, 23, 0.5) !important;
  box-shadow: 0 0 30px rgba(212, 160, 23, 0.2) !important;
}

/* Quote icon color on dark bg */
.peoplereviewinnerbox::before {
  color: rgba(212, 160, 23, 0.15) !important;
}


/* ================================================================
   D7. SUBSCRIBE SECTION — BOLD GRADIENT
   ================================================================ */

.mainsubscribesection {
  background: linear-gradient(135deg, #8B0000, #AB1600, #C41E00) !important;
  position: relative !important;
  overflow: hidden !important;
}

.mainsubscribesection::before {
  content: '' !important;
  position: absolute !important;
  width: 600px !important;
  height: 600px !important;
  background: radial-gradient(circle, rgba(255,255,255,0.06) 0%, transparent 70%) !important;
  border-radius: 50% !important;
  top: -200px !important;
  right: -200px !important;
  pointer-events: none !important;
}

.subscribetextleftbox h1,
.subscribetextleftbox h2 {
  font-family: 'Cinzel', serif !important;
  font-size: clamp(1.5rem, 3vw, 2.5rem) !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.2) !important;
}


/* ================================================================
   D8. FOOTER — SUPER DARK PREMIUM
   ================================================================ */

.mainfootersection {
  background: linear-gradient(180deg, #0D0505 0%, #080303 100%) !important;
  padding-top: 60px !important;
}

.mainfootersection::before {
  height: 4px !important;
  background: linear-gradient(90deg, #8B0000, #D4A017, #FFD700, #D4A017, #8B0000) !important;
}


/* ================================================================
   D9. BLOG SECTION — CLEAN CARDS
   ================================================================ */

.blogmainsection .mainbloginnerbox {
  border-radius: 16px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.06) !important;
  transition: all 0.4s ease !important;
  border: 1px solid rgba(0,0,0,0.04) !important;
}

.blogmainsection .mainbloginnerbox:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 16px 48px rgba(139, 0, 0, 0.12) !important;
}


/* ================================================================
   D10. ABOUT PAGE TEAM CARDS
   ================================================================ */

.ourteaminnerbox {
  background: #fff !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.06) !important;
  transition: all 0.4s ease !important;
  border: 1px solid rgba(0,0,0,0.03) !important;
}

.ourteaminnerbox:hover {
  transform: translateY(-10px) !important;
  box-shadow: 0 24px 64px rgba(139, 0, 0, 0.12), 0 0 30px rgba(212, 160, 23, 0.06) !important;
  border-color: rgba(212, 160, 23, 0.15) !important;
}

.ourteamimgbox {
  overflow: hidden !important;
}

.ourteaminnerbox:hover .ourteamimgbox img {
  transform: scale(1.08) !important;
}

.ourteaminnerbox h4 {
  font-family: 'Cinzel', serif !important;
  color: #1A0A0A !important;
  font-weight: 700 !important;
}


/* ================================================================
   D11. LOGIN PAGE — PREMIUM
   ================================================================ */

.loginrightformbox {
  background: #fff !important;
  border-radius: 24px !important;
  box-shadow: 0 12px 48px rgba(0,0,0,0.08) !important;
  padding: 48px !important;
  position: relative !important;
  overflow: hidden !important;
}

.loginrightformbox::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, #8B0000, #D4A017, #FFD700) !important;
}

.loginrightformbox h2 {
  font-family: 'Cinzel', serif !important;
  font-size: 2rem !important;
  color: #1A0A0A !important;
  margin-bottom: 8px !important;
}

.customloginbtn {
  background: linear-gradient(135deg, #8B0000, #AB1600) !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 14px 32px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  box-shadow: 0 6px 24px rgba(139, 0, 0, 0.3) !important;
}

.customloginbtn:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 12px 36px rgba(139, 0, 0, 0.4) !important;
}


/* ================================================================
   D12. CONTACT FORM — ELEGANT
   ================================================================ */

.contactusrightformbox {
  background: #fff !important;
  border-radius: 24px !important;
  box-shadow: 0 12px 48px rgba(0,0,0,0.06) !important;
  padding: 48px !important;
  position: relative !important;
}

.contactusrightformbox::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, #8B0000, #D4A017, #FFD700) !important;
  border-radius: 24px 24px 0 0 !important;
}

.contactusrightformbox h2 {
  font-family: 'Cinzel', serif !important;
  font-size: 2rem !important;
}


/* ================================================================
   D13. EVENT CARDS — PREMIUM
   ================================================================ */

.innersectioneventbox {
  background: #fff !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.05) !important;
  transition: all 0.4s ease !important;
  margin-bottom: 24px !important;
  border: 1px solid rgba(0,0,0,0.04) !important;
}

.innersectioneventbox:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 56px rgba(139, 0, 0, 0.12) !important;
  border-color: rgba(212, 160, 23, 0.1) !important;
}

.dateboxevent {
  background: linear-gradient(135deg, #8B0000, #AB1600) !important;
  border-radius: 16px !important;
  box-shadow: 0 6px 20px rgba(139, 0, 0, 0.25) !important;
}


/* ================================================================
   HOMEPAGE FIXES — APPENDED
   ================================================================ */

/* ----------------------------------------------------------------
   FIX 1: Hero Section — Text too long, needs better layout
   ---------------------------------------------------------------- */
.custommainbannertextsection p,
.bannerinnertextsection p {
  font-size: 15px !important;
  line-height: 1.7 !important;
  max-width: 650px !important;
  margin: 0 auto 35px !important;
  color: rgba(255,255,255,0.7) !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
}

.customenquirybtnsetting {
  padding: 14px 48px !important;
  font-size: 15px !important;
  display: inline-block !important;
}

/* ----------------------------------------------------------------
   FIX 2: Empowering Rituals — Text barely visible
   ---------------------------------------------------------------- */
.empowerritualtextleftbox h2 {
  color: #1A0A0A !important;
  font-size: clamp(1.8rem, 3vw, 2.5rem) !important;
  margin-bottom: 20px !important;
}

.empowerritualtextleftbox p {
  color: #4A4A4A !important;
  font-size: 16px !important;
  line-height: 1.8 !important;
}

.empowerritualreadmorebtn,
.empowerritualtextleftbox a {
  display: inline-block !important;
  margin-top: 20px !important;
  padding: 12px 32px !important;
  background: linear-gradient(135deg, #8B0000, #AB1600) !important;
  color: #fff !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 13px !important;
  transition: all 0.35s ease !important;
}

.empowerritualreadmorebtn:hover,
.empowerritualtextleftbox a:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 25px rgba(139,0,0,0.3) !important;
  color: #fff !important;
}

.empowerritualimgrightbox img {
  border-radius: 20px !important;
  max-width: 400px !important;
  box-shadow: 0 12px 48px rgba(0,0,0,0.12) !important;
}

/* ----------------------------------------------------------------
   FIX 3: Mystical Workshops Cards — Uneven heights, proper card design
   ---------------------------------------------------------------- */
.gridviewinnersection {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

.gridviewimgbox {
  height: 220px !important;
  overflow: hidden !important;
}

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

.gridviewinfoinnerbox {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  padding: 20px !important;
}

.gridviewinfoinnerbox h2 {
  font-size: 14px !important;
  line-height: 1.4 !important;
  margin-bottom: 12px !important;
  min-height: 40px !important;
  color: #1A0A0A !important;
}

.customgridcoloumwidth {
  padding: 10px !important;
  margin-bottom: 20px !important;
}

.gridviewinfoinnerbox button {
  margin-top: auto !important;
}

.gridcartleft, .gridpriceright {
  font-size: 12px !important;
  font-family: 'Niramit', sans-serif !important;
}

/* ----------------------------------------------------------------
   FIX 4: Programs Section — Better card spacing and layout
   ---------------------------------------------------------------- */
.customworkshopwidthdesignsetting {
  padding: 12px !important;
  margin-bottom: 24px !important;
}

.workshopimagebox.customworkshopmainboxtop {
  height: 100% !important;
  min-height: 200px !important;
}

.customworkshopheadingtextsetting {
  font-family: 'Cinzel', serif !important;
  font-size: clamp(1rem, 2vw, 1.4rem) !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

/* ----------------------------------------------------------------
   FIX 5: Our Workshops Section — Remove excess whitespace
   ---------------------------------------------------------------- */
.mainworkshopsection {
  padding: 40px 0 40px !important;
}

.mainworkshopsection .mainheadingbox {
  margin-bottom: 30px !important;
}

.innerworkshopbox {
  margin-bottom: 20px !important;
}

.workshopimagebox {
  min-height: auto !important;
}

.workshoptextbox h1 {
  font-size: clamp(1.3rem, 2.5vw, 1.8rem) !important;
}

.workshoptextbox h6 {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: #555 !important;
}

/* ----------------------------------------------------------------
   FIX 6: Services Section — More visual appeal
   ---------------------------------------------------------------- */
.mainservicessection {
  background: linear-gradient(180deg, #FFF9F5 0%, #FFF3EB 50%, #FFF9F5 100%) !important;
}

.mainservicessection,
.servicestextboxright,
.servicestextboxleft {
  padding: 40px 0 !important;
}

.servicestextboxright h4 {
  color: #D4A017 !important;
  font-size: 12px !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
}

.servicestextboxright h1,
.servicestextboxleft h1 {
  font-family: 'Cinzel', serif !important;
  font-size: clamp(1.3rem, 2.5vw, 2rem) !important;
  color: #1A0A0A !important;
  margin-bottom: 16px !important;
  line-height: 1.4 !important;
}

.servicestextboxright p {
  color: #555 !important;
  line-height: 1.7 !important;
  font-size: 15px !important;
}

.servicestextboxright ul li {
  margin-bottom: 12px !important;
}

.servicestextboxright ul li a {
  color: #1A0A0A !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  transition: all 0.3s ease !important;
}

.servicestextboxright ul li a:hover {
  color: #AB1600 !important;
  padding-left: 8px !important;
}

.servicestextboxright ul li a span {
  color: #D4A017 !important;
  font-weight: 700 !important;
  margin-right: 8px !important;
}

/* ----------------------------------------------------------------
   FIX 7: Testimonials Section — Better cards
   ---------------------------------------------------------------- */
.peoplereviewinnerbox {
  padding: 48px 32px 36px !important;
  margin: 10px !important;
}

.peoplereviewinnerbox h4 {
  font-size: 15px !important;
  line-height: 1.8 !important;
  font-style: italic !important;
  margin-bottom: 20px !important;
}

.peopleimgbox {
  margin-bottom: 16px !important;
}

.peopleimgbox img {
  width: 80px !important;
  height: 80px !important;
  object-fit: cover !important;
}

.peoplereviewinnerbox h2 {
  font-size: 18px !important;
  margin-bottom: 4px !important;
}

.peoplereviewinnerbox h6 {
  font-size: 13px !important;
}

.testimonialsmainsection .peopleviewallbtnbox a {
  border-color: #D4A017 !important;
  color: #D4A017 !important;
}

.testimonialsmainsection .peopleviewallbtnbox a:hover {
  background: #D4A017 !important;
  color: #1A0A0A !important;
  border-color: #D4A017 !important;
}

/* ----------------------------------------------------------------
   FIX 8: Subscribe Section — Better newsletter form
   ---------------------------------------------------------------- */
.subscribetextleftbox {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.subscribetextleftbox h1,
.subscribetextleftbox h2 {
  color: #fff !important;
  margin-bottom: 8px !important;
}

.subscribetextrightbox h1 {
  font-size: clamp(1.2rem, 2vw, 1.6rem) !important;
  color: #fff !important;
  margin-bottom: 8px !important;
}

.subscribetextrightbox h6 {
  color: rgba(255,255,255,0.7) !important;
  margin-bottom: 20px !important;
}

.customfromnewsletter {
  background: rgba(255,255,255,0.12) !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  border-radius: 12px !important;
  color: #fff !important;
  padding: 12px 16px !important;
  transition: all 0.3s ease !important;
}

.customfromnewsletter::placeholder {
  color: rgba(255,255,255,0.5) !important;
}

.customfromnewsletter:focus {
  background: rgba(255,255,255,0.18) !important;
  border-color: rgba(255,255,255,0.4) !important;
  outline: none !important;
}

.footersubcribebtnsetting {
  padding: 12px 32px !important;
  font-size: 14px !important;
  border-radius: 12px !important;
}

/* ----------------------------------------------------------------
   FIX 9: Blog Section — Better list layout
   ---------------------------------------------------------------- */
.blogmainsection {
  padding: 80px 0 !important;
}

.blogmainsection .mainbloginnerbox {
  margin-bottom: 24px !important;
  padding: 0 !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: 0 2px 16px rgba(0,0,0,0.04) !important;
  border: 1px solid rgba(0,0,0,0.04) !important;
  transition: all 0.35s ease !important;
}

.blogmainsection .mainbloginnerbox:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 36px rgba(139,0,0,0.08) !important;
}

.customblogheadingsetting {
  font-family: 'Cinzel', serif !important;
  color: #1A0A0A !important;
}

.customblogheadingsetting h2 {
  font-family: 'Cinzel', serif !important;
}

.blogdatebox {
  min-width: 80px !important;
  text-align: center !important;
  padding: 16px 12px !important;
}

.blogdatebox h1 {
  font-size: 28px !important;
  margin-bottom: 0 !important;
}

.bolgviewmorebtn a {
  color: #AB1600 !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  font-size: 14px !important;
}

/* ----------------------------------------------------------------
   FIX 10: Footer — Better spacing
   ---------------------------------------------------------------- */
.mainfootersection {
  padding: 60px 0 0 !important;
}

.callusboxleft {
  margin-bottom: 30px !important;
}

.callusboxleft h1 {
  font-size: 18px !important;
  margin-bottom: 8px !important;
}

.callusboxleft h6 {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: rgba(255,255,255,0.6) !important;
}

.callusboxleft h5 {
  font-size: 14px !important;
  color: rgba(255,255,255,0.7) !important;
}

.aboutbox ul li {
  margin-bottom: 8px !important;
}

.aboutbox ul li a {
  font-size: 14px !important;
  color: rgba(255,255,255,0.6) !important;
}

.footerbottomlastmainsection {
  margin-top: 40px !important;
  padding: 20px 0 !important;
}

.footerbottomlastmainsection p {
  font-size: 13px !important;
  color: rgba(255,255,255,0.4) !important;
}

.privacypolicyheadinglinkbox a {
  font-size: 13px !important;
  color: rgba(255,255,255,0.4) !important;
}

/* ----------------------------------------------------------------
   FIX 11: General Polish
   ---------------------------------------------------------------- */
.mainheadingbox {
  margin-bottom: 50px !important;
  padding-bottom: 20px !important;
}

.mainprogramsection {
  padding: 60px 0 !important;
}

.bestsellermainbox {
  padding: 80px 0 !important;
}

.switchmantrabookpagesection {
  padding: 50px 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  background: #fff !important;
}

.switchmantra-lefttext h2 {
  font-family: 'Cinzel', serif !important;
  font-size: clamp(1.5rem, 3vw, 2.2rem) !important;
  color: #1A0A0A !important;
  margin-bottom: 12px !important;
}

.switchmantra-lefttext h6 {
  color: #D4A017 !important;
  font-size: 12px !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
}

.switchmantra-lefttext p {
  color: #555 !important;
  line-height: 1.7 !important;
}

.switchmantra-rightimg img {
  border-radius: 16px !important;
  box-shadow: 0 16px 48px rgba(0,0,0,0.12) !important;
}

.gridpriceright {
  background: rgba(139,0,0,0.08) !important;
  padding: 4px 12px !important;
  border-radius: 20px !important;
  color: #8B0000 !important;
  font-weight: 700 !important;
}

.shakeanimation {
  animation: none !important;
}

.upcoimingmobilebtnbox {
  background: linear-gradient(135deg, #1A0A0A, #2D1010) !important;
  padding: 8px 0 !important;
}

.owl-carousel .item {
  padding: 0 8px !important;
}

.custommaincategorybox {
  margin-bottom: 20px !important;
}

/* ----------------------------------------------------------------
   FIX 12: Responsive Fixes for Homepage
   ---------------------------------------------------------------- */
@media (max-width: 991px) {
  .gridviewimgbox {
    height: 180px !important;
  }

  .mainbannersection.mainheadingradiancebox {
    min-height: 70vh !important;
  }

  .empowerritualimgrightbox img {
    max-width: 300px !important;
    margin: 0 auto !important;
    display: block !important;
  }

  .customworkshopwidthdesignsetting {
    margin-bottom: 16px !important;
  }
}

@media (max-width: 576px) {
  .gridviewimgbox {
    height: 160px !important;
  }

  .mainbannersection.mainheadingradiancebox {
    min-height: 60vh !important;
    padding: 40px 0 !important;
  }

  .custommainbannertextsection p {
    -webkit-line-clamp: 3 !important;
    font-size: 14px !important;
  }

  .mainheadingbox {
    margin-bottom: 30px !important;
  }

  .blogdatebox {
    min-width: 60px !important;
    padding: 10px 8px !important;
  }

  .blogdatebox h1 {
    font-size: 22px !important;
  }
}


/* ================================================================
   MYSTICAL WORKSHOPS — PREMIUM CARD REDESIGN
   ================================================================ */

/* Section background */
.bestsellermainbox {
  background: linear-gradient(180deg, #FEFCFA 0%, #FFF5ED 100%) !important;
  padding: 80px 0 60px !important;
}

/* Card container */
.bestsellermainbox .gridviewinnersection {
  background: #fff !important;
  border-radius: 20px !important;
  border: none !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.06) !important;
  overflow: hidden !important;
  transition: all 0.45s cubic-bezier(0.4, 0, 0.2, 1) !important;
  position: relative !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Decorative top gold line on each card */
.bestsellermainbox .gridviewinnersection::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, #D4A017, #FFD700, #D4A017) !important;
  opacity: 0 !important;
  transition: opacity 0.35s ease !important;
  z-index: 2 !important;
}

.bestsellermainbox .gridviewinnersection:hover::before {
  opacity: 1 !important;
}

.bestsellermainbox .gridviewinnersection:hover {
  transform: translateY(-12px) !important;
  box-shadow: 0 24px 64px rgba(139, 0, 0, 0.14), 0 0 0 1px rgba(212, 160, 23, 0.1) !important;
}

/* Card image */
.bestsellermainbox .gridviewimgbox {
  height: 240px !important;
  overflow: hidden !important;
  position: relative !important;
  border-radius: 20px 20px 0 0 !important;
}

.bestsellermainbox .gridviewimgbox img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Dark gradient overlay on image */
.bestsellermainbox .gridviewimgbox::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 50% !important;
  background: linear-gradient(to top, rgba(0,0,0,0.4), transparent) !important;
  pointer-events: none !important;
  z-index: 1 !important;
  transition: opacity 0.35s ease !important;
}

.bestsellermainbox .gridviewinnersection:hover .gridviewimgbox img {
  transform: scale(1.12) !important;
}

/* Card content area */
.bestsellermainbox .gridviewinfoinnerbox {
  padding: 20px 18px !important;
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  background: #fff !important;
}

/* Card title */
.bestsellermainbox .gridviewinfoinnerbox h2 {
  font-family: 'Cinzel', serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #1A0A0A !important;
  line-height: 1.5 !important;
  margin-bottom: 14px !important;
  min-height: 40px !important;
  letter-spacing: 0.02em !important;
  transition: color 0.3s ease !important;
}

.bestsellermainbox .gridviewinnersection:hover .gridviewinfoinnerbox h2 {
  color: #8B0000 !important;
}

/* Action button — full width, gradient */
.bestsellermainbox .gridviewinfoinnerbox button,
.bestsellermainbox .gridviewinfoinnerbox form button {
  width: 100% !important;
  background: linear-gradient(135deg, #8B0000 0%, #AB1600 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.04em !important;
  cursor: pointer !important;
  transition: all 0.35s ease !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-top: auto !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Shine effect on button */
.bestsellermainbox .gridviewinfoinnerbox button::after,
.bestsellermainbox .gridviewinfoinnerbox form button::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent) !important;
  transition: left 0.5s ease !important;
}

.bestsellermainbox .gridviewinfoinnerbox button:hover::after,
.bestsellermainbox .gridviewinfoinnerbox form button:hover::after {
  left: 100% !important;
}

.bestsellermainbox .gridviewinfoinnerbox button:hover,
.bestsellermainbox .gridviewinfoinnerbox form button:hover {
  background: linear-gradient(135deg, #AB1600 0%, #D4A017 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(139, 0, 0, 0.3) !important;
}

/* Price tag inside button */
.bestsellermainbox .gridpriceright {
  background: rgba(255, 255, 255, 0.2) !important;
  padding: 4px 14px !important;
  border-radius: 20px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  color: #fff !important;
}

/* Cart left text */
.bestsellermainbox .gridcartleft {
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  font-size: 12px !important;
  color: #fff !important;
}

/* Column spacing */
.bestsellermainbox .customgridcoloumwidth {
  padding: 0 12px !important;
  margin-bottom: 24px !important;
}

/* View All button */
.bestsellermainbox .peopleviewallbtnbox {
  margin-top: 30px !important;
}

.bestsellermainbox .peopleviewallbtnbox a {
  border: 2px solid #8B0000 !important;
  background: transparent !important;
  color: #8B0000 !important;
  border-radius: 50px !important;
  padding: 14px 40px !important;
  font-family: 'Cinzel', serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  transition: all 0.35s ease !important;
  display: inline-block !important;
  text-decoration: none !important;
}

.bestsellermainbox .peopleviewallbtnbox a:hover {
  background: linear-gradient(135deg, #8B0000, #AB1600) !important;
  color: #fff !important;
  border-color: #8B0000 !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 28px rgba(139, 0, 0, 0.3) !important;
}

/* Responsive */
@media (max-width: 991px) {
  .bestsellermainbox .gridviewimgbox {
    height: 200px !important;
  }
  .bestsellermainbox .customgridcoloumwidth {
    width: 33.333% !important;
  }
}

@media (max-width: 576px) {
  .bestsellermainbox .gridviewimgbox {
    height: 180px !important;
  }
  .bestsellermainbox .customgridcoloumwidth {
    width: 50% !important;
    padding: 0 8px !important;
  }
  .bestsellermainbox .gridviewinfoinnerbox h2 {
    font-size: 12px !important;
    min-height: 34px !important;
  }
}


/* ================================================================
   PROGRAMS SECTION — CLEAN RECTANGULAR CARDS
   ================================================================ */

.ms-sp-card:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 50px rgba(139,0,0,0.12) !important;
  border-color: rgba(212,160,23,0.3) !important;
}

.ms-sp-card:hover img {
  transform: scale(1.08) !important;
}

.ms-sp-card:hover .ms-sp-ring {
  border-color: rgba(212,160,23,0.5) !important;
  animation-duration: 4s !important;
}

.ms-sp-card:hover .ms-sp-ring2 {
  border-color: rgba(212,160,23,0.25) !important;
  animation-duration: 8s !important;
}

.ms-sp-card:hover .ms-sp-img-wrap > div:last-child {
  border-color: rgba(212,160,23,0.5) !important;
  box-shadow: 0 0 20px rgba(212,160,23,0.12) !important;
}

.ms-sp-card:hover .fa-long-arrow-right {
  transform: translateX(6px) !important;
}

@keyframes spRingSpin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

@media (max-width: 576px) {
  .ms-sp-card {
    height: auto !important;
  }
}


/* ================================================================
   BLOG CARDS — EQUAL HEIGHT FIX
   ================================================================ */

/* Equal height blog row */
.blogmainsection + div .row,
div[style*="INSIGHTS"] + .row {
  display: flex !important;
  flex-wrap: wrap !important;
}

/* Force equal height on blog card columns */
div[style*="INSIGHTS & WISDOM"] ~ .row > .col-md-4 {
  display: flex !important;
}

div[style*="INSIGHTS & WISDOM"] ~ .row > .col-md-4 > a {
  display: flex !important;
  width: 100% !important;
}

div[style*="INSIGHTS & WISDOM"] ~ .row > .col-md-4 > a > div {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}

/* Blog image container — fixed height */
.ms-blog-img {
  height: 220px !important;
  min-height: 220px !important;
  max-height: 220px !important;
  overflow: hidden !important;
}

.ms-blog-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Blog card content — flex grow to fill space */
.ms-blog-img + div {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Push "Read More" to bottom */
.ms-blog-img + div > div:last-child {
  margin-top: auto !important;
}

@media (max-width: 576px) {
  .ms-blog-img {
    height: 180px !important;
    min-height: 180px !important;
    max-height: 180px !important;
  }
}


/* ================================================================
   BLOG CARDS — FORCE EQUAL HEIGHT (NUCLEAR FIX)
   ================================================================ */

/* Target the blog section container row */
div[style*="padding:80px 0"] > .container > .row:last-child {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}

div[style*="padding:80px 0"] > .container > .row:last-child > [class*="col-md-4"] {
  display: flex !important;
  margin-bottom: 24px !important;
}

div[style*="padding:80px 0"] > .container > .row:last-child > [class*="col-md-4"] > a {
  display: flex !important;
  flex: 1 !important;
}

div[style*="padding:80px 0"] > .container > .row:last-child > [class*="col-md-4"] > a > div {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

/* All blog images same size with dark bg fallback */
div[style*="padding:80px 0"] .ms-blog-img,
div[style*="padding:80px 0"] div[class="ms-blog-img"] {
  height: 230px !important;
  min-height: 230px !important;
  max-height: 230px !important;
  background: linear-gradient(135deg, #1A0A0A, #2D1010) !important;
}

div[style*="padding:80px 0"] .ms-blog-img img {
  width: 100% !important;
  height: 230px !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Content area grows equally */
div[style*="padding:80px 0"] .ms-blog-img ~ div[style*="padding"] {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}




/* ================================================================
   TESTIMONIALS — HIDE DECORATIVE SHAPE IMAGE & FIX SPACING
   ================================================================ */

/* Hide the decorative wave/shape image */
.peopleshapimgsetting {
  display: none !important;
}

/* Remove extra spacing in testimonial cards */
.peoplereviewinnerbox {
  padding: 30px 28px !important;
}

/* Testimonial section — less top padding */
.testimonialsmainsection {
  padding: 60px 0 80px !important;
}

/* Heading spacing */
.testimonialsmainsection .mainheadingbox {
  margin-bottom: 40px !important;
  padding-bottom: 15px !important;
}


/* Mobile upcoming workshop button — show only on mobile */
.upcoimingmobilebtnbox {
  display: none !important;
}

@media (max-width: 991px) {
  .upcoimingmobilebtnbox {
    display: block !important;
    background: transparent !important;
    padding: 10px 15px !important;
    margin: 0 !important;
  }
  .upcoimingmobilebtnbox .customupcomingbtnsetting {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
    border-radius: 12px !important;
    padding: 14px !important;
    font-size: 14px !important;
  }
}


/* ================================================================
   FONT CONSISTENCY — Niramit for all body text
   ================================================================ */

body, p, span, li, a, label, input, textarea, select, button, td, th, div {
  font-family: 'Niramit', sans-serif !important;
}

/* Protect Font Awesome icons from font override */
.fa, .fas, .far, .fab, .fal, .fad, .fa-solid, .fa-regular, .fa-brands {
  font-family: 'FontAwesome' !important;
}

/* Only headings use Cinzel */
h1, h2, h3, h4, h5, h6,
.mainheadingbox h2,
.mevheadingsetting,
.programinnerbannertop h2,
.customblogheadingsetting,
.customblogsidebarheading,
.aboutboxheadingsetting {
  font-family: 'Cinzel', serif !important;
}


/* ================================================================
   SINGLE FONT — Niramit everywhere, no Cinzel
   ================================================================ */

*, h1, h2, h3, h4, h5, h6,
.mainheadingbox h2,
.mevheadingsetting,
.programinnerbannertop h2,
.customblogheadingsetting,
.customblogsidebarheading,
.aboutboxheadingsetting,
.workshoptextbox h1,
.workshoptextbox h2,
.workshopinnerimagebox h1,
.servicestextboxright h1,
.servicestextboxleft h1,
.blogdatebox h1,
.blogmaintextheading h1,
.subscribetextleftbox h1,
.subscribetextleftbox h2,
.subscribetextrightbox h1,
.contactuslefttextbox h2,
.contactuslefttextbox h3,
.contactusrightformbox h2,
.loginrightformbox h2,
.peoplereviewinnerbox h2,
.ourteaminnerbox h4,
.aboutustextrightsection h3,
.ourvisionbox h3,
.textboxevent h2,
.dateboxevent h3,
.callusboxleft h1,
.aboutbox h2,
body, p, span, li, a, label, input, textarea, select, button, td, th, div {
  font-family: 'Niramit', sans-serif !important;
}

/* Protect Font Awesome icons from font override */
.fa, .fas, .far, .fab, .fal, .fad, .fa-solid, .fa-regular, .fa-brands {
  font-family: 'FontAwesome' !important;
}


/* ================================================================
   HOMEPAGE RESPONSIVE — COMPREHENSIVE MOBILE OPTIMIZATION
   ================================================================ */

/* --- Desktop: Spiritual Programs image circle 220px --- */
.ms-sp-img-wrap {
  width: 220px !important;
  height: 220px !important;
}

/* --- Tablet (768px - 991px) --- */
@media (max-width: 991px) and (min-width: 768px) {
  /* Hero Section */
  div[style*="min-height:85vh"] {
    min-height: 75vh !important;
  }

  div[style*="min-height:85vh"] .container {
    padding: 40px 20px !important;
  }

  /* Spiritual Programs — 180px circle */
  .ms-sp-img-wrap {
    width: 180px !important;
    height: 180px !important;
  }

  .ms-sp-ring {
    inset: -3px !important;
  }

  .ms-sp-ring2 {
    inset: -8px !important;
  }

  /* Empowering Rituals — reduce image max-width */
  div[style*="max-width:400px"] {
    max-width: 320px !important;
  }

  /* Services cards — reduce padding */
  .ms-services-redesign .col-md-5 > a > div {
    padding: 36px 28px !important;
    min-height: 240px !important;
  }

  /* Mystical Workshops — reduce image height */
  .ms-ws-img {
    height: 240px !important;
  }
}

/* --- Mobile (577px - 767px) --- */
@media (max-width: 767px) and (min-width: 577px) {
  /* Hero Section */
  div[style*="min-height:85vh"] {
    min-height: 70vh !important;
  }

  div[style*="min-height:85vh"] .container {
    padding: 36px 16px !important;
  }

  div[style*="min-height:85vh"] h1 {
    font-size: clamp(1.8rem, 5vw, 2.8rem) !important;
  }

  div[style*="min-height:85vh"] p {
    font-size: 15px !important;
    line-height: 1.7 !important;
  }

  /* Spiritual Programs — 150px circle, col-6 via Bootstrap */
  .ms-sp-img-wrap {
    width: 150px !important;
    height: 150px !important;
  }

  .ms-sp-ring {
    inset: -3px !important;
  }

  .ms-sp-ring2 {
    inset: -7px !important;
  }

  .ms-programs-section .col-lg-4 {
    padding: 10px !important;
  }

  .ms-sp-card h3 {
    font-size: 0.9rem !important;
  }

  /* Empowering Rituals */
  div[style*="max-width:400px"] {
    max-width: 280px !important;
  }

  div[style*="background:linear-gradient(180deg, #FFF9F5"] {
    padding: 40px 0 !important;
  }

  /* Mystical Workshops */
  .ms-ws-img {
    height: 220px !important;
  }

  /* Services cards — full width */
  .ms-services-redesign .col-md-5 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .ms-services-redesign .col-md-5 > a > div {
    padding: 36px 28px !important;
    min-height: 220px !important;
  }

  /* Blog */
  .ms-blog-img {
    height: 180px !important;
    min-height: 180px !important;
    max-height: 180px !important;
  }

  /* Subscribe — stack form fields */
  div[style*="display:flex; gap:12px; margin-bottom:16px"] {
    flex-direction: column !important;
  }
}

/* --- Small Mobile (<=576px) --- */
@media (max-width: 576px) {
  /* Hero Section — reduce height and text */
  div[style*="min-height:85vh"] {
    min-height: 65vh !important;
  }

  div[style*="min-height:85vh"] .container {
    padding: 30px 14px !important;
  }

  div[style*="min-height:85vh"] h4 {
    font-size: 10px !important;
    letter-spacing: 0.15em !important;
    margin-bottom: 14px !important;
  }

  div[style*="min-height:85vh"] h1 {
    font-size: clamp(1.5rem, 6vw, 2.2rem) !important;
    margin-bottom: 18px !important;
  }

  div[style*="min-height:85vh"] p {
    font-size: 14px !important;
    line-height: 1.65 !important;
    margin-bottom: 28px !important;
  }

  /* Hero buttons — stack vertically */
  div[style*="min-height:85vh"] div[style*="display:flex; gap:16px"] {
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
  }

  div[style*="min-height:85vh"] div[style*="display:flex; gap:16px"] a {
    width: 100% !important;
    max-width: 280px !important;
    justify-content: center !important;
    padding: 14px 28px !important;
    font-size: 13px !important;
  }

  /* Spiritual Programs — 120px circle */
  .ms-sp-img-wrap {
    width: 120px !important;
    height: 120px !important;
  }

  .ms-sp-ring {
    inset: -2px !important;
    border-width: 1px !important;
  }

  .ms-sp-ring2 {
    inset: -6px !important;
    border-width: 1px !important;
  }

  .ms-sp-card {
    padding: 18px 12px 16px !important;
    border-radius: 12px !important;
  }

  .ms-sp-card h3 {
    font-size: 0.8rem !important;
    margin-bottom: 8px !important;
  }

  .ms-sp-card div[style*="font-size:12px"] {
    font-size: 11px !important;
  }

  .ms-programs-section .col-lg-4 {
    padding: 8px !important;
  }

  .ms-programs-section {
    padding: 50px 0 !important;
  }

  .ms-programs-section .col-md-12[style*="margin-bottom:50px"] {
    margin-bottom: 30px !important;
  }

  /* Empowering Rituals */
  div[style*="background:linear-gradient(180deg, #FFF9F5"][style*="padding:50px 0"] {
    padding: 30px 0 !important;
  }

  div[style*="max-width:400px"] {
    max-width: 240px !important;
    padding: 6px !important;
    border-radius: 16px !important;
  }

  /* Mystical Workshops */
  div[style*="background:#fff; padding:80px 0"]:first-of-type {
    padding: 50px 0 !important;
  }

  .ms-ws-img {
    height: 200px !important;
  }

  .ms-workshop-card {
    border-radius: 16px !important;
  }

  /* Services cards — full width, reduce padding */
  .ms-services-redesign {
    padding: 50px 0 !important;
  }

  .ms-services-redesign .col-md-5 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .ms-services-redesign .col-md-5 > a > div {
    padding: 32px 24px !important;
    min-height: 200px !important;
    border-radius: 20px !important;
  }

  .ms-services-redesign .col-md-5 > a > div h3 {
    font-size: 1.3rem !important;
  }

  .ms-services-redesign .col-md-5 > a > div p {
    font-size: 14px !important;
  }

  /* Blog Section */
  div[style*="padding:80px 0"] .ms-blog-img,
  div[style*="padding:80px 0"] div[class="ms-blog-img"] {
    height: 160px !important;
    min-height: 160px !important;
    max-height: 160px !important;
  }

  div[style*="padding:80px 0"] .ms-blog-img img {
    height: 160px !important;
  }

  .ms-blog-img {
    height: 160px !important;
    min-height: 160px !important;
    max-height: 160px !important;
  }

  /* Blog section padding */
  div[style*="background:#fff; padding:80px 0"]:last-of-type {
    padding: 50px 0 !important;
  }

  /* Blog header alignment */
  div[style*="INSIGHTS"] ~ div[class*="col-md-6"][style*="text-align:right"] {
    text-align: left !important;
    margin-top: 8px !important;
  }

  /* Subscribe Section */
  div[style*="mainsubscribesection"],
  .mainsubscribesection {
    padding: 50px 0 !important;
  }

  /* Subscribe form — stack fields vertically */
  div[style*="display:flex; gap:12px; margin-bottom:16px"] {
    flex-direction: column !important;
    gap: 10px !important;
  }

  /* Subscribe form card — reduce padding */
  .mainsubscribesection div[style*="padding:40px 36px"] {
    padding: 28px 20px !important;
    border-radius: 18px !important;
  }

  .mainsubscribesection h3 {
    font-size: 1.1rem !important;
  }

  /* General overflow prevention */
  main, .container {
    overflow-x: hidden !important;
  }

  /* Reduce section heading spacing */
  div[style*="margin-bottom:50px"] {
    margin-bottom: 30px !important;
  }
}

/* --- Extra Small Mobile (<=400px) --- */
@media (max-width: 400px) {
  /* Spiritual Programs — even smaller */
  .ms-sp-img-wrap {
    width: 100px !important;
    height: 100px !important;
  }

  .ms-sp-card {
    padding: 14px 8px 12px !important;
  }

  .ms-sp-card h3 {
    font-size: 0.72rem !important;
  }

  /* Hero text tighter */
  div[style*="min-height:85vh"] h1 {
    font-size: 1.4rem !important;
  }

  div[style*="min-height:85vh"] p {
    font-size: 13px !important;
  }

  /* Service cards */
  .ms-services-redesign .col-md-5 > a > div {
    padding: 24px 18px !important;
    min-height: 180px !important;
  }

  /* Workshop image */
  .ms-ws-img {
    height: 180px !important;
  }
}

/* --- Global mobile overflow fix --- */
@media (max-width: 767px) {
  html, body {
    overflow-x: hidden !important;
  }

  /* Prevent decorative elements from causing horizontal scroll */
  div[style*="position:absolute"][style*="border-radius:50%"] {
    max-width: 100vw !important;
  }

  /* Canvas hero — prevent overflow */
  #heroCanvas {
    max-width: 100vw !important;
  }
}

/* Empowering Rituals — center on mobile */
@media (max-width: 767px) {
  .col-md-6.order-md-1 {
    text-align: center !important;
  }
  .col-md-6.order-md-1 h4,
  .col-md-6.order-md-1 h2,
  .col-md-6.order-md-1 p {
    text-align: center !important;
  }
  .col-md-6.order-md-1 div[style*="width:60px"] {
    margin: 0 auto 20px !important;
  }
  .col-md-6.order-md-1 a {
    margin: 0 auto !important;
  }
}

/* Switch Mantra book section — mobile */
@media (max-width: 767px) {
  .ms-book-section {
    padding: 50px 0 !important;
  }

  .ms-book-section .col-lg-5 {
    margin-bottom: 20px !important;
  }

  .ms-book-section .ms-float-bounce img {
    max-width: 220px !important;
  }

  .ms-book-section .col-lg-7 {
    text-align: center !important;
  }

  .ms-book-section .col-lg-7 h2,
  .ms-book-section .col-lg-7 h4,
  .ms-book-section .col-lg-7 p {
    text-align: center !important;
  }

  .ms-book-section .col-lg-7 div[style*="display:flex"] {
    justify-content: center !important;
  }

  .ms-book-section .col-lg-7 div[style*="display:inline-block"] {
    display: block !important;
    text-align: center !important;
  }
}

/* Online Courses section — mobile */
@media (max-width: 991px) {
  .ms-courses-section .row {
    display: flex !important;
    flex-direction: column !important;
  }
  /* Image cards first */
  .ms-courses-section .col-lg-6:last-child {
    order: -1 !important;
    margin-bottom: 30px !important;
  }
  /* Text + button */
  .ms-courses-section .col-lg-6:first-child {
    text-align: center !important;
  }
  .ms-courses-section .col-lg-6:first-child h2,
  .ms-courses-section .col-lg-6:first-child h4,
  .ms-courses-section .col-lg-6:first-child p {
    text-align: center !important;
  }
  .ms-courses-section .col-lg-6:first-child div[style*="width:60px"] {
    margin: 0 auto 24px !important;
  }
  .ms-courses-section .col-lg-6:first-child div[style*="gap:24px"] {
    justify-content: center !important;
  }
}

@media (max-width: 767px) {
  .ms-courses-section .col-lg-6 div[style*="height:380px"] {
    height: 300px !important;
  }
  .ms-courses-section .col-lg-6 div[style*="height:380px"] > div {
    width: 200px !important;
    padding: 20px 18px !important;
  }
  .ms-courses-section .col-lg-6 div[style*="height:380px"] > div h4 {
    font-size: 0.9rem !important;
  }
}

/* Footer form validation errors — clean styling */
footer #myform label.error,
footer #myform .error {
  display: block !important;
  color: #ff6b6b !important;
  font-size: 11px !important;
  margin-top: 4px !important;
  font-weight: 400 !important;
  position: relative !important;
}

/* Social share icons alignment - global override */
div#social-links {
  margin: 0 !important;
  max-width: none !important;
}
div#social-links ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
div#social-links ul li {
  display: inline-flex !important;
  margin: 0 !important;
  padding: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 0 !important;
}
div#social-links ul li a,
a.social-button {
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fff !important;
  color: #1A0A0A !important;
  font-size: 0 !important;
  text-decoration: none !important;
  transition: all 0.3s !important;
  border: 1.5px solid rgba(26,10,10,0.2) !important;
  padding: 0 !important;
  margin: 0 !important;
  position: static !important;
  top: auto !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
  overflow: hidden !important;
}
div#social-links ul li a .fab,
div#social-links ul li a .fa,
div#social-links ul li a span,
a.social-button .fab,
a.social-button .fa,
a.social-button span {
  font-size: 16px !important;
  line-height: 1 !important;
  opacity: 1 !important;
  color: inherit !important;
}
/* Force FA5 Brands font for fab class */
.fab,
div#social-links .fab,
a.social-button .fab {
  font-family: "Font Awesome 5 Brands" !important;
  font-weight: 400 !important;
  font-style: normal !important;
  font-size: 16px !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}
div#social-links ul li a .fab::before,
a.social-button .fab::before {
  opacity: 1 !important;
}
div#social-links ul li a::after,
a.social-button::after {
  display: none !important;
}
div#social-links ul li a:hover,
a.social-button:hover {
  background: linear-gradient(135deg, #8B0000, #C42D1A) !important;
  color: #fff !important;
  border-color: #8B0000 !important;
  top: auto !important;
  position: static !important;
}
.ms-share-row {
  display: flex !important;
  align-items: center !important;
}
.previoussocialinksnewcss {
  margin-top: 0 !important;
}

/* Map FA5 fab classes to FA4 - Share package compatibility */
div#social-links .fab {
  font-family: 'FontAwesome' !important;
  font-style: normal !important;
  font-weight: normal !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}
div#social-links .fab::before {
  opacity: 1 !important;
  display: inline !important;
}
div#social-links .fa-facebook-square::before { content: "\f09a" !important; }
div#social-links .fa-twitter::before { content: "\f099" !important; }
div#social-links .fa-whatsapp::before { content: "\f232" !important; }
div#social-links .fa-linkedin::before { content: "\f0e1" !important; }
div#social-links .fa-telegram::before { content: "\f1d8" !important; }
div#social-links .fa-reddit::before { content: "\f1a1" !important; }

/* Style YouTube iframes inside program description content */
.ms-program-desc iframe {
  width: 100% !important;
  height: 280px !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important;
  border: none !important;
  display: block !important;
  margin: 10px 0 !important;
}
.ms-program-desc .mevvideosection {
  text-align: center !important;
}
.ms-program-desc .mevvideosection h4 {
  font-size: 0.95rem !important;
  margin-bottom: 10px !important;
}
.ms-program-desc .custommevcolmdsetting {
  margin-bottom: 20px !important;
}

/* Style WhatsApp buttons only on home programs page */
.ms-program-desc a[href*="whatsapp"],
.ms-program-desc a[href*="chat.whatsapp"] {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #25D366 !important;
  color: #fff !important;
  padding: 12px 28px !important;
  border-radius: 50px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.3s !important;
  box-shadow: 0 4px 16px rgba(37,211,102,0.25) !important;
  margin: 30px auto !important;
}
.ms-program-desc a[href*="whatsapp"]:hover,
.ms-program-desc a[href*="chat.whatsapp"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(37,211,102,0.35) !important;
}
.ms-program-desc a[href*="whatsapp"] img,
.ms-program-desc a[href*="chat.whatsapp"] img {
  width: 24px !important;
  height: 24px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
/* Center the whatsapp button parent paragraph */
.ms-program-desc p:has(a[href*="whatsapp"]),
.ms-program-desc p:has(a[href*="chat.whatsapp"]) {
  text-align: center !important;
}

/* Style video containers inside program descriptions */
.ms-program-desc > .row {
  margin: 20px 0 !important;
}

/* Style headings inside program description */
.ms-program-desc h2,
.ms-program-desc h3,
.ms-program-desc h4 {
  color: #1A0A0A !important;
  font-weight: 700 !important;
  margin-top: 24px !important;
  margin-bottom: 12px !important;
  font-size: 1.15rem !important;
}
.ms-program-desc h2 { font-size: 1.4rem !important; }
.ms-program-desc p {
  margin-bottom: 12px !important;
}
.ms-program-desc ul,
.ms-program-desc ol {
  padding-left: 20px !important;
  margin-bottom: 16px !important;
}
.ms-program-desc li {
  margin-bottom: 6px !important;
}
.ms-program-desc a:not([href*="whatsapp"]):not([href*="chat.whatsapp"]) {
  color: #8B0000 !important;
  text-decoration: underline !important;
}
.ms-program-desc img:not([src*="whatsapp"]) {
  max-width: 100% !important;
  border-radius: 12px !important;
  margin: 10px 0 !important;
}

/* Style any generic buttons inside program description */
.ms-program-desc .btn,
.ms-program-desc button:not([type="submit"]) {
  background: linear-gradient(160deg, #8B0000 0%, #AB1600 50%, #C42D1A 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 10px 24px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  cursor: pointer !important;
  transition: all 0.3s !important;
}

/* Validation error messages */
.ms-validation-errors {
  background: rgba(196, 45, 26, 0.06);
  border: 1px solid rgba(196, 45, 26, 0.15);
  border-radius: 12px;
  padding: 16px 20px;
  margin-bottom: 24px;
}
.ms-validation-errors ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.ms-validation-errors ul li {
  color: #C42D1A;
  font-size: 13px;
  font-weight: 500;
  padding: 3px 0;
  display: flex;
  align-items: center;
  gap: 6px;
}
.ms-validation-errors ul li::before {
  content: "\f06a";
  font-family: FontAwesome;
  font-size: 12px;
  color: #C42D1A;
}
.ms-field-error {
  color: #C42D1A !important;
  font-size: 12px !important;
  margin-top: 4px !important;
  display: block !important;
}
.ms-success-msg {
  background: rgba(40, 167, 69, 0.08);
  border: 1px solid rgba(40, 167, 69, 0.2);
  border-radius: 12px;
  padding: 14px 20px;
  margin-bottom: 20px;
  color: #28a745;
  font-size: 14px;
  font-weight: 500;
}
