/* ============================================================
   EK NAI DISHA FOUNDATION — DUAL THEME v3.0
   Logo: Green(Feed) + Blue(Edu) = DARK | Orange(Care) + Gold(Career) = LIGHT
   Inspired by: Stripe · Vercel · Linear · Salesforce
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700;800;900&family=Playfair+Display:wght@700;800&display=swap');

/* ================================================================
   LIGHT THEME (Default) — Clean, Modern, Premium NGO Palette
   ================================================================ */
:root, [data-theme="light"] {
  --bg:           #f8fafc;
  --bg2:          #ffffff;
  --bg3:          #f1f5f9;
  --card:         #ffffff;
  --card2:        #f8fafc;
  --border:       rgba(15,23,42,.08);
  --brdr2:        rgba(15,23,42,.14);
  --text:         #1e293b;
  --text2:        #475569;
  --text3:        #64748b;
  --head:         #0f172a;
  /* Logo green (Feed pillar) & Vibrant accents */
  --p1:           #16a34a;
  --p1d:          #15803d;
  --p1l:          rgba(22,163,74,.10);
  /* Logo blue (Education pillar) */
  --p2:           #2563eb;
  --p2d:          #1d4ed8;
  --p2l:          rgba(37,99,235,.10);
  /* Gradients */
  --g-btn:        linear-gradient(135deg, #16a34a 0%, #2563eb 100%);
  --g-btn2:       linear-gradient(135deg, #22c55e 0%, #3b82f6 100%);
  --g-hero:       linear-gradient(120deg, rgba(15,23,42,.88) 0%, rgba(22,163,74,.48) 100%);
  --g-bar:        linear-gradient(90deg, #16a34a, #22c55e, #2563eb);
  /* Navbar */
  --nav-bg:       rgba(255,255,255,.94);
  --nav-scrolled: rgba(255,255,255,.98);
  --nav-border:   rgba(15,23,42,.08);
  --nav-link:     #334155;
  --nav-hover:    #0f172a;
  --nav-drop:     rgba(255,255,255,.99);
  --shadow:       0 20px 50px rgba(15,23,42,.08);
  /* Section alt BG */
  --sec-alt:      #f1f5f9;
  /* Footer */
  --foot-bg:      #0b1329;
}

/* ================================================================
   DARK THEME — Rich Slate & Emerald/Blue Glow
   ================================================================ */
[data-theme="dark"] {
  --bg:           #020617;
  --bg2:          #0f172a;
  --bg3:          #1e293b;
  --card:         #0f172a;
  --card2:        #1e293b;
  --border:       rgba(255,255,255,.08);
  --brdr2:        rgba(255,255,255,.15);
  --text:         #f1f5f9;
  --text2:        #94a3b8;
  --text3:        #64748b;
  --head:         #ffffff;
  /* Logo green (Feed pillar) */
  --p1:           #22c55e;
  --p1d:          #16a34a;
  --p1l:          rgba(34,197,94,.14);
  /* Logo blue (Education pillar) */
  --p2:           #3b82f6;
  --p2d:          #1d4ed8;
  --p2l:          rgba(59,130,246,.14);
  /* Gradients */
  --g-btn:        linear-gradient(135deg, #16a34a 0%, #1d4ed8 100%);
  --g-btn2:       linear-gradient(135deg, #22c55e 0%, #3b82f6 100%);
  --g-hero:       linear-gradient(120deg, rgba(2,6,23,.92) 0%, rgba(22,163,74,.48) 100%);
  --g-bar:        linear-gradient(90deg, #16a34a, #22c55e, #3b82f6);
  /* Navbar */
  --nav-bg:       rgba(2,6,23,.88);
  --nav-scrolled: rgba(2,6,23,.97);
  --nav-border:   rgba(255,255,255,.07);
  --nav-link:     rgba(255,255,255,.70);
  --nav-hover:    #ffffff;
  --nav-drop:     rgba(8,15,40,.97);
  --shadow:       0 20px 60px rgba(0,0,0,.55);
  /* Section alt BG */
  --sec-alt:      #0f172a;
  /* Footer */
  --foot-bg:      #070d1c;
}

/* ================================================================
   SMOOTH THEME TRANSITION
   ================================================================ */
html.theme-transitioning *,
html.theme-transitioning *::before,
html.theme-transitioning *::after {
  transition: background-color .30s ease, color .30s ease,
              border-color .30s ease, box-shadow .30s ease !important;
}

/* ── GLOBAL RESET ───────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box !important; }
html { scroll-behavior: smooth; font-size: 16px; }
body {
  font-family: 'Inter','Space Grotesk',-apple-system,sans-serif !important;
  color: var(--text) !important;
  background: var(--bg) !important;
  -webkit-font-smoothing: antialiased !important;
  overflow-x: hidden !important;
  line-height: 1.65 !important;
}
h1,h2,h3,h4,h5,h6 {
  font-family: 'Space Grotesk','Inter',sans-serif !important;
  font-weight: 700 !important; letter-spacing: -.025em !important;
  line-height: 1.12 !important; color: var(--head);
}
p { color: var(--text2); }
a { text-decoration: none !important; }
img { max-width: 100%; height: auto; }
::selection { background: var(--p1l); color: var(--head); }
::-webkit-scrollbar { width: 4px; }
::-webkit-scrollbar-track { background: var(--bg2); }
::-webkit-scrollbar-thumb { background: var(--p1); border-radius: 99px; }
::-webkit-scrollbar-thumb:hover { background: var(--p1d); }

/* ── SCROLL PROGRESS ───────────────────────────────────── */
#scroll-progress {
  position: fixed !important; top: 0 !important; left: 0 !important;
  width: 0 !important; height: 3px !important;
  background: var(--g-bar) !important; z-index: 999999 !important;
  box-shadow: 0 0 10px var(--p1l) !important;
  transition: width .1s linear !important;
}

/* ── OLD THEME ELEMENTS → HIDDEN ──────────────────────── */
.loader-wrap, .preloader,
.main-header, .top-bar, .header-upper,
.sticky-header, .mobile-menu, .nav-overlay,
.main-footer, .footer-bottom-two,
.whatsapp-float, .scroll-to-top,
.religious-marquee,
#donate-popup { display: none !important; }

/* ── PUSH BODY DOWN FOR FIXED NAVBAR ──────────────────── */
.page-wrapper { padding-top: 80px !important; background: var(--bg) !important; }
section { background: var(--bg) !important; }
/* Sections with intentional dark/colored gradient backgrounds — their own
   page-level CSS carries !important too (higher specificity wins).
   Adding a class-level reset here so even without page-level !important
   these sections are never overridden by the broad `section` tag rule. */
.founder-banner,
.fc-hero,
.quote-block,
.fp-banner,
.fp-cta { background: revert !important; }
.sec-alt-bg, .events-section, .causes-section, .volunteer-section,
.testimonials-section, .partners-section { background: var(--sec-alt) !important; }

/* ================================================================
/* ================================================================
   FC NAVBAR — Ultra Modern SaaS / World-Class NGO Look
   ================================================================ */
.fc-navbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 9999;
  background: var(--nav-bg);
  backdrop-filter: blur(20px) saturate(160%); -webkit-backdrop-filter: blur(20px) saturate(160%);
  border-bottom: 1px solid var(--nav-border);
  transition: background .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.fc-navbar.scrolled {
  background: var(--nav-scrolled) !important;
  box-shadow: 0 10px 30px -10px rgba(15,23,42,.10), 0 4px 10px -4px rgba(15,23,42,.04);
  border-bottom-color: var(--brdr2);
}
.fc-nav-inner {
  max-width: 1360px; margin: 0 auto; padding: 0 28px;
  height: 80px; display: flex; align-items: center; gap: 24px;
}

/* Brand */
.fc-brand { 
  display: flex; 
  align-items: center; 
  gap: 14px; 
  flex-shrink: 0; 
  text-decoration: none !important; 
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.fc-brand-logo {
  width: 64px !important; 
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  border-radius: 50% !important;
  object-fit: cover !important; 
  flex-shrink: 0;
  transition: transform .25s ease;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  filter: none !important;
  padding: 0 !important;
}
.fc-brand:hover .fc-brand-logo { transform: scale(1.05); }
.fc-brand-text { display: flex; flex-direction: column; line-height: 1.15; }
.fc-brand-name {
  font-family: 'Space Grotesk',sans-serif; font-size: 16px;
  font-weight: 800; color: var(--head) !important;
  letter-spacing: -.02em;
}
.fc-brand-sub {
  font-size: 9.5px; font-weight: 700; color: var(--p1) !important;
  text-transform: uppercase; letter-spacing: .16em;
}

/* Links */
.fc-nav-menu {
  display: flex; align-items: center; gap: 4px;
  list-style: none; margin: 0; padding: 0; flex: 1;
}
.fc-nav-menu > li { position: relative; }
.fc-nav-menu > li > a {
  display: flex; align-items: center; gap: 6px;
  padding: 8px 14px; border-radius: 10px;
  font-size: 14px; font-weight: 600; color: var(--nav-link) !important;
  transition: color .2s ease, background .2s ease, transform .2s ease;
  white-space: nowrap;
}
.fc-nav-menu > li > a .fc-arr {
  font-size: 8px; opacity: .55; transition: transform .22s ease;
}
.fc-nav-menu > li:hover > a {
  color: var(--p1d, #15803d) !important;
  background: var(--p1l);
}
.fc-nav-menu > li:hover > a .fc-arr { transform: rotate(180deg); opacity: 1; }

/* Dropdown */
.fc-drop {
  position: absolute; top: calc(100% + 10px); left: 0;
  min-width: 240px; background: var(--card);
  backdrop-filter: blur(24px);
  border: 1px solid var(--border); border-radius: 18px;
  padding: 10px;
  box-shadow: 0 20px 45px -12px rgba(15,23,42,.18), 0 0 0 1px rgba(15,23,42,.04);
  opacity: 0; visibility: hidden; transform: translateY(10px);
  transition: opacity .22s cubic-bezier(.22,1,.36,1), transform .22s cubic-bezier(.22,1,.36,1), visibility .22s ease;
  z-index: 100;
}
.fc-nav-menu > li:hover .fc-drop {
  opacity: 1 !important; visibility: visible !important; transform: translateY(0) !important;
}
.fc-drop a {
  display: flex; align-items: center; gap: 8px;
  padding: 9px 14px; border-radius: 10px;
  font-size: 13.5px; font-weight: 500; color: var(--text2) !important;
  transition: all .18s ease;
}
.fc-drop a:hover {
  color: var(--p1d, #15803d) !important;
  background: var(--p1l);
  padding-left: 18px;
}

/* Actions */
.fc-nav-cta { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.fc-btn-ghost {
  padding: 9px 18px; border-radius: 99px;
  font-size: 13.5px; font-weight: 600; color: var(--text) !important;
  border: 1px solid var(--border); background: var(--card);
  transition: all .2s ease; display: inline-flex; align-items: center; gap: 6px;
}
.fc-btn-ghost:hover {
  color: var(--p1) !important;
  border-color: var(--p1);
  background: var(--p1l);
  transform: translateY(-1px);
}
.fc-btn-donate {
  padding: 10px 24px; border-radius: 99px;
  font-size: 13.5px; font-weight: 700; color: #fff !important;
  background: var(--g-btn);
  box-shadow: 0 4px 18px rgba(22,163,74,.28);
  display: inline-flex; align-items: center; gap: 8px;
  transition: transform .2s ease, box-shadow .2s ease;
}
.fc-btn-donate i {
  font-size: 12px;
  animation: fcHeartBeat 2s infinite ease-in-out;
}
@keyframes fcHeartBeat {
  0%, 100% { transform: scale(1); }
  14% { transform: scale(1.22); }
  28% { transform: scale(1); }
  42% { transform: scale(1.16); }
  70% { transform: scale(1); }
}
.fc-btn-donate:hover {
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(22,163,74,.42);
}

/* Theme Toggle */
.fc-theme-toggle {
  width: 40px; height: 40px; border-radius: 50%;
  background: var(--card); border: 1px solid var(--border);
  color: var(--text2); font-size: 16px;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; transition: all .22s ease; flex-shrink: 0; outline: none;
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
}
.fc-theme-toggle:hover {
  background: var(--p1l); border-color: var(--p1); color: var(--p1);
  transform: rotate(25deg) scale(1.08);
}

/* Hamburger */
.fc-ham {
  display: none; flex-direction: column; gap: 5px;
  background: none; border: none; cursor: pointer; padding: 8px;
  border-radius: 8px; transition: background .18s ease;
}
.fc-ham:hover { background: var(--border); }
.fc-ham span {
  display: block; width: 22px; height: 2px;
  background: var(--nav-hover); border-radius: 2px;
  transition: transform .32s cubic-bezier(.4,0,.2,1), opacity .18s ease;
}
.fc-ham.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.fc-ham.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.fc-ham.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Mobile drawer */
.fc-overlay {
  position: fixed; inset: 0; background: rgba(0,0,0,.65);
  z-index: 99998; opacity: 0; visibility: hidden;
  transition: opacity .28s ease, visibility .28s ease;
}
.fc-overlay.show { opacity: 1; visibility: visible; }
.fc-drawer {
  position: fixed; top: 0; right: -100%;
  width: min(360px,92vw); height: 100dvh; height: 100vh;
  background: var(--bg2); border-left: 1px solid var(--border);
  z-index: 99999; overflow-y: auto; display: flex; flex-direction: column;
  transition: right .28s cubic-bezier(.4,0,.2,1);
}
.fc-drawer.show { right: 0; }
.fc-drawer-hd {
  display: flex; align-items: center; justify-content: space-between;
  padding: 20px 22px; border-bottom: 1px solid var(--border);
}
.fc-drawer-close {
  width: 36px; height: 36px; border-radius: 50%;
  background: var(--border); border: none; cursor: pointer;
  color: var(--text2); font-size: 17px;
  display: flex; align-items: center; justify-content: center;
  transition: all .18s ease;
}
.fc-drawer-close:hover { background: var(--p1l); color: var(--p1); }
.fc-drawer-body { flex: 1; padding: 14px 14px 0; overflow-y: auto; }
.fc-dm-item {
  display: flex; align-items: center; justify-content: space-between;
  width: 100%; padding: 11px 14px; border-radius: 10px;
  font-size: 14px; font-weight: 500; color: var(--text2);
  background: none; border: none; cursor: pointer; font-family: 'Inter',sans-serif;
  transition: all .18s ease; text-align: left;
}
.fc-dm-item:hover, .fc-dm-item.open { color: var(--head); background: var(--p1l); }
.fc-dm-item a { color: inherit !important; display: block; width: 100%; }
.fc-dm-arr { font-size: 10px; opacity: .55; transition: transform .18s ease; }
.fc-dm-item.open .fc-dm-arr { transform: rotate(180deg); }
.fc-dm-sub { display: none; padding: 0 0 6px 14px; }
.fc-dm-sub.show { display: block; }
.fc-dm-sub a {
  display: block; padding: 8px 14px; border-radius: 8px;
  font-size: 13px; font-weight: 400; color: var(--text3);
  transition: all .18s ease;
}
.fc-dm-sub a:hover { color: var(--head); background: var(--border); }
.fc-drawer-ft {
  padding: 18px 20px; border-top: 1px solid var(--border);
  display: flex; flex-direction: column; gap: 10px;
}
.fc-d-login {
  display: block; text-align: center; padding: 12px; border-radius: 99px;
  font-size: 14px; font-weight: 600; color: var(--text2) !important;
  border: 1.5px solid var(--brdr2); transition: all .18s ease;
}
.fc-d-login:hover { color: var(--head) !important; border-color: var(--p1); background: var(--p1l); }
.fc-d-donate {
  display: block; text-align: center; padding: 13px; border-radius: 99px;
  font-size: 14px; font-weight: 700; color: #fff !important;
  background: var(--g-btn); box-shadow: 0 4px 20px var(--p1l);
  transition: transform .18s ease;
}

/* Marquee */
.fc-marquee {
  background: var(--g-bar); padding: 10px 0;
  position: relative; z-index: 1;
}
.fc-marquee-wrap {
  max-width: 1340px; margin: 0 auto; padding: 0 28px;
  display: flex; align-items: center; gap: 16px; overflow: hidden;
}
.fc-mq-badge {
  background: rgba(255,255,255,.18); border-radius: 99px;
  padding: 4px 14px; font-size: 11px; font-weight: 700;
  color: #fff; white-space: nowrap; text-transform: uppercase; letter-spacing: .08em;
  flex-shrink: 0;
}
.fc-marquee marquee {
  color: rgba(255,255,255,.88); font-size: 13px; font-weight: 500; letter-spacing: .02em;
}

/* ================================================================
   PAGE TITLE & PAGE BANNER (inner pages — modern upgrade)
   ================================================================ */

/* ── Shared Hero Base ── */
.page-title, .page-banner {
  background-size: cover !important; background-position: center !important;
  position: relative !important; overflow: hidden !important;
  isolation: isolate !important;
}
.page-title { padding: 100px 0 80px !important; }

/* Gradient overlay */
.page-title::before {
  content: '' !important; position: absolute !important; inset: 0 !important;
  background: var(--g-hero) !important; z-index: 1 !important;
}

/* Decorative floating shapes */
.page-title::after,
.page-banner::after {
  content: '' !important; position: absolute !important;
  width: 320px !important; height: 320px !important; border-radius: 50% !important;
  background: radial-gradient(circle, rgba(255,255,255,.08), transparent 70%) !important;
  top: -100px !important; right: -80px !important;
  z-index: 1 !important; pointer-events: none !important;
  animation: fc-hero-float 8s ease-in-out infinite !important;
}
@keyframes fc-hero-float {
  0%, 100% { transform: translate(0, 0) scale(1); }
  50% { transform: translate(-15px, 12px) scale(1.05); }
}

/* Second decorative orb via box-shadow trick on the parent */
.page-title .auto-container::before,
.page-banner .auto-container::before {
  content: '' !important; position: absolute !important;
  width: 200px !important; height: 200px !important; border-radius: 50% !important;
  background: radial-gradient(circle, rgba(255,255,255,.06), transparent 70%) !important;
  bottom: -60px !important; left: -40px !important;
  z-index: 0 !important; pointer-events: none !important;
  animation: fc-hero-float 10s ease-in-out 1s infinite !important;
}

/* Content z-index */
.page-title .auto-container,
.page-banner .auto-container { position: relative !important; z-index: 2 !important; }

/* ── Typography ── */
.page-title h1, .page-title .title,
.page-banner h1, .page-banner .title h1 {
  font-family: 'Inter','Space Grotesk',sans-serif !important;
  font-size: clamp(28px,4vw,48px) !important; font-weight: 600 !important;
  color: #fff !important; -webkit-text-fill-color: #fff !important;
  letter-spacing: -.01em !important; margin-bottom: 14px !important;
  line-height: 1.2 !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.22) !important;
}
.page-banner .title p,
.page-banner .content-box > p {
  color: rgba(255,255,255,.88) !important; -webkit-text-fill-color: rgba(255,255,255,.88) !important;
  font-size: 16px !important; max-width: 640px !important;
  line-height: 1.7 !important;
  font-family: 'Inter',sans-serif !important;
}
.page-banner .content-box[style*="text-align: center"] .title p,
.page-banner .content-box[style*="text-align:center"] .title p {
  margin-left: auto !important; margin-right: auto !important;
}

/* ── Breadcrumbs — Modern Pill Style ── */
.bread-crumb, .breadcrumb, .breadcrumb-nav {
  background: none !important; padding: 0 !important; margin: 0 !important;
  display: flex !important; align-items: center !important; gap: 6px !important;
  list-style: none !important;
}
.bread-crumb li, .breadcrumb li, .breadcrumb-nav li {
  font-size: 13px !important; font-weight: 500 !important;
  color: rgba(255,255,255,.55) !important;
  -webkit-text-fill-color: rgba(255,255,255,.55) !important;
  display: inline-flex !important; align-items: center !important;
}
.bread-crumb li a, .breadcrumb li a, .breadcrumb-nav li a {
  color: rgba(255,255,255,.82) !important;
  -webkit-text-fill-color: rgba(255,255,255,.82) !important;
  font-size: 13px !important; transition: all .2s ease !important;
  text-decoration: none !important;
  background: rgba(255,255,255,.10) !important;
  padding: 4px 14px !important; border-radius: 99px !important;
  backdrop-filter: blur(6px) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}
.bread-crumb li a:hover, .breadcrumb li a:hover, .breadcrumb-nav li a:hover {
  background: rgba(255,255,255,.20) !important;
  color: #fff !important; -webkit-text-fill-color: #fff !important;
}
.bread-crumb li:last-child, .breadcrumb li.active, .breadcrumb-nav li.active {
  color: #fff !important; -webkit-text-fill-color: #fff !important;
  font-weight: 600 !important;
}
/* Separator */
.bread-crumb li::before {
  color: rgba(255,255,255,.35) !important; font-size: 11px !important;
}
.breadcrumb-item + .breadcrumb-item::before { color: rgba(255,255,255,.35) !important; }

/* ── Animated gradient border at bottom ── */
.page-title .auto-container::after,
.page-banner .auto-container::after {
  content: '' !important; position: absolute !important;
  bottom: -80px !important; left: 0 !important; right: 0 !important;
  height: 3px !important; border-radius: 99px !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.25), transparent) !important;
  z-index: 3 !important;
}

/* ── Light theme hero overrides ── */
[data-theme="light"] .page-title::before {
  background: linear-gradient(135deg, rgba(234,88,12,.92) 0%, rgba(217,119,6,.88) 100%) !important;
}
[data-theme="light"] .page-title::after,
[data-theme="light"] .page-banner::after {
  background: radial-gradient(circle, rgba(255,255,255,.12), transparent 70%) !important;
}
[data-theme="light"] .page-banner {
  filter: none !important;
}
/* For .page-banner pages that have inline gradient colors —
   light theme gets a warm overlay */
[data-theme="light"] .page-banner::before {
  content: '' !important; position: absolute !important; inset: 0 !important;
  background: linear-gradient(135deg, rgba(234,88,12,.06) 0%, rgba(217,119,6,.04) 100%) !important;
  z-index: 1 !important; pointer-events: none !important;
  mix-blend-mode: overlay !important;
}

/* page-title-section (services.php one-off) */
.page-title-section {
  position: relative !important; overflow: hidden !important;
}
.page-title-section::after {
  content: '' !important; position: absolute !important;
  width: 280px !important; height: 280px !important; border-radius: 50% !important;
  background: radial-gradient(circle, rgba(255,255,255,.08), transparent 70%) !important;
  top: -80px !important; right: -60px !important;
  z-index: 0 !important; pointer-events: none !important;
  animation: fc-hero-float 8s ease-in-out infinite !important;
}

/* ================================================================
   SECTION TITLES
   ================================================================ */
.sec-title { margin-bottom: 50px !important; }
.sec-title .sub-title, .sec-title h5 {
  display: inline-flex !important; align-items: center !important; gap: 7px !important;
  font-size: 11px !important; font-weight: 700 !important;
  text-transform: uppercase !important; letter-spacing: .12em !important;
  background: var(--p1l) !important; color: var(--p1d) !important;
  padding: 5px 15px !important; border-radius: 99px !important;
  margin-bottom: 16px !important; font-family: 'Inter',sans-serif !important;
  border: none !important;
}
.sec-title.light .sub-title, .sec-title.light h5 {
  background: rgba(255,255,255,.14) !important; color: #fff !important;
}
.sec-title h1, .sec-title h2 {
  font-size: clamp(26px,3.8vw,50px) !important; font-weight: 700 !important;
  letter-spacing: -.03em !important; color: var(--head) !important;
  line-height: 1.10 !important; font-family: 'Space Grotesk','Inter',sans-serif !important;
}
.sec-title.light h1, .sec-title.light h2 { color: #fff !important; }
.sec-title .text, .sec-title p {
  font-size: 16px !important; color: var(--text2) !important;
  line-height: 1.75 !important; margin-top: 14px !important;
}
.sec-title.text-center .text { margin: 14px auto 0 !important; max-width: 600px !important; }
.sec-title::after, .title-separator { display: none !important; }
/* icon-box in sec-title: visible, themed */
.sec-title .icon-box { display: block; margin: 0 auto 10px; }
.sec-title .icon-box span[class^="flaticon-"],
.sec-title .icon-box i.fa { color: var(--p1) !important; font-size: 40px !important; }

/* ================================================================
   BUTTONS
   ================================================================ */
.theme-btn {
  display: inline-flex !important; align-items: center !important;
  justify-content: center !important; gap: 8px !important;
  border-radius: 99px !important; border: none !important;
  font-family: 'Inter',sans-serif !important; font-weight: 700 !important;
  font-size: 14px !important; cursor: pointer !important;
  position: relative !important; overflow: hidden !important;
  transition: transform .18s ease, box-shadow .18s ease !important;
}
.theme-btn:hover { transform: translateY(-3px) !important; text-decoration: none !important; }
.theme-btn:active { transform: translateY(-1px) scale(.97) !important; }
.theme-btn.btn-style-one,
.theme-btn.btn-style-fourteen {
  background: var(--g-btn) !important; color: #fff !important;
  padding: 13px 30px !important; box-shadow: 0 6px 24px var(--p1l) !important;
}
.theme-btn.btn-style-one:hover, .theme-btn.btn-style-fourteen:hover {
  box-shadow: 0 12px 32px var(--p1l) !important; color: #fff !important;
}
.theme-btn.btn-style-four, .donate-box-btn {
  background: var(--g-btn2) !important; color: #fff !important;
  padding: 13px 30px !important; box-shadow: 0 6px 22px var(--p2l) !important;
}
.theme-btn.btn-style-four:hover, .donate-box-btn:hover {
  box-shadow: 0 12px 30px var(--p2l) !important; color: #fff !important;
}
.theme-btn.btn-style-five, .theme-btn.btn-style-fifteen {
  background: transparent !important; color: var(--text2) !important;
  border: 1.5px solid var(--brdr2) !important; padding: 12px 28px !important;
}
.theme-btn.btn-style-five:hover, .theme-btn.btn-style-fifteen:hover {
  background: var(--p1l) !important; color: var(--head) !important;
  border-color: var(--p1) !important;
}

/* ================================================================
   HERO BANNER
   ================================================================ */
.banner-section .swiper-slide,
.banner-section.style-five .swiper-slide {
  min-height: 650px !important; background-size: cover !important;
  background-position: center !important; position: relative !important;
  display: flex !important; align-items: center !important;
}
.banner-section .swiper-slide::before {
  content: '' !important; position: absolute !important; inset: 0 !important;
  background: var(--g-hero) !important; z-index: 1 !important;
}
.banner-section .content-outer,
.banner-section .row { position: relative !important; z-index: 3 !important; }
.banner-section .content-box .inner h1 {
  font-size: clamp(36px,5.5vw,80px) !important;
  font-family: 'Space Grotesk',sans-serif !important; font-weight: 700 !important;
  color: #fff !important; letter-spacing: -.038em !important; line-height: 1.04 !important;
  margin-bottom: 20px !important;
}
.banner-section .content-box .inner h1 em {
  font-style: normal !important;
  background: linear-gradient(90deg,var(--p1),var(--p2)) !important;
  -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
.banner-section .content-box .inner .text, .banner-section .content-box .inner p {
  font-size: clamp(15px,2vw,18px) !important; color: rgba(255,255,255,.76) !important;
  line-height: 1.72 !important; max-width: 580px !important; margin-bottom: 36px !important;
}
.banner-section .btn-box, .banner-section .link-btn {
  display: flex !important; flex-wrap: wrap !important; gap: 16px !important; align-items: center !important;
}
.banner-section-nav button, .swiper-btn-prev, .swiper-btn-next {
  background: rgba(255,255,255,.10) !important; backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255,255,255,.18) !important; border-radius: 12px !important;
  color: #fff !important; transition: all .18s ease !important;
}
.banner-section-nav button:hover, .swiper-btn-prev:hover, .swiper-btn-next:hover {
  background: var(--p1) !important; border-color: var(--p1) !important;
  box-shadow: 0 6px 20px var(--p1l) !important;
}

/* ================================================================
   ABOUT / INTRO
   ================================================================ */
.intro-section, .about-section { background: var(--bg) !important; padding: 100px 0 !important; }
.about-section-three, .about-section-two { background: var(--sec-alt) !important; padding: 90px 0 !important; }

.intro-block-one .inner-box {
  border-radius: 20px !important; overflow: hidden !important;
  border: 1px solid var(--border) !important; background: var(--card) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.08) !important;
  transition: transform .28s ease, box-shadow .28s ease !important;
}
.intro-block-one .inner-box:hover { transform: translateY(-10px) !important; box-shadow: 0 24px 60px rgba(0,0,0,.18) !important; }
.intro-block-one .lower-content { padding: 24px !important; }
.intro-block-one .campaigns a { color: var(--p1) !important; font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .10em !important; }
.intro-block-one .lower-content h4 { font-weight: 700 !important; color: var(--head) !important; }
.intro-block-one .lower-content .text { color: var(--text2) !important; font-size: 14px !important; }
.intro-block-one .image img, .intro-block-one img { transition: transform .6s ease !important; }
.intro-block-one .inner-box:hover img { transform: scale(1.07) !important; }
.intro-block-one .link-btn a, .intro-block-one a.theme-btn {
  background: var(--p1l) !important; color: var(--p1d) !important;
  border-radius: 99px !important; padding: 8px 20px !important;
  font-size: 13px !important; font-weight: 700 !important;
  display: inline-flex !important; transition: all .18s ease !important;
  box-shadow: none !important;
}
.intro-block-one .link-btn a:hover, .intro-block-one a.theme-btn:hover {
  background: var(--p1) !important; color: #fff !important;
  box-shadow: 0 4px 16px var(--p1l) !important;
}

/* Experience block */
.experience-block {
  background: var(--g-btn) !important; border-radius: 20px !important;
  padding: 48px 36px !important; position: relative !important; overflow: hidden !important;
  box-shadow: 0 8px 32px var(--p1l) !important;
}
.experience-block::before {
  content: '' !important; position: absolute !important;
  top: -80px; right: -80px; width: 260px !important; height: 260px !important;
  background: radial-gradient(circle,rgba(255,255,255,.18) 0,transparent 70%) !important;
  border-radius: 50% !important;
}
.experience-block h4 { color: rgba(255,255,255,.70) !important; }
.experience-block h1 {
  font-size: 90px !important; font-weight: 700 !important; line-height: 1 !important;
  color: #fff !important; -webkit-text-fill-color: #fff !important;
}

/* ================================================================
   SERVICES
   ================================================================ */
.services-section, .our-services { background: var(--sec-alt) !important; padding: 90px 0 !important; }
.service-block-one .inner-box, .service-box {
  background: var(--card) !important; border-radius: 20px !important; overflow: hidden !important;
  border: 1px solid var(--border) !important; box-shadow: 0 4px 16px rgba(0,0,0,.08) !important;
  position: relative !important;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease !important;
}
.service-block-one .inner-box::after, .service-box::after {
  content: '' !important; position: absolute !important; inset: 0 !important;
  border-radius: 20px !important; border: 2px solid var(--p1) !important;
  opacity: 0 !important; transition: opacity .28s ease !important; pointer-events: none !important;
}
.service-block-one .inner-box:hover, .service-box:hover {
  transform: translateY(-12px) !important; border-color: transparent !important;
  box-shadow: 0 8px 32px var(--p1l), 0 20px 50px rgba(0,0,0,.10) !important;
}
.service-block-one .inner-box:hover::after, .service-box:hover::after { opacity: 1 !important; }
.service-block-one h4, .service-box h4 { color: var(--head) !important; font-weight: 700 !important; }
.service-block-one p, .service-box p { color: var(--text2) !important; font-size: 14px !important; }
.service-block-one img, .service-box img { transition: transform .6s ease !important; }
.service-block-one .inner-box:hover img, .service-box:hover img { transform: scale(1.07) !important; }

/* Dark feature blocks */
.feature-section-two { background: var(--bg2) !important; padding: 90px 0 !important; }
.feature-block-four .inner-box {
  background: var(--bg3) !important; border: 1px solid var(--border) !important;
  border-radius: 20px !important; padding: 36px 28px !important;
  position: relative !important; overflow: hidden !important; transition: all .28s ease !important;
}
.feature-block-four .inner-box::before {
  content: '' !important; position: absolute !important; top: 0; left: 0; right: 0; height: 2px !important;
  background: var(--g-btn) !important; opacity: 0 !important; transition: opacity .28s ease !important;
}
.feature-block-four .inner-box:hover {
  background: var(--p1l) !important; border-color: var(--p1) !important;
  transform: translateY(-8px) !important;
}
.feature-block-four .inner-box:hover::before { opacity: 1 !important; }
.feature-block-four h4 { color: var(--head) !important; font-weight: 700 !important; }
.feature-block-four p { color: var(--text2); }
.feature-block-four .icon-box span, .feature-block-four .icon-box i { color: var(--p1) !important; font-size: 36px !important; }

/* ================================================================
   COUNTER STATS
   ================================================================ */
.counter-section, .fun-facts-section {
  background: var(--g-btn) !important; padding: 70px 0 !important;
  position: relative !important; overflow: hidden !important;
}
.counter-section .count-text, .fun-facts-section .count-text, .counter-block .count-text, .fact-block .count-text, .counter-section .odometer, .fun-facts-section .odometer {
  font-size: clamp(42px,5vw,64px) !important; font-weight: 700 !important;
  font-family: 'Space Grotesk',sans-serif !important; color: #fff !important;
  line-height: 1 !important; -webkit-text-fill-color: #fff !important;
  background: none !important; -webkit-background-clip: unset !important; background-clip: unset !important;
}
.counter-block .title, .fact-block .title, .counter-block h4, .fact-block h4 {
  color: rgba(255,255,255,.78) !important; font-size: 15px !important; font-weight: 600 !important; margin-top: 8px !important;
}

/* ================================================================
   CAUSES
   ================================================================ */
.causes-section, .causes-section-five { background: var(--bg) !important; padding: 90px 0 !important; }
.cause-block-five .inner-box, .cause-block .inner-box {
  border-radius: 20px !important; overflow: hidden !important;
  border: 1px solid var(--border) !important; box-shadow: 0 4px 16px rgba(0,0,0,.08) !important;
  background: var(--card) !important; transition: transform .28s ease, box-shadow .28s ease !important;
}
.cause-block-five .inner-box:hover, .cause-block .inner-box:hover { transform: translateY(-10px) !important; box-shadow: 0 24px 60px rgba(0,0,0,.14) !important; }
.cause-block-five .image img, .cause-block .image img { transition: transform .55s ease !important; }
.cause-block-five .inner-box:hover .image img, .cause-block .inner-box:hover .image img { transform: scale(1.07) !important; }
.cause-block-five .lower-content, .cause-block .lower-content { padding: 24px !important; }
.cause-block-five .lower-content h4 a, .cause-block .lower-content h4 a { color: var(--head) !important; font-weight: 700 !important; transition: color .18s ease !important; }
.cause-block-five .lower-content h4 a:hover, .cause-block .lower-content h4 a:hover { color: var(--p1) !important; }
.progress-line .bar-inner { background: var(--p1) !important; border-radius: 99px !important; }
.progress-line .bar { border-radius: 99px !important; background: var(--border) !important; }

/* ================================================================
   TEAM
   ================================================================ */
.team-section, .team-section-five { background: var(--sec-alt) !important; padding: 90px 0 !important; }
.team-block .inner-box, .team-block-five .inner-box {
  border-radius: 20px !important; overflow: hidden !important;
  border: 1px solid var(--border) !important; box-shadow: 0 4px 16px rgba(0,0,0,.08) !important;
  background: var(--card) !important; transition: transform .28s ease, box-shadow .28s ease !important;
}
.team-block .inner-box:hover, .team-block-five .inner-box:hover { transform: translateY(-10px) !important; box-shadow: 0 24px 60px rgba(0,0,0,.14) !important; }
.team-block .image img, .team-block-five .image img { transition: transform .55s ease !important; }
.team-block .inner-box:hover .image img, .team-block-five .inner-box:hover .image img { transform: scale(1.06) !important; }
.team-block h4 a, .team-block-five h4 a { color: var(--head) !important; font-weight: 700 !important; transition: color .18s ease !important; }
.team-block h4 a:hover, .team-block-five h4 a:hover { color: var(--p1) !important; }
.team-block .designation, .team-block-five .designation { color: var(--p1) !important; font-size: 13px !important; font-weight: 600 !important; }
.team-block .social-icon li a {
  background: var(--border) !important; border-radius: 50% !important;
  width: 36px !important; height: 36px !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  color: var(--text2) !important; border: 1px solid var(--brdr2) !important;
  transition: all .18s ease !important;
}
.team-block .social-icon li a:hover { background: var(--p1) !important; border-color: var(--p1) !important; color: #fff !important; transform: translateY(-2px) !important; }

/* ================================================================
   TESTIMONIALS
   ================================================================ */
.testimonial-section, .testimonial-section-three { background: var(--bg2) !important; padding: 80px 0 60px !important; }
.testimonial-block .inner-box, .testimonial-block-three .inner-box {
  background: var(--bg3) !important; border: 1px solid var(--border) !important;
  border-radius: 20px !important; padding: 36px !important; backdrop-filter: blur(10px) !important;
  position: relative !important; transition: all .28s ease !important;
}
.testimonial-block .inner-box::before, .testimonial-block-three .inner-box::before {
  content: '\201C' !important; position: absolute !important; top: 18px !important; left: 26px !important;
  font-size: 72px !important; line-height: 1 !important; color: var(--p1) !important;
  opacity: .22 !important; font-family: Georgia,serif !important;
}
.testimonial-block .inner-box:hover, .testimonial-block-three .inner-box:hover { border-color: var(--p1) !important; background: var(--p1l) !important; transform: translateY(-6px) !important; }
.testimonial-block .author-title, .testimonial-block-three .author-title { color: var(--head) !important; font-weight: 700 !important; }
.testimonial-block .designation, .testimonial-block-three .designation { color: var(--p1) !important; font-size: 13px !important; font-weight: 600 !important; }
.testimonial-block .text, .testimonial-block-three .text { color: var(--text2) !important; line-height: 1.78 !important; }
.testimonial-section .sec-title h1, .testimonial-section-three .sec-title h1 { color: var(--head) !important; }

/* ================================================================
   BLOG
   ================================================================ */
.blog-section, .news-section { background: var(--bg) !important; padding: 90px 0 !important; }
.news-block .inner-box, .news-block-one .inner-box, .blog-block .inner-box {
  border-radius: 20px !important; overflow: hidden !important;
  border: 1px solid var(--border) !important; box-shadow: 0 4px 24px rgba(0,0,0,.09) !important;
  background: var(--card) !important; transition: transform .28s ease, box-shadow .28s ease !important;
}
[data-theme="dark"] .news-block-one .inner-box,
[data-theme="dark"] .news-block .inner-box {
  border-color: rgba(255,255,255,.11) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.40) !important;
  background: var(--card) !important;
}
.news-block .inner-box:hover, .news-block-one .inner-box:hover, .blog-block .inner-box:hover { transform: translateY(-10px) !important; box-shadow: 0 24px 60px rgba(0,0,0,.14) !important; }
.news-block img, .news-block-one img, .blog-block img { transition: transform .55s ease !important; }
.news-block .inner-box:hover img, .news-block-one .inner-box:hover img, .blog-block .inner-box:hover img { transform: scale(1.07) !important; }
.news-block .lower-content, .news-block-one .lower-content { padding: 24px !important; }
.news-block h4 a, .news-block-one h4 a, .blog-block h4 a { color: var(--head) !important; font-weight: 700 !important; transition: color .18s ease !important; }
.news-block h4 a:hover, .news-block-one h4 a:hover, .blog-block h4 a:hover { color: var(--p1) !important; }
.news-block-one .category a {
  background: var(--p1l) !important; color: var(--p1d) !important;
  border-radius: 99px !important; padding: 3px 12px !important;
  font-size: 11px !important; font-weight: 700 !important;
  text-transform: uppercase !important; letter-spacing: .06em !important;
}
.news-block .date, .news-block-one .date { color: var(--text3) !important; font-size: 12px !important; font-weight: 600 !important; }
.news-block-one .lower-content p { color: var(--text2) !important; font-size: 13px !important; }

/* ================================================================
   GALLERY
   ================================================================ */
.gallery-section { background: var(--sec-alt) !important; padding: 90px 0 !important; }
.gallery-section-two { background: var(--bg2) !important; padding: 0 !important; }
.gallery-section-two .content-column {
  padding: 60px 50px !important; background: var(--bg3) !important;
  display: flex; flex-direction: column; justify-content: center;
}
.gallery-section-two .content-column .sec-title h5 {
  background: var(--p1l) !important; color: var(--p1d) !important;
}
.gallery-section-two .content-column .sec-title h1,
.gallery-section-two .content-column .sec-title h2 { color: var(--head) !important; }
[data-theme="dark"] .gallery-section-two .content-column { background: rgba(255,255,255,.03) !important; }
.gallery-section-two .link-btn a {
  display: inline-flex; align-items: center; gap: 8px;
  font-weight: 700; color: var(--p1) !important; font-size: 14px;
  padding: 10px 22px; border-radius: 99px; background: var(--p1l);
  transition: all .18s ease;
}
.gallery-section-two .link-btn a:hover { background: var(--p1); color: #fff !important; }
.gallery-block .inner-box, .gallery-block-two .inner-box { border-radius: 14px !important; overflow: hidden !important; }
.gallery-block img, .gallery-block-two img { transition: transform .6s ease !important; display: block !important; width: 100% !important; }
.gallery-block .inner-box:hover img, .gallery-block-two .inner-box:hover img { transform: scale(1.10) !important; }
.gallery-block .overlay, .gallery-block-two .overlay { background: rgba(0,0,0,.75) !important; }

/* ================================================================
   CALL TO ACTION
   ================================================================ */
.call-to-action, .call-to-action-two {
  background-size: cover !important; background-position: center !important;
  padding: 110px 0 !important; position: relative !important;
}
.call-to-action::before, .call-to-action-two::before {
  content: '' !important; position: absolute !important; inset: 0 !important;
  background: var(--g-hero) !important;
}
.call-to-action .auto-container, .call-to-action-two .auto-container { position: relative !important; z-index: 2 !important; }
.call-to-action h5, .call-to-action-two h5 { color: var(--p1) !important; font-size: 12px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .14em !important; }
.call-to-action h1, .call-to-action-two h1 { color: #fff !important; font-size: clamp(28px,4vw,58px) !important; font-weight: 700 !important; letter-spacing: -.035em !important; }
.call-to-action .text, .call-to-action-two .text { color: rgba(255,255,255,.72) !important; font-size: 16px !important; }

/* ================================================================
   DONATE SECTION
   ================================================================ */
.payment-donate-section, .payment-donate-section-three { background: var(--bg2) !important; padding: 90px 0 !important; }
.payment-donate-section .sec-bg-one, .payment-donate-section .sec-bg-two,
.payment-donate-section-three .sec-bg-one, .payment-donate-section-three .sec-bg-two { display: none !important; }
.payment-donate-section .wrapper-box, .payment-donate-section-three .wrapper-box {
  background: var(--bg3) !important; border: 1px solid var(--border) !important;
  border-radius: 20px !important; padding: 44px !important; backdrop-filter: blur(18px) !important;
}
.chicklet-list { list-style: none !important; padding: 0 !important; display: flex !important; flex-wrap: wrap !important; gap: 12px !important; }
.chicklet-list label {
  border: 2px solid var(--brdr2) !important; background: var(--bg3) !important;
  color: var(--text2) !important; border-radius: 14px !important;
  padding: 12px 26px !important; font-size: 15px !important; font-weight: 700 !important;
  cursor: pointer !important; transition: all .18s ease !important;
}
.chicklet-list label:hover,
.chicklet-list input[type=radio]:checked + label {
  background: var(--p1) !important; border-color: var(--p1) !important; color: #fff !important;
  box-shadow: 0 4px 20px var(--p1l) !important;
}
.bar-fill { background: var(--p1) !important; border-radius: 99px !important; }

/* ================================================================
   FORMS
   ================================================================ */
.default-form input, .default-form select, .default-form textarea {
  border-radius: 14px !important; border: 1.5px solid var(--border) !important;
  background: var(--bg3) !important; color: var(--text) !important;
  padding: 14px 18px !important; font-size: 14.5px !important;
  font-family: 'Inter',sans-serif !important;
  transition: border-color .18s ease, box-shadow .18s ease !important;
}
.default-form input:focus, .default-form select:focus, .default-form textarea:focus {
  border-color: var(--p1) !important; box-shadow: 0 0 0 3px var(--p1l) !important; outline: none !important;
}
.default-form input::placeholder, .default-form textarea::placeholder { color: var(--text3) !important; }

/* ================================================================
   PARTNERS / SPONSORS
   ================================================================ */
.client-section, .sponsors-section {
  border-top: none !important; border-bottom: none !important;
  background: var(--bg) !important; padding: 72px 0 !important;
  border-top: 1px solid var(--border) !important; border-bottom: 1px solid var(--border) !important;
}
.client-section .sec-title { margin-bottom: 36px !important; }
.sponsors-carousel .image { padding: 10px 16px; }
.sponsors-carousel .image img { filter: grayscale(50%) !important; opacity: .65 !important; transition: all .28s ease !important; }
.sponsors-carousel .image:hover img { filter: none !important; opacity: 1 !important; transform: scale(1.07) !important; }
.client-section .text-two { text-align:center; color:var(--text3); font-size:14px; margin-top:28px; }
.client-section .text-two a { color:var(--p1); font-weight:600; }

/* Events */
.event-block .inner-box {
  border-radius: 20px !important; overflow: hidden !important; border: 1px solid var(--border) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.08) !important; background: var(--card) !important;
  transition: transform .28s ease, box-shadow .28s ease !important;
}
.event-block .inner-box:hover { transform: translateY(-10px) !important; box-shadow: 0 24px 60px rgba(0,0,0,.14) !important; }
.event-block h4 a { color: var(--head) !important; font-weight: 700 !important; transition: color .18s ease !important; }
.event-block h4 a:hover { color: var(--p1) !important; }

/* Owl dots */
.owl-dots .owl-dot span { background: var(--border) !important; border-radius: 99px !important; transition: all .18s ease !important; width: 10px !important; height: 10px !important; }
.owl-dots .owl-dot.active span, .owl-dots .owl-dot:hover span { background: var(--p1) !important; width: 28px !important; }

/* ================================================================
   FC FOOTER + NEWSLETTER (ULTRA MODERN v3)
   ================================================================ */
.fc-f-container { max-width:1340px; margin:0 auto; padding:0 28px; }

/* ════ NEWSLETTER v3 — ULTRA MODERN ════ */
.fc-nl3 {
  position:relative; overflow:hidden;
  padding:72px 0 64px;
  background:var(--g-btn);
}
.fc-nl3-canvas { position:absolute; inset:0; z-index:0; overflow:hidden; }
.fc-nl3-orb {
  position:absolute; border-radius:50%; filter:blur(80px); opacity:.35;
}
.fc-nl3-orb1 {
  width:500px; height:500px; top:-150px; right:-100px;
  background:rgba(255,255,255,.15);
  animation:fcNl3Float 8s ease-in-out infinite alternate;
}
.fc-nl3-orb2 {
  width:350px; height:350px; bottom:-120px; left:-80px;
  background:rgba(255,255,255,.10);
  animation:fcNl3Float 10s ease-in-out infinite alternate-reverse;
}
@keyframes fcNl3Float {
  0% { transform:translate(0,0) scale(1); }
  100% { transform:translate(30px,-20px) scale(1.1); }
}
.fc-nl3-mesh {
  position:absolute; inset:0;
  background-image:
    radial-gradient(circle at 20% 50%, rgba(255,255,255,.06) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, rgba(255,255,255,.04) 0%, transparent 40%);
}
.fc-nl3-inner {
  position:relative; z-index:1;
  display:flex; align-items:center; justify-content:space-between;
  gap:48px; flex-wrap:wrap;
}
.fc-nl3-content { display:flex; align-items:center; gap:24px; flex:1; min-width:300px; }
.fc-nl3-icon-box {
  position:relative; flex-shrink:0;
  width:68px; height:68px; border-radius:20px;
  background:rgba(255,255,255,.14); backdrop-filter:blur(12px);
  border:1.5px solid rgba(255,255,255,.22);
  display:flex; align-items:center; justify-content:center;
  font-size:26px; color:#fff;
}
.fc-nl3-icon-pulse {
  position:absolute; inset:-8px; border-radius:26px;
  border:2px solid rgba(255,255,255,.18);
  animation:fcNl3Pulse 2.5s ease-out infinite;
}
@keyframes fcNl3Pulse {
  0% { transform:scale(1); opacity:.6; }
  100% { transform:scale(1.35); opacity:0; }
}
.fc-nl3-label {
  display:inline-flex; align-items:center; gap:6px;
  background:rgba(255,255,255,.14); color:#fff;
  font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase;
  padding:5px 14px; border-radius:99px; margin-bottom:8px;
  border:1px solid rgba(255,255,255,.20);
}
.fc-nl3-label i { font-size:10px; }
.fc-nl3-text h3 {
  font-family:'Space Grotesk',sans-serif !important; font-weight:800 !important;
  font-size:24px !important; color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  margin:0 0 6px !important; line-height:1.2 !important;
}
.fc-nl3-text p {
  font-size:14px !important; color:rgba(255,255,255,.72) !important;
  -webkit-text-fill-color:rgba(255,255,255,.72) !important;
  margin:0 !important; line-height:1.5 !important;
}
.fc-nl3-action { flex-shrink:0; min-width:380px; }
.fc-nl3-form { width:100%; }
.fc-nl3-input-group {
  display:flex; align-items:center; gap:0;
  background:rgba(255,255,255,.10); backdrop-filter:blur(14px);
  border:1.5px solid rgba(255,255,255,.22);
  border-radius:16px; overflow:hidden;
  transition:border-color .2s, background .2s, box-shadow .3s;
}
.fc-nl3-input-group:focus-within {
  border-color:rgba(255,255,255,.55);
  background:rgba(255,255,255,.16);
  box-shadow:0 0 30px rgba(255,255,255,.08);
}
.fc-nl3-input-group > i {
  color:rgba(255,255,255,.45); font-size:15px; padding-left:20px; flex-shrink:0;
}
.fc-nl3-input-group input {
  background:transparent !important; border:none !important;
  color:#fff !important; font-size:14.5px; padding:16px 14px; width:100%;
  outline:none !important; font-family:'Inter',sans-serif;
  -webkit-text-fill-color:#fff !important;
}
.fc-nl3-input-group input::placeholder {
  color:rgba(255,255,255,.42) !important;
  -webkit-text-fill-color:rgba(255,255,255,.42) !important;
}
.fc-nl3-submit {
  display:inline-flex; align-items:center; gap:8px;
  padding:16px 30px; margin:4px; border-radius:13px;
  background:#fff; color:var(--p1d,#16a34a); border:none;
  font-size:14px; font-weight:700; font-family:'Inter',sans-serif;
  cursor:pointer; white-space:nowrap;
  box-shadow:0 8px 28px rgba(0,0,0,.22);
  transition:all .25s ease;
}
.fc-nl3-submit:hover {
  transform:translateY(-2px); box-shadow:0 12px 40px rgba(0,0,0,.32);
}
.fc-nl3-submit i { font-size:12px; transition:transform .2s; }
.fc-nl3-submit:hover i { transform:translateX(4px); }
.fc-nl3-perks {
  display:flex; flex-wrap:wrap; gap:16px;
  margin-top:16px;
}
.fc-nl3-perks span {
  display:inline-flex; align-items:center; gap:6px;
  font-size:12px; font-weight:500; color:rgba(255,255,255,.58);
}
.fc-nl3-perks span i { color:rgba(255,255,255,.75); font-size:12px; }

/* ════ FOOTER v3 — ULTRA MODERN ════ */
.fc-foot3 {
  background:var(--foot-bg,#070d1c); position:relative; overflow:hidden;
}
/* Animated gradient top bar */
.fc-foot3-topbar {
  position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg,var(--p1),var(--p2),var(--p1),var(--p2));
  background-size:300% 100%;
  animation:fcFoot3Bar 6s linear infinite;
}
@keyframes fcFoot3Bar {
  0% { background-position:0% 50%; }
  100% { background-position:300% 50%; }
}
/* Ambient glow */
.fc-foot3-glow1 {
  position:absolute; top:-250px; left:20%; width:500px; height:500px;
  border-radius:50%; pointer-events:none;
  background:radial-gradient(circle,var(--p1l) 0%,transparent 70%);
  opacity:.25; filter:blur(50px);
}
.fc-foot3-glow2 {
  position:absolute; top:-180px; right:15%; width:400px; height:400px;
  border-radius:50%; pointer-events:none;
  background:radial-gradient(circle,rgba(59,130,246,.15) 0%,transparent 70%);
  opacity:.20; filter:blur(60px);
}

/* ── Impact Stats Ribbon ── */
.fc-foot3-ribbon {
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
  border:1px solid var(--border); border-radius:20px;
  background:rgba(255,255,255,.03); backdrop-filter:blur(8px);
  margin-top:56px; overflow:hidden;
  position:relative; z-index:1;
}
.fc-foot3-ribbon-item {
  display:flex; align-items:center; gap:14px;
  padding:28px 32px;
  position:relative;
  transition:background .3s;
}
.fc-foot3-ribbon-item:not(:last-child)::after {
  content:''; position:absolute; right:0; top:20%; height:60%;
  width:1px; background:var(--border);
}
.fc-foot3-ribbon-item:hover { background:rgba(255,255,255,.04); }
.fc-foot3-ri-num {
  font-family:'Space Grotesk',sans-serif; font-weight:800;
  font-size:32px; line-height:1;
  background:var(--g-btn); -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
}
.fc-foot3-ri-label {
  font-size:12px; font-weight:600; line-height:1.5;
  color:var(--text2); text-transform:uppercase; letter-spacing:.06em;
}

/* ── Main Footer Grid ── */
.fc-foot3-grid {
  display:grid; grid-template-columns:1.8fr 1fr 1fr 1.4fr; gap:48px;
  padding:56px 0 52px;
}
/* Brand */
.fc-foot3-logo {
  display:inline-flex; align-items:center; gap:14px;
  text-decoration:none; margin-bottom:20px;
}
.fc-foot3-logo-img {
  width:72px; height:72px; object-fit:contain; flex-shrink:0;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.25));
}
.fc-foot3-logo-name {
  font-family:'Space Grotesk',sans-serif; font-weight:800; font-size:20px;
  color:var(--head); line-height:1.15;
}
.fc-foot3-logo-sub {
  font-size:10px; color:var(--text3); text-transform:uppercase;
  letter-spacing:.16em; font-weight:700; margin-top:2px;
}
.fc-foot3-desc {
  color:var(--text2) !important; font-size:13.5px !important;
  line-height:1.85 !important; margin:0 0 22px !important;
}
.fc-foot3-social { display:flex; gap:10px; flex-wrap:wrap; }
.fc-foot3-social a {
  width:42px; height:42px; border-radius:13px; position:relative;
  background:rgba(255,255,255,.05); border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center;
  color:var(--text2); font-size:15px;
  transition:all .28s cubic-bezier(.34,1.56,.64,1);
  overflow:hidden;
}
.fc-foot3-social a::before {
  content:''; position:absolute; inset:0;
  background:var(--g-btn); opacity:0;
  transition:opacity .28s; border-radius:13px;
}
.fc-foot3-social a:hover {
  border-color:transparent; color:#fff;
  transform:translateY(-4px) scale(1.08);
  box-shadow:0 8px 26px var(--p1l);
}
.fc-foot3-social a:hover::before { opacity:1; }
.fc-foot3-social a i { position:relative; z-index:1; }

/* Columns */
.fc-foot3-heading {
  font-family:'Space Grotesk',sans-serif !important; font-weight:700 !important;
  font-size:15px !important; color:var(--head) !important;
  -webkit-text-fill-color:var(--head) !important;
  margin-bottom:24px !important; padding-bottom:14px !important;
  position:relative;
}
.fc-foot3-heading::after {
  content:''; position:absolute; bottom:0; left:0;
  width:36px; height:3px; border-radius:99px;
  background:var(--g-btn);
}
.fc-foot3-links { list-style:none; margin:0; padding:0; }
.fc-foot3-links li { margin-bottom:6px; }
.fc-foot3-links a {
  color:var(--text2) !important; -webkit-text-fill-color:var(--text2) !important;
  font-size:13.5px; font-weight:500; display:inline-flex; align-items:center; gap:8px;
  transition:all .22s ease; text-decoration:none;
  padding:5px 0;
}
.fc-foot3-links a i {
  font-size:8px; color:var(--p1); opacity:.3;
  transition:opacity .22s, transform .22s;
}
.fc-foot3-links a:hover {
  color:var(--head) !important; -webkit-text-fill-color:var(--head) !important;
  padding-left:6px;
}
.fc-foot3-links a:hover i { opacity:1; transform:translateX(2px); }

/* Contact */
.fc-foot3-contact { list-style:none; margin:0; padding:0; }
.fc-foot3-contact li {
  display:flex; gap:14px; align-items:flex-start; margin-bottom:18px;
}
.fc-foot3-ci {
  width:40px; height:40px; border-radius:12px; flex-shrink:0;
  background:linear-gradient(135deg,var(--p1l),rgba(59,130,246,.08));
  border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center;
  color:var(--p1); font-size:15px;
  transition:all .25s;
}
.fc-foot3-contact li:hover .fc-foot3-ci {
  background:var(--g-btn); color:#fff;
  border-color:transparent;
  box-shadow:0 6px 20px var(--p1l);
  transform:translateY(-2px);
}
.fc-foot3-contact small {
  font-size:10px; font-weight:700; text-transform:uppercase;
  letter-spacing:.10em; color:var(--text3) !important;
  -webkit-text-fill-color:var(--text3) !important;
  display:block; margin-bottom:3px;
}
.fc-foot3-contact a, .fc-foot3-contact span {
  color:var(--text2) !important; -webkit-text-fill-color:var(--text2) !important;
  font-size:13.5px; text-decoration:none; transition:color .2s;
}
.fc-foot3-contact a:hover { color:var(--p1) !important; -webkit-text-fill-color:var(--p1) !important; }

/* Map */
.fc-foot3-map {
  margin-top:18px; border-radius:14px; overflow:hidden;
  border:1px solid var(--border);
  box-shadow:0 4px 16px rgba(0,0,0,.15);
  transition:box-shadow .3s, transform .3s;
}
.fc-foot3-map:hover {
  box-shadow:0 8px 30px rgba(0,0,0,.25);
  transform:translateY(-2px);
}

/* ── Copyright ── */
.fc-foot3-copyright {
  border-top:1px solid var(--border); padding:20px 0;
  background:rgba(0,0,0,.18);
}
.fc-foot3-cr-inner {
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:12px;
}
.fc-foot3-cr-inner p {
  color:var(--text3) !important; -webkit-text-fill-color:var(--text3) !important;
  font-size:13px !important; margin:0 !important;
}
.fc-foot3-cr-inner a {
  color:var(--text3) !important; -webkit-text-fill-color:var(--text3) !important;
  text-decoration:none; transition:color .2s;
}
.fc-foot3-cr-inner a:hover { color:var(--p1) !important; -webkit-text-fill-color:var(--p1) !important; }
.fc-foot3-cr-links { display:flex; gap:20px; }
.fc-foot3-cr-links a { font-size:12.5px; font-weight:500; }
.fc-foot3-dev { font-size:12.5px !important; }

/* ══════════════════════════════════════════════════════════
   FOOTER & NEWSLETTER LIGHT THEME — LUXURY MODERN LIGHT DESIGN
   ══════════════════════════════════════════════════════════ */
[data-theme="light"] .fc-foot3 {
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 40%, #f1f5f9 100%) !important;
  color: #1e293b !important;
  border-top: 1px solid rgba(15, 23, 42, 0.08) !important;
}
[data-theme="light"] .fc-foot3-topbar {
  background: linear-gradient(90deg, #16a34a, #2563eb, #16a34a, #2563eb) !important;
  background-size: 300% 100% !important;
}
[data-theme="light"] .fc-foot3-glow1 {
  background: radial-gradient(circle, rgba(34, 197, 94, 0.08) 0%, transparent 70%) !important;
  opacity: 0.7 !important;
}
[data-theme="light"] .fc-foot3-glow2 {
  background: radial-gradient(circle, rgba(37, 99, 235, 0.06) 0%, transparent 70%) !important;
  opacity: 0.7 !important;
}

/* Light Theme Stats Ribbon */
[data-theme="light"] .fc-foot3-ribbon {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05), 0 1px 3px rgba(15, 23, 42, 0.03) !important;
}
[data-theme="light"] .fc-foot3-ribbon-item:not(:last-child)::after {
  background: #e2e8f0 !important;
}
[data-theme="light"] .fc-foot3-ribbon-item:hover {
  background: #f8fafc !important;
}
[data-theme="light"] .fc-foot3-ri-num {
  background: linear-gradient(135deg, #16a34a 0%, #15803d 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
[data-theme="light"] .fc-foot3-ri-label {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  font-weight: 700 !important;
}

/* Brand & Description */
[data-theme="light"] .fc-foot3 .fc-foot3-logo-name {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 900 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-logo-sub {
  color: #16a34a !important;
  -webkit-text-fill-color: #16a34a !important;
  font-weight: 800 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-desc {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  font-size: 13.5px !important;
  line-height: 1.8 !important;
}

/* Headings & Underlines */
[data-theme="light"] .fc-foot3 .fc-foot3-heading {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 800 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-heading::after {
  background: linear-gradient(90deg, #16a34a, #2563eb) !important;
}

/* Navigation Links */
[data-theme="light"] .fc-foot3 .fc-foot3-links a {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  font-weight: 500 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-links a i {
  color: #16a34a !important;
  opacity: 0.7 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-links a:hover {
  color: #16a34a !important;
  -webkit-text-fill-color: #16a34a !important;
  font-weight: 700 !important;
  padding-left: 6px !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-links a:hover i {
  opacity: 1 !important;
  transform: translateX(3px) !important;
}

/* Contact Details */
[data-theme="light"] .fc-foot3 .fc-foot3-ci {
  background: #ecfdf5 !important;
  color: #16a34a !important;
  border: 1.5px solid #a7f3d0 !important;
  box-shadow: 0 2px 8px rgba(16, 185, 129, 0.12) !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-contact li:hover .fc-foot3-ci {
  background: linear-gradient(135deg, #16a34a, #15803d) !important;
  color: #ffffff !important;
  border-color: transparent !important;
  box-shadow: 0 6px 16px rgba(22, 163, 74, 0.35) !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-contact small {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
  font-weight: 700 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-contact a,
[data-theme="light"] .fc-foot3 .fc-foot3-contact span {
  color: #1e293b !important;
  -webkit-text-fill-color: #1e293b !important;
  font-weight: 600 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-contact a:hover {
  color: #16a34a !important;
  -webkit-text-fill-color: #16a34a !important;
}

/* Social Buttons */
[data-theme="light"] .fc-foot3 .fc-foot3-social a {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  color: #475569 !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05) !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-social a:hover {
  color: #ffffff !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, #16a34a, #2563eb) !important;
  transform: translateY(-3px) scale(1.06) !important;
  box-shadow: 0 8px 22px rgba(22, 163, 74, 0.3) !important;
}

/* Trust Badges */
[data-theme="light"] .fc-foot3 .fc-foot3-trust-item {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04) !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-trust-icon {
  background: #ecfdf5 !important;
  color: #16a34a !important;
  border: 1px solid #a7f3d0 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-trust-text h5 {
  color: #0f172a !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-trust-text p {
  color: #64748b !important;
}

/* Map border */
[data-theme="light"] .fc-foot3 .fc-foot3-map {
  border: 1.5px solid #e2e8f0 !important;
  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.06) !important;
}

/* Copyright Row */
[data-theme="light"] .fc-foot3 .fc-foot3-copyright {
  background: #f1f5f9 !important;
  border-top: 1px solid #e2e8f0 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-cr-inner p,
[data-theme="light"] .fc-foot3 .fc-foot3-cr-inner a {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-cr-inner a:hover {
  color: #16a34a !important;
  -webkit-text-fill-color: #16a34a !important;
}

/* Watermark in light theme */
[data-theme="light"] .fc-foot3-watermark {
  opacity: 0.05 !important;
  filter: grayscale(100%) contrast(85%) !important;
}

/* Developer credit in light theme */
[data-theme="light"] .developer-credit-wrap .dev-label {
  color: #475569 !important;
  text-shadow: none !important;
}
[data-theme="light"] .developer-credit-wrap .dev-badge-link {
  background: #ffffff !important;
  border: 1.5px solid #22c55e !important;
  box-shadow: 0 2px 10px rgba(34, 197, 94, 0.16) !important;
}
[data-theme="light"] .developer-credit-wrap .dev-badge-link:hover {
  background: #f0fdf4 !important;
  border-color: #16a34a !important;
  box-shadow: 0 4px 18px rgba(34, 197, 94, 0.3) !important;
}
[data-theme="light"] .developer-credit-wrap .dev-name {
  font-family: 'Orbitron', 'Space Grotesk', -apple-system, sans-serif !important;
}
[data-theme="light"] .developer-credit-wrap .dev-name .dev-ai {
  color: #0f172a !important;
  font-weight: 800;
}
[data-theme="light"] .developer-credit-wrap .dev-name .dev-future {
  color: #16a34a !important;
  font-weight: 800;
}
[data-theme="light"] .developer-credit-wrap .dev-name .dev-india {
  color: #0f172a !important;
  font-weight: 800;
}

/* ── FLOATING ACTION BUTTONS (WhatsApp + Scroll-Top) ── */
.fc-wa {
  position: fixed; bottom: 28px; left: 28px; z-index: 9995;
  width: 52px; height: 52px; border-radius: 50%;
  background: transparent;
  border: 2px solid rgba(37,211,102,.45);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  display: flex; align-items: center; justify-content: center;
  color: #25d366; font-size: 22px;
  text-decoration: none;
  box-shadow: 0 4px 20px rgba(37,211,102,.18);
  transition: all .32s cubic-bezier(.34,1.56,.64,1);
  overflow: hidden;
}
.fc-wa::before {
  content: '';
  position: absolute; inset: 0; border-radius: 50%;
  background: #25d366;
  transform: scale(0);
  transition: transform .32s cubic-bezier(.34,1.56,.64,1);
  z-index: -1;
}
.fc-wa:hover {
  color: #fff;
  border-color: transparent;
  transform: scale(1.16) translateY(-3px);
  box-shadow: 0 14px 36px rgba(37,211,102,.55);
}
.fc-wa:hover::before { transform: scale(1); }
/* Pulse ring on WhatsApp */
.fc-wa::after {
  content: '';
  position: absolute; inset: -6px; border-radius: 50%;
  border: 2px solid rgba(37,211,102,.35);
  animation: fcWaPulse 2.2s ease-out infinite;
}
@keyframes fcWaPulse {
  0%   { transform: scale(1);   opacity: .7; }
  100% { transform: scale(1.55); opacity: 0; }
}

.fc-totop {
  position: fixed; bottom: 92px; left: 28px; z-index: 9990;
  width: 44px; height: 44px; border-radius: 50%;
  background: transparent;
  border: 2px solid rgba(var(--p1-rgb, 34,197,94), .45);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: var(--p1); border-color: var(--p1);
  display: flex; align-items: center; justify-content: center;
  font-size: 15px; cursor: pointer;
  box-shadow: 0 4px 16px var(--p1l);
  opacity: 0; visibility: hidden;
  transition: all .32s cubic-bezier(.34,1.56,.64,1);
  overflow: hidden;
}
.fc-totop::before {
  content: '';
  position: absolute; inset: 0; border-radius: 50%;
  background: var(--g-btn);
  transform: scale(0);
  transition: transform .32s cubic-bezier(.34,1.56,.64,1);
  z-index: -1;
}
.fc-totop.show { opacity: 1; visibility: visible; }
.fc-totop:hover {
  color: #fff;
  border-color: transparent;
  transform: translateY(-4px) scale(1.1);
  box-shadow: 0 12px 32px var(--p1l);
}
.fc-totop:hover::before { transform: scale(1); }
.fc-totop i { transition: transform .2s ease; }
.fc-totop:hover i { transform: translateY(-2px); }

/* ================================================================
   RESPONSIVE — HEADER, FOOTER & HERO MOBILE ENHANCEMENTS
   ================================================================ */
@media(max-width:1200px) {
  .fc-nav-menu > li > a { padding: 8px 10px; font-size: 13px; }
  .fc-nav-menu, .fc-nav-cta { display: none !important; }
  .fc-ham { display: flex !important; }
}

@media(max-width:991px) {
  .fc-navbar { height: 72px !important; }
  .page-wrapper { padding-top: 72px !important; }
  .fc-nav-inner {
    height: 72px !important;
    padding: 0 16px !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }
  .fc-brand { margin-right: auto !important; gap: 10px !important; }
  .fc-brand-logo {
    width: 50px !important; height: 50px !important;
    min-width: 50px !important; min-height: 50px !important;
  }
  .fc-brand-name { font-size: 15px !important; }
  .fc-brand-sub { font-size: 8.5px !important; }

  /* Header Controls */
  .fc-lang-wrap { margin: 0 3px !important; }
  .fc-lang-trigger {
    padding: 5px 10px !important;
    font-size: 12px !important;
    gap: 4px !important;
  }
  .fc-lang-dropdown-menu {
    width: min(310px, 92vw) !important;
    right: -8px !important;
    top: calc(100% + 8px) !important;
  }
  .fc-theme-toggle {
    width: 38px !important; height: 38px !important;
    min-width: 38px !important; font-size: 14px !important;
  }
  .fc-ham {
    width: 38px !important; height: 38px !important;
    min-width: 38px !important; padding: 8px !important;
  }

  /* Drawer Enhancements */
  .fc-drawer { width: min(340px, 86vw) !important; max-width: 86vw !important; }
  .fc-drawer-hd { padding: 16px 18px !important; }
  .fc-drawer-close {
    width: 36px !important; height: 36px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #fff !important;
    font-size: 15px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
  }
  .fc-dm-item { padding: 12px 18px !important; font-size: 14.5px !important; }
  .fc-dm-sub a { padding: 9px 18px 9px 32px !important; font-size: 13px !important; }
  .fc-drawer-ft { padding: 14px 18px !important; gap: 10px !important; flex-direction: column !important; }
  .fc-d-login, .fc-d-donate {
    width: 100% !important; text-align: center !important;
    padding: 11px 16px !important; font-size: 13.5px !important;
    border-radius: 12px !important;
  }

  /* Footer 2-Column */
  .fc-foot3-grid { grid-template-columns: 1fr 1fr !important; gap: 32px !important; }
  .fc-foot3-ribbon { grid-template-columns: repeat(2, 1fr) !important; }
  .fc-foot3-ribbon-item:nth-child(2)::after { display: none !important; }
  .fc-nl3-inner { flex-direction: column !important; align-items: flex-start !important; }
  .fc-nl3-action { min-width: 100% !important; width: 100% !important; }
}

@media(max-width:768px) {
  .fc-foot3-grid { grid-template-columns: 1fr !important; gap: 28px !important; padding: 36px 0 28px !important; }
  .fc-foot3-ribbon { grid-template-columns: 1fr 1fr !important; }
  .fc-foot3-ribbon-item { padding: 16px 14px !important; }
  .fc-foot3-ri-num { font-size: 22px !important; }
  .fc-foot3-ri-label { font-size: 11px !important; }

  /* Footer Copyright Section */
  .fc-foot3-copyright { padding: 22px 0 26px !important; }
  .fc-foot3-cr-inner {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 14px !important;
  }
  .fc-foot3-cr-inner p { font-size: 12.5px !important; line-height: 1.5 !important; }
  .fc-foot3-cr-links {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
  }
  .fc-foot3-cr-links a { font-size: 12.5px !important; }

  /* Footer Language Switcher Mobile */
  .fc-foot-lang-wrap {
    margin: 4px auto !important;
    max-width: 250px !important;
    width: auto !important;
    padding: 3px 12px !important;
  }
  .fc-foot-lang-select { font-size: 12px !important; padding: 3px 6px !important; }

  /* Developer Credit Badge Mobile */
  .developer-credit-wrap {
    margin: 6px auto 0 !important;
    width: 100% !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
  }
  .developer-credit-wrap .dev-label { font-size: 11px !important; }
  .developer-credit-wrap .dev-badge-link { padding: 4px 12px !important; font-size: 11.5px !important; }
}

@media(max-width:480px) {
  .fc-navbar { height: 64px !important; }
  .page-wrapper { padding-top: 64px !important; }
  .fc-nav-inner {
    height: 64px !important;
    padding: 0 10px !important;
    gap: 6px !important;
  }
  .fc-brand { gap: 8px !important; }
  .fc-brand-logo {
    width: 44px !important; height: 44px !important;
    min-width: 44px !important; min-height: 44px !important;
  }
  .fc-brand-name { font-size: 13.5px !important; }
  .fc-brand-sub { font-size: 7.5px !important; }
  .fc-lang-trigger {
    padding: 4px 8px !important;
    font-size: 11px !important;
    gap: 3px !important;
  }
  .fc-lang-trigger i.fa-globe { font-size: 12px !important; }
  .fc-theme-toggle {
    width: 34px !important; height: 34px !important;
    min-width: 34px !important; font-size: 13px !important;
  }
  .fc-ham {
    width: 34px !important; height: 34px !important;
    min-width: 34px !important; padding: 7px !important;
  }

  /* Newsletter Group Mobile */
  .fc-nl3-input-group { flex-direction: column !important; border-radius: 16px !important; }
  .fc-nl3-input-group > i { display: none !important; }
  .fc-nl3-input-group input { padding: 13px 16px !important; font-size: 13px !important; }
  .fc-nl3-submit {
    width: 100% !important; justify-content: center !important;
    margin: 0 !important; border-radius: 0 0 14px 14px !important;
    padding: 12px !important; font-size: 13.5px !important;
  }
  .fc-nl3-content { min-width: unset !important; flex-direction: column !important; text-align: center !important; align-items: center !important; }
  .fc-nl3-action { min-width: unset !important; }

  /* Ribbon 2-columns on small screens */
  .fc-foot3-ribbon { grid-template-columns: 1fr 1fr !important; }
  .fc-foot3-ribbon-item { padding: 12px 10px !important; }
  .fc-foot3-ri-num { font-size: 20px !important; }
  .fc-foot3-ri-label { font-size: 10px !important; }

  /* Floating Buttons */
  .fc-wa { bottom: 16px !important; left: 12px !important; width: 42px !important; height: 42px !important; font-size: 17px !important; }
  .fc-totop { bottom: 68px !important; left: 12px !important; width: 34px !important; height: 34px !important; font-size: 12px !important; }
}

/* ================================================================
   NEWSLETTER v3 — THEME-SPECIFIC ENHANCEMENTS
   ================================================================ */

/* Fix: global input` override (in fc-theme-fix.css) breaks glassmorphism input */
.fc-nl3 .fc-nl3-input-group input,
.fc-nl3 .fc-nl3-input-group input:focus {
  background: transparent !important;
  border-color: transparent !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: none !important;
}
.fc-nl3 .fc-nl3-input-group input::placeholder {
  color: rgba(255,255,255,.42) !important;
  -webkit-text-fill-color: rgba(255,255,255,.42) !important;
}
/* Light theme — deeper, richer gradient so the section has contrast */
/* Light theme — rich emerald and royal blue gradient */
[data-theme="light"] .fc-nl3 {
  background: linear-gradient(138deg, #064e3b 0%, #15803d 32%, #1d4ed8 72%, #091024 100%);
}
[data-theme="light"] .fc-nl3-orb1 { background: rgba(74,222,128,.18); }
[data-theme="light"] .fc-nl3-orb2 { background: rgba(96,165,250,.15); }
[data-theme="light"] .fc-nl3-mesh {
  background-image:
    radial-gradient(circle at 20% 50%, rgba(255,255,255,.08) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, rgba(74,222,128,.08) 0%, transparent 40%);
}
[data-theme="light"] .fc-nl3-submit { color: #15803d !important; }

/* Dark theme — keep original but add a subtle depth glow */
[data-theme="dark"] .fc-nl3 {
  background: linear-gradient(138deg, #064e3b 0%, #16a34a 30%, #1d4ed8 70%, #1e3a8a 100%);
}

/* ================================================================
   FOOTER BRAND COLUMN — TRUST BADGES + DONATE CTA
   ================================================================ */
.fc-foot3-trust {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.fc-foot3-trust-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 13px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 12px;
  transition: background .22s, border-color .22s;
  text-decoration: none !important;
}
.fc-foot3-trust-item:hover {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.14);
}
.fc-foot3-trust-icon {
  width: 32px; height: 32px; flex-shrink: 0;
  border-radius: 8px;
  background: var(--p1l);
  color: var(--p1);
  display: flex; align-items: center; justify-content: center;
  font-size: 13px;
}
.fc-foot3-trust-text strong {
  display: block;
  font-size: 12px; font-weight: 700;
  color: rgba(255,255,255,.88);
  line-height: 1.3;
}
.fc-foot3-trust-text span {
  font-size: 11px;
  color: rgba(255,255,255,.45);
  line-height: 1.2;
}
.fc-foot3-donate-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  padding: 11px 24px;
  background: var(--g-btn);
  color: #fff !important;
  border-radius: 999px;
  font-size: 13px; font-weight: 700;
  text-decoration: none !important;
  transition: all .25s;
  box-shadow: 0 4px 18px rgba(0,0,0,.28);
  letter-spacing: .2px;
}
.fc-foot3-donate-pill:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(0,0,0,.40);
  color: #fff !important;
  text-decoration: none !important;
}
.fc-foot3-donate-pill i { font-size: 12px; }

/* ================================================================
   FOOTER LIGHT THEME — TRUST BADGES + DONATE PILL
   ================================================================ */
[data-theme="light"] .fc-foot3 .fc-foot3-trust-item {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 2px 8px rgba(15,23,42,.04) !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-trust-item:hover {
  background: #ecfdf5 !important;
  border-color: #a7f3d0 !important;
  box-shadow: 0 4px 14px rgba(22,163,74,.08) !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-trust-icon {
  background: #ecfdf5 !important;
  color: #16a34a !important;
  border: 1px solid #a7f3d0 !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-trust-text strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-trust-text span {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-donate-pill {
  background: linear-gradient(135deg, #16a34a 0%, #15803d 100%) !important;
  box-shadow: 0 6px 20px rgba(22,163,74,.35) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
[data-theme="light"] .fc-foot3 .fc-foot3-donate-pill:hover {
  box-shadow: 0 10px 32px rgba(22,163,74,.50) !important;
  transform: translateY(-3px) !important;
}

/* ================================================================
   GALLERY LIGHT THEME FIXES — Card visibility & contrast
   ================================================================ */
[data-theme="light"] .gal-main-section {
  background: #f8fafc !important;
}
[data-theme="light"] .gallery-card {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  box-shadow: 0 4px 20px rgba(15,23,42,.07) !important;
}
[data-theme="light"] .gallery-card:hover {
  border-color: #a7f3d0 !important;
  box-shadow: 0 20px 50px rgba(15,23,42,.12) !important;
}
[data-theme="light"] .card-title {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
[data-theme="light"] .card-desc {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}
[data-theme="light"] .card-media {
  background: #f1f5f9 !important;
}
[data-theme="light"] .gal-card-view {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
}
[data-theme="light"] .gallery-card:hover .gal-card-view {
  color: #ec4899 !important;
  -webkit-text-fill-color: #ec4899 !important;
}
[data-theme="light"] .gal-filter-bar {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  box-shadow: 0 4px 16px rgba(15,23,42,.05) !important;
}
[data-theme="light"] .gal-tab {
  color: #475569 !important;
  border-color: #e2e8f0 !important;
}
[data-theme="light"] .gal-tab:hover {
  color: #ec4899 !important;
  border-color: #ec4899 !important;
}
[data-theme="light"] .gal-cat-pill {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}
[data-theme="light"] .gal-cat-pill.active {
  background: #0f172a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: #0f172a !important;
}
[data-theme="light"] .gal-meta-count {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}
[data-theme="light"] .gal-meta-count strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
[data-theme="light"] .gal-view-toggle {
  background: #f1f5f9 !important;
  border-color: #e2e8f0 !important;
}
[data-theme="light"] .gal-view-btn {
  color: #475569 !important;
}
[data-theme="light"] .gal-empty {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
}
[data-theme="light"] .gal-empty h3 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
[data-theme="light"] .gal-empty p {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}
[data-theme="light"] .placeholder-media {
  background: #f1f5f9 !important;
  color: #94a3b8 !important;
}

/* ================================================================
   PARTNERS HOME SECTION — CIRCULAR LOGO HOVER EFFECT LIGHT THEME
   ================================================================ */
[data-theme="light"] .fc-partners-strip {
  background: #f8fafc !important;
}
[data-theme="light"] .fc-partner-logo-ring {
  background: #ffffff !important;
  border: 2px solid #e2e8f0 !important;
  box-shadow: 0 4px 16px rgba(15,23,42,.06) !important;
}
[data-theme="light"] .fc-partner-logo-ring:hover {
  border-color: #16a34a !important;
  box-shadow: 0 8px 28px rgba(22,163,74,.18) !important;
}

/* ================================================================
   FORMS — WATERMARK STYLES
   ================================================================ */
.form-watermark-wrapper {
  position: relative;
}
.form-watermark-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(280px, 70%);
  opacity: 0.04;
  pointer-events: none;
  user-select: none;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  filter: grayscale(100%) contrast(120%);
}
.form-watermark-bg img {
  max-width: 100%;
  height: auto;
  display: block;
}
[data-theme="light"] .form-watermark-bg {
  opacity: 0.055;
  filter: grayscale(60%) contrast(100%) brightness(0.5);
}

/* ================================================================
   NEWSLETTER SECTION LIGHT THEME ENHANCEMENTS
   ================================================================ */
[data-theme="light"] .fc-nl3 {
  background: linear-gradient(138deg, #064e3b 0%, #16a34a 35%, #1d4ed8 75%, #1e3a8a 100%) !important;
}

/* ================================================================
   UNIVERSAL FORM WATERMARK (EK NAI DISHA FOUNDATION LOGO)
   ================================================================ */
.default-form-area,
.contact-form,
.donate-form-area,
.volunteer-form-card,
.donation-form,
.membership-form-card,
.fc-card-form,
form:not(.location-area):not(.fc-nl3-form):not(.search-form):not(.fc-sb-srch):not([style*="display:inline"]):not([style*="display: inline"]):not([style*="display:none"]) {
  position: relative !important;
}

.default-form-area::before,
.donate-form-area::before,
.volunteer-form-card::before,
.donation-form::before,
.membership-form-card::before,
form:not(.location-area):not(.fc-nl3-form):not(.search-form):not(.fc-sb-srch):not([style*="display:inline"]):not([style*="display: inline"]):not([style*="display:none"])::before {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: min(340px, 72%) !important;
  height: min(340px, 72%) !important;
  aspect-ratio: 1/1 !important;
  background-image: url('../images/logo.png') !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: contain !important;
  opacity: 0.18 !important;
  pointer-events: none !important;
  z-index: 2 !important;
  filter: drop-shadow(0 2px 10px rgba(0, 0, 0, 0.12)) !important;
}

/* Prevent double watermark when form is nested inside cards */
.default-form-area form::before,
.donate-form-area form::before,
.volunteer-form-card form::before,
.donation-form form::before,
.membership-form-card form::before {
  display: none !important;
}

/* Ensure intermediate form containers don't cover the watermark */
.default-form-area,
.contact-form,
.default-form,
.default-form-area .contact-form,
form:not(.location-area):not(.fc-nl3-form):not(.search-form) .row,
form:not(.location-area):not(.fc-nl3-form):not(.search-form) .column,
form:not(.location-area):not(.fc-nl3-form):not(.search-form) .form-group {
  background-color: transparent !important;
}

[data-theme="dark"] .default-form-area::before,
[data-theme="dark"] .donate-form-area::before,
[data-theme="dark"] .volunteer-form-card::before,
[data-theme="dark"] .donation-form::before,
[data-theme="dark"] .membership-form-card::before,
[data-theme="dark"] form:not(.location-area):not(.fc-nl3-form):not(.search-form):not(.fc-sb-srch):not([style*="display:inline"]):not([style*="display: inline"]):not([style*="display:none"])::before {
  opacity: 0.22 !important;
  filter: brightness(1.3) contrast(1.15) drop-shadow(0 2px 14px rgba(0, 0, 0, 0.35)) !important;
}

/* ================================================================
   COMPLETELY HIDE GOOGLE TRANSLATE BANNER & KEEP BODY CLEAN
   ================================================================ */
.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
iframe.goog-te-banner-frame,
iframe.skiptranslate,
iframe[id*=":"][id*="container"],
iframe[src*="translate.google"],
.VIpgJd-ZVi9od-ORHb-OEVmcd,
.VIpgJd-ZVi9od-l4eHX-hSRGPd,
.VIpgJd-yAWNEb-L7lbkb,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf-ti6hGc,
#goog-gt-tt,
.goog-te-balloon-frame,
.goog-tooltip,
.goog-tooltip:hover {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0px !important;
  max-height: 0px !important;
  width: 0px !important;
  border: none !important;
  position: absolute !important;
  top: -9999px !important;
  left: -9999px !important;
  z-index: -99999 !important;
  pointer-events: none !important;
}

body > .skiptranslate,
body > div[id*=":"][id*="container"] {
  display: none !important;
  visibility: hidden !important;
  height: 0px !important;
  margin: 0px !important;
  padding: 0px !important;
}

html {
  height: 100% !important;
}
body {
  top: 0px !important;
  position: static !important;
  min-height: 100% !important;
}

.goog-text-highlight {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
#google_translate_element {
  display: none !important;
}

/* ==============================================================
   HERO BANNER ZERO-CROP RESPONSIVE ENFORCEMENT
   ============================================================== */
.fc-hero {
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}
.fc-hero .banner-slider,
.fc-hero .swiper-container,
.fc-hero .swiper-wrapper {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
.fc-hero .swiper-slide {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  display: block !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
.fc-hero-banner-link {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  line-height: 0 !important;
  text-decoration: none !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
}
.fc-hero-banner-img {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: top center !important;
  display: block !important;
  vertical-align: top !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
}