/* ============================================================
   PREMIUM DESIGN SYSTEM — Jaagrit Foundation
   Full visual upgrade: glassmorphism, gradients, animations,
   premium typography, and smooth micro-interactions.
   Loaded last so all rules take priority.
   ============================================================ */

/* ── ROOT TOKENS ─────────────────────────────────────────── */
:root {
  /* Brand */
  --p-green:     #10b981;
  --p-green-dk:  #059669;
  --p-green-lt:  #d1fae5;
  --p-navy:      #0f172a;
  --p-navy-2:    #1e293b;
  --p-navy-3:    #334155;
  --p-amber:     #f59e0b;
  --p-amber-dk:  #d97706;
  --p-red:       #ef4444;
  --p-blue:      #3b82f6;
  --p-teal:      #06b6d4;
  --p-purple:    #8b5cf6;

  /* Neutral */
  --p-white:     #ffffff;
  --p-gray-50:   #f8fafc;
  --p-gray-100:  #f1f5f9;
  --p-gray-200:  #e2e8f0;
  --p-gray-400:  #94a3b8;
  --p-gray-500:  #64748b;
  --p-gray-600:  #475569;
  --p-gray-900:  #0f172a;

  /* Shadows */
  --p-shadow-sm:  0 1px 3px rgba(15,23,42,.07), 0 1px 2px rgba(15,23,42,.06);
  --p-shadow-md:  0 4px 12px rgba(15,23,42,.10), 0 2px 4px rgba(15,23,42,.06);
  --p-shadow-lg:  0 10px 30px rgba(15,23,42,.12), 0 4px 8px rgba(15,23,42,.06);
  --p-shadow-xl:  0 20px 60px rgba(15,23,42,.15), 0 8px 20px rgba(15,23,42,.08);
  --p-shadow-2xl: 0 40px 80px rgba(15,23,42,.20);
  --p-glow-green: 0 0 30px rgba(16,185,129,.35);
  --p-glow-amber: 0 0 30px rgba(245,158,11,.35);

  /* Radius */
  --p-r-sm:  8px;
  --p-r-md:  14px;
  --p-r-lg:  20px;
  --p-r-xl:  28px;
  --p-r-2xl: 40px;

  /* Transitions */
  --p-ease:    cubic-bezier(.4, 0, .2, 1);
  --p-fast:    .18s var(--p-ease);
  --p-normal:  .30s var(--p-ease);
  --p-slow:    .55s var(--p-ease);

  /* Gradients */
  --p-grad-green:  linear-gradient(135deg, #10b981 0%, #059669 100%);
  --p-grad-amber:  linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  --p-grad-navy:   linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
  --p-grad-blue:   linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  --p-grad-mix:    linear-gradient(135deg, #10b981 0%, #3b82f6 100%);
  --p-grad-mesh:   radial-gradient(at 40% 20%, rgba(16,185,129,.08) 0px, transparent 50%),
                   radial-gradient(at 80% 0%,  rgba(59,130,246,.06) 0px, transparent 50%),
                   radial-gradient(at 0%  50%, rgba(245,158,11,.05)  0px, transparent 50%);
}

/* ── GLOBAL TYPOGRAPHY ──────────────────────────────────── */
html { scroll-behavior: smooth; }

body {
  font-family: 'Inter', 'Rubik', -apple-system, BlinkMacSystemFont, sans-serif !important;
  color: var(--p-navy-2) !important;
  background: var(--p-white) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6,
.sec-title h1, .sec-title h2 {
  font-family: 'Plus Jakarta Sans', 'Inter', 'Rubik', sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  color: var(--p-navy) !important;
  line-height: 1.15 !important;
}

p, li, td, th, label, span {
  font-family: 'Inter', 'Rubik', sans-serif !important;
}

/* Custom scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--p-gray-100); }
::-webkit-scrollbar-thumb { background: var(--p-green); border-radius: 99px; }
::-webkit-scrollbar-thumb:hover { background: var(--p-green-dk); }

/* Text selection */
::selection { background: rgba(16,185,129,.2); color: var(--p-navy); }

/* ── PAGE LOADER ─────────────────────────────────────────── */
#page-loader {
  position: fixed; inset: 0; z-index: 999999;
  display: flex; align-items: center; justify-content: center;
  background: var(--p-navy);
  transition: opacity .5s ease, visibility .5s ease;
}
#page-loader.loaded { opacity: 0; visibility: hidden; pointer-events: none; }
.loader-ring {
  width: 56px; height: 56px; border-radius: 50%;
  border: 4px solid rgba(255,255,255,.1);
  border-top-color: var(--p-green);
  animation: spin .8s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg); } }

/* Scroll progress bar */
#scroll-progress {
  position: fixed; top: 0; left: 0; height: 3px; z-index: 99998;
  background: var(--p-grad-green); width: 0%;
  transition: width .1s linear;
  box-shadow: 0 0 10px var(--p-green);
}

/* ── TOP BAR ─────────────────────────────────────────────── */
.top-bar {
  background: var(--p-navy) !important;
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
}
.top-bar .wrapper-box { padding: 9px 0 !important; }
.top-bar .contact-info li,
.top-bar .contact-info a,
.top-bar .notice-text,
.top-bar .text { color: rgba(255,255,255,.80) !important; font-size: 13px !important; }
.top-bar .contact-info a:hover,
.top-bar a:hover { color: var(--p-green) !important; }
.top-bar .social-icon-five a {
  width: 30px !important; height: 30px !important;
  background: rgba(255,255,255,.08) !important;
  border-radius: 50% !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  color: rgba(255,255,255,.75) !important;
  transition: background var(--p-fast), color var(--p-fast), transform var(--p-fast) !important;
  text-decoration: none !important;
}
.top-bar .social-icon-five a:hover {
  background: var(--p-green) !important;
  color: #fff !important;
  transform: translateY(-2px) !important;
}
.login-info li a {
  border-radius: 99px !important;
  padding: 5px 16px !important;
  font-size: 12px !important; font-weight: 600 !important;
  border: 1px solid rgba(255,255,255,.20) !important;
  color: rgba(255,255,255,.85) !important;
  transition: all var(--p-fast) !important;
}
.login-info li a:hover {
  background: var(--p-green) !important;
  border-color: var(--p-green) !important;
  color: #fff !important;
}

/* ── HEADER / NAVBAR ─────────────────────────────────────── */
.main-header {
  box-shadow: none !important;
}
.header-upper,
.main-header .header-upper.style-four {
  background: rgba(255,255,255,.97) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-bottom: 1px solid rgba(15,23,42,.07) !important;
  box-shadow: 0 2px 20px rgba(15,23,42,.06) !important;
  transition: all var(--p-normal) !important;
}

/* Sticky header */
.sticky-header {
  background: rgba(255,255,255,.97) !important;
  backdrop-filter: blur(24px) !important;
  -webkit-backdrop-filter: blur(24px) !important;
  box-shadow: 0 4px 24px rgba(15,23,42,.10) !important;
  border-bottom: 1px solid rgba(15,23,42,.06) !important;
}

/* Navigation links */
.main-menu .navigation > li > a {
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  letter-spacing: .01em !important;
  color: var(--p-navy-2) !important;
  position: relative !important;
  transition: color var(--p-fast) !important;
}
.main-menu .navigation > li > a::after {
  content: '' !important;
  position: absolute !important;
  bottom: 20px !important; left: 50% !important;
  width: 0 !important; height: 2px !important;
  background: var(--p-grad-green) !important;
  border-radius: 2px !important;
  transform: translateX(-50%) !important;
  transition: width var(--p-normal) !important;
}
.main-menu .navigation > li:hover > a::after,
.main-menu .navigation > li.current > a::after { width: 70% !important; }
.main-menu .navigation > li:hover > a,
.main-menu .navigation > li.current > a { color: var(--p-green) !important; }

/* Dropdown */
.main-menu .navigation > li > ul {
  background: rgba(255,255,255,.98) !important;
  backdrop-filter: blur(24px) !important;
  border: 1px solid rgba(15,23,42,.07) !important;
  border-radius: var(--p-r-md) !important;
  box-shadow: var(--p-shadow-xl) !important;
  padding: 8px !important;
  margin-top: 0 !important;
}
.main-menu .navigation > li > ul > li > a {
  border-radius: var(--p-r-sm) !important;
  padding: 10px 16px !important;
  font-size: 13.5px !important; font-weight: 500 !important;
  color: var(--p-navy-2) !important;
  transition: all var(--p-fast) !important;
}
.main-menu .navigation > li > ul > li:hover > a {
  background: var(--p-green-lt) !important;
  color: var(--p-green-dk) !important;
  padding-left: 22px !important;
}

/* Donate button in nav */
.link-btn .theme-btn,
.header-upper .link-btn a {
  background: var(--p-grad-green) !important;
  border: none !important;
  border-radius: 99px !important;
  padding: 11px 24px !important;
  font-size: 13px !important; font-weight: 700 !important;
  letter-spacing: .02em !important;
  box-shadow: 0 4px 20px rgba(16,185,129,.35) !important;
  transition: transform var(--p-fast), box-shadow var(--p-fast) !important;
  color: #fff !important;
}
.link-btn .theme-btn:hover,
.header-upper .link-btn a:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(16,185,129,.50) !important;
}

/* Mobile nav */
.mobile-menu .navigation li a {
  font-weight: 600 !important;
  font-family: 'Inter', sans-serif !important;
}

/* Hidden sidebar (offcanvas) */
.hidden-sidebar {
  background: rgba(255,255,255,.98) !important;
  backdrop-filter: blur(30px) !important;
}

/* ── HERO / BANNER ───────────────────────────────────────── */
.banner-section .swiper-slide,
.banner-section.style-five .swiper-slide {
  position: relative !important;
  background-size: cover !important;
  background-position: center !important;
  min-height: 620px !important;
}
.banner-section .swiper-slide::before {
  content: '' !important;
  position: absolute; inset: 0 !important;
  background: linear-gradient(100deg,
    rgba(10,20,40,.78) 0%,
    rgba(10,20,40,.45) 55%,
    rgba(10,20,40,.10) 100%) !important;
  z-index: 1 !important;
}
.banner-section .content-outer { position: relative; z-index: 2 !important; }
.banner-section .content-box .inner h1 {
  font-size: clamp(36px, 5vw, 68px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  color: #fff !important;
  text-shadow: 0 2px 20px rgba(0,0,0,.3) !important;
  letter-spacing: -0.03em !important;
}
.banner-section .content-box .inner .text {
  font-size: clamp(15px, 2vw, 19px) !important;
  color: rgba(255,255,255,.88) !important;
  line-height: 1.65 !important;
  max-width: 580px !important;
}

/* Slider nav / pagination */
.banner-slider-control {
  background: rgba(255,255,255,.12) !important;
  backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255,255,255,.25) !important;
  border-radius: 50% !important;
  width: 52px !important; height: 52px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  transition: background var(--p-fast), transform var(--p-fast) !important;
}
.banner-slider-control:hover {
  background: var(--p-green) !important;
  border-color: var(--p-green) !important;
  transform: scale(1.08) !important;
}

/* ── BUTTONS (ALL) ───────────────────────────────────────── */
.theme-btn {
  border-radius: 12px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: .02em !important;
  transition: transform var(--p-fast), box-shadow var(--p-fast), background var(--p-fast) !important;
  cursor: pointer !important;
  overflow: hidden !important;
  position: relative !important;
}
.theme-btn::before {
  content: '' !important;
  position: absolute !important; inset: 0 !important;
  background: rgba(255,255,255,.0) !important;
  transition: background var(--p-fast) !important;
}
.theme-btn:hover::before { background: rgba(255,255,255,.12) !important; }
.theme-btn:hover {
  transform: translateY(-3px) !important;
}
.theme-btn:active { transform: translateY(-1px) scale(.98) !important; }

.theme-btn.btn-style-one,
.theme-btn.btn-style-fourteen {
  background: var(--p-grad-green) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 6px 24px rgba(16,185,129,.35) !important;
}
.theme-btn.btn-style-one:hover,
.theme-btn.btn-style-fourteen:hover {
  box-shadow: 0 12px 32px rgba(16,185,129,.50) !important;
}

.theme-btn.btn-style-fifteen,
.theme-btn.btn-style-five {
  background: transparent !important;
  color: #fff !important;
  border: 2px solid rgba(255,255,255,.70) !important;
  backdrop-filter: blur(8px) !important;
}
.theme-btn.btn-style-fifteen:hover,
.theme-btn.btn-style-five:hover {
  background: rgba(255,255,255,.15) !important;
  border-color: #fff !important;
  box-shadow: 0 8px 24px rgba(255,255,255,.15) !important;
}

.theme-btn.btn-style-four,
.donate-box-btn {
  background: var(--p-grad-amber) !important;
  border: none !important;
  color: #fff !important;
  box-shadow: 0 6px 20px rgba(245,158,11,.35) !important;
}
.theme-btn.btn-style-four:hover,
.donate-box-btn:hover {
  box-shadow: 0 10px 30px rgba(245,158,11,.55) !important;
}

/* ── SEC-TITLE (section headings) ────────────────────────── */
.sec-title { position: relative; }
.sec-title h5 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: var(--p-green-lt) !important;
  color: var(--p-green-dk) !important;
  padding: 6px 18px !important;
  border-radius: 99px !important;
  font-size: 12px !important; font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  margin-bottom: 16px !important;
}
.sec-title.light h5 {
  background: rgba(255,255,255,.12) !important;
  color: rgba(255,255,255,.90) !important;
}
.sec-title h1, .sec-title h2 {
  font-size: clamp(28px, 3.5vw, 46px) !important;
  line-height: 1.1 !important;
  margin-bottom: 0 !important;
}
.sec-title .icon-box {
  display: none !important; /* Remove the redundant flaticon */
}

/* ── INTRO SECTION ───────────────────────────────────────── */
.intro-section {
  background: var(--p-white) !important;
  padding: 90px 0 !important;
}
.intro-block-one .inner-box {
  border-radius: var(--p-r-lg) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal) !important;
  background: #fff !important;
}
.intro-block-one .inner-box:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--p-shadow-xl) !important;
}
.intro-block-one .image img {
  border-radius: var(--p-r-md) var(--p-r-md) 0 0 !important;
  object-fit: cover !important;
  transition: transform .5s ease !important;
}
.intro-block-one .inner-box:hover .image img { transform: scale(1.06) !important; }
.intro-block-one .campaigns a {
  color: var(--p-green) !important;
  font-size: 12px !important; font-weight: 700 !important;
  text-transform: uppercase !important; letter-spacing: .06em !important;
}
.intro-block-one .link-btn a {
  background: var(--p-gray-50) !important;
  border: 1.5px solid var(--p-gray-200) !important;
  border-radius: 99px !important;
  padding: 9px 22px !important;
  font-size: 13px !important; font-weight: 700 !important;
  color: var(--p-navy-2) !important;
  transition: all var(--p-fast) !important;
}
.intro-block-one .link-btn a:hover {
  background: var(--p-green) !important;
  border-color: var(--p-green) !important;
  color: #fff !important;
  box-shadow: 0 4px 16px rgba(16,185,129,.35) !important;
}
.experience-block {
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  background: var(--p-grad-green) !important;
  color: #fff !important;
  padding: 48px 40px !important;
  box-shadow: 0 12px 40px rgba(16,185,129,.30) !important;
  position: relative !important;
}
.experience-block::before {
  content: '' !important;
  position: absolute !important; top: -60px !important; right: -60px !important;
  width: 200px !important; height: 200px !important;
  background: rgba(255,255,255,.08) !important; border-radius: 50% !important;
}
.experience-block .experience-years {
  font-size: 80px !important; font-weight: 900 !important; line-height: 1 !important;
  color: rgba(255,255,255,.15) !important; margin-bottom: 12px !important;
}
.experience-block h1 {
  font-size: 72px !important; font-weight: 900 !important; color: #fff !important;
  text-shadow: 0 4px 20px rgba(0,0,0,.15) !important;
}
.experience-block h4 { color: rgba(255,255,255,.85) !important; }

/* ── ABOUT SECTION ───────────────────────────────────────── */
.about-section-three {
  background: var(--p-gray-50) !important;
  background-image: var(--p-grad-mesh) !important;
}
.about-section-three .main-image-box {
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-2xl) !important;
  position: relative !important;
}
.about-section-three .main-image-box::after {
  content: '' !important;
  position: absolute !important; bottom: 0 !important; left: 0 !important; right: 0 !important;
  height: 40% !important;
  background: linear-gradient(transparent, rgba(15,23,42,.25)) !important;
  border-radius: 0 0 var(--p-r-xl) var(--p-r-xl) !important;
}

/* ── SERVICE CARDS ───────────────────────────────────────── */
.service-box, .services-section .service-box {
  background: #fff !important;
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal), border-color var(--p-normal) !important;
  position: relative !important;
}
.service-box::after {
  content: '' !important;
  position: absolute !important; inset: 0 !important;
  border-radius: var(--p-r-xl) !important;
  border: 2px solid var(--p-green) !important;
  opacity: 0 !important; transition: opacity var(--p-normal) !important;
  pointer-events: none !important;
}
.service-box:hover {
  transform: translateY(-10px) !important;
  box-shadow: var(--p-shadow-xl) !important;
  border-color: transparent !important;
}
.service-box:hover::after { opacity: 1 !important; }
.service-box .service-image { overflow: hidden !important; }
.service-box .service-image img {
  transition: transform .6s ease !important;
}
.service-box:hover .service-image img { transform: scale(1.08) !important; }

/* ── FEATURE SECTION TWO ─────────────────────────────────── */
.feature-section-two {
  background: var(--p-navy) !important;
  background-image:
    radial-gradient(at 10% 30%, rgba(16,185,129,.12) 0, transparent 50%),
    radial-gradient(at 90% 70%, rgba(59,130,246,.08) 0, transparent 50%) !important;
}
.feature-block-four .inner-box {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: var(--p-r-xl) !important;
  padding: 40px 30px !important;
  text-align: center !important;
  transition: all var(--p-normal) !important;
  position: relative !important; overflow: hidden !important;
}
.feature-block-four .inner-box:hover {
  background: rgba(255,255,255,.10) !important;
  border-color: rgba(16,185,129,.40) !important;
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 50px rgba(0,0,0,.30) !important;
}
.feature-block-four .inner-box h4 {
  color: rgba(255,255,255,.90) !important;
  font-size: 18px !important;
}
.feature-block-four .icon-box img {
  filter: brightness(0) invert(1) !important;
  opacity: .85 !important;
}
.feature-block-four .overlay {
  background: rgba(16,185,129,.95) !important;
  backdrop-filter: blur(8px) !important;
  border-radius: var(--p-r-xl) !important;
}
.feature-block-four .overlay h4 { color: #fff !important; }
.feature-block-four .overlay .text { color: rgba(255,255,255,.85) !important; }

/* ── CAUSES SECTION ──────────────────────────────────────── */
.causes-section-five {
  background: var(--p-white) !important;
  padding: 90px 0 !important;
}
.cause-block-five .inner-box {
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal) !important;
  background: #fff !important;
}
.cause-block-five .inner-box:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--p-shadow-xl) !important;
}
.cause-block-five .inner-box .image { border-radius: 0 !important; overflow: hidden !important; }
.cause-block-five .inner-box .image img {
  transition: transform .5s ease !important; width: 100% !important; object-fit: cover !important;
}
.cause-block-five .inner-box:hover .image img { transform: scale(1.07) !important; }
.cause-block-five .lower-content {
  padding: 28px !important;
}
.cause-block-five .lower-content h4 a {
  color: var(--p-navy) !important;
  font-size: 18px !important; font-weight: 800 !important;
  transition: color var(--p-fast) !important;
}
.cause-block-five .lower-content h4 a:hover { color: var(--p-green) !important; }
.donate-box-btn {
  border-radius: 99px !important;
  font-size: 13px !important; font-weight: 700 !important;
  display: inline-flex !important; align-items: center !important; gap: 6px !important;
}

/* ── COUNTER / FUNFACTS ──────────────────────────────────── */
.counter-section,
.fun-facts-section { padding: 90px 0 !important; }

.counter-block,
.counter-block-two .inner-box,
.fact-block .inner-box {
  background: linear-gradient(145deg, #fff, var(--p-gray-50)) !important;
  border-radius: var(--p-r-xl) !important;
  padding: 40px 32px !important;
  text-align: center !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal) !important;
  position: relative !important; overflow: hidden !important;
}
.counter-block:hover,
.counter-block-two .inner-box:hover,
.fact-block .inner-box:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--p-shadow-xl) !important;
  border-color: var(--p-green-lt) !important;
}
.counter-block .count-text,
.counter-block-two .count-text,
.fact-block .count-text {
  font-size: 56px !important; font-weight: 900 !important;
  background: var(--p-grad-green) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  line-height: 1 !important;
}

/* ── TESTIMONIAL ─────────────────────────────────────────── */
.testimonial-block .inner-box,
.testimonial-block-two .inner-box {
  background: var(--p-white) !important;
  border-radius: var(--p-r-xl) !important;
  box-shadow: var(--p-shadow-lg) !important;
  border: 1px solid var(--p-gray-200) !important;
  padding: 36px !important;
  position: relative !important;
}
.testimonial-block .inner-box::before {
  content: '\201C' !important;
  position: absolute !important; top: 24px !important; left: 32px !important;
  font-size: 80px !important; line-height: 1 !important;
  color: var(--p-green) !important; opacity: .12 !important;
  font-family: Georgia, serif !important;
}
.testimonial-block .quote-icon { color: var(--p-green) !important; }

/* ── TEAM SECTION ────────────────────────────────────────── */
.team-block .inner-box {
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal) !important;
  background: #fff !important;
}
.team-block .inner-box:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--p-shadow-xl) !important;
}
.team-block .image-box { overflow: hidden !important; }
.team-block .image-box img { transition: transform .5s ease !important; }
.team-block .inner-box:hover .image-box img { transform: scale(1.08) !important; }
.team-block .info-box { padding: 24px !important; border-top: 1px solid var(--p-gray-200) !important; }
.team-block .name { font-size: 18px !important; font-weight: 800 !important; color: var(--p-navy) !important; }
.team-block .designation { color: var(--p-green) !important; font-weight: 600 !important; font-size: 13px !important; }

/* ── BLOG CARDS ──────────────────────────────────────────── */
.blog-block, .news-block .inner-box {
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal) !important;
  background: #fff !important;
}
.blog-block:hover, .news-block .inner-box:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--p-shadow-xl) !important;
}
.blog-block .image-box, .news-block .image-box { overflow: hidden !important; }
.blog-block .image-box img, .news-block .image-box img {
  transition: transform .5s ease !important;
}
.blog-block:hover .image-box img,
.news-block .inner-box:hover .image-box img { transform: scale(1.07) !important; }
.blog-block .category, .news-block .category-list a {
  background: var(--p-green-lt) !important; color: var(--p-green-dk) !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;
}
.blog-block h4 a, .news-block h4 a {
  color: var(--p-navy) !important; font-weight: 800 !important;
  transition: color var(--p-fast) !important;
}
.blog-block h4 a:hover, .news-block h4 a:hover { color: var(--p-green) !important; }

/* ── FORMS ───────────────────────────────────────────────── */
.default-form input[type="text"],
.default-form input[type="email"],
.default-form input[type="tel"],
.default-form input[type="number"],
.default-form input[type="date"],
.default-form input[type="search"],
.default-form select,
.default-form textarea,
.default-form input[type="file"],
.contact-form input, .contact-form textarea, .contact-form select {
  border-radius: var(--p-r-md) !important;
  border: 1.5px solid var(--p-gray-200) !important;
  background: var(--p-white) !important;
  padding: 14px 18px !important;
  font-size: 14.5px !important;
  color: var(--p-navy-2) !important;
  transition: border-color var(--p-fast), box-shadow var(--p-fast) !important;
  box-shadow: var(--p-shadow-sm) !important;
}
.default-form input:focus,
.default-form select:focus,
.default-form textarea:focus,
.contact-form input:focus,
.contact-form textarea:focus {
  border-color: var(--p-green) !important;
  box-shadow: 0 0 0 3px rgba(16,185,129,.14) !important;
  outline: none !important;
}
.default-form input::placeholder,
.default-form textarea::placeholder,
.contact-form input::placeholder { color: var(--p-gray-400) !important; }

/* Donate amount box picks */
.donate-option li {
  border-radius: var(--p-r-md) !important;
  border: 2px solid var(--p-gray-200) !important;
  font-weight: 700 !important;
  transition: all var(--p-fast) !important;
}
.donate-option li.active,
.donate-option li:hover {
  border-color: var(--p-green) !important;
  background: var(--p-green-lt) !important;
  color: var(--p-green-dk) !important;
}

/* ── GALLERY ─────────────────────────────────────────────── */
.gallery-block .inner-box,
.gallery-block-two .inner-box {
  border-radius: var(--p-r-lg) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-md) !important;
}
.gallery-block .image-box,
.gallery-block-two .image-box { overflow: hidden !important; }
.gallery-block .image-box img,
.gallery-block-two .image-box img {
  transition: transform .5s ease !important;
}
.gallery-block:hover .image-box img,
.gallery-block-two:hover .image-box img { transform: scale(1.08) !important; }

/* ── EVENTS ──────────────────────────────────────────────── */
.event-block .inner-box {
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal) !important;
  background: #fff !important;
}
.event-block .inner-box:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--p-shadow-xl) !important;
}
.event-block .date-box {
  background: var(--p-grad-green) !important;
  border-radius: var(--p-r-md) !important;
  color: #fff !important;
  box-shadow: 0 6px 20px rgba(16,185,129,.35) !important;
}

/* ── PAGE TITLE / BREADCRUMB ────────────────────────────── */
.page-title {
  background-image: linear-gradient(100deg,rgba(15,23,42,.82) 0%,rgba(15,23,42,.50) 100%) !important;
  position: relative !important;
}
.page-title h1 {
  color: #fff !important;
  font-size: clamp(30px, 4vw, 52px) !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
}
.breadcrumb-nav li, .breadcrumb-nav li a { color: rgba(255,255,255,.80) !important; }
.breadcrumb-nav li.active { color: var(--p-green) !important; }

/* ── PAYMENT / DONATE SECTION ─────────────────────────────  */
.payment-donate-section,
.payment-donate-section-two {
  background: var(--p-navy) !important;
  background-image:
    radial-gradient(at 20% 50%, rgba(16,185,129,.15) 0, transparent 50%),
    radial-gradient(at 80% 20%, rgba(245,158,11,.10) 0, transparent 50%) !important;
}
.payment-donate-section .content-box h1,
.payment-donate-section h2,
.payment-donate-section-two h2 { color: #fff !important; }
.payment-donate-section .text { color: rgba(255,255,255,.80) !important; }

/* ── VOLUNTEER SECTION ───────────────────────────────────── */
.volunteer-section { background: var(--p-gray-50) !important; }

/* ── FAQ ─────────────────────────────────────────────────── */
.accordion-item, .faq-block .inner-box {
  border-radius: var(--p-r-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  margin-bottom: 12px !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-sm) !important;
  transition: box-shadow var(--p-fast) !important;
}
.accordion-item:hover, .faq-block .inner-box:hover {
  box-shadow: var(--p-shadow-md) !important;
  border-color: var(--p-green-lt) !important;
}
.accordion-button {
  font-weight: 700 !important;
  color: var(--p-navy) !important;
  background: #fff !important;
}
.accordion-button:not(.collapsed) {
  color: var(--p-green-dk) !important;
  background: var(--p-green-lt) !important;
  box-shadow: none !important;
}
.accordion-button:focus { box-shadow: none !important; }

/* ── FOOTER ──────────────────────────────────────────────── */
.main-footer {
  background: var(--p-navy) !important;
  background-image:
    radial-gradient(at 5%  80%, rgba(16,185,129,.09) 0, transparent 45%),
    radial-gradient(at 95% 20%, rgba(59,130,246,.07) 0, transparent 45%) !important;
  border-top: 1px solid rgba(255,255,255,.04) !important;
}
.main-footer .widget-wrapper {
  padding: 70px 0 50px !important;
  border-bottom: 1px solid rgba(255,255,255,.07) !important;
}
.main-footer .widget-title {
  font-size: 16px !important; font-weight: 800 !important;
  color: #fff !important;
  padding-bottom: 14px !important; margin-bottom: 20px !important;
  position: relative !important;
}
.main-footer .widget-title::after {
  content: '' !important;
  position: absolute !important; bottom: 0 !important; left: 0 !important;
  width: 36px !important; height: 3px !important;
  background: var(--p-grad-green) !important;
  border-radius: 99px !important;
}
.main-footer .text, .main-footer .footer-widget p {
  color: rgba(203,213,225,.80) !important;
  font-size: 14.5px !important; line-height: 1.75 !important;
}
.main-footer .link-widget-three ul li a,
.main-footer .contact-widget ul li a,
.main-footer .contact-widget ul li {
  color: rgba(203,213,225,.80) !important;
  font-size: 14px !important;
  transition: color var(--p-fast), padding-left var(--p-fast) !important;
  display: flex !important; align-items: center !important; gap: 8px !important;
  padding: 4px 0 !important;
}
.main-footer .link-widget-three ul li a:hover {
  color: var(--p-green) !important;
  padding-left: 6px !important;
}
.main-footer .contact-widget ul li a:hover { color: var(--p-green) !important; }
.main-footer .social-icon-three li a {
  width: 38px !important; height: 38px !important;
  background: rgba(255,255,255,.08) !important;
  border-radius: 50% !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  color: rgba(255,255,255,.75) !important;
  transition: background var(--p-fast), color var(--p-fast), transform var(--p-fast) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}
.main-footer .social-icon-three li a:hover {
  background: var(--p-green) !important;
  border-color: var(--p-green) !important;
  color: #fff !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 18px rgba(16,185,129,.40) !important;
}

/* Footer newsletter */
.footer-bottom-two { border-top: 1px solid rgba(255,255,255,.06) !important; }
.newsletter-one { padding: 50px 0 40px !important; }
.newsletter-one h3 {
  color: #fff !important; font-size: 28px !important; font-weight: 800 !important;
  letter-spacing: -0.02em !important;
}
.newsletter-one .text { color: rgba(203,213,225,.75) !important; font-size: 14px !important; }
.newsletter-one input[type="email"] {
  background: rgba(255,255,255,.07) !important;
  border: 1.5px solid rgba(255,255,255,.14) !important;
  border-radius: var(--p-r-md) !important;
  color: #fff !important; padding: 14px 18px !important;
  transition: border-color var(--p-fast) !important;
}
.newsletter-one input[type="email"]:focus {
  border-color: var(--p-green) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(16,185,129,.18) !important;
}
.newsletter-one input[type="email"]::placeholder { color: rgba(255,255,255,.38) !important; }
.newsletter-one .theme-btn {
  width: 100% !important;
  background: var(--p-grad-green) !important;
  border-radius: var(--p-r-md) !important;
  box-shadow: 0 6px 20px rgba(16,185,129,.35) !important;
}
.copy-right-text, .copy-right-text a {
  color: rgba(148,163,184,.75) !important;
  font-size: 13px !important;
}
.copy-right-text a:hover { color: var(--p-green) !important; }

/* ── WHATSAPP FLOAT ──────────────────────────────────────── */
.whatsapp-float {
  position: fixed !important;
  bottom: 30px !important; right: 28px !important;
  width: 58px !important; height: 58px !important;
  background: #25d366 !important;
  border-radius: 50% !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  color: #fff !important; font-size: 26px !important;
  box-shadow: 0 6px 24px rgba(37,211,102,.55) !important;
  z-index: 9990 !important;
  text-decoration: none !important;
  transition: transform var(--p-fast), box-shadow var(--p-fast) !important;
  animation: pulse-wa 2.5s ease infinite !important;
}
.whatsapp-float:hover {
  transform: scale(1.14) !important;
  box-shadow: 0 10px 36px rgba(37,211,102,.70) !important;
  color: #fff !important;
  animation: none !important;
}
@keyframes pulse-wa {
  0%, 100% { box-shadow: 0 6px 24px rgba(37,211,102,.55); }
  50%       { box-shadow: 0 6px 40px rgba(37,211,102,.80); }
}

/* ── SCROLL TO TOP ───────────────────────────────────────── */
.scroll-to-top {
  background: var(--p-grad-green) !important;
  border-radius: 50% !important;
  width: 46px !important; height: 46px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  box-shadow: 0 6px 20px rgba(16,185,129,.40) !important;
  transition: transform var(--p-fast), box-shadow var(--p-fast) !important;
}
.scroll-to-top:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 28px rgba(16,185,129,.55) !important;
}
.scroll-to-top span { color: #fff !important; }

/* ── CAUSE PROGRESS BARS ─────────────────────────────────── */
.progress-bar-outer { border-radius: 99px !important; background: var(--p-gray-200) !important; height: 8px !important; }
.progress-bar-inner { border-radius: 99px !important; background: var(--p-grad-green) !important; }

/* ── OWL CAROUSEL DOTS ───────────────────────────────────── */
.owl-dots .owl-dot span {
  background: var(--p-gray-200) !important;
  border-radius: 99px !important;
  transition: all var(--p-fast) !important;
  width: 10px !important; height: 10px !important;
}
.owl-dots .owl-dot.active span,
.owl-dots .owl-dot:hover span {
  background: var(--p-green) !important;
  width: 28px !important;
}

/* ── POPUP DONATE ────────────────────────────────────────── */
.donate-popup .popup-content,
.donate-popup .inner-box {
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-2xl) !important;
}

/* ── PAGE-TITLE BADGES ────────────────────────────────────── */
.breadcrumb-outer .breadcrumb-wrap li,
.breadcrumb-outer li a {
  font-size: 13.5px !important; font-weight: 600 !important;
}

/* ── CARD GLASS HERO OVERLAY ─────────────────────────────── */
.glass-card {
  background: rgba(255,255,255,.70) !important;
  backdrop-filter: blur(24px) !important;
  -webkit-backdrop-filter: blur(24px) !important;
  border: 1px solid rgba(255,255,255,.55) !important;
  border-radius: var(--p-r-xl) !important;
  box-shadow: var(--p-shadow-lg) !important;
}

/* ── MOBILE MENU BUTTON ──────────────────────────────────── */
.anim-menu-btn__icon,
.anim-menu-btn__icon::before,
.anim-menu-btn__icon::after { background: var(--p-navy) !important; }

/* ── FANCYBOX / LIGHTBOX ─────────────────────────────────── */
.fancybox-bg { background: var(--p-navy) !important; }

/* ── SELECTION HIGHLIGHT ─────────────────────────────────── */
::selection { background: rgba(16,185,129,.20) !important; color: var(--p-navy) !important; }

/* ── UTILITY CLASSES ─────────────────────────────────────── */
.text-gradient-green {
  background: var(--p-grad-green) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
.badge-green {
  background: var(--p-green-lt) !important;
  color: var(--p-green-dk) !important;
  border-radius: 99px !important; padding: 4px 14px !important;
  font-size: 12px !important; font-weight: 700 !important;
}
.badge-amber {
  background: rgba(245,158,11,.12) !important;
  color: var(--p-amber-dk) !important;
  border-radius: 99px !important; padding: 4px 14px !important;
  font-size: 12px !important; font-weight: 700 !important;
}

/* ── ANIMATIONS ──────────────────────────────────────────── */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(28px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}
@keyframes float {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-10px); }
}
@keyframes shimmer {
  0%   { background-position: -200% 0; }
  100% { background-position:  200% 0; }
}

.animate-fadeup {
  animation: fadeUp .6s var(--p-ease) both;
}
.animate-float { animation: float 4s ease-in-out infinite; }

/* Entrance animations for in-view elements */
[data-wow-delay] { opacity: 0; }
.animated { opacity: 1 !important; }

/* ── DONATE / VOLUNTEER RECEIPT ──────────────────────────── */
.receipt-wrapper,
.certificate-wrapper {
  background: #fff !important;
  border-radius: var(--p-r-xl) !important;
  box-shadow: var(--p-shadow-xl) !important;
  border: 1px solid var(--p-gray-200) !important;
  overflow: hidden !important;
}
.receipt-header {
  background: var(--p-grad-green) !important;
  padding: 32px !important;
  position: relative !important;
}
.receipt-header h2 { color: #fff !important; }

/* ── DASHBOARD ───────────────────────────────────────────── */
.dashboard-card {
  border-radius: var(--p-r-xl) !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal) !important;
  background: #fff !important;
  overflow: hidden !important;
}
.dashboard-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: var(--p-shadow-xl) !important;
}

/* ── ADMIN PANEL ─────────────────────────────────────────── */
.admin-card {
  border-radius: var(--p-r-lg) !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  background: #fff !important;
  overflow: hidden !important;
}
.admin-table { border-radius: var(--p-r-lg) !important; overflow: hidden !important; }
.admin-table th {
  background: var(--p-navy) !important;
  color: rgba(255,255,255,.85) !important;
  font-weight: 700 !important; font-size: 13px !important;
  text-transform: uppercase !important; letter-spacing: .05em !important;
  padding: 14px 18px !important;
}
.admin-table td { padding: 13px 18px !important; vertical-align: middle !important; }
.admin-table tr:hover td { background: var(--p-gray-50) !important; }

/* ── IMPACT COUNTER SECTION ──────────────────────────────── */
.counter-section-two {
  background: var(--p-navy) !important;
  background-image:
    radial-gradient(at 0%   50%, rgba(16,185,129,.18) 0, transparent 45%),
    radial-gradient(at 100% 50%, rgba(245,158,11,.10) 0, transparent 45%) !important;
  padding: 90px 0 !important;
}
.counter-section-two .count-text {
  color: #fff !important;
  font-size: 60px !important; font-weight: 900 !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
}
.counter-section-two .counter-label {
  color: rgba(255,255,255,.70) !important;
  font-size: 14px !important; font-weight: 600 !important;
  text-transform: uppercase !important; letter-spacing: .08em !important;
}
.counter-section-two .counter-block {
  background: rgba(255,255,255,.05) !important;
  border-color: rgba(255,255,255,.08) !important;
}
.counter-section-two .counter-block:hover {
  background: rgba(255,255,255,.10) !important;
  border-color: rgba(16,185,129,.35) !important;
}

/* ── RESPONSIVE FIXES ────────────────────────────────────── */
@media (max-width: 991px) {
  h1, .sec-title h1 { font-size: clamp(26px, 5vw, 40px) !important; }
  .experience-block { padding: 36px 28px !important; }
  .service-box, .cause-block-five .inner-box,
  .blog-block, .event-block .inner-box { margin-bottom: 24px; }
}
@media (max-width: 767px) {
  .whatsapp-float { bottom: 24px !important; right: 18px !important; width: 52px !important; height: 52px !important; }
  .newsletter-one h3 { font-size: 22px !important; }
  .banner-section .content-box .inner h1 { font-size: clamp(28px, 7vw, 44px) !important; }
  .counter-block .count-text,
  .counter-block-two .count-text  { font-size: 44px !important; }
}
@media (max-width: 480px) {
  .main-footer .widget-wrapper { padding: 50px 0 30px !important; }
  .theme-btn { padding: 12px 24px !important; font-size: 14px !important; }
}

/* ── PRINT STYLES ────────────────────────────────────────── */
@media print {
  #page-loader, #scroll-progress, .whatsapp-float,
  .scroll-to-top, .main-header, .top-bar,
  .mobile-menu, .hidden-sidebar { display: none !important; }
}

/* ── PAYMENT-DONATE SECTION THREE ────────────────────────── */
.payment-donate-section-three {
  background: var(--p-navy) !important;
  background-image:
    radial-gradient(at 15% 60%, rgba(16,185,129,.18) 0, transparent 50%),
    radial-gradient(at 85% 30%, rgba(245,158,11,.12) 0, transparent 50%) !important;
  padding: 90px 0 !important;
  position: relative !important;
  overflow: hidden !important;
}
.payment-donate-section-three::before {
  content: '' !important;
  position: absolute !important; inset: 0 !important;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='30' cy='30' r='1' fill='rgba(255,255,255,0.03)'/%3E%3C/svg%3E") !important;
  pointer-events: none !important;
}
.payment-donate-section-three .sec-bg-one,
.payment-donate-section-three .sec-bg-two { display: none !important; }
.payment-donate-section-three h1,
.payment-donate-section-three h2 { color: #fff !important; font-size: 40px !important; }
.payment-donate-section-three .info-box a { color: var(--p-green) !important; font-weight: 700 !important; }
.payment-donate-section-three .wrapper-box {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: var(--p-r-2xl) !important;
  padding: 48px !important;
  backdrop-filter: blur(20px) !important;
}
.chicklet-list { list-style: none !important; padding: 0 !important; margin: 0 0 20px !important; display: flex !important; flex-wrap: wrap !important; gap: 12px !important; }
.chicklet-list label {
  background: rgba(255,255,255,.08) !important;
  border: 2px solid rgba(255,255,255,.18) !important;
  color: rgba(255,255,255,.85) !important;
  border-radius: var(--p-r-md) !important;
  padding: 12px 22px !important;
  font-size: 16px !important; font-weight: 800 !important;
  cursor: pointer !important;
  transition: all var(--p-fast) !important;
  display: block !important;
}
.chicklet-list input[type=radio]:checked + label,
.chicklet-list label:hover {
  background: var(--p-green) !important;
  border-color: var(--p-green) !important;
  color: #fff !important;
  box-shadow: 0 4px 18px rgba(16,185,129,.40) !important;
}
.payment-donate-section-three .other-amount .form-group input {
  background: rgba(255,255,255,.08) !important;
  border: 2px solid rgba(255,255,255,.18) !important;
  border-radius: var(--p-r-md) !important;
  color: #fff !important; padding: 14px 18px !important;
  transition: border-color var(--p-fast) !important;
}
.payment-donate-section-three .other-amount .form-group input:focus {
  border-color: var(--p-green) !important;
  outline: none !important;
}
.payment-donate-section-three .bar-innner { border-radius: 99px !important; }
.payment-donate-section-three .bar-fill { border-radius: 99px !important; background: var(--p-grad-green) !important; }
.payment-donate-section-three .default-video-box {
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-2xl) !important;
  position: relative !important;
}
.payment-donate-section-three .default-video-box .overlay-link {
  background: rgba(16,185,129,.80) !important;
  border-radius: 50% !important;
  width: 80px !important; height: 80px !important;
  transition: transform var(--p-fast), background var(--p-fast) !important;
}
.payment-donate-section-three .default-video-box .overlay-link:hover {
  transform: scale(1.12) !important;
  background: var(--p-green) !important;
}

/* ── GALLERY SECTION TWO ─────────────────────────────────── */
.gallery-section-two {
  background: var(--p-navy) !important;
  padding: 0 !important;
}
.gallery-section-two .content-column { padding: 60px 50px !important; }
.gallery-section-two .sec-title.light h1 { color: #fff !important; }
.gallery-section-two .link-btn a {
  color: rgba(255,255,255,.75) !important;
  font-weight: 700 !important; font-size: 14px !important;
  letter-spacing: .04em !important;
  transition: color var(--p-fast) !important;
  text-decoration: none !important;
}
.gallery-section-two .link-btn a:hover { color: var(--p-green) !important; }
.gallery-block-two .inner-box { border-radius: 0 !important; overflow: hidden !important; position: relative !important; }
.gallery-block-two .inner-box .image { overflow: hidden !important; }
.gallery-block-two .inner-box .image img {
  width: 100% !important; display: block !important;
  transition: transform .6s ease !important;
}
.gallery-block-two .inner-box:hover .image img { transform: scale(1.10) !important; }
.gallery-block-two .inner-box .overlay {
  background: rgba(16,185,129,.85) !important;
  backdrop-filter: blur(4px) !important;
}
.gallery-block-two .caption-title {
  background: rgba(15,23,42,.88) !important;
  backdrop-filter: blur(12px) !important;
}
.gallery-block-two .caption-title span {
  color: var(--p-green) !important;
  font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .08em !important;
}
.gallery-block-two .caption-title h4 a { color: #fff !important; font-weight: 700 !important; }

/* ── TESTIMONIAL SECTION THREE ───────────────────────────── */
.testimonial-section-three {
  background: var(--p-gray-50) !important;
  background-image: var(--p-grad-mesh) !important;
  padding: 90px 0 !important;
}
.testimonial-block-three .inner-box {
  background: #fff !important;
  border-radius: var(--p-r-xl) !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  padding: 36px !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal) !important;
  position: relative !important;
}
.testimonial-block-three .inner-box::before {
  content: '\201C' !important;
  position: absolute !important; top: 20px !important; left: 28px !important;
  font-size: 90px !important; line-height: 1 !important;
  color: var(--p-green) !important; opacity: .10 !important;
  font-family: Georgia, serif !important;
}
.testimonial-block-three .inner-box:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--p-shadow-xl) !important;
}
.testimonial-block-three .top-content h4 { color: var(--p-navy) !important; font-weight: 800 !important; }
.testimonial-block-three .text { color: var(--p-gray-500) !important; line-height: 1.75 !important; }
.testimonial-block-three .author-title { font-weight: 800 !important; color: var(--p-navy) !important; }
.testimonial-block-three .designation { color: var(--p-green) !important; font-size: 13px !important; font-weight: 600 !important; }
.testimonial-block-three .quote span { color: var(--p-green) !important; font-size: 28px !important; }

/* ── CLIENT / PARTNERS SECTION ───────────────────────────── */
.client-section {
  background: var(--p-white) !important;
  padding: 70px 0 !important;
  border-top: none !important;
}
.client-section .sponsors-carousel .image img {
  filter: grayscale(60%) !important;
  opacity: .75 !important;
  transition: filter var(--p-normal), opacity var(--p-normal), transform var(--p-normal) !important;
}
.client-section .sponsors-carousel .image:hover img {
  filter: grayscale(0%) !important;
  opacity: 1 !important;
  transform: scale(1.06) !important;
}
.client-section .text-two { color: var(--p-gray-500) !important; margin-top: 30px !important; font-size: 14px !important; }
.client-section .text-two a { color: var(--p-green) !important; font-weight: 600 !important; }

/* ── CALL-TO-ACTION ──────────────────────────────────────── */
.call-to-action-two {
  background-size: cover !important;
  background-position: center !important;
  position: relative !important;
  padding: 100px 0 !important;
}
.call-to-action-two::before {
  content: '' !important;
  position: absolute !important; inset: 0 !important;
  background: linear-gradient(135deg, rgba(15,23,42,.88) 0%, rgba(16,185,129,.55) 100%) !important;
}
.call-to-action-two .auto-cntainer { position: relative !important; z-index: 2 !important; }
.call-to-action-two h5 {
  color: rgba(255,255,255,.80) !important;
  font-size: 14px !important; letter-spacing: .12em !important;
  text-transform: uppercase !important;
}
.call-to-action-two h1 {
  color: #fff !important;
  font-size: clamp(30px, 4vw, 52px) !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
  margin: 12px 0 !important;
  text-shadow: 0 2px 20px rgba(0,0,0,.2) !important;
}
.call-to-action-two .text {
  color: rgba(255,255,255,.75) !important;
  font-size: 16px !important; line-height: 1.7 !important;
  max-width: 600px !important; margin: 0 auto 30px !important;
}
.call-to-action-two .link-btn a {
  background: var(--p-grad-green) !important;
  border: none !important;
  border-radius: 99px !important;
  padding: 16px 44px !important;
  font-size: 16px !important; font-weight: 800 !important;
  box-shadow: 0 8px 30px rgba(16,185,129,.45) !important;
  color: #fff !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: transform var(--p-fast), box-shadow var(--p-fast) !important;
}
.call-to-action-two .link-btn a:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 14px 40px rgba(16,185,129,.60) !important;
}

/* ── TEAM SECTION FIVE ───────────────────────────────────── */
.team-section-five {
  background: var(--p-gray-50) !important;
  background-image: var(--p-grad-mesh) !important;
  padding: 90px 0 !important;
}
.team-block-five .inner-box {
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal) !important;
  background: #fff !important;
}
.team-block-five .inner-box:hover {
  transform: translateY(-10px) !important;
  box-shadow: var(--p-shadow-xl) !important;
}
.team-block-five .image { overflow: hidden !important; }
.team-block-five .image img { transition: transform .5s ease !important; }
.team-block-five .inner-box:hover .image img { transform: scale(1.07) !important; }
.team-block-five .lower-content h4 a { color: var(--p-navy) !important; font-weight: 800 !important; transition: color var(--p-fast) !important; }
.team-block-five .lower-content h4 a:hover { color: var(--p-green) !important; }
.team-block-five .designation { color: var(--p-green) !important; font-size: 13px !important; font-weight: 600 !important; }
.team-block-five .overlay-content {
  background: var(--p-grad-navy) !important;
  backdrop-filter: blur(12px) !important;
}
.team-block-five .overlay-content h4 a { color: #fff !important; }
.team-block-five .overlay-content .designation { color: var(--p-green) !important; }
.team-block-five .social-icon-six li a {
  background: rgba(255,255,255,.10) !important;
  border-radius: 50% !important;
  width: 36px !important; height: 36px !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  color: rgba(255,255,255,.80) !important;
  transition: background var(--p-fast), color var(--p-fast), transform var(--p-fast) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}
.team-block-five .social-icon-six li a:hover {
  background: var(--p-green) !important; border-color: var(--p-green) !important;
  color: #fff !important; transform: translateY(-2px) !important;
}

/* ── BLOG SECTION STYLE TWO ──────────────────────────────── */
.blog-section.style-two { background: #fff !important; padding: 90px 0 !important; }
.news-block-one .inner-box {
  background: #fff !important;
  border-radius: var(--p-r-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--p-shadow-md) !important;
  border: 1px solid var(--p-gray-200) !important;
  transition: transform var(--p-normal), box-shadow var(--p-normal) !important;
}
.news-block-one .inner-box:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--p-shadow-xl) !important;
}
.news-block-one .image { overflow: hidden !important; }
.news-block-one .image img { transition: transform .5s ease !important; }
.news-block-one .inner-box:hover .image img { transform: scale(1.07) !important; }
.news-block-one .category a {
  background: var(--p-green-lt) !important;
  color: var(--p-green-dk) !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;
  text-decoration: none !important;
}
.news-block-one .date { color: var(--p-gray-400) !important; font-size: 12px !important; font-weight: 600 !important; }
.news-block-one .lower-content h4 a { color: var(--p-navy) !important; font-weight: 800 !important; transition: color var(--p-fast) !important; }
.news-block-one .lower-content h4 a:hover { color: var(--p-green) !important; }
.news-block-one .lower-content { padding: 24px !important; }

/* ── INTRO SECTION EXPERIENCE ────────────────────────────── */
.intro-section .top-content > .row > .col-lg-6:last-child {
  padding: 24px 32px !important;
}
.intro-section .top-content a {
  color: var(--p-green) !important; font-weight: 700 !important;
  font-size: 14px !important; text-decoration: none !important;
  display: inline-flex !important; align-items: center !important; gap: 8px !important;
  transition: gap var(--p-fast) !important;
}
.intro-section .top-content a:hover { gap: 14px !important; }
.intro-section .top-content .text {
  color: var(--p-gray-500) !important; font-size: 16px !important; line-height: 1.8 !important;
}

/* ── MARQUEE PREMIUM STYLE ───────────────────────────────── */
.religious-marquee {
  position: relative !important;
}
.religious-marquee::after {
  content: '' !important;
  position: absolute !important; bottom: 0 !important; left: 0 !important; right: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.25), transparent) !important;
}

/* ── WELCOME POPUP (premium style) ───────────────────────── */
#welcomePopup .popup-content {
  border-radius: var(--p-r-2xl) !important;
  box-shadow: var(--p-shadow-2xl) !important;
}

/* ── ALERT / FLASH MESSAGES ──────────────────────────────── */
.alert { border-radius: var(--p-r-md) !important; font-size: 14px !important; }
.alert-success { border-left: 4px solid #10b981 !important; }
.alert-danger  { border-left: 4px solid #ef4444 !important; }
.alert-info    { border-left: 4px solid #3b82f6 !important; }

/* ── LOADER (preloader override) ─────────────────────────── */
.loader-wrap {
  background: var(--p-navy) !important;
  display: none !important; /* replaced by #page-loader */
}
.preloader.style-four {
  border-color: rgba(255,255,255,.10) !important;
  border-top-color: var(--p-green) !important;
}
.layer { background: var(--p-navy) !important; }

