/*
 * Monouara Foundation — Main Theme CSS
 * Modern, polished, responsive Islamic charity design.
 *
 * @package monouara-foundation
 */

/* =====================================================================
   0. FONTS & BASE
   ===================================================================== */
body {
	font-family: 'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif;
	font-size: 16px;
	line-height: 1.7;
	color: #1a2a1a;
	background-color: #ffffff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Playfair Display', 'Georgia', serif;
	font-weight: 700;
	color: #1a2a1a;
	line-height: 1.3;
}

a {
	color: #2E7D32;
	text-decoration: none;
	transition: color 0.25s ease;
}

a:hover { color: #1B5E20; }

img { max-width: 100%; height: auto; }

*,
*::before,
*::after { box-sizing: border-box; }

/* Image placeholder (used when no featured image is set) */
.mf-img-placeholder {
	width: 100%;
	height: 100%;
	min-height: 200px;
	background: linear-gradient(135deg, #1B5E20 0%, #2E7D32 100%);
	display: block;
}
.mf-img-placeholder--about {
	min-height: 400px;
	border-radius: 16px;
}

/* =====================================================================
   1b. LANGUAGE RIBBON (single toggle: EN ↔ বাংলা)
   ===================================================================== */

/* Hide Google Translate's own toolbar & banner completely */
.goog-te-banner-frame,
.skiptranslate,
#goog-gt-tt,
.goog-te-balloon-frame,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf { display: none !important; }
body { top: 0 !important; }

/* Header container is the ribbon's positioned parent */
.mf-header .container {
	position: relative !important;
	overflow: visible !important;
}

/* Ribbon hangs below the header's bottom edge */
.mf-translate-ribbon {
	position: absolute !important;
	bottom: -34px !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	z-index: 9998 !important;
	width: auto !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	white-space: nowrap !important;
	pointer-events: auto !important;
	transition: opacity 0.3s ease, transform 0.3s ease !important;
}

.mf-translate-ribbon.mf-hidden {
	opacity: 0 !important;
	pointer-events: none !important;
	transform: translateX(-50%) translateY(-6px) !important;
}

/* The ribbon button */
.mf-translate-ribbon {
	pointer-events: auto;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	background: #2E7D32;  /* always green */
	color: #ffffff;
	border: none;
	padding: 7px 20px 9px;
	font-family: 'Inter', sans-serif;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.4px;
	cursor: pointer;
	border-radius: 0 0 10px 10px;
	box-shadow: 0 4px 16px rgba(46,125,50,0.4);
	transition: background 0.22s, transform 0.2s;
	line-height: 1.3;
	white-space: nowrap;
}

.mf-translate-ribbon i { font-size: 0.78rem; opacity: 0.85; }

.mf-translate-ribbon:hover {
	background: #1B5E20;
	transform: translateY(2px);
}

/* is-bn: still green — no colour change */
.mf-translate-ribbon.is-bn { background: #2E7D32; }
.mf-translate-ribbon.is-bn:hover { background: #1B5E20; }

/* =====================================================================
   1. NAVIGATION / HEADER
   ===================================================================== */

/* Sticky glass nav */
.site-header,
#masthead,
header.site-header {
	position: sticky !important;
	top: 0 !important;
	z-index: 1000 !important;
	background: rgba(255, 255, 255, 0.96) !important;
	backdrop-filter: blur(12px) !important;
	-webkit-backdrop-filter: blur(12px) !important;
	border-bottom: 1px solid rgba(46, 125, 50, 0.12) !important;
	box-shadow: 0 2px 20px rgba(0, 0, 0, 0.06) !important;
	transition: background 0.3s ease, box-shadow 0.3s ease !important;
}

/* Toolbar is fixed with z-index above the header; without this offset the navbar sits under it */
.admin-bar #masthead,
.admin-bar header#masthead.mf-header {
	top: 32px !important;
}
@media screen and (max-width: 782px) {
	.admin-bar #masthead,
	.admin-bar header#masthead.mf-header {
		top: 46px !important;
	}
}
/* WP sets #wpadminbar to position:absolute ≤600px so it scrolls off; sticky top:46px then leaves a gap
   and layout feels broken. Keep the toolbar fixed so it matches the sticky offset above. */
@media screen and (max-width: 600px) {
	body.admin-bar #wpadminbar {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
	}
}

/* Logo */
.navbar-brand,
.site-branding a,
.custom-logo-link {
	font-family: 'Playfair Display', serif !important;
	font-weight: 800 !important;
	font-size: 1.5rem !important;
	color: #2E7D32 !important;
	text-decoration: none !important;
}

.custom-logo {
	max-height: 52px !important;
	width: auto !important;
}

/* Nav links */
.navbar-nav .nav-link,
.main-navigation ul li a,
.primary-menu li a {
	font-family: 'Inter', sans-serif !important;
	font-weight: 500 !important;
	font-size: 0.92rem !important;
	color: #2a3a2a !important;
	padding: 8px 14px !important;
	border-radius: 6px !important;
	transition: color 0.2s, background-color 0.2s !important;
	letter-spacing: 0.2px !important;
}

.navbar-nav .nav-link:hover,
.main-navigation ul li a:hover,
.primary-menu li a:hover,
.navbar-nav .nav-link:focus {
	color: #2E7D32 !important;
	background-color: rgba(46, 125, 50, 0.08) !important;
}

.navbar-nav .nav-link.active,
.main-navigation ul li.current-menu-item a,
.primary-menu li.current-menu-item a {
	color: #2E7D32 !important;
	font-weight: 600 !important;
}

/* CTA "Donate" in nav (last nav item) */
.navbar-nav li:last-child .nav-link,
.primary-menu li:last-child a {
	background-color: #2E7D32 !important;
	color: #ffffff !important;
	padding: 8px 20px !important;
	border-radius: 8px !important;
	font-weight: 600 !important;
	margin-left: 8px !important;
}

.navbar-nav li:last-child .nav-link:hover,
.primary-menu li:last-child a:hover {
	background-color: #1B5E20 !important;
	color: #ffffff !important;
}

/* Mobile toggle */
.navbar-toggler {
	border: 1.5px solid #2E7D32 !important;
	border-radius: 6px !important;
	padding: 6px 10px !important;
}

.navbar-toggler-icon {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%232E7D32' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

/* Dropdown menus */
.navbar-nav .dropdown-menu {
	border: none !important;
	border-radius: 12px !important;
	box-shadow: 0 8px 40px rgba(0, 0, 0, 0.12) !important;
	padding: 8px !important;
	background: #ffffff !important;
}

.navbar-nav .dropdown-item {
	font-size: 0.9rem !important;
	border-radius: 6px !important;
	padding: 8px 14px !important;
	color: #2a3a2a !important;
	transition: background-color 0.2s !important;
}

.navbar-nav .dropdown-item:hover {
	background-color: rgba(46, 125, 50, 0.08) !important;
	color: #2E7D32 !important;
}

/* =====================================================================
   2. HERO / SLIDER SECTION — Custom vanilla JS slider
   ===================================================================== */

.mf-hero-section,
#slider { position: relative; }

/* Slider container */
.mf-slider {
	position: relative;
	overflow: hidden;
	background: #0d1f0d;
}

/* Track */
.mf-slider__track { position: relative; }

/* Each slide */
.mf-slider__slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 0.9s ease;
	z-index: 1;
}

.mf-slider__slide.is-active {
	position: relative;  /* drives container height */
	opacity: 1;
	z-index: 2;
}

/* Hero image */
.mf-hero-img,
#slider .mf-hero-img {
	width: 100%;
	height: 640px;
	object-fit: cover;
	display: block;
}

/* Gradient overlay */
.mf-hero-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(
		135deg,
		rgba(27, 94, 32, 0.78) 0%,
		rgba(10, 30, 10, 0.55) 50%,
		rgba(0, 0, 0, 0.35) 100%
	);
	z-index: 1;
}

/* Caption — full-slide overlay, centered via flex */
.mf-hero-caption {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 40px 20px;
}

/* Bismillah text */
.mf-bismillah {
	display: block;
	font-size: 2rem;
	color: #F0D080;
	font-family: 'Scheherazade New', 'Traditional Arabic', 'Amiri', serif;
	margin-bottom: 16px;
	direction: rtl;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
	letter-spacing: 2px;
	line-height: 1.6;
}

.mf-hero-heading,
#slider .slider-title,
.slider-title {
	font-family: 'Playfair Display', serif !important;
	color: #ffffff !important;
	font-size: 3rem !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	margin-bottom: 18px !important;
	text-shadow: 0 3px 16px rgba(0, 0, 0, 0.4) !important;
}

.mf-hero-location {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: rgba(0, 0, 0, 0.38);
	border: 1px solid rgba(255, 255, 255, 0.14);
	color: rgba(255, 255, 255, 0.92);
	font-family: 'Inter', sans-serif;
	font-size: 0.8125rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	padding: 8px 14px;
	border-radius: 8px;
	margin-bottom: 24px;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	box-shadow: none;
}
.mf-hero-location i {
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.72rem;
}

.mf-hero-sub,
#slider .slider-excerpt,
.slider-excerpt {
	color: rgba(255, 255, 255, 0.9) !important;
	font-size: 1.1rem !important;
	margin-bottom: 36px !important;
	line-height: 1.7 !important;
	font-family: 'Inter', sans-serif !important;
}

/* Hero CTA button */
.mf-btn-hero {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	background-color: #C9A84C !important;
	color: #1a1a1a !important;
	padding: 11px 28px !important;
	border-radius: 8px !important;
	font-family: 'Inter', sans-serif !important;
	font-weight: 700 !important;
	font-size: 0.88rem !important;
	letter-spacing: 0.4px !important;
	text-decoration: none !important;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25) !important;
	transition: background-color 0.25s, transform 0.2s, box-shadow 0.25s !important;
}

.mf-btn-hero:hover {
	background-color: #b8972e !important;
	color: #1a1a1a !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28) !important;
}

/* ── Slider Arrows ───────────────────────────────────────────────── */

.mf-slider__prev,
.mf-slider__next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	width: 50px;
	height: 50px;
	background: rgba(255, 255, 255, 0.16);
	border: 1.5px solid rgba(255, 255, 255, 0.35);
	border-radius: 50%;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	box-shadow: 0 2px 14px rgba(0, 0, 0, 0.25);
	transition: background 0.25s, border-color 0.25s, transform 0.22s;
}

.mf-slider__prev { left: 24px; }
.mf-slider__next { right: 24px; }

.mf-slider__prev:hover,
.mf-slider__next:hover {
	background: rgba(46, 125, 50, 0.8);
	border-color: transparent;
	transform: translateY(-50%) scale(1.1);
}

.mf-slider__prev i,
.mf-slider__next i {
	font-size: 0.9rem;
	color: #fff;
}

/* ── Slider Bar Indicators ───────────────────────────────────────── */

.mf-slider__indicators {
	position: absolute;
	bottom: 26px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 10;
	display: flex;
	align-items: center;
	gap: 7px;
}

.mf-slider__dot {
	width: 28px;
	height: 4px;
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.38);
	border: none;
	padding: 0;
	cursor: pointer;
	transition: width 0.35s ease, background-color 0.35s ease;
}

.mf-slider__dot.is-active {
	width: 52px;
	background: #C9A84C;
}

.mf-slider__dot:hover:not(.is-active) {
	background: rgba(255, 255, 255, 0.65);
}

/* Static hero fallback (no images configured) */
.mf-hero-static .mf-slider__slide {
	min-height: 560px;
	background: linear-gradient(135deg, #1B5E20 0%, #2E7D32 60%, #1a3a1a 100%);
}

/* Carousel controls */
#slider .carousel-control-prev,
#slider .carousel-control-next,
.mf-hero-section .carousel-control-prev,
.mf-hero-section .carousel-control-next {
	width: 52px !important;
	height: 52px !important;
	background: rgba(255, 255, 255, 0.15) !important;
	border: 1.5px solid rgba(255, 255, 255, 0.35) !important;
	border-radius: 50% !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	opacity: 1 !important;
	backdrop-filter: blur(4px) !important;
	transition: background 0.25s !important;
}

#slider .carousel-control-prev { left: 24px !important; }
#slider .carousel-control-next { right: 24px !important; }

#slider .carousel-control-prev:hover,
#slider .carousel-control-next:hover {
	background: rgba(46, 125, 50, 0.7) !important;
	border-color: transparent !important;
}

/* =====================================================================
   3. SHARED SECTION STYLES — Luxury
   ===================================================================== */

.mf-section { padding: 120px 0; }
.mf-section--campaigns { background: #f7faf7; }
.mf-section--about     { background: #ffffff; }
/* Gallery — same base + plus-grid texture as .mf-stats-bar (impact counters) */
.mf-section--gallery {
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #0d2010 0%, #1a4020 50%, #0d2010 100%) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}
.mf-section--gallery::before {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 0;
	background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.02'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.mf-section--gallery > .container {
	position: relative;
	z-index: 1;
}

/* Impact stats bar */
.mf-stats-bar {
	background: #1a2a1a;
	border-top: 3px solid #2E7D32;
	border-bottom: 1px solid rgba(201,168,76,0.2);
}

.mf-stats-bar__inner {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: wrap;
}

.mf-stat-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 28px 48px;
	text-align: center;
}

.mf-stat-divider {
	width: 1px;
	background: rgba(255,255,255,0.08);
	flex-shrink: 0;
}

.mf-stat-item__num {
	font-family: 'Playfair Display', serif;
	font-size: 2.2rem;
	font-weight: 800;
	color: #ffffff;
	line-height: 1;
	display: block;
	margin-bottom: 6px;
}

.mf-stat-item__num--gold { color: #C9A84C; }

.mf-stat-item__label {
	font-family: 'Inter', sans-serif;
	font-size: 0.72rem;
	color: rgba(255,255,255,0.5);
	text-transform: uppercase;
	letter-spacing: 1.2px;
	display: block;
}

/* Section headings — luxury */
.mf-section-heading { text-align: center; margin-bottom: 64px; }

.mf-section-eyebrow {
	display: inline-block;
	font-family: 'Inter', sans-serif;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: #C9A84C;
	margin-bottom: 14px;
}

.mf-section-heading h2 {
	font-family: 'Playfair Display', serif;
	font-size: 2.4rem;
	font-weight: 800;
	color: #1a2a1a;
	position: relative;
	padding-bottom: 24px;
	margin-bottom: 0;
}

.mf-section-heading h2::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 40px;
	height: 3px;
	background: #C9A84C;
	border-radius: 3px;
}

.mf-section-heading--luxury h2::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: calc(50% + 48px);
	width: 16px;
	height: 3px;
	background: rgba(201,168,76,0.35);
	border-radius: 3px;
}

.mf-section-heading .mf-section-sub {
	font-family: 'Inter', sans-serif;
	color: #6a7a6a;
	font-size: 1rem;
	margin-top: 20px;
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
	line-height: 1.8;
}

/* Gallery section — dark override */
.mf-section--gallery .mf-section-heading h2 { color: #ffffff !important; }
.mf-section--gallery .mf-section-heading .mf-section-sub { color: rgba(255,255,255,0.6) !important; }
.mf-section--gallery .mf-section-eyebrow { color: #C9A84C !important; }
.mf-section--gallery .mf-section-heading h2::after { background: #C9A84C !important; }

/* Label tag */
.mf-label-tag {
	display: inline-block;
	background: rgba(46,125,50,0.1);
	color: #2E7D32;
	font-family: 'Inter', sans-serif;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	padding: 5px 14px;
	border-radius: 8px;
	margin-bottom: 14px;
}

/* =====================================================================
   4. CAMPAIGN CARDS
   ===================================================================== */

#mf-campaigns {
	padding: 112px 0;
	background-color: #F4F8F4;
}

.mf-campaign-card {
	background: #ffffff;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 2px 16px rgba(0, 0, 0, 0.07);
	transition: transform 0.32s cubic-bezier(0.34, 1.56, 0.64, 1),
				box-shadow 0.32s ease;
	display: flex;
	flex-direction: column;
	height: 100%;
	margin-bottom: 30px;
	border: 1px solid rgba(46, 125, 50, 0.08);
}

.mf-campaign-card:hover {
	transform: translateY(-10px);
	box-shadow: 0 20px 56px rgba(46, 125, 50, 0.16);
}

.mf-campaign-card .card-img-wrap {
	position: relative;
	overflow: hidden;
	height: 240px;
	background: #e8f5e9;
}

.mf-campaign-card .card-img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.55s ease;
	display: block;
}

.mf-campaign-card:hover .card-img-wrap img {
	transform: scale(1.07);
}

/* Status badge */
.mf-campaign-card .card-status {
	position: absolute;
	top: 14px;
	right: 14px;
	padding: 5px 14px;
	border-radius: 8px;
	font-family: 'Inter', sans-serif;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	backdrop-filter: blur(4px);
}

.mf-campaign-card .card-status.ongoing {
	background-color: rgba(201, 168, 76, 0.92);
	color: #1a1a1a;
}

.mf-campaign-card .card-status.completed {
	background-color: rgba(100, 100, 100, 0.85);
	color: #ffffff;
}

.mf-campaign-card .card-body {
	padding: 24px;
	flex: 1;
	display: flex;
	flex-direction: column;
}

.mf-campaign-card .card-title {
	font-family: 'Playfair Display', serif;
	font-size: 1.15rem;
	font-weight: 700;
	color: #1a2a1a;
	margin-bottom: 10px;
	line-height: 1.4;
}

.mf-campaign-card .card-title a {
	color: inherit;
	text-decoration: none;
	transition: color 0.25s;
}

.mf-campaign-card .card-title a:hover { color: #2E7D32; }

.mf-campaign-card .card-excerpt {
	font-family: 'Inter', sans-serif;
	font-size: 0.88rem;
	color: #5a6a5a;
	flex: 1;
	line-height: 1.7;
	margin-bottom: 20px;
}

/* Amounts */
.mf-campaign-amounts {
	display: flex;
	justify-content: space-between;
	margin-bottom: 12px;
	padding: 12px 14px;
	background: #f4f8f4;
	border-radius: 10px;
	border: 1px solid rgba(46, 125, 50, 0.1);
}

.mf-campaign-amounts .amount-label {
	font-family: 'Inter', sans-serif;
	color: #7a8a7a;
	font-size: 0.7rem;
	text-transform: uppercase;
	letter-spacing: 0.7px;
	display: block;
	margin-bottom: 3px;
}

.mf-campaign-amounts .amount-value {
	font-family: 'Inter', sans-serif;
	font-weight: 700;
	font-size: 1rem;
	color: #2E7D32;
}

.mf-campaign-amounts .raised-value { color: #C9A84C; }

/* Progress bar */
.mf-progress-wrap { margin-bottom: 20px; }

.mf-progress-percent {
	font-family: 'Inter', sans-serif;
	font-size: 0.78rem;
	color: #2E7D32;
	font-weight: 700;
	text-align: right;
	margin-bottom: 5px;
}

.mf-progress-bar {
	background-color: #e8f5e9;
	border-radius: 30px;
	height: 8px;
	overflow: hidden;
}

.mf-progress-fill {
	height: 100%;
	border-radius: 30px;
	background: linear-gradient(90deg, #2E7D32 0%, #C9A84C 100%);
	transition: width 1.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Donate button */
.mf-donate-btn {
	display: block;
	width: 100%;
	text-align: center;
	background-color: #2E7D32;
	color: #ffffff !important;
	padding: 13px 20px;
	border-radius: 8px;
	font-family: 'Inter', sans-serif;
	font-weight: 700;
	font-size: 0.9rem;
	letter-spacing: 0.3px;
	text-decoration: none !important;
	transition: background-color 0.28s ease, transform 0.2s ease;
	margin-top: auto;
}

.mf-donate-btn:hover {
	background-color: #1B5E20;
	transform: translateY(-2px);
	color: #ffffff !important;
}

.mf-donate-btn i { color: #C9A84C; }

.mf-donate-btn--completed {
	background-color: #546E7A !important;
}

.mf-donate-btn--completed:hover {
	background-color: #37474F !important;
}

/* =====================================================================
   5. ABOUT SECTION — Luxury
   ===================================================================== */

#mf-about, .mf-section--about { padding: 100px 0; overflow: hidden; }

.mf-about-img-wrap {
	position: relative; z-index: 1;
}

.mf-about-img-wrap img {
	width: 100%; border-radius: 20px;
	box-shadow: 0 24px 60px rgba(0,0,0,0.18);
	display: block;
}

.mf-about-img-wrap::before {
	content: '';
	position: absolute; top: -18px; left: -18px;
	width: 88px; height: 88px;
	border-top: 3px solid #2E7D32;
	border-left: 3px solid #2E7D32;
	border-radius: 4px 0 0 0; z-index: -1;
}

.mf-about-img-wrap::after {
	content: '';
	position: absolute; bottom: -18px; right: -18px;
	width: 88px; height: 88px;
	border-bottom: 3px solid #C9A84C;
	border-right: 3px solid #C9A84C;
	border-radius: 0 0 4px 0; z-index: -1;
}

/* Floating badge on image */
.mf-about-badge {
	position: absolute;
	bottom: 28px; right: -20px;
	background: linear-gradient(135deg, #2E7D32, #1B5E20);
	color: #fff;
	border-radius: 12px;
	padding: 14px 20px;
	text-align: center;
	box-shadow: 0 8px 30px rgba(46,125,50,0.35);
	border: 2px solid rgba(201,168,76,0.35);
}

.mf-about-badge i { color: #C9A84C; font-size: 1.5rem; display: block; margin-bottom: 6px; }
.mf-about-badge span { font-family: 'Playfair Display', serif; font-size: 0.9rem; font-weight: 700; white-space: nowrap; }

.mf-about-content { padding-left: 56px; }

.mf-about-content h2 {
	font-family: 'Playfair Display', serif;
	font-size: 2rem; font-weight: 800; color: #1a2a1a;
	line-height: 1.3; margin-top: 12px; margin-bottom: 22px;
}

.mf-about-text p, .mf-about-content > p {
	font-family: 'Inter', sans-serif;
	color: #4a5a4a; font-size: 0.97rem; line-height: 1.88; margin-bottom: 24px;
}

/* Feature bullets */
.mf-about-features { display: flex; flex-direction: column; gap: 12px; margin-bottom: 32px; }

.mf-about-feature {
	display: flex; align-items: center; gap: 14px;
	font-family: 'Inter', sans-serif; font-size: 0.9rem; color: #3a4a3a;
}

.mf-about-feature__icon {
	width: 38px; height: 38px; flex-shrink: 0;
	background: rgba(46,125,50,0.1); border-radius: 10px;
	display: flex; align-items: center; justify-content: center;
}

.mf-about-feature__icon i { color: #2E7D32; font-size: 0.88rem; }

/* =====================================================================
   6. GALLERY SECTION — with lightbox & FB preview
   ===================================================================== */

.mf-gallery-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }

.mf-gallery-item {
	position: relative; overflow: hidden; border-radius: 12px;
	background-color: #1a2a1a; aspect-ratio: 4/3; cursor: pointer; outline: none;
}
.mf-gallery-item:focus-visible { box-shadow: 0 0 0 3px #C9A84C; }

.mf-gallery-item img {
	width: 100%; height: 100%; object-fit: cover;
	transition: transform 0.5s ease, opacity 0.3s; display: block;
}
.mf-gallery-item:hover img { transform: scale(1.07); opacity: 0.82; }

.mf-gallery-overlay {
	position: absolute; inset: 0; background: rgba(0,0,0,0);
	display: flex; align-items: center; justify-content: center;
	transition: background 0.3s;
}
.mf-gallery-overlay i {
	color: #fff; font-size: 1.4rem; opacity: 0; transform: scale(0.7);
	transition: opacity 0.3s, transform 0.3s;
	background: rgba(46,125,50,0.7); width: 48px; height: 48px;
	display: flex; align-items: center; justify-content: center; border-radius: 50%;
}
.mf-gallery-item:hover .mf-gallery-overlay { background: rgba(0,0,0,0.3); }
.mf-gallery-item:hover .mf-gallery-overlay i { opacity: 1; transform: scale(1); }

/* Facebook video preview */
.mf-gallery-item.mf-fb-video { aspect-ratio: 4/3; }

.mf-fb-preview {
	position: absolute; inset: 0;
	background: linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	gap: 10px; transition: background 0.3s;
}
.mf-gallery-item:hover .mf-fb-preview { background: linear-gradient(135deg,#1877f2 0%,#0f5bd1 100%); }

.mf-fb-preview--neutral {
	background: linear-gradient(135deg, #143218 0%, #1B5E20 50%, #2E7D32 100%);
}
.mf-gallery-item:hover .mf-fb-preview--neutral {
	background: linear-gradient(135deg, #1B5E20 0%, #2E7D32 100%);
}
.mf-fb-preview--neutral .mf-fb-preview__icon {
	background: #C9A84C;
	color: #1a2a1a;
}

.mf-fb-preview__icon {
	width: 48px; height: 48px; background: #1877f2; border-radius: 10px;
	display: flex; align-items: center; justify-content: center;
	font-size: 1.2rem; color: #fff;
	transition: background 0.3s, transform 0.2s;
}
.mf-gallery-item:hover .mf-fb-preview__icon { background: rgba(255,255,255,0.2); transform: scale(1.05); }

.mf-fb-preview__play {
	width: 50px; height: 50px;
	background: rgba(255,255,255,0.15); border: 2px solid rgba(255,255,255,0.5);
	border-radius: 50%; display: flex; align-items: center; justify-content: center;
	font-size: 1rem; color: #fff; transition: background 0.25s, transform 0.2s;
}
.mf-gallery-item:hover .mf-fb-preview__play { background: rgba(255,255,255,0.28); transform: scale(1.1); }

.mf-fb-preview__label { color: rgba(255,255,255,0.8); font-family: 'Inter',sans-serif; font-size: 0.8rem; margin: 0; }

/* ── Lightbox ─────────────────────────────────────────────────── */
.mf-lightbox { position: fixed; inset: 0; z-index: 99999; display: none; align-items: center; justify-content: center; }
.mf-lightbox.is-open { display: flex; }
.mf-lightbox__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.92); cursor: pointer; }
.mf-lightbox__container { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; }
.mf-lightbox__media { display: flex; align-items: center; justify-content: center; }
.mf-lightbox__img { max-width: 85vw; max-height: 80vh; object-fit: contain; border-radius: 8px; display: block; box-shadow: 0 20px 60px rgba(0,0,0,0.5); }
.mf-lightbox__iframe { width: min(85vw,740px); height: min(80vh,500px); border: none; border-radius: 8px; background: #000; display: block; }
.mf-lightbox__video { max-width: min(92vw, 960px); max-height: 78vh; width: 100%; border-radius: 8px; background: #000; display: block; box-shadow: 0 20px 60px rgba(0,0,0,0.5); }
.mf-lightbox__caption { color: rgba(255,255,255,0.75); font-family: 'Inter',sans-serif; font-size: 0.85rem; margin-top: 12px; text-align: center; }
.mf-lightbox__counter { color: rgba(255,255,255,0.45); font-family: 'Inter',sans-serif; font-size: 0.78rem; margin-top: 6px; }

.mf-lightbox__close {
	position: absolute; top: -50px; right: 0;
	width: 40px; height: 40px; background: rgba(255,255,255,0.12);
	border: 1px solid rgba(255,255,255,0.25); border-radius: 50%;
	color: #fff; font-size: 0.9rem;
	display: flex; align-items: center; justify-content: center;
	cursor: pointer; transition: background 0.2s, transform 0.2s;
}
.mf-lightbox__close:hover { background: rgba(255,255,255,0.25); transform: rotate(90deg); }

.mf-lightbox__prev, .mf-lightbox__next {
	position: fixed; top: 50%; transform: translateY(-50%);
	width: 50px; height: 50px; background: rgba(255,255,255,0.1);
	border: 1.5px solid rgba(255,255,255,0.25); border-radius: 50%;
	color: #fff; font-size: 0.9rem;
	display: flex; align-items: center; justify-content: center;
	cursor: pointer; transition: background 0.2s; z-index: 2;
}
.mf-lightbox__prev { left: 20px; }
.mf-lightbox__next { right: 20px; }
.mf-lightbox__prev:hover, .mf-lightbox__next:hover { background: rgba(201,168,76,0.4); border-color: #C9A84C; }

/* =====================================================================
   6b. COMBINED ABOUT + MAP SECTION — redesigned
   ===================================================================== */

.mf-section--about-map { overflow: hidden; }

/* About panel — image as full-bleed background */
.mf-about-panel {
	position: relative;
	min-height: 580px;
	background: linear-gradient(135deg, #0d2a10 0%, #1B5E20 100%);
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: stretch;
}

.mf-about-panel__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(
		140deg,
		rgba(8, 30, 10, 0.90) 0%,
		rgba(20, 60, 22, 0.80) 60%,
		rgba(27, 94, 32, 0.70) 100%
	);
}

.mf-about-panel__inner {
	position: relative;
	z-index: 1;
	padding: 80px 60px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
}

.mf-about-panel__tag {
	display: inline-block;
	background: rgba(201, 168, 76, 0.18);
	border: 1px solid rgba(201, 168, 76, 0.45);
	color: #C9A84C;
	font-family: 'Inter', sans-serif;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	padding: 5px 14px;
	border-radius: 8px;
	margin-bottom: 18px;
	width: fit-content;
}

.mf-about-panel__heading {
	font-family: 'Playfair Display', serif;
	font-size: 2rem;
	font-weight: 800;
	color: #ffffff;
	line-height: 1.3;
	margin-bottom: 18px;
}

.mf-about-panel__text p {
	font-family: 'Inter', sans-serif;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.95rem;
	line-height: 1.85;
	margin-bottom: 16px;
}

/* Feature list */
.mf-about-panel__features {
	list-style: none;
	padding: 0;
	margin: 0 0 32px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.mf-about-panel__features li {
	display: flex;
	align-items: center;
	gap: 12px;
	color: rgba(255, 255, 255, 0.85);
	font-family: 'Inter', sans-serif;
	font-size: 0.9rem;
}

.mf-about-panel__features li i {
	width: 34px;
	height: 34px;
	background: rgba(201, 168, 76, 0.18);
	border: 1px solid rgba(201, 168, 76, 0.3);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: #C9A84C;
	font-size: 0.85rem;
}

/* CTA button — gold style */
.mf-about-panel__cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: linear-gradient(135deg, #C9A84C, #b8972e);
	color: #1a1a1a !important;
	font-family: 'Inter', sans-serif;
	font-weight: 700;
	font-size: 0.9rem;
	padding: 13px 28px;
	border-radius: 8px;
	text-decoration: none;
	transition: background 0.28s, transform 0.2s;
	width: fit-content;
}

.mf-about-panel__cta:hover {
	background: linear-gradient(135deg, #b8972e, #a07e22);
	transform: translateY(-2px);
	color: #1a1a1a !important;
}

/* Map panel */
.mf-map-panel {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 580px;
	background: #ffffff;
}

.mf-map-panel__header {
	padding: 44px 48px 24px;
	background: #ffffff;
	border-bottom: 2px solid #f0f7f0;
	border-left: 4px solid #2E7D32;
}

.mf-map-panel__header .mf-section-eyebrow { display: block; margin-bottom: 8px; }

.mf-map-panel__title {
	font-family: 'Playfair Display', serif;
	font-size: 1.7rem;
	font-weight: 800;
	color: #1a2a1a;
	margin: 0;
}

.mf-map-panel__embed { flex: 1; min-height: 420px; }
.mf-map-panel__embed iframe { display: block !important; width: 100% !important; height: 100% !important; min-height: 420px !important; border: none !important; }

.mf-map-panel__placeholder {
	flex: 1;
	display: flex; flex-direction: column;
	align-items: center; justify-content: center;
	gap: 14px; color: #8a9a8a; padding: 48px; text-align: center;
}

.mf-map-panel__placeholder i { font-size: 3rem; color: #d8e8d8; }
.mf-map-panel__placeholder p { font-family: 'Inter', sans-serif; font-size: 0.9rem; max-width: 280px; }

/* Facebook video with image thumbnail */
.mf-fb-thumb-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease, opacity 0.3s;
}

.mf-gallery-item:hover .mf-fb-thumb-img { transform: scale(1.06); opacity: 0.82; }

.mf-fb-thumb-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.35);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	transition: background 0.3s;
}

.mf-gallery-item:hover .mf-fb-thumb-overlay { background: rgba(0, 0, 0, 0.5); }

.mf-fb-thumb-play {
	width: 58px; height: 58px;
	background: rgba(255, 255, 255, 0.2);
	border: 2px solid rgba(255, 255, 255, 0.75);
	border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	color: #fff; font-size: 1.1rem;
	transition: background 0.25s, transform 0.2s;
}

.mf-gallery-item:hover .mf-fb-thumb-play { background: rgba(255,255,255,0.35); transform: scale(1.1); }

.mf-fb-thumb-label {
	color: rgba(255, 255, 255, 0.88);
	font-family: 'Inter', sans-serif;
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.5px;
}

/* Responsive */
@media (max-width: 991px) {
	.mf-about-panel__inner { padding: 56px 36px; }
	.mf-about-panel__heading { font-size: 1.7rem; }
	.mf-map-panel { min-height: 400px; }
	.mf-map-panel__header { padding: 32px 32px 18px; }
	.mf-map-panel__embed { min-height: 350px; }
	.mf-map-panel__embed iframe { min-height: 350px !important; }
	.mf-gallery-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 575px) {
	.mf-gallery-grid { grid-template-columns: 1fr; }
	.mf-about-panel__inner { padding: 48px 24px; }
}

/* =====================================================================
   6c. BOXED LAYOUT
   ===================================================================== */

body.mf-layout-boxed { background: #e8ede8; }

body.mf-layout-boxed #page {
	max-width: 1400px;
	margin: 0 auto;
	background: #fff;
	box-shadow: 0 0 60px rgba(0,0,0,0.12);
	overflow: hidden;
}

/* =====================================================================
   7. GOOGLE MAP
   ===================================================================== */

.mf-section--map {
	padding-top: 80px;
	padding-bottom: 80px;
	background: #f7faf7;
}

.mf-map-embed-wrap {
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 8px 40px rgba(0, 0, 0, 0.12);
	border: 1px solid rgba(46, 125, 50, 0.1);
	line-height: 0;
}

.mf-map-embed-wrap iframe {
	display: block;
	width: 100%;
	border: none;
}

/* Legacy full-width map (kept for contact page) */
#mf-map {
	width: 100%;
	line-height: 0;
	overflow: hidden;
}

#mf-map iframe {
	width: 100%;
	display: block;
	border: none;
	vertical-align: bottom;
}

/* =====================================================================
   8. ISLAMIC GEOMETRIC DIVIDER
   ===================================================================== */

.mf-geometric-divider {
	height: 48px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='48'%3E%3Cpath d='M0 24L15 0L30 24L45 0L60 24L75 0L90 24L105 0L120 24L120 48L0 48Z' fill='%232E7D32' opacity='0.06'/%3E%3Cpath d='M0 48L15 24L30 48L45 24L60 48L75 24L90 48L105 24L120 48Z' fill='%23C9A84C' opacity='0.06'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	background-size: 120px 48px;
}

/* =====================================================================
   9. PAGE HERO — superseded by “MODERN UI OVERHAUL” (.mf-page-hero) below
   ===================================================================== */

/* =====================================================================
   10. VOLUNTEER PAGE
   ===================================================================== */

.mf-volunteer-why { padding: 112px 0; }

.mf-vol-why-content h2 {
	font-family: 'Playfair Display', serif;
	font-size: 1.9rem;
	font-weight: 800;
	margin-top: 10px;
	margin-bottom: 18px;
}

.mf-vol-why-content > p {
	font-family: 'Inter', sans-serif;
	color: #4a5a4a;
	line-height: 1.8;
	margin-bottom: 28px;
}

.mf-vol-benefits { display: flex; flex-direction: column; gap: 14px; }

.mf-vol-benefit-item {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.mf-vol-benefit-icon {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	background: rgba(46, 125, 50, 0.1);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.mf-vol-benefit-icon i {
	color: #2E7D32;
	font-size: 0.95rem;
}

.mf-vol-benefit-item p {
	font-family: 'Inter', sans-serif;
	font-size: 0.9rem;
	color: #4a5a4a;
	margin: 0;
	line-height: 1.6;
	padding-top: 10px;
}

/* Form card */
.mf-vol-form-wrap {
	background: #ffffff;
	border-radius: 20px;
	padding: 40px;
	box-shadow: 0 4px 40px rgba(0, 0, 0, 0.09);
	border: 1px solid rgba(46, 125, 50, 0.08);
}

.mf-vol-form-header {
	margin-bottom: 28px;
	padding-bottom: 20px;
	border-bottom: 1px solid #f0f0f0;
}

.mf-vol-form-header h3 {
	font-family: 'Playfair Display', serif;
	font-size: 1.5rem;
	font-weight: 800;
	color: #1a2a1a;
	margin-bottom: 6px;
}

.mf-vol-form-header p {
	font-family: 'Inter', sans-serif;
	font-size: 0.9rem;
	color: #6a7a6a;
	margin: 0;
}

/* Form fields */
.mf-vol-form .mf-form-row {
	display: flex;
	gap: 16px;
	margin-bottom: 0;
}

.mf-form-group {
	margin-bottom: 18px;
	flex: 1;
}

.mf-form-group--half { flex: 1; min-width: 0; }

.mf-form-group label {
	display: block;
	font-family: 'Inter', sans-serif;
	font-size: 0.85rem;
	font-weight: 600;
	color: #2a3a2a;
	margin-bottom: 6px;
}

.mf-required { color: #c62828; margin-left: 2px; }

.mf-vol-form input[type="text"],
.mf-vol-form input[type="email"],
.mf-vol-form input[type="tel"],
.mf-vol-form select,
.mf-vol-form textarea {
	width: 100%;
	padding: 11px 14px;
	border: 1.5px solid #d8e8d8;
	border-radius: 10px;
	font-family: 'Inter', sans-serif;
	font-size: 0.92rem;
	color: #1a1a1a;
	background: #fafcfa;
	transition: border-color 0.25s, box-shadow 0.25s, background 0.25s;
	-webkit-appearance: none;
	appearance: none;
}

.mf-vol-form input:focus,
.mf-vol-form select:focus,
.mf-vol-form textarea:focus {
	border-color: #2E7D32;
	background: #ffffff;
	outline: none;
	box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.12);
}

.mf-vol-form input.mf-field-error,
.mf-vol-form textarea.mf-field-error {
	border-color: #c62828;
	box-shadow: 0 0 0 3px rgba(198, 40, 40, 0.10);
}

.mf-vol-form textarea { min-height: 130px; resize: vertical; }

/* Submit button */
.mf-btn--submit {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	background-color: #2E7D32;
	color: #ffffff !important;
	border: none;
	border-radius: 8px;
	padding: 15px 28px;
	font-family: 'Inter', sans-serif;
	font-weight: 700;
	font-size: 0.97rem;
	cursor: pointer;
	transition: background-color 0.28s ease, transform 0.2s ease;
	margin-top: 6px;
}

.mf-btn--submit:hover {
	background-color: #1B5E20;
	transform: translateY(-2px);
}

.mf-btn--submit:disabled {
	opacity: 0.7;
	cursor: not-allowed;
	transform: none;
}

/* Alert messages */
.mf-vol-messages.mf-alert {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 14px 18px;
	border-radius: 10px;
	font-family: 'Inter', sans-serif;
	font-size: 0.9rem;
	line-height: 1.55;
	margin-bottom: 20px;
}

.mf-alert--success {
	background: #E8F5E9;
	color: #1B5E20;
	border: 1px solid rgba(46, 125, 50, 0.25);
}

.mf-alert--error {
	background: #FFEBEE;
	color: #b71c1c;
	border: 1px solid rgba(198, 40, 40, 0.25);
}

.mf-alert i { flex-shrink: 0; margin-top: 2px; font-size: 1rem; }

/* =====================================================================
   11. CAMPAIGNS PAGE (full listing)
   ===================================================================== */

.mf-campaigns-filter-bar {
	background: #ffffff;
	border-bottom: 1px solid #e8f5e9;
	padding: 20px 0;
	position: sticky;
	top: 72px;
	z-index: 100;
}

.mf-filter-tabs {
	display: flex;
	gap: 10px;
	align-items: center;
}

.mf-filter-tab {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 9px 20px;
	border: 1.5px solid #d8e8d8;
	border-radius: 8px;
	background: #ffffff;
	font-family: 'Inter', sans-serif;
	font-size: 0.88rem;
	font-weight: 600;
	color: #4a5a4a;
	cursor: pointer;
	transition: all 0.25s ease;
}

.mf-filter-tab:hover {
	border-color: #2E7D32;
	color: #2E7D32;
}

.mf-filter-tab.active {
	background: #2E7D32;
	border-color: #2E7D32;
	color: #ffffff;
}

.mf-tab-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	display: inline-block;
}

.mf-tab-dot--ongoing   { background-color: #C9A84C; }
.mf-tab-dot--completed { background-color: #9e9e9e; }

.mf-campaigns-grid-section { padding: 64px 0 96px; }

.mf-no-results {
	text-align: center;
	padding: 60px 20px;
	color: #7a8a7a;
}

.mf-no-results i { font-size: 3rem; color: #d8e8d8; display: block; margin-bottom: 16px; }

.mf-no-results p { font-family: 'Inter', sans-serif; font-size: 1rem; }

/* =====================================================================
   12. CONTACT PAGE — Redesigned
   ===================================================================== */

.mf-cp-section { padding: 96px 0 112px; background: #F4F8F4; }

/* Make both columns the same height */
.mf-cp-section .row { align-items: stretch !important; }
.mf-cp-section .col-lg-4,
.mf-cp-section .col-lg-8 { display: flex; flex-direction: column; }

/* ── Info Card ── */
.mf-cp-info-card {
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 8px 40px rgba(0,0,0,0.10);
	flex: 1;
	display: flex;
	flex-direction: column;
}

/* Expand the body to fill remaining height */
.mf-cp-info-card__body { flex: 1; }

/* Form card also stretches */
.mf-cp-form-card {
	flex: 1;
	display: flex;
	flex-direction: column;
}

.mf-cp-form { flex: 1; }

.mf-cp-info-card__head {
	background: linear-gradient(135deg,#1B5E20 0%,#2E7D32 100%);
	padding: 36px 32px 28px;
	text-align: center;
}

.mf-cp-info-card__head-icon {
	width: 60px; height: 60px;
	background: rgba(255,255,255,0.12);
	border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	margin: 0 auto 16px;
	font-size: 1.4rem; color: #C9A84C;
}

.mf-cp-info-card__head h3 {
	font-family: 'Playfair Display', serif;
	font-size: 1.4rem; font-weight: 800; color: #fff; margin-bottom: 10px;
}

.mf-cp-info-card__head p {
	font-family: 'Inter', sans-serif;
	font-size: 0.85rem; color: rgba(255,255,255,0.78); line-height: 1.65; margin: 0;
}

.mf-cp-info-card__body {
	background: #fff;
	padding: 28px 28px 0;
	display: flex; flex-direction: column; gap: 0;
}

.mf-cp-detail {
	display: flex; align-items: flex-start; gap: 14px;
	padding: 16px 0;
	border-bottom: 1px solid #f0f4f0;
}

.mf-cp-detail:last-child { border-bottom: none; }

.mf-cp-detail__icon {
	flex-shrink: 0;
	width: 40px; height: 40px;
	background: #E8F5E9; border-radius: 10px;
	display: flex; align-items: center; justify-content: center;
	color: #2E7D32; font-size: 0.9rem;
}

.mf-cp-detail__label {
	display: block;
	font-family: 'Inter', sans-serif;
	font-size: 0.7rem; font-weight: 700;
	text-transform: uppercase; letter-spacing: 1px;
	color: #8a9a8a; margin-bottom: 4px;
}

.mf-cp-detail__val {
	font-family: 'Inter', sans-serif;
	font-size: 0.9rem; color: #1a2a1a;
	text-decoration: none; line-height: 1.5;
}

a.mf-cp-detail__val:hover { color: #2E7D32; }

.mf-cp-info-card__socials {
	background: #fff; padding: 20px 28px;
	border-top: 1px solid #f0f4f0;
	display: flex; align-items: center; gap: 12px;
}

.mf-cp-info-card__socials p {
	font-family: 'Inter', sans-serif;
	font-size: 0.78rem; font-weight: 700;
	text-transform: uppercase; letter-spacing: 1px;
	color: #8a9a8a; margin: 0; flex-shrink: 0;
}

.mf-cp-social-btns { display: flex; gap: 8px; }

.mf-cp-social-btns a {
	width: 34px; height: 34px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 50%; background: #F4F8F4;
	color: #2E7D32 !important; font-size: 0.82rem; text-decoration: none;
	transition: all 0.22s;
}
.mf-cp-social-btns a:hover { background: #2E7D32; color: #fff !important; transform: translateY(-2px); }

.mf-cp-info-card__note {
	background: #F4F8F4; padding: 16px 28px;
	font-family: 'Inter', sans-serif; font-size: 0.82rem;
	color: #5a6a5a; line-height: 1.6;
	display: flex; gap: 10px; align-items: flex-start;
}
.mf-cp-info-card__note i { color: #C9A84C; flex-shrink: 0; margin-top: 2px; }

/* ── Form Card ── */
.mf-cp-form-card {
	background: #fff;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 8px 40px rgba(0,0,0,0.09);
	/* height/flex set above with the info card */
}

.mf-cp-form-card__header {
	padding: 36px 44px 28px;
	border-bottom: 1px solid #f0f4f0;
	background: linear-gradient(135deg,#f9fcf9 0%,#ffffff 100%);
}

.mf-cp-form-card__header h3 {
	font-family: 'Playfair Display', serif;
	font-size: 1.6rem; font-weight: 800; color: #1a2a1a; margin-bottom: 8px;
}

.mf-cp-form-card__header p {
	font-family: 'Inter', sans-serif;
	font-size: 0.9rem; color: #6a7a6a; margin: 0; line-height: 1.65;
}

/* Form layout */
.mf-cp-form { padding: 32px 44px 40px; }

.mf-cp-form__row {
	display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px;
}

.mf-cp-form__group { display: flex; flex-direction: column; }
.mf-cp-form__group--full { margin-bottom: 20px; }

.mf-cp-form__group label {
	font-family: 'Inter', sans-serif; font-size: 0.82rem; font-weight: 700;
	color: #2a3a2a; margin-bottom: 7px; letter-spacing: 0.2px;
}

/* Input with icon */
.mf-cp-input-wrap {
	position: relative; display: flex; align-items: center;
}

.mf-cp-input-wrap > i {
	position: absolute; left: 14px; top: 50%; transform: translateY(-50%);
	color: #8a9a8a; font-size: 0.85rem; pointer-events: none; z-index: 1;
}

.mf-cp-input-wrap--textarea > i {
	top: 14px; transform: none;
}

.mf-cp-input-wrap input,
.mf-cp-input-wrap textarea {
	width: 100%;
	padding: 12px 14px 12px 40px;
	border: 1.5px solid #d8e8d8;
	border-radius: 10px;
	font-family: 'Inter', sans-serif;
	font-size: 0.92rem; color: #1a1a1a;
	background: #fafcfa;
	transition: border-color 0.25s, box-shadow 0.25s;
	line-height: 1.5;
}

.mf-cp-input-wrap input:focus,
.mf-cp-input-wrap textarea:focus {
	border-color: #2E7D32;
	background: #fff;
	outline: none;
	box-shadow: 0 0 0 3px rgba(46,125,50,0.10);
}

.mf-cp-input-wrap input.mf-field-error,
.mf-cp-input-wrap textarea.mf-field-error {
	border-color: #c62828;
	box-shadow: 0 0 0 3px rgba(198,40,40,0.08);
}

.mf-cp-input-wrap textarea { min-height: 150px; resize: vertical; align-items: flex-start; }

/* Form footer */
.mf-cp-form__footer {
	display: flex; align-items: center; justify-content: space-between;
	gap: 16px; flex-wrap: wrap; padding-top: 8px;
}

.mf-cp-form__privacy {
	font-family: 'Inter', sans-serif; font-size: 0.78rem;
	color: #8a9a8a; margin: 0;
	display: flex; align-items: center; gap: 6px;
}
.mf-cp-form__privacy i { color: #2E7D32; }

.mf-cp-submit {
	display: inline-flex; align-items: center; justify-content: center; gap: 9px;
	background: linear-gradient(135deg,#2E7D32,#1B5E20);
	color: #fff !important; border: none; border-radius: 8px;
	padding: 14px 32px;
	font-family: 'Inter', sans-serif; font-weight: 700; font-size: 0.95rem;
	cursor: pointer; transition: all 0.28s;
	box-shadow: 0 4px 16px rgba(46,125,50,0.3);
}
.mf-cp-submit:hover { background: linear-gradient(135deg,#1B5E20,#0d2a10); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(46,125,50,0.35); }
.mf-cp-submit:disabled { opacity: 0.7; cursor: not-allowed; transform: none; }
.mf-cp-submit .mf-btn-loading { display: flex; align-items: center; gap: 8px; }

/* Responsive */
@media (max-width: 767px) {
	.mf-cp-form__row { grid-template-columns: 1fr; gap: 16px; }
	.mf-cp-form { padding: 24px 20px 32px; }
	.mf-cp-form-card__header { padding: 24px 20px 18px; }
	.mf-cp-form__footer { flex-direction: column; align-items: flex-start; }
	.mf-cp-submit { width: 100%; justify-content: center; }
}

.mf-contact-form-placeholder p {
	font-family: 'Inter', sans-serif;
	font-size: 0.92rem;
	color: #6a7a6a;
	margin-bottom: 12px;
}

.mf-contact-form-placeholder code {
	display: block;
	background: #F4F8F4;
	border: 1px solid #d8e8d8;
	border-radius: 8px;
	padding: 10px 16px;
	font-size: 0.88rem;
	color: #2E7D32;
	margin: 0 auto 12px;
	max-width: 360px;
}

.mf-contact-placeholder-note {
	font-size: 0.82rem !important;
	color: #8a9a8a !important;
}

/* =====================================================================
   13. BLOG & ARCHIVE
   ===================================================================== */

.blog .site-main,
.archive .site-main {
	padding: 64px 0;
}

.entry-header .entry-title {
	font-family: 'Playfair Display', serif;
	font-size: 1.6rem;
	line-height: 1.35;
}

.entry-header .entry-title a {
	color: #1a2a1a;
	text-decoration: none;
	transition: color 0.25s;
}

.entry-header .entry-title a:hover { color: #2E7D32; }

.entry-meta {
	font-family: 'Inter', sans-serif;
	font-size: 0.82rem;
	color: #7a8a7a;
	margin-bottom: 12px;
}

.entry-meta a {
	color: #2E7D32;
	font-weight: 600;
}

.entry-summary p,
.entry-content p {
	font-family: 'Inter', sans-serif;
	font-size: 0.97rem;
	color: #4a5a4a;
	line-height: 1.85;
}

/* Post thumbnails */
.post-thumbnail {
	border-radius: 12px;
	overflow: hidden;
	margin-bottom: 20px;
}

.post-thumbnail img {
	width: 100%;
	transition: transform 0.4s ease;
}

article:hover .post-thumbnail img { transform: scale(1.03); }

/* Read more */
.more-link {
	display: inline-block;
	color: #2E7D32;
	font-family: 'Inter', sans-serif;
	font-weight: 700;
	font-size: 0.88rem;
	text-decoration: none;
	margin-top: 10px;
	transition: gap 0.2s;
}

.more-link::after {
	content: ' →';
	transition: margin 0.2s;
}

.more-link:hover { color: #1B5E20; }

/* Sidebar */
.widget {
	background: #ffffff;
	border-radius: 14px;
	padding: 24px;
	margin-bottom: 24px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05);
	border: 1px solid #f0f4f0;
}

.widget-title {
	font-family: 'Playfair Display', serif !important;
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	color: #1a2a1a !important;
	border-bottom: 2px solid #2E7D32 !important;
	padding-bottom: 10px !important;
	margin-bottom: 18px !important;
}

/* Pagination */
.page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: #F4F8F4;
	font-family: 'Inter', sans-serif;
	font-weight: 600;
	font-size: 0.9rem;
	color: #4a5a4a;
	text-decoration: none;
	margin: 0 3px;
	transition: all 0.2s;
}

.page-numbers:hover,
.page-numbers.current {
	background: #2E7D32;
	color: #ffffff;
}

/* =====================================================================
   14. SINGLE POST
   ===================================================================== */

.single .entry-title {
	font-family: 'Playfair Display', serif;
	font-size: 2.2rem;
	line-height: 1.3;
	color: #1a2a1a;
	margin-bottom: 16px;
}

.single .entry-content h2,
.single .entry-content h3,
.single .entry-content h4 {
	font-family: 'Playfair Display', serif;
	color: #1a2a1a;
	margin-top: 36px;
	margin-bottom: 14px;
}

.single .entry-content p {
	font-family: 'Inter', sans-serif;
	font-size: 1rem;
	color: #3a4a3a;
	line-height: 1.9;
	margin-bottom: 20px;
}

.single .entry-content blockquote {
	border-left: 4px solid #C9A84C;
	padding: 16px 24px;
	margin: 28px 0;
	background: #F9F6EF;
	border-radius: 0 8px 8px 0;
	font-style: italic;
	color: #4a5a4a;
}

/* =====================================================================
   15. FOOTER — Modern clean Islamic design
   ===================================================================== */

/* Use background-color only — not `background` shorthand — so Customizer
   footer background-image (inline CSS on .mf-footer) can apply. #colophon
   beats .mf-footer in specificity; shorthand was resetting background-image
   to none and winning over inline image rules. */
.mf-footer,
footer#colophon.site-footer {
	background-color: #111d11;
	position: relative !important;
	border-top: 3px solid #2E7D32 !important;
}

/* Main content area */
.mf-footer__main { padding: 72px 0 56px; }

/* Divider */
.mf-footer__rule {
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(201,168,76,0.35) 20%, rgba(201,168,76,0.55) 50%, rgba(201,168,76,0.35) 80%, transparent);
	margin: 0;
}

/* Bottom bar */
.mf-footer__bottom { padding: 24px 0 20px; }

/* ── Footer brand strip (always visible, logo + name + socials) ── */
.mf-footer__brand-strip {
	border-bottom: 1px solid rgba(255,255,255,0.07);
	padding: 28px 0;
}

.mf-footer__brand-strip-inner {
	display: flex;
	align-items: center;
	gap: 16px;
}

.mf-footer__logo-wrap { flex-shrink: 0; line-height: 0; }

.mf-footer__logo {
	max-height: 64px;
	max-width: 180px;
	width: auto;
	height: auto;
	display: block;
	margin-bottom: 16px;
	/* No filter — logo shows in its original colours.
	   Upload a white/transparent version for best contrast on dark footer. */
}

.mf-footer__brand-strip-name {
	font-family: 'Playfair Display', serif;
	font-size: 1.1rem;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 3px;
}

.mf-footer__brand-strip-tagline {
	font-family: 'Inter', sans-serif;
	font-size: 0.78rem;
	color: rgba(255,255,255,0.45);
	margin: 0;
}

.mf-footer__brand-strip-socials {
	display: flex;
	align-items: center;
	gap: 8px;
}

.mf-footer__brand-strip-socials a {
	width: 34px; height: 34px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 50%;
	background: rgba(255,255,255,0.07);
	border: 1px solid rgba(255,255,255,0.12);
	color: rgba(255,255,255,0.6) !important;
	font-size: 0.82rem; text-decoration: none;
	transition: all 0.25s;
}

.mf-footer__brand-strip-socials a:hover {
	background: #2E7D32 !important;
	border-color: #2E7D32 !important;
	color: #fff !important;
	transform: translateY(-2px);
}

/* Brand section (default no-widget footer) */
.mf-footer__brand { padding-right: 20px; }

.mf-footer__brand-arabic {
	display: block;
	font-family: 'Scheherazade New', 'Traditional Arabic', serif;
	font-size: 1.4rem;
	color: rgba(201,168,76,0.7);
	direction: rtl;
	margin-bottom: 4px;
}

.mf-footer__brand-name {
	font-family: 'Playfair Display', serif !important;
	font-size: 1.2rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin-bottom: 14px !important;
}

.mf-footer__brand-desc {
	font-family: 'Inter', sans-serif;
	font-size: 0.87rem;
	color: rgba(255,255,255,0.45);
	line-height: 1.75;
	margin-bottom: 22px;
}

.mf-footer__brand-socials {
	display: flex;
	align-items: center;
	gap: 8px;
}

/* Footer column titles */
.mf-footer__col-title {
	font-family: 'Inter', sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	color: #C9A84C !important;
	letter-spacing: 2px !important;
	text-transform: uppercase !important;
	margin-bottom: 20px !important;
	padding-bottom: 10px !important;
	border-bottom: 1px solid rgba(201,168,76,0.18) !important;
}

/* Footer quick links */
.mf-footer__links {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.mf-footer__links li {
	list-style: none !important;
	margin-bottom: 8px !important;
}

.mf-footer__links li a {
	font-family: 'Inter', sans-serif;
	font-size: 0.87rem;
	color: rgba(255,255,255,0.5) !important;
	text-decoration: none;
	transition: color 0.22s, padding-left 0.22s;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	/* Clamp long titles to one line */
	max-width: 200px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mf-footer__links li a::before {
	content: '›';
	color: #C9A84C;
	font-size: 1rem;
	line-height: 1;
	transition: transform 0.2s;
}

.mf-footer__links li a:hover {
	color: #C9A84C !important;
	padding-left: 4px;
}

/* Contact list */
.mf-footer__contact-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.mf-footer__contact-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-family: 'Inter', sans-serif;
	font-size: 0.87rem;
	color: rgba(255,255,255,0.5);
	list-style: none !important;
}

.mf-footer__contact-list li i {
	color: #C9A84C;
	font-size: 0.8rem;
	margin-top: 3px;
	flex-shrink: 0;
}

.mf-footer__contact-list li a {
	color: rgba(255,255,255,0.5) !important;
	text-decoration: none;
	transition: color 0.2s;
}

.mf-footer__contact-list li a:hover { color: #C9A84C !important; }

/* Barakallah */
.mf-footer__barakallah {
	text-align: center;
	font-family: 'Playfair Display', serif;
	font-style: italic;
	color: rgba(201,168,76,0.75);
	font-size: 0.88rem;
	margin-bottom: 16px;
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(255,255,255,0.06);
}

/* Bottom inner */
.mf-footer__bottom-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}

.mf-footer__copyright {
	font-family: 'Inter', sans-serif;
	color: rgba(255,255,255,0.28);
	font-size: 0.8rem;
	margin: 0;
}

/* Social icons */
.mf-footer__socials,
.mf-footer__brand-socials {
	display: flex;
	align-items: center;
	gap: 8px;
}

.mf-footer__socials a,
.mf-footer__brand-socials a {
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.1);
	color: rgba(255,255,255,0.55) !important;
	font-size: 0.8rem;
	text-decoration: none;
	transition: all 0.25s;
}

.mf-footer__socials a:hover,
.mf-footer__brand-socials a:hover {
	background: #2E7D32 !important;
	border-color: #2E7D32 !important;
	color: #fff !important;
	transform: translateY(-2px);
}

/* Widget overrides */
.mf-footer .widget, #colophon .widget { background: transparent !important; box-shadow: none !important; border: none !important; padding: 0 !important; }
.mf-footer .widget-title, #colophon .widget-title {
	font-family: 'Inter', sans-serif !important; font-size: 0.72rem !important;
	font-weight: 700 !important; color: #C9A84C !important; letter-spacing: 2px !important;
	text-transform: uppercase !important; border-bottom: 1px solid rgba(201,168,76,0.18) !important;
	padding-bottom: 10px !important; margin-bottom: 20px !important;
}
.mf-footer p, .mf-footer li, #colophon p, #colophon li {
	font-family: 'Inter', sans-serif !important; color: rgba(255,255,255,0.5) !important;
	font-size: 0.87rem !important; line-height: 1.8 !important;
}
.mf-footer a, #colophon a { color: rgba(255,255,255,0.5) !important; text-decoration: none !important; transition: color 0.2s !important; }
.mf-footer a:hover, #colophon a:hover { color: #C9A84C !important; }

/* Scroll to top */
.mf-scroll-top {
	position: fixed;
	left: auto !important;
	bottom: 28px;
	right: max(16px, env(safe-area-inset-right, 0px));
	width: 44px; height: 44px;
	background: #2E7D32; color: #fff; border: none; border-radius: 50%;
	cursor: pointer; display: flex; align-items: center; justify-content: center;
	font-size: 0.88rem;
	box-shadow: 0 4px 16px rgba(46,125,50,0.4);
	opacity: 0; pointer-events: none;
	transition: opacity 0.3s, transform 0.3s, background 0.25s; z-index: 500;
}
.mf-scroll-top.is-visible { opacity: 1; pointer-events: auto; }
.mf-scroll-top:hover { background: #C9A84C; transform: translateY(-4px); box-shadow: 0 8px 24px rgba(201,168,76,0.35); }

/* =====================================================================
   16. CONTACT FORM 7 OVERRIDES
   ===================================================================== */

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="number"],
.wpcf7-form select,
.wpcf7-form textarea {
	width: 100%;
	padding: 12px 16px;
	border: 1.5px solid #d8e8d8;
	border-radius: 10px;
	font-family: 'Inter', sans-serif;
	font-size: 0.94rem;
	color: #1a1a1a;
	background: #fafcfa;
	transition: border-color 0.25s, box-shadow 0.25s;
}

.wpcf7-form input:focus,
.wpcf7-form textarea:focus,
.wpcf7-form select:focus {
	border-color: #2E7D32;
	outline: none;
	box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.12);
	background: #ffffff;
}

.wpcf7-form textarea { min-height: 140px; resize: vertical; }

.wpcf7-form input[type="submit"] {
	background-color: #2E7D32 !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 10px !important;
	padding: 14px 40px !important;
	font-family: 'Inter', sans-serif !important;
	font-weight: 700 !important;
	font-size: 0.95rem !important;
	cursor: pointer !important;
	transition: background-color 0.28s ease !important;
}

.wpcf7-form input[type="submit"]:hover {
	background-color: #1B5E20 !important;
}

.wpcf7-response-output {
	border-color: #2E7D32 !important;
	border-radius: 8px !important;
	padding: 12px 16px !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 0.88rem !important;
}

/* =====================================================================
   17. WOOCOMMERCE OVERRIDES
   ===================================================================== */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	background-color: #2E7D32 !important;
	color: #ffffff !important;
	border-radius: 10px !important;
	font-family: 'Inter', sans-serif !important;
	font-weight: 700 !important;
	transition: background-color 0.28s ease !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover {
	background-color: #1B5E20 !important;
	color: #ffffff !important;
}

.woocommerce a.button.alt,
.woocommerce button.button.alt {
	background-color: #C9A84C !important;
	color: #1a1a1a !important;
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
	background-color: #b8972e !important;
}

.woocommerce .price ins,
.woocommerce .amount { color: #2E7D32 !important; font-weight: 700 !important; }

/* =====================================================================
   18. ACCESSIBILITY
   ===================================================================== */

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 3px solid #C9A84C;
	outline-offset: 2px;
}

.skip-link:focus {
	background: #2E7D32;
	color: #fff;
	padding: 10px 20px;
	z-index: 9999;
	position: fixed;
	top: 10px;
	left: 10px;
	border-radius: 6px;
	text-decoration: none;
	font-weight: 700;
}

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

/* =====================================================================
   18b. SINGLE CAMPAIGN PAGE
   ===================================================================== */

/* ── Donation form inside donate card ─────────────────────────── */
.mf-donate-form-wrap { padding: 20px 20px 4px; }

.mf-donate-form__field { margin-bottom: 14px; }
.mf-donate-form__field label {
	display: block; font-family: 'Inter', sans-serif;
	font-size: 0.78rem; font-weight: 700; color: #2a3a2a;
	margin-bottom: 6px; letter-spacing: 0.2px;
}

.mf-donate-form__presets {
	display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 8px;
}

.mf-preset-btn {
	flex: 1; min-width: 56px;
	background: #f4f8f4; border: 1.5px solid #d8e8d8;
	border-radius: 8px; padding: 7px 8px;
	font-family: 'Inter', sans-serif; font-size: 0.82rem; font-weight: 600;
	color: #2E7D32; cursor: pointer;
	transition: all 0.2s;
}
.mf-preset-btn:hover, .mf-preset-btn.is-active {
	background: #2E7D32; border-color: #2E7D32; color: #fff;
}

.mf-donate-form__field input {
	width: 100%; padding: 10px 13px;
	border: 1.5px solid #d8e8d8; border-radius: 8px;
	font-family: 'Inter', sans-serif; font-size: 0.88rem; color: #1a1a1a;
	background: #fafcfa;
	transition: border-color 0.25s, box-shadow 0.25s;
}
.mf-donate-form__field input:focus {
	border-color: #2E7D32; outline: none;
	box-shadow: 0 0 0 3px rgba(46,125,50,0.1);
}

/* Message box */
.mf-donate-msg {
	display: flex; align-items: flex-start; gap: 8px;
	padding: 10px 14px; border-radius: 8px;
	font-family: 'Inter', sans-serif; font-size: 0.85rem;
	margin-bottom: 12px; line-height: 1.5;
}
.mf-donate-msg--error { background: #FFEBEE; color: #b71c1c; border: 1px solid rgba(198,40,40,0.2); }
.mf-donate-msg--info  { background: #E8F5E9; color: #1B5E20; border: 1px solid rgba(46,125,50,0.2); }

/* Success / fail flash messages */
.mf-donation-success, .mf-donation-failed {
	display: flex; align-items: flex-start; gap: 12px;
	padding: 14px 18px; border-radius: 10px; margin: 0 20px 16px;
	font-family: 'Inter', sans-serif; font-size: 0.88rem;
}
.mf-donation-success { background: #E8F5E9; color: #1B5E20; border: 1px solid rgba(46,125,50,0.25); }
.mf-donation-success i, .mf-donation-failed i { font-size: 1.2rem; flex-shrink: 0; margin-top: 2px; }
.mf-donation-success strong { display: block; font-size: 0.95rem; margin-bottom: 3px; }
.mf-donation-success p, .mf-donation-failed p { margin: 0; }
.mf-donation-failed { background: #FFEBEE; color: #b71c1c; border: 1px solid rgba(198,40,40,0.2); }

/* Not-configured notice */
.mf-donate-card__not-configured {
	padding: 12px 20px; background: #f4f8f4;
	border-radius: 8px; font-family: 'Inter', sans-serif;
	font-size: 0.82rem; color: #5a6a5a; margin: 0 20px 16px;
	display: flex; gap: 8px; align-items: flex-start;
}
.mf-donate-card__not-configured i { color: #2E7D32; flex-shrink: 0; margin-top: 2px; }

/* ── Single campaign hero (unified image + breadcrumb + title panel) ── */
.mf-camp-hero-v2 { position: relative; }

.mf-camp-hero-v2__media {
	position: relative;
	min-height: min(78vw, 420px);
	max-height: 620px;
	overflow: hidden;
	background: #0a1a0c;
}

.mf-camp-hero-v2__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

.mf-camp-hero-v2__placeholder {
	position: absolute;
	inset: 0;
	background: linear-gradient(145deg, #143218 0%, #2E7D32 48%, #1b3d1f 100%);
}

.mf-camp-hero-v2__gradient {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(
		180deg,
		rgba(6, 16, 8, 0.82) 0%,
		rgba(8, 22, 10, 0.2) 32%,
		rgba(8, 22, 10, 0.15) 52%,
		rgba(4, 12, 6, 0.92) 100%
	);
}

.mf-camp-hero-v2__inner {
	position: relative;
	z-index: 2;
	min-height: min(78vw, 420px);
	max-height: 620px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: stretch;
	padding: 20px 12px 32px;
	box-sizing: border-box;
}

.mf-camp-hero-v2__bottom {
	flex-shrink: 0;
	margin-top: auto;
}

.mf-camp-hero-v2__panel {
	max-width: 42rem;
	padding: 1.25rem 1.35rem;
	background: rgba(0, 0, 0, 0.42);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-radius: 16px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.35);
}

.mf-camp-hero-v2__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 12px;
}

.mf-camp-status {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 14px;
	border-radius: 8px;
	font-family: 'Inter', sans-serif;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.mf-camp-status--ongoing { background: rgba(201, 168, 76, 0.95); color: #1a1a1a; }
.mf-camp-status--completed { background: rgba(90, 90, 90, 0.88); color: #fff; }

.mf-camp-hero-v2__title {
	font-family: 'Playfair Display', Georgia, serif;
	font-size: clamp(1.55rem, 4.2vw, 2.65rem);
	font-weight: 800;
	color: #fff;
	line-height: 1.2;
	margin: 0 0 10px;
	text-shadow: 0 2px 20px rgba(0, 0, 0, 0.35);
}

.mf-camp-hero-v2__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	font-family: 'Inter', sans-serif;
	font-size: 0.875rem;
	color: rgba(255, 255, 255, 0.88);
}
.mf-camp-hero-v2__meta span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
.mf-camp-hero-v2__meta i { color: #d4b968; }

/* Main column — soft curve into content */
.mf-camp-main-v2 {
	position: relative;
	z-index: 3;
	margin-top: -28px;
	padding-bottom: 72px;
	background: linear-gradient(180deg, #e8efe8 0%, #f2f7f2 8%, #fafcfa 22%, #fff 40%);
	border-radius: 22px 22px 0 0;
	box-shadow: 0 -12px 40px rgba(0, 0, 0, 0.06);
}

.mf-camp-main-v2__container {
	padding-top: 40px;
}

.mf-camp-article-card {
	background: #fff;
	border-radius: 18px;
	padding: clamp(1.25rem, 3vw, 2.25rem) clamp(1.15rem, 3vw, 2rem);
	border: 1px solid rgba(46, 125, 50, 0.1);
	box-shadow: 0 8px 32px rgba(27, 60, 30, 0.06);
}

/* Sidebar */
.mf-camp-aside {
	position: sticky;
	top: 92px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.mf-camp-aside__cta {
	background: linear-gradient(160deg, #1b4d22 0%, #2E7D32 55%, #256329 100%);
	color: #fff;
	border-radius: 16px;
	padding: 22px 22px 24px;
	box-shadow: 0 12px 36px rgba(46, 125, 50, 0.25);
	border: 1px solid rgba(255, 255, 255, 0.12);
}

.mf-camp-aside__cta-title {
	font-family: 'Playfair Display', Georgia, serif;
	font-size: 1.25rem;
	font-weight: 800;
	margin: 0 0 10px;
	color: #fff;
}

.mf-camp-aside__cta-text {
	font-family: 'Inter', sans-serif;
	font-size: 0.875rem;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.88);
	margin: 0 0 18px;
}

.mf-camp-aside__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	padding: 14px 20px;
	border-radius: 12px;
	font-family: 'Inter', sans-serif;
	font-size: 0.92rem;
	font-weight: 700;
	text-decoration: none;
	color: #1a2a1a !important;
	background: #C9A84C;
	border: none;
	transition: transform 0.2s, box-shadow 0.2s, background 0.2s;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}
.mf-camp-aside__btn:hover {
	background: #dbb94a;
	color: #1a1a1a !important;
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
}

.mf-camp-aside__back {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: 'Inter', sans-serif;
	font-size: 0.88rem;
	font-weight: 600;
	color: #2E7D32 !important;
	text-decoration: none;
	padding: 10px 4px;
	transition: color 0.2s, gap 0.2s;
}
.mf-camp-aside__back:hover {
	color: #1b5e20 !important;
	gap: 12px;
}

.mf-camp-share--aside {
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
	margin-top: 0;
	padding: 18px 20px;
	background: #fff;
	border: 1px solid rgba(46, 125, 50, 0.12);
	border-radius: 14px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
}

.mf-camp-share--mobile {
	margin-top: 24px;
}

.mf-related-campaigns.mf-related-campaigns--after-single {
	padding-top: 48px;
	padding-bottom: 88px;
	background: #f7faf7;
}

@media (min-width: 576px) {
	.mf-camp-hero-v2__inner {
		padding: 26px 20px 40px;
	}
}

/* Below header the translate ribbon hangs (~34px) + button height — pad hero tops so breadcrumbs aren’t hidden under it */
@media (max-width: 991px) {
	.mf-camp-hero-v2__inner {
		padding-top: 52px;
	}
	.mf-page-hero__content {
		padding-top: 78px;
	}
	.mf-join-hero .container.mf-join-hero__content {
		padding-top: 78px;
	}
}

@media (min-width: 992px) {
	.mf-camp-hero-v2__media,
	.mf-camp-hero-v2__inner {
		min-height: 440px;
		max-height: 560px;
	}
}

/* Legacy body class — keep for any old hooks */
.mf-camp-body { padding-top: 56px; padding-bottom: 80px; }

/* Progress strip */
.mf-camp-progress-strip {
	background: #fff; border-radius: 14px; padding: 24px 28px; margin-bottom: 36px;
	box-shadow: 0 4px 24px rgba(46,125,50,0.09); border: 1px solid #e8f5e9;
}

.mf-camp-progress-strip__amounts {
	display: flex; align-items: flex-end; justify-content: space-between;
	margin-bottom: 10px;
}

.mf-camp-progress-strip__label {
	display: block; font-family: 'Inter', sans-serif;
	font-size: 0.72rem; color: #8a9a8a; text-transform: uppercase; letter-spacing: 0.8px;
	margin-bottom: 3px;
}
.mf-camp-progress-strip__value {
	font-family: 'Inter', sans-serif; font-size: 1.1rem; font-weight: 700; color: #2E7D32;
}
.mf-camp-progress-strip__target .mf-camp-progress-strip__value { color: #666; }
.mf-camp-progress-strip__pct {
	font-family: 'Playfair Display', serif; font-size: 1.8rem; font-weight: 800; color: #2E7D32; line-height: 1;
}

.mf-camp-progress-strip .mf-progress-bar { height: 10px; border-radius: 30px; }

.mf-camp-progress-strip__remaining {
	font-family: 'Inter', sans-serif; font-size: 0.85rem; color: #6a7a6a;
	margin-top: 10px; margin-bottom: 0; display: flex; align-items: center; gap: 7px;
}
.mf-camp-progress-strip__remaining i { color: #C9A84C; }
.mf-camp-progress-strip__remaining strong { color: #2E7D32; }

.mf-camp-progress-strip__completed {
	font-family: 'Inter', sans-serif; font-size: 0.88rem; color: #2E7D32;
	margin-top: 10px; margin-bottom: 0; font-weight: 600;
	display: flex; align-items: center; gap: 7px;
}
.mf-camp-progress-strip__completed i { font-size: 1rem; }

/* Article content */
.mf-camp-content {
	font-family: 'Inter', sans-serif;
	font-size: 1rem; line-height: 1.9; color: #3a4a3a;
}
.mf-camp-content h2,.mf-camp-content h3,.mf-camp-content h4 {
	font-family: 'Playfair Display', serif; color: #1a2a1a;
	margin-top: 32px; margin-bottom: 14px;
}
.mf-camp-content p { margin-bottom: 18px; }
.mf-camp-content img { border-radius: 10px; margin: 20px 0; }
.mf-camp-content blockquote {
	border-left: 4px solid #C9A84C; padding: 14px 20px;
	margin: 24px 0; background: #F9F6EF; border-radius: 0 8px 8px 0;
	font-style: italic; color: #5a6a5a;
}

/* Tags */
.mf-camp-tags {
	display: flex; align-items: center; flex-wrap: wrap; gap: 8px;
	margin-top: 28px; padding-top: 20px; border-top: 1px solid #e8f5e9;
	font-family: 'Inter', sans-serif; font-size: 0.82rem; color: #8a9a8a;
}
.mf-tag-pill {
	background: #F4F8F4; border: 1px solid #d8e8d8;
	color: #4a6a4a !important; padding: 4px 12px; border-radius: 20px;
	text-decoration: none; font-size: 0.82rem; transition: all 0.2s;
}
.mf-tag-pill:hover { background: #2E7D32; border-color: #2E7D32; color: #fff !important; }

/* Share buttons */
.mf-camp-share {
	display: flex; align-items: center; gap: 12px; margin-top: 28px;
	padding: 16px 20px; background: #F4F8F4; border-radius: 10px;
	font-family: 'Inter', sans-serif; flex-wrap: wrap;
}
.mf-camp-share__label { font-size: 0.85rem; font-weight: 600; color: #4a5a4a; white-space: nowrap; }
.mf-camp-share__btns { display: flex; gap: 8px; }

.mf-share-btn {
	width: 36px; height: 36px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 8px; font-size: 0.82rem; text-decoration: none;
	cursor: pointer; border: none; transition: all 0.22s;
}
.mf-share-btn--fb  { background: #1877f2; color: #fff; }
.mf-share-btn--tw  { background: #1a1a1a; color: #fff; }
.mf-share-btn--wa  { background: #25D366; color: #fff; }
.mf-share-btn--copy { background: #e8f5e9; color: #2E7D32; }
.mf-share-btn:hover { transform: translateY(-2px); opacity: 0.9; }

/* Single campaign — donation block (main column, no sidebar) */
.mf-camp-donate-inline {
	margin-bottom: 40px;
	padding: 28px 28px 24px;
	background: linear-gradient(180deg, #f8faf8 0%, #fff 100%);
	border: 1px solid rgba(46, 125, 50, 0.15);
	border-radius: 16px;
	box-shadow: 0 6px 28px rgba(46, 125, 50, 0.08);
}
.mf-camp-donate-inline__head {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	margin-bottom: 20px;
}
.mf-camp-donate-inline__head > i {
	font-size: 1.75rem;
	color: #2e7d32;
	margin-top: 4px;
	flex-shrink: 0;
}
.mf-camp-donate-inline__title {
	font-family: 'Playfair Display', serif;
	font-size: 1.35rem;
	color: #1b4332;
	margin: 0 0 6px;
	font-weight: 700;
}
.mf-camp-donate-inline__lead {
	margin: 0;
	font-size: 0.9rem;
	color: #5a6b5a;
	line-height: 1.45;
}
.mf-camp-donate-inline .mf-donate-form-wrap { padding: 0; }
.mf-camp-donate-inline .mf-donate-card__btn,
.mf-camp-donate-inline__btn {
	margin: 12px 0 0;
	width: 100%;
	max-width: 100%;
}
.mf-camp-donate-inline .mf-donation-success,
.mf-camp-donate-inline .mf-donation-failed { margin-bottom: 16px; }

/* ── DONATE CARD (sidebar) ─────────────────────────────────────── */

.mf-donate-card {
	position: sticky; top: 88px;
	background: #fff; border-radius: 16px;
	box-shadow: 0 8px 40px rgba(46,125,50,0.13);
	border: 1px solid rgba(46,125,50,0.1);
	overflow: hidden;
}

.mf-donate-card__header {
	background: linear-gradient(135deg,#1B5E20 0%,#2E7D32 100%);
	padding: 28px 24px; text-align: center;
}

.mf-donate-card__icon {
	font-size: 2.2rem; color: #C9A84C; display: block; margin-bottom: 10px;
}

.mf-donate-card__header h3 {
	font-family: 'Playfair Display', serif;
	color: #fff; font-size: 1.2rem; font-weight: 700; margin-bottom: 8px;
}

.mf-donate-card__hadith {
	font-family: 'Inter', sans-serif; font-size: 0.78rem;
	color: rgba(255,255,255,0.75); font-style: italic; line-height: 1.5; margin: 0;
}

.mf-donate-card__stats {
	display: flex; padding: 20px 20px 0; gap: 0; border-bottom: 1px solid #f0f4f0;
	margin-bottom: 16px;
}

.mf-donate-card__stat {
	flex: 1; text-align: center; padding: 0 10px 16px;
}

.mf-donate-card__stat + .mf-donate-card__stat {
	border-left: 1px solid #f0f4f0;
}

.mf-donate-card__stat-val {
	display: block; font-family: 'Playfair Display', serif;
	font-size: 1.1rem; font-weight: 800; color: #2E7D32; line-height: 1;
}

.mf-donate-card__stat--pct .mf-donate-card__stat-val { color: #C9A84C; font-size: 1.3rem; }

.mf-donate-card__stat-label {
	display: block; font-family: 'Inter', sans-serif;
	font-size: 0.7rem; color: #8a9a8a; text-transform: uppercase;
	letter-spacing: 0.7px; margin-top: 4px;
}

.mf-donate-card__bar { margin: 0 20px 20px; height: 8px; }

.mf-donate-card__btn {
	display: flex; align-items: center; justify-content: center; gap: 10px;
	background-color: #2E7D32; color: #fff !important;
	font-family: 'Inter', sans-serif; font-weight: 700; font-size: 1rem;
	padding: 16px 24px; text-decoration: none !important;
	margin: 0 20px 16px; border-radius: 8px;
	transition: background-color 0.28s, transform 0.2s;
}
.mf-donate-card__btn:hover { background-color: #1B5E20; transform: translateY(-2px); }
.mf-donate-card__btn i { color: #C9A84C; }

.mf-donate-card__completed {
	display: flex; align-items: center; justify-content: center; gap: 8px;
	padding: 14px 20px; margin: 0 20px 16px; border-radius: 8px;
	background: #F4F8F4; color: #2E7D32;
	font-family: 'Inter', sans-serif; font-size: 0.9rem; font-weight: 600;
}

.mf-donate-card__barakallah {
	text-align: center; padding: 12px 20px 20px;
	font-family: 'Scheherazade New', 'Traditional Arabic', serif;
	font-size: 0.88rem; color: #aaa; margin: 0;
	border-top: 1px solid #f0f4f0;
}

/* Related campaigns */
.mf-related-campaigns {
	padding: 72px 0; background: #F4F8F4;
}

/* Responsive — single campaign */
@media (max-width: 991px) {
	.mf-camp-aside { position: static; }
	.mf-camp-main-v2 { margin-top: -20px; border-radius: 18px 18px 0 0; }
	.mf-donate-card { position: static; margin-top: 8px; }
}

@media (max-width: 767px) {
	.mf-camp-hero-v2__panel {
		padding: 1rem 1.1rem;
		border-radius: 14px;
	}
	.mf-camp-main-v2__container { padding-top: 28px; }
	.mf-camp-progress-strip { padding: 18px 16px; }
	.mf-camp-progress-strip__pct { font-size: 1.4rem; }
	.mf-donate-card__header { padding: 22px 18px; }
}

/* =====================================================================
   19. RESPONSIVE
   ===================================================================== */

@media (max-width: 1199px) {
	.mf-section,
	#mf-campaigns,
	#mf-about,
	#mf-gallery,
	.mf-volunteer-why,
	.mf-contact-section,
	.mf-campaigns-grid-section { padding: 88px 0; }

	.mf-section-heading h2 { font-size: 1.9rem; }
	.mf-page-hero__title   { font-size: 2.4rem; }
}

@media (max-width: 991px) {
	.mf-hero-img,
	#slider .carousel-item img { height: 500px; }

	.mf-hero-heading,
	#slider .slider-title,
	.slider-title { font-size: 2.2rem !important; }

	.mf-about-content { padding-left: 0; margin-top: 52px; }
	.mf-about-content h2 { font-size: 1.75rem; }
	.mf-about-img-wrap::before,
	.mf-about-img-wrap::after { display: none; }

	.mf-gallery-grid { grid-template-columns: repeat(2, 1fr); }

	.mf-contact-info { padding-right: 0; margin-bottom: 32px; }
	.mf-contact-form-wrap { padding: 32px; }

	.mf-vol-form-wrap { padding: 32px; }

	.mf-page-hero__content { padding: 48px 0 64px; }
	.mf-join-hero .container.mf-join-hero__content { padding: 48px 0 100px; }
	.mf-page-hero__title { font-size: 2rem; }
}

@media (max-width: 767px) {
	.mf-hero-img,
	#slider .carousel-item img { height: 400px; }

	.mf-hero-heading,
	#slider .slider-title,
	.slider-title { font-size: 1.75rem !important; }

	.mf-bismillah { font-size: 1.4rem; }

	.mf-section,
	#mf-campaigns,
	#mf-about,
	#mf-gallery,
	.mf-volunteer-why,
	.mf-contact-section,
	.mf-campaigns-grid-section { padding: 72px 0; }

	.mf-section-heading h2 { font-size: 1.6rem; }
	.mf-section-heading     { margin-bottom: 40px; }

	.mf-page-hero__title    { font-size: 1.75rem; }
	.mf-page-hero__arabic   { font-size: 1.4rem; }

	.mf-vol-form .mf-form-row {
		flex-direction: column;
		gap: 0;
	}

	.mf-gallery-grid { grid-template-columns: 1fr; gap: 12px; }

	.mf-filter-tabs { flex-wrap: wrap; }

	.mf-campaigns-filter-bar { top: 60px; }

	.mf-vol-form-wrap,
	.mf-contact-form-wrap { padding: 24px; }

	.single .entry-title { font-size: 1.7rem; }
}

@media (max-width: 575px) {
	.mf-hero-img,
	#slider .carousel-item img { height: 320px; }

	.mf-hero-heading,
	#slider .slider-title,
	.slider-title { font-size: 1.5rem !important; }

	.mf-campaign-amounts { flex-direction: column; gap: 10px; }

	#slider .carousel-control-prev { left: 10px !important; }
	#slider .carousel-control-next { right: 10px !important; }
}

/* =====================================================================
   MODERN UI OVERHAUL — New components & global improvements
   ===================================================================== */

/* ── PAGE HERO — image + overlay + breadcrumb (extra vertical rhythm vs. content below) ─ */
.mf-page-hero {
	position: relative;
	min-height: 300px;
	display: flex;
	align-items: center;
	background: #0d2810;
	background-size: cover;
	background-position: center center;
	overflow: hidden;
}
.mf-page-hero::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 72px;
	background: linear-gradient(to bottom, transparent, rgba(255,255,255,0.07));
	pointer-events: none;
	z-index: 2;
}
.mf-page-hero__overlay {
	position: absolute;
	inset: 0;
	/* Base tint — Join Us–style green wash (Customizer may override with !important) */
	background: rgba(10, 30, 12, 0.78);
	z-index: 1;
}
.mf-page-hero__content {
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 20px;
	padding: 56px 0 84px;
	width: 100%;
}
.mf-page-hero__content > .mf-breadcrumb.mf-breadcrumb--hero {
	align-self: center;
}
.mf-page-hero__arabic {
	display: block;
	font-family: 'Scheherazade New', 'Noto Nastaliq Urdu', serif;
	font-size: 1.15rem;
	color: rgba(201,168,76,0.88);
	margin: 0;
	direction: rtl;
	line-height: 1.35;
}
.mf-page-hero__title {
	font-family: 'Playfair Display', Georgia, serif;
	font-size: 2.6rem;
	font-weight: 800;
	color: #fff;
	margin: 0;
	text-shadow: 0 2px 12px rgba(0,0,0,0.3);
}
.mf-page-hero__subtitle {
	font-size: 0.95rem;
	color: rgba(255,255,255,0.78);
	max-width: 560px;
	margin: 0 auto;
	line-height: 1.55;
}

/* First content band after inner-page hero — clear separation from green block */
.mf-page-hero + .mf-section,
.mf-page-hero + .mf-cp-section,
.mf-page-hero + .mf-ap-section {
	padding-top: 108px;
	padding-bottom: 112px;
}

/* Join Us page hero — same min-height / flex as .mf-page-hero; BG URL set inline on element */
.mf-join-hero {
	position: relative;
	min-height: 300px;
	display: flex;
	align-items: center;
	background-size: cover;
	background-position: center;
	overflow: hidden;
}
.mf-join-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(10, 30, 12, 0.78);
	z-index: 0;
	pointer-events: none;
}
.mf-join-hero .container.mf-join-hero__content {
	position: relative;
	z-index: 1;
	padding: 56px 0 120px;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 20px;
}
.mf-join-hero .container.mf-join-hero__content > .mf-breadcrumb.mf-breadcrumb--hero {
	align-self: center;
}
.mf-join-hero h1 {
	font-family: 'Playfair Display', serif;
	font-size: 2.6rem;
	font-weight: 800;
	color: #fff;
	margin: 0;
	text-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
}
.mf-join-hero > .container.mf-join-hero__content > p {
	color: rgba(255, 255, 255, 0.75);
	font-size: 1rem;
	margin: 0 auto;
	line-height: 1.65;
	max-width: 580px;
}

/* Breadcrumb — default (fallback) */
.mf-breadcrumb {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	font-size: .8rem;
	color: rgba(255,255,255,0.6);
	margin-top: 8px;
}
.mf-breadcrumb a { color: rgba(255,255,255,0.75); text-decoration: none; transition: color .2s; }
.mf-breadcrumb a:hover { color: #C9A84C; }
.mf-breadcrumb span.sep { color: rgba(255,255,255,0.4); }
.mf-breadcrumb span.current { color: rgba(255,255,255,0.9); }

/* Inner hero + Join + campaign — breadcrumb pill (dark translucent chip), centered with titles */
.mf-breadcrumb.mf-breadcrumb--hero {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	row-gap: 4px;
	width: auto;
	max-width: 100%;
	margin: 0;
	padding: 5px 14px;
	box-sizing: border-box;
	min-height: 30px;
	background: rgba(0, 0, 0, 0.42);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 20px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
	font-family: 'Inter', system-ui, sans-serif;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	line-height: 1.35;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.92);
	margin-top: 0;
}
.mf-breadcrumb.mf-breadcrumb--hero a {
	color: rgba(255, 255, 255, 0.92);
	text-decoration: none;
	transition: color 0.2s;
}
.mf-breadcrumb.mf-breadcrumb--hero a:hover {
	color: #e8d5a3;
}
.mf-breadcrumb.mf-breadcrumb--hero span.sep {
	color: rgba(255, 255, 255, 0.4);
	font-weight: 600;
	margin: 0 2px;
}
.mf-breadcrumb.mf-breadcrumb--hero span.current {
	color: #fff;
	font-weight: 800;
}

/* Hero breadcrumbs: minimal text row on small screens (no heavy pill), centered like hero titles */
@media (max-width: 767px) {
	.mf-page-hero__content > .mf-breadcrumb.mf-breadcrumb--hero,
	.mf-join-hero .container.mf-join-hero__content > .mf-breadcrumb.mf-breadcrumb--hero {
		align-self: center;
		width: auto;
		max-width: calc(100% - 32px);
	}
	.mf-breadcrumb.mf-breadcrumb--hero {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		gap: 4px 6px;
		width: auto;
		max-width: 100%;
		box-sizing: border-box;
		margin: 12px auto 18px;
		padding: 12px 12px 14px;
		min-height: 0;
		background: transparent;
		border: none;
		border-radius: 0;
		box-shadow: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.22);
		font-size: 0.65rem;
		font-weight: 600;
		letter-spacing: 0.05em;
		line-height: 1.4;
		text-transform: uppercase;
		text-align: center;
		color: rgba(255, 255, 255, 0.88);
	}
	.mf-breadcrumb.mf-breadcrumb--hero a {
		color: rgba(255, 255, 255, 0.95);
	}
	.mf-breadcrumb.mf-breadcrumb--hero span.sep {
		color: rgba(255, 255, 255, 0.35);
		margin: 0 1px;
	}
	.mf-breadcrumb.mf-breadcrumb--hero span.current {
		color: #fff;
		font-weight: 700;
	}

}

@media (max-width: 575px) {
	.mf-join-hero h1 { font-size: 1.9rem; }
	.mf-breadcrumb.mf-breadcrumb--hero {
		font-size: 0.62rem;
		padding: 14px 14px 14px;
		margin: 14px auto 18px;
	}
}

/* ── SECTION EYEBROW TAG (compact chip, matches modern buttons) ─── */
.mf-section-eyebrow,.mf-label-tag {
	display: inline-block;
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: var(--mf-accent, #C9A84C);
	background: rgba(201,168,76,.1);
	padding: 5px 16px;
	border-radius: 8px;
	margin-bottom: 12px;
	border: 1px solid rgba(201,168,76,.25);
}

/* ── SERVICES SECTION (home) ─────────────────────────────────────── */
.mf-services-section {
	background: #fff;
	padding: 104px 0 72px; /* Extra top to clear the floating donation card */
}
.mf-services-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
	margin-top: 48px;
}
.mf-service-card {
	background: #f9fdf9;
	border: 1.5px solid rgba(46,125,50,.1);
	border-radius: 18px;
	padding: 36px 28px 32px;
	text-align: center;
	transition: transform .3s, box-shadow .3s, border-color .3s;
	position: relative;
	overflow: hidden;
}
.mf-service-card::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(46,125,50,.04) 0%, transparent 60%);
	opacity: 0;
	transition: opacity .3s;
}
.mf-service-card:hover { transform: translateY(-6px); box-shadow: 0 20px 50px rgba(46,125,50,.12); border-color: rgba(46,125,50,.3); }
.mf-service-card:hover::before { opacity: 1; }
.mf-service-card__icon {
	width: 72px;
	height: 72px;
	background: linear-gradient(135deg, #2E7D32, #43A047);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px;
	font-size: 1.6rem;
	color: #fff;
	box-shadow: 0 8px 24px rgba(46,125,50,.3);
	transition: transform .3s;
}
.mf-service-card:hover .mf-service-card__icon { transform: scale(1.1) rotate(-5deg); }
.mf-service-card__title {
	font-size: 1.25rem;
	font-weight: 700;
	color: #1a2a1a;
	margin-bottom: 12px;
	font-family: 'Playfair Display', serif;
}
.mf-service-card__desc { font-size: .9rem; color: #666; line-height: 1.7; }
.mf-services-cta { text-align: center; margin-top: 40px; }

/* ── CAMPAIGN CARDS — improved ───────────────────────────────────── */
.mf-campaign-card {
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 4px 20px rgba(0,0,0,.07);
	transition: transform .3s cubic-bezier(.4,0,.2,1), box-shadow .3s;
	border: 1px solid rgba(0,0,0,.06);
	display: flex;
	flex-direction: column;
}
.mf-campaign-card:hover { transform: translateY(-6px); box-shadow: 0 16px 48px rgba(46,125,50,.15); }
.card-img-wrap { position: relative; overflow: hidden; height: 220px; }
.card-img-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; display: block; }
.mf-campaign-card:hover .card-img-wrap img { transform: scale(1.06); }
.card-status {
	position: absolute;
	top: 14px;
	right: 14px;
	padding: 4px 14px;
	border-radius: 8px;
	font-size: .72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .5px;
	backdrop-filter: blur(8px);
}
.card-status.ongoing   { background: rgba(201,168,76,.92); color: #1a1a1a; }
.card-status.completed { background: rgba(46,125,50,.9);   color: #fff; }
.card-status.urgent    { background: rgba(198,40,40,.9);   color: #fff; }
.card-status.upcoming  { background: rgba(21,101,192,.9);  color: #fff; }
.card-status.paused    { background: rgba(100,100,100,.85); color: #fff; }
.card-body { padding: 20px 22px 22px; flex: 1; display: flex; flex-direction: column; }
.card-title { font-size: 1.05rem; font-weight: 700; margin-bottom: 8px; line-height: 1.4; }
.card-title a { color: #1a2a1a; text-decoration: none; transition: color .2s; }
.card-title a:hover { color: var(--mf-primary, #2E7D32); }
.card-excerpt { font-size: .875rem; color: #777; margin-bottom: 14px; line-height: 1.6; flex: 1; }
.mf-campaign-amounts { display: flex; gap: 20px; margin-bottom: 10px; }
.amount-label { display: block; font-size: .72rem; color: #999; font-weight: 600; text-transform: uppercase; letter-spacing: .5px; }
.amount-value { display: block; font-size: 1rem; font-weight: 700; color: #1a2a1a; margin-top: 2px; }
.raised-value { color: var(--mf-primary, #2E7D32); }
.mf-progress-wrap { margin-bottom: 16px; }
.mf-progress-percent { font-size: .75rem; color: #888; font-weight: 600; text-align: right; margin-bottom: 4px; }
.mf-progress-bar {
	height: 6px;
	background: #eee;
	border-radius: 6px;
	overflow: hidden;
}
.mf-progress-fill {
	height: 100%;
	background: linear-gradient(90deg, var(--mf-primary,#2E7D32), var(--mf-accent,#C9A84C));
	border-radius: 6px;
	transition: width 1s ease;
}
.mf-donate-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: linear-gradient(135deg, var(--mf-primary,#2E7D32), #43A047);
	color: #fff;
	padding: 11px 22px;
	border-radius: 8px;
	font-size: .875rem;
	font-weight: 700;
	text-decoration: none;
	transition: transform .2s, box-shadow .2s;
	text-align: center;
	justify-content: center;
	box-shadow: 0 4px 14px rgba(46,125,50,.3);
}
.mf-donate-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(46,125,50,.4); color: #fff; }

/* ── BUTTONS — global ────────────────────────────────────────────── */
.mf-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: linear-gradient(135deg, var(--mf-primary,#2E7D32), #43A047);
	color: #fff;
	padding: 12px 28px;
	border-radius: 8px;
	font-size: .9rem;
	font-weight: 700;
	text-decoration: none;
	transition: transform .2s, box-shadow .2s;
	border: none;
	cursor: pointer;
	box-shadow: 0 4px 16px rgba(46,125,50,.3);
}
.mf-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(46,125,50,.4); color: #fff; }
.mf-btn--outline {
	background: transparent;
	color: var(--mf-primary,#2E7D32);
	border: 2px solid var(--mf-primary,#2E7D32);
	box-shadow: none;
}
.mf-btn--outline:hover { background: var(--mf-primary,#2E7D32); color: #fff; }
.mf-btn--gold {
	background: linear-gradient(135deg, var(--mf-accent,#C9A84C), #e0c060);
	color: #1a1a1a;
	box-shadow: 0 4px 16px rgba(201,168,76,.3);
}
.mf-btn--gold:hover { box-shadow: 0 8px 28px rgba(201,168,76,.45); color: #1a1a1a; }

/* ── STATS BAR — refined ─────────────────────────────────────────── */
.mf-stats-bar {
	background: linear-gradient(135deg,#0d2010 0%,#1a4020 50%,#0d2010 100%);
	padding: 28px 0;
	position: relative;
	overflow: hidden;
}
.mf-stats-bar::before {
	content: '';
	position: absolute;
	inset: 0;
	background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.02'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
	pointer-events: none;
}
.mf-stats-bar__inner { display: flex; align-items: center; justify-content: center; gap: 0; flex-wrap: wrap; }
.mf-stat-item { text-align: center; padding: 8px 40px; }
.mf-stat-item__num {
	display: block;
	font-size: 2rem;
	font-weight: 800;
	color: #fff;
	font-family: 'Playfair Display', serif;
	line-height: 1;
	transition: transform .3s;
}
.mf-stat-item__num--gold { color: var(--mf-accent,#C9A84C); }
.mf-stat-item__label { display: block; font-size: .78rem; color: rgba(255,255,255,.65); margin-top: 5px; font-weight: 500; text-transform: uppercase; letter-spacing: .5px; }
.mf-stat-divider { width: 1px; height: 50px; background: rgba(255,255,255,.15); flex-shrink: 0; }

/* ── FOOTER — complete styling ───────────────────────────────────── */
.mf-footer { color: rgba(255,255,255,.88); }
.mf-footer__main { padding: 64px 0 40px; }
.mf-footer__brand-name {
	font-family: 'Playfair Display', serif;
	font-size: 1.3rem;
	font-weight: 800;
	color: #fff;
	margin: 12px 0 10px;
}
.mf-footer__logo { max-height: 55px; width: auto; margin-bottom: 4px; }
.mf-footer__brand-desc { color: rgba(255,255,255,.65); font-size: .875rem; line-height: 1.7; margin-bottom: 18px; }
.mf-footer__brand-socials { display: flex; gap: 10px; flex-wrap: wrap; }
.mf-footer__brand-socials a {
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255,255,255,.1);
	color: rgba(255,255,255,.8);
	font-size: .85rem;
	border: 1px solid rgba(255,255,255,.12);
	text-decoration: none;
	transition: background .22s, color .22s, transform .2s;
}
.mf-footer__brand-socials a:hover { background: var(--mf-accent,#C9A84C); color: #1a1a1a; transform: translateY(-2px); border-color: transparent; }
.mf-footer__col-title { font-size: .85rem; font-weight: 700; color: #fff; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 16px; padding-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,.12); }
.mf-footer__links { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.mf-footer__links li a { color: rgba(255,255,255,.65); text-decoration: none; font-size: .875rem; transition: color .2s, padding-left .2s; display: flex; align-items: center; gap: 6px; }
.mf-footer__links li a::before { content: '›'; color: var(--mf-accent,#C9A84C); font-weight: 700; }
.mf-footer__links li a:hover { color: #fff; padding-left: 4px; }
.mf-footer__contact-list { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.mf-footer__contact-list li { display: flex; align-items: flex-start; gap: 10px; font-size: .875rem; color: rgba(255,255,255,.72); }
.mf-footer__contact-list li i { color: var(--mf-accent,#C9A84C); margin-top: 3px; width: 14px; flex-shrink: 0; }
.mf-footer__contact-list li a { color: rgba(255,255,255,.72); text-decoration: none; transition: color .2s; }
.mf-footer__contact-list li a:hover { color: #fff; }

.mf-footer__rule { border: none; border-top: 1px solid rgba(255,255,255,.1); margin: 0; }
.mf-footer__bottom { padding: 20px 0; }
.mf-footer__barakallah { text-align: center; font-size: .85rem; color: rgba(255,255,255,.5); font-style: italic; margin-bottom: 12px; }
.mf-footer__bottom-inner { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; }
.mf-footer__copyright { color: rgba(255,255,255,.5); font-size: .8rem; margin: 0; }
.mf-footer__socials { display: flex; gap: 10px; }
.mf-footer__socials a { color: rgba(255,255,255,.5); font-size: .85rem; text-decoration: none; transition: color .2s; }
.mf-footer__socials a:hover { color: var(--mf-accent,#C9A84C); }

/* Scroll to top (physical bottom-right; left:auto avoids RTL / inherited left) */
.mf-scroll-top {
	position: fixed;
	left: auto !important;
	bottom: 30px;
	right: max(16px, env(safe-area-inset-right, 0px));
	width: 44px;
	height: 44px;
	background: var(--mf-primary,#2E7D32);
	color: #fff;
	border: none;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: .9rem;
	box-shadow: 0 4px 16px rgba(46,125,50,.4);
	opacity: 0;
	visibility: hidden;
	transform: translateY(20px);
	transition: opacity .3s, visibility .3s, transform .3s, background .2s;
	z-index: 999;
}
.mf-scroll-top.is-visible { opacity: 1; visibility: visible; transform: none; }
.mf-scroll-top:hover { background: #1B5E20; }

/* Footer — collapsible link columns on small screens */
.mf-footer__details {
	border: none;
	margin: 0;
	padding: 0;
}
.mf-footer__summary {
	list-style: none;
	cursor: pointer;
}
.mf-footer__summary::-webkit-details-marker {
	display: none;
}
.mf-footer__empty-note {
	color: rgba(255, 255, 255, 0.35);
	font-size: 0.82rem;
	font-style: normal;
}
@media (min-width: 992px) {
	.mf-footer__details summary.mf-footer__summary {
		pointer-events: none;
		cursor: default;
	}
}
@media (max-width: 991.98px) {
	.mf-footer__brand-socials--duplicated-below {
		display: none !important;
	}
	.mf-footer__collapsible {
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
		padding-bottom: 6px;
		margin-bottom: 4px;
	}
	.mf-footer__collapsible:last-of-type {
		border-bottom: none;
		margin-bottom: 0;
		padding-bottom: 0;
	}
	.mf-footer__details .mf-footer__links,
	.mf-footer__details .mf-footer__contact-list {
		margin-top: 8px;
		margin-bottom: 10px;
		padding-bottom: 4px;
	}
	.mf-footer__summary {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 10px;
		width: 100%;
		margin-bottom: 0 !important;
		padding-bottom: 10px !important;
		border-bottom: none !important;
	}
	.mf-footer__summary::after {
		content: '';
		flex-shrink: 0;
		width: 0;
		height: 0;
		border-left: 5px solid transparent;
		border-right: 5px solid transparent;
		border-top: 6px solid rgba(201, 168, 76, 0.85);
		transition: transform 0.2s ease;
	}
	.mf-footer__details[open] .mf-footer__summary::after {
		transform: rotate(180deg);
	}
}

/* Footer — tablet/mobile: center columns; tight padding on phones */
@media (max-width: 991.98px) {
	.mf-footer__grid > [class*="col-"]:first-child {
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
		padding-bottom: 1rem;
		margin-bottom: 0.5rem;
	}
	.mf-footer__main .row > [class*="col-"] {
		text-align: center;
	}
	.mf-footer__brand {
		text-align: center;
		padding-right: 0 !important;
	}
	.mf-footer__logo {
		margin-left: auto;
		margin-right: auto;
	}
	.mf-footer__brand-socials {
		justify-content: center;
	}
	.mf-footer__col-title {
		text-align: center;
	}
	.mf-footer__links {
		align-items: center;
	}
	.mf-footer__links li a {
		justify-content: center;
		max-width: none;
		white-space: normal;
	}
	.mf-footer__contact-list {
		align-items: stretch;
		margin-bottom: 0;
		max-width: 22rem;
		margin-left: auto;
		margin-right: auto;
		width: 100%;
	}
	.mf-footer__contact-list li {
		justify-content: flex-start;
		align-items: flex-start;
		flex-wrap: nowrap;
		text-align: left;
		gap: 10px;
	}
	.mf-footer__contact-list li > span,
	.mf-footer__contact-list li > a {
		text-align: left;
		flex: 1;
		min-width: 0;
	}
	.mf-footer .widget,
	.mf-footer .widget-title {
		text-align: center;
	}
	.mf-footer .widget ul {
		padding-left: 0;
		list-style: none;
	}
}

@media (max-width: 767.98px) {
	.mf-footer__main {
		padding: 40px 0 28px;
	}
	.mf-footer__brand {
		padding-bottom: 4px;
	}
	.mf-footer__bottom {
		padding-top: 18px;
		padding-bottom: max(24px, env(safe-area-inset-bottom, 0px));
	}
	.mf-footer__barakallah {
		font-size: 0.8125rem;
		line-height: 1.55;
		padding-left: 8px;
		padding-right: 8px;
	}
	.mf-footer__bottom-inner {
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: 14px;
	}
	.mf-footer__copyright {
		line-height: 1.55;
		max-width: 22rem;
	}
	.mf-footer__socials {
		justify-content: center;
		flex-wrap: wrap;
		gap: 12px;
	}
	.mf-footer__socials a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 44px;
		min-height: 44px;
		font-size: 1rem;
	}
	.mf-scroll-top {
		left: auto !important;
		bottom: max(16px, calc(env(safe-area-inset-bottom, 0px) + 12px));
		right: max(16px, env(safe-area-inset-right, 0px));
		width: 48px;
		height: 48px;
	}
}
@media (max-width: 575.98px) {
	.mf-footer__main {
		padding: 28px 0 18px;
	}
	.mf-footer__brand-desc {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		overflow: hidden;
		line-height: 1.55;
	}
	.mf-footer__links--campaigns li:nth-child(n + 3) {
		display: none;
	}
	.mf-footer__barakallah {
		font-size: 0.78rem;
	}
}

/* ── GALLERY PAGE ─────────────────────────────────────────────────── */
.mf-gallery-page-layout {
	display: grid;
	grid-template-columns: minmax(200px, 220px) 1fr;
	gap: 40px;
	align-items: start;
	padding: 40px 0;
}
.mf-gallery-sidebar {
	position: sticky;
	top: 92px;
}
.mf-gallery-sidebar__inner {
	background: #f6f7f6;
	border: 1px solid rgba(0, 0, 0, 0.06);
	border-radius: 14px;
	padding: 18px 14px;
}
.mf-gallery-sidebar__label {
	display: block;
	font-family: 'Inter', system-ui, sans-serif;
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #9ca3af;
	margin: 0 0 14px 8px;
}
.mf-gallery-sidebar__nav { margin: 0; }
.mf-gallery-sidebar__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 3px;
}
.mf-gallery-sidebar__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 12px;
	border-radius: 10px;
	color: #4b5563;
	font-family: 'Inter', system-ui, sans-serif;
	font-size: 0.875rem;
	font-weight: 500;
	text-decoration: none;
	transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
	border: none;
}
.mf-gallery-sidebar__link:hover {
	background: rgba(255, 255, 255, 0.85);
	color: #111827;
}
.mf-gallery-sidebar__link.is-active {
	background: #fff;
	color: #111827;
	font-weight: 600;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04), 0 0 0 1px rgba(0, 0, 0, 0.05);
}
.mf-gallery-sidebar__name {
	flex: 1;
	min-width: 0;
	line-height: 1.35;
}
.mf-gallery-sidebar__count {
	flex-shrink: 0;
	font-size: 0.75rem;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	color: #9ca3af;
	background: none;
	padding: 0;
	border-radius: 0;
	min-width: 1.25em;
	text-align: right;
}
.mf-gallery-sidebar__link.is-active .mf-gallery-sidebar__count {
	color: #6b7280;
}

.mf-gallery-type-tabs { display: flex; gap: 8px; margin-bottom: 24px; }
.mf-gallery-type-tab {
	padding: 8px 22px;
	border-radius: 8px;
	border: 1.5px solid #ddd;
	background: #fff;
	color: #555;
	font-size: .85rem;
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
	transition: all .2s;
}
.mf-gallery-type-tab.is-active,.mf-gallery-type-tab:hover {
	background: var(--mf-primary,#2E7D32);
	color: #fff;
	border-color: var(--mf-primary,#2E7D32);
}

.mf-gallery-grid-page {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
}
.mf-gallery-grid-page .mf-gallery-item {
	border-radius: 12px;
	overflow: hidden;
	aspect-ratio: 4/3;
	position: relative;
	cursor: pointer;
}
.mf-gallery-grid-page .mf-gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .5s ease;
}
.mf-gallery-grid-page .mf-gallery-item:hover img { transform: scale(1.06); }
.mf-gallery-grid-page .mf-gallery-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,.5);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: opacity .3s;
	color: #fff;
	font-size: 1.5rem;
}
.mf-gallery-grid-page .mf-gallery-item:hover .mf-gallery-overlay { opacity: 1; }

/* ── FAQ ACCORDION ────────────────────────────────────────────────── */
.mf-faq-section { padding: 60px 0; background: #f8fdf8; }
.mf-faq-layout { display: grid; grid-template-columns: 220px 1fr; gap: 36px; align-items: start; }
.mf-faq-sidebar { position: sticky; top: 90px; }
.mf-faq-sidebar__title { font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: #888; margin-bottom: 10px; }
.mf-faq-sidebar__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.mf-faq-sidebar__list a {
	display: block;
	padding: 8px 12px;
	border-radius: 8px;
	color: #555;
	font-size: .85rem;
	font-weight: 500;
	text-decoration: none;
	border-left: 3px solid transparent;
	transition: all .2s;
	cursor: pointer;
}
.mf-faq-sidebar__list a:hover { background: rgba(46,125,50,.07); color: #2E7D32; border-left-color: var(--mf-primary,#2E7D32); }
.mf-faq-sidebar__list a.is-active { background: rgba(46,125,50,.1); color: var(--mf-primary,#2E7D32); font-weight: 700; border-left-color: var(--mf-primary,#2E7D32); }

.mf-faq-list { display: flex; flex-direction: column; gap: 10px; }
.mf-faq-item {
	background: #fff;
	border: 1.5px solid rgba(46,125,50,.1);
	border-radius: 12px;
	overflow: hidden;
	transition: box-shadow .2s, border-color .2s;
}
.mf-faq-item.is-hidden { display: none; }
.mf-faq-item.is-open { border-color: var(--mf-primary,#2E7D32); box-shadow: 0 4px 20px rgba(46,125,50,.1); }
.mf-faq-btn {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 20px;
	background: none;
	border: none;
	cursor: pointer;
	font-family: inherit;
	font-size: .95rem;
	font-weight: 600;
	color: #1a2a1a;
	text-align: right;
	gap: 12px;
	transition: color .2s;
}
.mf-faq-btn:hover,.mf-faq-item.is-open .mf-faq-btn { color: var(--mf-primary,#2E7D32); }
.mf-faq-btn__icon {
	width: 28px;
	height: 28px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	border: 1.5px solid rgba(46,125,50,.3);
	color: var(--mf-primary,#2E7D32);
	font-size: .75rem;
	transition: transform .3s, background .2s;
}
.mf-faq-item.is-open .mf-faq-btn__icon { transform: rotate(45deg); background: var(--mf-primary,#2E7D32); color: #fff; border-color: transparent; }
.mf-faq-answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height .35s ease, padding .35s ease;
}
.mf-faq-answer__inner { padding: 0 20px 18px; font-size: .9rem; color: #555; line-height: 1.8; }
.mf-faq-item.is-open .mf-faq-answer { max-height: 500px; }

/* ── ABOUT PAGE ───────────────────────────────────────────────────── */
.mf-about-page { background: #fff; }
.mf-about-mission-vision {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 32px;
}
.mf-mv-card {
	background: #f9fdf9;
	border-radius: 16px;
	padding: 36px 32px;
	border: 1.5px solid rgba(46,125,50,.1);
}
.mf-mv-card__icon {
	width: 56px;
	height: 56px;
	background: linear-gradient(135deg, var(--mf-primary,#2E7D32), #43A047);
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 1.3rem;
	margin-bottom: 18px;
}
.mf-mv-card h3 { font-size: 1.2rem; font-weight: 700; color: #1a2a1a; margin-bottom: 10px; }
.mf-mv-card p { color: #666; font-size: .9rem; line-height: 1.75; }

/* Stat counters */
.mf-counters-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	text-align: center;
}
.mf-counter-item {
	background: linear-gradient(135deg, #f9fdf9, #fff);
	border: 1.5px solid rgba(46,125,50,.1);
	border-radius: 16px;
	padding: 32px 20px;
	transition: transform .3s, box-shadow .3s;
}
.mf-counter-item:hover { transform: translateY(-4px); box-shadow: 0 12px 36px rgba(46,125,50,.12); }
.mf-counter-item__num {
	font-family: 'Playfair Display', serif;
	font-size: 2.2rem;
	font-weight: 800;
	color: var(--mf-primary,#2E7D32);
	display: block;
	line-height: 1;
}
.mf-counter-item__label { font-size: .8rem; color: #888; font-weight: 600; text-transform: uppercase; letter-spacing: .5px; margin-top: 8px; display: block; }

/* Timeline */
.mf-timeline { position: relative; padding: 10px 0; }
.mf-timeline::before { content: ''; position: absolute; left: 50%; top: 0; bottom: 0; width: 2px; background: linear-gradient(to bottom, var(--mf-primary,#2E7D32), var(--mf-accent,#C9A84C)); transform: translateX(-50%); }
.mf-timeline-item { display: grid; grid-template-columns: 1fr auto 1fr; gap: 24px; align-items: center; margin-bottom: 36px; }
.mf-timeline-item:nth-child(even) .mf-tl-content { grid-column: 3; text-align: left; }
.mf-timeline-item:nth-child(odd) .mf-tl-content { grid-column: 1; text-align: right; order: -1; }
.mf-tl-dot { width: 14px; height: 14px; background: var(--mf-primary,#2E7D32); border-radius: 50%; border: 3px solid #fff; box-shadow: 0 0 0 3px var(--mf-primary,#2E7D32); flex-shrink: 0; }
.mf-tl-year { font-size: .8rem; font-weight: 700; color: var(--mf-accent,#C9A84C); display: block; margin-bottom: 4px; }
.mf-tl-content h4 { font-size: 1rem; font-weight: 700; color: #1a2a1a; margin-bottom: 4px; }
.mf-tl-content p { font-size: .85rem; color: #666; margin: 0; }

/* Team — About page (minimal cards: type-led, no icon chrome) */
.mf-ap-section--team .mf-team-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(272px, 1fr));
	gap: 24px;
	align-items: stretch;
}
.mf-team-card {
	background: #fff;
	border: 1px solid rgba(15, 23, 15, 0.08);
	border-radius: 16px;
	box-shadow: 0 1px 2px rgba(15, 23, 15, 0.04);
	text-align: left;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.mf-team-card:hover {
	border-color: rgba(46, 125, 50, 0.18);
	box-shadow: 0 12px 32px rgba(15, 40, 18, 0.08);
	transform: translateY(-2px);
}
.mf-team-card__inner {
	padding: 22px 22px 20px;
}
.mf-team-card__head {
	padding-bottom: 16px;
	margin-bottom: 16px;
	border-bottom: 1px solid rgba(15, 23, 15, 0.07);
}
.mf-team-card__name {
	font-family: 'Inter', system-ui, -apple-system, sans-serif;
	font-size: 1.0625rem;
	font-weight: 600;
	color: #0f172a;
	margin: 0 0 6px;
	line-height: 1.35;
	letter-spacing: -0.02em;
}
.mf-team-card__role {
	font-family: 'Inter', system-ui, -apple-system, sans-serif;
	font-size: 0.8125rem;
	font-weight: 500;
	color: #64748b;
	margin: 0;
	line-height: 1.45;
}
.mf-team-card__meta {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}
.mf-team-meta-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	padding: 10px 0;
	border-bottom: 1px solid rgba(15, 23, 15, 0.06);
	margin: 0;
}
.mf-team-meta-row:first-of-type {
	padding-top: 0;
}
.mf-team-meta-row:last-child {
	border-bottom: none;
	padding-bottom: 0;
}
.mf-team-meta-row__label,
.mf-team-meta-row__value {
	margin: 0;
}
.mf-team-card__meta dd.mf-team-meta-row__value {
	margin-inline-start: 0;
}
.mf-team-meta-row__label {
	flex-shrink: 0;
	font-family: 'Inter', system-ui, -apple-system, sans-serif;
	font-size: 0.6875rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #94a3b8;
	max-width: 42%;
}
.mf-team-meta-row__value {
	font-family: 'Inter', system-ui, -apple-system, sans-serif;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.5;
	color: #334155;
	text-align: right;
	word-break: break-word;
}
@media (max-width: 400px) {
	.mf-team-meta-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
	}
	.mf-team-meta-row__label {
		max-width: none;
	}
	.mf-team-meta-row__value {
		text-align: left;
	}
}

/* ── JOIN US PAGE ─────────────────────────────────────────────────── */
.mf-join-tabs-nav {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 40px;
	padding-bottom: 2px;
	border-bottom: 2px solid #eee;
}
.mf-join-tab-btn {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 11px 22px;
	border-radius: 8px 8px 0 0;
	border: none;
	background: transparent;
	font-family: inherit;
	font-size: .9rem;
	font-weight: 600;
	color: #888;
	cursor: pointer;
	transition: all .25s;
	position: relative;
	bottom: -2px;
	border-bottom: 2px solid transparent;
}
.mf-join-tab-btn:hover { color: var(--mf-primary,#2E7D32); background: rgba(46,125,50,.05); }
.mf-join-tab-btn.is-active { color: var(--mf-primary,#2E7D32); background: rgba(46,125,50,.06); border-bottom-color: var(--mf-primary,#2E7D32); }
.mf-join-tab-btn i { font-size: 1rem; }
.mf-join-tab-content { display: none; }
.mf-join-tab-content.is-active { display: block; }

/* Amount buttons */
.mf-amount-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 14px; }
.mf-amount-btn {
	padding: 12px 8px;
	border: 2px solid rgba(46,125,50,.25);
	border-radius: 10px;
	background: #fff;
	color: #333;
	font-size: .9rem;
	font-weight: 700;
	cursor: pointer;
	transition: all .2s;
	text-align: center;
	font-family: inherit;
}
.mf-amount-btn:hover,.mf-amount-btn.is-active {
	background: var(--mf-primary,#2E7D32);
	color: #fff;
	border-color: var(--mf-primary,#2E7D32);
	transform: scale(1.03);
}

/* Toggle (Daily/Monthly) */
.mf-toggle-group { display: flex; border: 1.5px solid rgba(46,125,50,.2); border-radius: 8px; overflow: hidden; margin-bottom: 20px; width: fit-content; }
.mf-toggle-btn {
	padding: 9px 24px;
	border: none;
	background: transparent;
	font-size: .875rem;
	font-weight: 600;
	color: #888;
	cursor: pointer;
	transition: all .25s;
	font-family: inherit;
}
.mf-toggle-btn.is-active { background: var(--mf-primary,#2E7D32); color: #fff; border-radius: 6px; }

/* Donation form */
.mf-donation-form-card {
	background: #f9fdf9;
	border: 1.5px solid rgba(46,125,50,.12);
	border-radius: 18px;
	padding: 32px 28px;
}
.mf-donation-form-card h3 { font-size: 1.2rem; font-weight: 700; color: #1a2a1a; margin-bottom: 20px; }
.mf-form-group { margin-bottom: 16px; }
.mf-form-group label { display: block; font-size: .85rem; font-weight: 600; color: #444; margin-bottom: 5px; }
.mf-form-group input,.mf-form-group select,.mf-form-group textarea {
	width: 100%;
	padding: 10px 14px;
	border: 1.5px solid #ddd;
	border-radius: 8px;
	font-size: .9rem;
	font-family: inherit;
	transition: border-color .2s, box-shadow .2s;
	background: #fff;
}
.mf-form-group input:focus,.mf-form-group select:focus,.mf-form-group textarea:focus {
	border-color: var(--mf-primary,#2E7D32);
	box-shadow: 0 0 0 3px rgba(46,125,50,.1);
	outline: none;
}
.mf-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.mf-required { color: #e53935; }
.mf-support-notice {
	background: rgba(46,125,50,.06);
	border: 1px solid rgba(46,125,50,.15);
	border-radius: 8px;
	padding: 12px 16px;
	font-size: .82rem;
	color: #555;
	margin: 16px 0;
	display: flex;
	align-items: center;
	gap: 8px;
}
.mf-support-notice a { color: var(--mf-primary,#2E7D32); font-weight: 600; }

/* Career cards */
.mf-career-card {
	background: #fff;
	border: 1.5px solid rgba(46,125,50,.1);
	border-radius: 14px;
	padding: 24px 24px 20px;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	transition: box-shadow .25s, border-color .25s;
	margin-bottom: 16px;
}
.mf-career-card:hover { box-shadow: 0 8px 32px rgba(46,125,50,.12); border-color: rgba(46,125,50,.25); }
.mf-career-card__info { flex: 1; }
.mf-career-card__title { font-size: 1.1rem; font-weight: 700; color: #1a2a1a; margin-bottom: 8px; }
.mf-career-card__subtitle { font-size: .82rem; color: #888; margin-bottom: 12px; }
.mf-career-card__meta { display: flex; gap: 16px; flex-wrap: wrap; }
.mf-career-meta-item { display: flex; align-items: center; gap: 5px; font-size: .8rem; color: #888; }
.mf-career-meta-item i { color: var(--mf-primary,#2E7D32); }
.mf-career-type-badge {
	display: inline-flex;
	align-items: center;
	padding: 3px 12px;
	border-radius: 20px;
	font-size: .72rem;
	font-weight: 700;
}
.mf-career-card__action { flex-shrink: 0; display: flex; align-items: center; }

/* ── SCROLL REVEAL ────────────────────────────────────────────────── */
.mf-reveal { opacity: 0; transform: translateY(28px); transition: opacity .7s ease, transform .7s ease; }
.mf-reveal.is-visible { opacity: 1; transform: none; }
.mf-reveal-delay-1 { transition-delay: .1s; }
.mf-reveal-delay-2 { transition-delay: .2s; }
.mf-reveal-delay-3 { transition-delay: .3s; }

/* ── CAMPAIGN FILTER TABS (updated) ──────────────────────────────── */
.mf-campaigns-filter-bar { background: #fff; border-bottom: 1px solid rgba(46,125,50,.1); padding: 0; position: sticky; top: 70px; z-index: 100; box-shadow: 0 2px 8px rgba(0,0,0,.05); }
.mf-filter-tabs { display: flex; gap: 0; overflow-x: auto; scrollbar-width: none; }
.mf-filter-tabs::-webkit-scrollbar { display: none; }
.mf-filter-tab {
	padding: 14px 20px;
	border: none;
	background: transparent;
	font-size: .85rem;
	font-weight: 600;
	color: #888;
	cursor: pointer;
	white-space: nowrap;
	border-bottom: 2px solid transparent;
	transition: color .2s, border-color .2s;
	font-family: inherit;
}
.mf-filter-tab:hover { color: var(--mf-primary,#2E7D32); }
.mf-filter-tab.active { color: var(--mf-primary,#2E7D32); border-bottom-color: var(--mf-primary,#2E7D32); }
.mf-tab-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 6px; }
.mf-tab-dot--ongoing { background: var(--mf-accent,#C9A84C); }
.mf-tab-dot--completed { background: var(--mf-primary,#2E7D32); }
.mf-tab-dot--urgent { background: #c62828; }
.mf-tab-dot--upcoming { background: #1565C0; }

/* ── MEMBERSHIP TOGGLE ────────────────────────────────────────────── */
.mf-mem-type-tabs { display: flex; gap: 10px; margin-bottom: 24px; flex-wrap: wrap; }
.mf-mem-type-btn {
	padding: 10px 24px;
	border-radius: 10px;
	border: 2px solid rgba(46,125,50,.2);
	background: #fff;
	font-size: .9rem;
	font-weight: 700;
	color: #888;
	cursor: pointer;
	transition: all .2s;
	font-family: inherit;
}
.mf-mem-type-btn.is-active { background: var(--mf-primary,#2E7D32); color: #fff; border-color: var(--mf-primary,#2E7D32); }
.mf-mem-min-amount { font-size: 1rem; font-weight: 700; color: var(--mf-accent,#C9A84C); background: rgba(201,168,76,.1); padding: 8px 18px; border-radius: 8px; margin-bottom: 20px; display: inline-block; }

/* ── ADDRESS CASCADE ──────────────────────────────────────────────── */
.mf-address-section { background: rgba(46,125,50,.04); border: 1px solid rgba(46,125,50,.1); border-radius: 12px; padding: 20px; margin-bottom: 20px; }
.mf-address-section h4 { font-size: .9rem; font-weight: 700; color: var(--mf-primary,#2E7D32); margin-bottom: 16px; display: flex; align-items: center; gap: 7px; }
.mf-address-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

/* ── RESPONSIVE — NEW COMPONENTS ─────────────────────────────────── */
@media (max-width: 1024px) {
	.mf-gallery-page-layout { grid-template-columns: 1fr; gap: 28px; }
	.mf-gallery-sidebar { position: static; top: auto; }
	.mf-gallery-sidebar__inner {
		background: transparent;
		border: none;
		border-radius: 0;
		padding: 0;
	}
	.mf-gallery-sidebar__label {
		margin-left: 0;
		margin-bottom: 10px;
	}
	.mf-gallery-sidebar__list {
		flex-direction: row;
		flex-wrap: nowrap;
		gap: 8px;
		overflow-x: auto;
		overflow-y: hidden;
		padding-bottom: 6px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
	}
	.mf-gallery-sidebar__list::-webkit-scrollbar { height: 4px; }
	.mf-gallery-sidebar__list::-webkit-scrollbar-thumb {
		background: rgba(0, 0, 0, 0.12);
		border-radius: 4px;
	}
	.mf-gallery-sidebar__list li { flex: 0 0 auto; }
	.mf-gallery-sidebar__link {
		padding: 8px 14px;
		border-radius: 8px;
		background: #f3f4f3;
		border: 1px solid transparent;
		white-space: nowrap;
	}
	.mf-gallery-sidebar__link:hover {
		background: #ecefec;
		color: #111827;
	}
	.mf-gallery-sidebar__link.is-active {
		background: #1a2a1a;
		color: #fff;
		box-shadow: none;
		border-color: transparent;
	}
	.mf-gallery-sidebar__link.is-active .mf-gallery-sidebar__count {
		color: rgba(255, 255, 255, 0.72);
	}
	.mf-gallery-sidebar__link:not(.is-active) .mf-gallery-sidebar__count {
		color: #9ca3af;
	}
	.mf-faq-layout { grid-template-columns: 1fr; }
	.mf-faq-sidebar { position: static; }
	.mf-faq-sidebar__list { flex-direction: row; flex-wrap: wrap; }
	.mf-counters-grid { grid-template-columns: 1fr 1fr; }
	.mf-team-grid { grid-template-columns: 1fr; }
	.mf-timeline::before { left: 20px; }
	.mf-timeline-item { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
	.mf-services-grid { grid-template-columns: 1fr; }
	.mf-about-mission-vision { grid-template-columns: 1fr; }
	.mf-gallery-grid-page { grid-template-columns: 1fr 1fr; }
	.mf-team-grid { grid-template-columns: 1fr; }
	.mf-form-row { grid-template-columns: 1fr; }
	.mf-address-grid { grid-template-columns: 1fr; }
	.mf-page-hero__title { font-size: 1.8rem; }
	.mf-join-tabs-nav { gap: 4px; }
	.mf-join-tab-btn { padding: 9px 14px; font-size: .82rem; }
	.mf-amount-grid { grid-template-columns: 1fr 1fr; }
	.mf-career-card { flex-direction: column; }
}
@media (max-width: 576px) {
	.mf-gallery-grid-page { grid-template-columns: 1fr; }
	.mf-counters-grid { grid-template-columns: 1fr 1fr; }
	.mf-stat-item { padding: 8px 20px; }
}

/* ── HERO DONATION FLOATING CARD ──────────────────────────────── */
.mf-don-float-wrap {
	position: relative;
	z-index: 20;
	margin-top: -56px; /* Overlap hero bottom (was -40px + 50px hero padding; padding removed) */
	padding-bottom: 0;
}
.mf-don-float-card {
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 8px 48px rgba(0,0,0,.18), 0 2px 12px rgba(0,0,0,.08);
	padding: 18px 24px;
	display: flex;
	align-items: center;
	gap: 20px;
	border: 1px solid rgba(15, 40, 18, 0.06);
}

/* Brand/label */
.mf-don-float-brand {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-shrink: 0;
}
.mf-don-float-icon {
	width: 44px;
	height: 44px;
	background: linear-gradient(135deg, var(--mf-primary,#2E7D32), #43A047);
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 1.1rem;
	flex-shrink: 0;
}
.mf-don-float-title {
	font-size: .9rem;
	font-weight: 800;
	color: #1a2a1a;
	margin: 0 0 2px;
	white-space: nowrap;
}
.mf-don-float-sub {
	font-size: .72rem;
	color: #888;
	margin: 0;
	white-space: nowrap;
}

/* Divider */
.mf-don-float-divider {
	width: 1px;
	height: 40px;
	background: #e8e8e8;
	flex-shrink: 0;
}

/* Form */
.mf-don-float-form {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 1;
}
.mf-don-float-field {
	position: relative;
	flex: 1;
	min-width: 0;
}
.mf-don-float-field--amount { flex: 0 0 120px; }
.mf-don-float-field-icon {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	color: #aaa;
	font-size: .8rem;
	pointer-events: none;
	z-index: 1;
}
.mf-don-float-field-icon--currency {
	font-size: .85rem;
	font-weight: 800;
	color: #888;
}
.mf-don-float-input {
	width: 100%;
	padding: 10px 12px 10px 32px;
	border: 1.5px solid #e8e8e8;
	border-radius: 10px;
	font-size: .875rem;
	font-family: inherit;
	color: #333;
	background: #f8f9fa;
	transition: border-color .2s, background .2s, box-shadow .2s;
	-webkit-appearance: none;
}
select.mf-don-float-input { padding-right: 28px; }
.mf-don-float-input:focus {
	border-color: var(--mf-primary, #2E7D32);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(46,125,50,.1);
	outline: none;
}
.mf-don-float-input::placeholder { color: #aaa; }
.mf-don-float-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 10px 20px;
	background: var(--mf-primary, #2E7D32);
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: .875rem;
	font-weight: 700;
	cursor: pointer;
	white-space: nowrap;
	font-family: inherit;
	transition: background .2s, transform .2s, box-shadow .2s;
	box-shadow: 0 4px 14px rgba(46,125,50,.35);
	flex-shrink: 0;
}
.mf-don-float-btn:hover {
	background: #1B5E20;
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(46,125,50,.45);
}

/* Nav links */
.mf-don-float-links {
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex-shrink: 0;
}
.mf-don-float-link {
	font-size: .78rem;
	font-weight: 600;
	color: var(--mf-primary, #2E7D32);
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 5px;
	white-space: nowrap;
	transition: color .2s;
	padding: 3px 0;
}
.mf-don-float-link:hover { color: #1B5E20; }
.mf-don-float-link i { font-size: .7rem; opacity: .7; }

/* Message */
.mf-don-float-msg {
	text-align: center;
	font-size: .82rem;
	padding: 8px 16px;
	border-radius: 8px;
	margin-top: 10px;
	background: rgba(46,125,50,.08);
	color: #2E7D32;
}

/* Responsive */
@media (max-width: 991px) {
	.mf-don-float-card {
		flex-wrap: wrap;
		gap: 14px;
		padding: 16px 18px;
	}
	.mf-don-float-divider { display: none; }
	.mf-don-float-brand { width: 100%; }
	.mf-don-float-form { width: 100%; flex-wrap: wrap; }
	.mf-don-float-field { flex: 1 1 calc(50% - 8px); }
	.mf-don-float-field--amount { flex: 0 0 calc(50% - 8px); }
	.mf-don-float-btn { width: 100%; justify-content: center; }
	.mf-don-float-links { flex-direction: row; width: 100%; }
}
@media (max-width: 575px) {
	.mf-don-float-wrap { margin-top: -36px; }
	.mf-don-float-card { border-radius: 14px; padding: 14px; }
	.mf-don-float-field { flex: 1 1 100%; }
	.mf-don-float-field--amount { flex: 1 1 100%; }
}

/* ── PAYMENT METHOD SELECTOR ───────────────────────────────────── */
.mf-payment-methods {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}
.mf-pm-option {
	flex: 1;
	min-width: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 12px;
	border: 2px solid #ddd;
	border-radius: 10px;
	cursor: pointer;
	transition: all .2s;
	background: #fff;
	text-align: center;
}
.mf-pm-option input[type=radio] { position: absolute; opacity: 0; width: 0; height: 0; }
.mf-pm-option:hover { border-color: var(--mf-primary, #2E7D32); }
.mf-pm-option.is-active { border-color: var(--mf-primary, #2E7D32); background: rgba(46,125,50,.06); }
.mf-pm-label { display: flex; align-items: center; justify-content: center; gap: 4px; }
.mf-pm-label img { max-height: 28px; width: auto; }

/* ── TRANSLATE RIBBON (restored) ──────────────────────────────── */
.mf-translate-ribbon{
	position:absolute;bottom:-34px;left:50%;transform:translateX(-50%);
	z-index:9998;display:inline-flex;align-items:center;gap:7px;
	background:#2E7D32;color:#fff;border:none;
	padding:7px 18px 9px;font-family:'Inter',sans-serif;font-size:.8rem;font-weight:700;
	cursor:pointer;border-radius:0 0 10px 10px;
	box-shadow:0 4px 16px rgba(46,125,50,.4);
	transition:opacity .3s,transform .3s,background .22s;white-space:nowrap;
}
.mf-translate-ribbon:hover{background:#1B5E20;}
.mf-translate-ribbon.mf-hidden{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(-6px);}
.mf-translate-ribbon.is-bn{background:#C9A84C;color:#1a1a1a;}

/* Sidebar translate button */
.mf-sidebar__translate-btn{
	display:flex;align-items:center;gap:8px;width:100%;
	padding:10px 14px;border:1.5px solid rgba(46,125,50,.25);
	border-radius:10px;background:rgba(46,125,50,.06);
	color:#2E7D32;font-weight:700;font-size:.875rem;cursor:pointer;
	font-family:inherit;transition:background .2s;
}
.mf-sidebar__translate-btn:hover{background:rgba(46,125,50,.12);}

/* ── JOIN US V2 (portrait cards, modern aesthetic) ─────────────── */
.mf-join-v2 {
	padding: 70px 0 60px;
	background: #f7f9f7;
	position: relative;
	overflow: hidden;
}
.mf-join-v2::before {
	content: '';
	position: absolute;
	top: -80px; right: -80px;
	width: 320px; height: 320px;
	background: radial-gradient(circle, rgba(46,125,50,.08) 0%, transparent 70%);
	pointer-events: none;
}
.mf-join-v2__head {
	text-align: center;
	margin-bottom: 44px;
}
.mf-join-v2__title {
	font-family: 'Playfair Display', serif;
	font-size: 2.2rem;
	font-weight: 800;
	color: #1a2a1a;
	margin: 10px 0 12px;
}
.mf-join-v2__sub {
	font-size: .95rem;
	color: #777;
	max-width: 520px;
	margin: 0 auto;
	line-height: 1.7;
}

/* 4-column portrait grid */
.mf-join-v2__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
}

/* Portrait card */
.mf-jcard {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	border-radius: 22px;
	overflow: hidden;
	box-shadow: 0 4px 24px rgba(0,0,0,.08);
	transition: transform .35s cubic-bezier(.34,1.56,.64,1), box-shadow .35s;
	background: #fff;
}
.mf-jcard:hover {
	transform: translateY(-10px) scale(1.01);
	box-shadow: 0 20px 60px rgba(0,0,0,.16);
}

/* Coloured top zone */
.mf-jcard__top {
	background: var(--jcard-bg);
	height: 160px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	flex-shrink: 0;
}
/* Decorative orb */
.mf-jcard__orb {
	position: absolute;
	bottom: -50px; right: -30px;
	width: 140px; height: 140px;
	border-radius: 50%;
	background: rgba(255,255,255,.1);
	pointer-events: none;
}
.mf-jcard__orb::before {
	content: '';
	position: absolute;
	top: -30px; left: -30px;
	width: 90px; height: 90px;
	border-radius: 50%;
	background: rgba(255,255,255,.07);
}
/* Card number badge */
.mf-jcard__num {
	position: absolute;
	top: 14px; left: 16px;
	font-size: .65rem;
	font-weight: 800;
	color: rgba(255,255,255,.5);
	letter-spacing: 1px;
	font-family: 'Inter', sans-serif;
}
/* Icon circle */
.mf-jcard__icon-circle {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background: rgba(255,255,255,.18);
	border: 2px solid rgba(255,255,255,.3);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	color: #fff;
	position: relative;
	z-index: 1;
	transition: transform .35s cubic-bezier(.34,1.56,.64,1), background .3s;
	backdrop-filter: blur(4px);
}
.mf-jcard:hover .mf-jcard__icon-circle {
	transform: scale(1.12);
	background: rgba(255,255,255,.28);
}

/* White body */
.mf-jcard__body {
	padding: 22px 22px 20px;
	display: flex;
	flex-direction: column;
	flex: 1;
}
.mf-jcard__title {
	font-size: 1.05rem;
	font-weight: 800;
	color: #1a2a1a;
	margin: 0 0 4px;
	font-family: 'Playfair Display', serif;
}
.mf-jcard__bn {
	font-size: .75rem;
	font-weight: 600;
	color: var(--jcard-accent, #2E7D32);
	margin: 0 0 10px;
	opacity: .85;
}
.mf-jcard__desc {
	font-size: .82rem;
	color: #888;
	line-height: 1.6;
	margin: 0 0 16px;
	flex: 1;
}
.mf-jcard__cta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: .8rem;
	font-weight: 700;
	color: var(--jcard-accent, #2E7D32);
	margin-top: auto;
	transition: gap .2s;
}
.mf-jcard:hover .mf-jcard__cta { gap: 10px; }
.mf-jcard__cta i { font-size: .7rem; }

/* Responsive */
@media (max-width: 900px) {
	.mf-join-v2__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
	.mf-join-v2__grid { grid-template-columns: 1fr 1fr; gap: 12px; }
	.mf-jcard__top { height: 120px; }
	.mf-jcard__icon-circle { width: 56px; height: 56px; font-size: 1.4rem; }
	.mf-jcard__body { padding: 14px; }
	.mf-jcard__desc { display: none; }
	.mf-join-v2__title { font-size: 1.7rem; }
}

/* ── HOME JOIN WITH US (clean list design) ─────────────────────── */
.mf-home-join {
	background: #fff;
	padding: 104px 0 96px;
	position: relative;
	overflow: hidden;
	border-top: 1px solid rgba(46,125,50,.08);
}
.mf-home-join::before { display: none; }
.mf-home-join::after { display: none; }
.mf-home-join__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 52px;
	position: relative;
	z-index: 1;
}
.mf-home-join__title {
	font-family: 'Playfair Display', serif;
	font-size: clamp(2.35rem, 4vw, 3rem);
	font-weight: 800;
	color: #1a2a1a;
	margin: 14px 0 0;
	line-height: 1.12;
	letter-spacing: -0.02em;
}
.mf-home-join__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 22px;
	position: relative;
	z-index: 1;
}
@media (min-width: 1100px) {
	.mf-home-join__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 20px;
	}
}
.mf-hjcard {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 28px 26px 28px 24px;
	min-height: 118px;
	background: #f9fdf9;
	border: 1.5px solid rgba(46,125,50,.1);
	border-radius: 18px;
	text-decoration: none;
	transition: box-shadow .25s, transform .25s, border-color .25s, background .25s;
}
.mf-hjcard:hover {
	background: #fff;
	box-shadow: 0 14px 44px rgba(46,125,50,.14);
	transform: translateY(-4px);
	border-color: rgba(46,125,50,.3);
}
.mf-hjcard__icon {
	width: 62px;
	height: 62px;
	border-radius: 16px;
	background: rgba(46,125,50,.1);
	color: var(--mf-primary, #2E7D32);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.55rem;
	flex-shrink: 0;
	transition: background .25s, color .25s, transform .25s;
}
.mf-hjcard:hover .mf-hjcard__icon {
	background: var(--mf-primary, #2E7D32);
	color: #fff;
	transform: scale(1.06);
}
.mf-hjcard__body { flex: 1; min-width: 0; }
.mf-hjcard__title {
	font-size: 1.08rem;
	font-weight: 700;
	color: #1a2a1a;
	margin: 0 0 6px;
	line-height: 1.25;
}
.mf-hjcard__bn {
	font-size: .72rem;
	color: var(--mf-primary, #2E7D32);
	font-weight: 600;
	margin: 0 0 5px;
	opacity: .75;
}
.mf-hjcard__desc {
	font-size: .86rem;
	color: #6a6a6a;
	margin: 0;
	line-height: 1.6;
}
.mf-hjcard__arrow {
	flex-shrink: 0;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: rgba(46,125,50,.08);
	color: var(--mf-primary, #2E7D32);
	border: 1px solid rgba(46,125,50,.15);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: .78rem;
	transition: background .25s, color .25s, transform .25s, border-color .25s;
}
.mf-hjcard:hover .mf-hjcard__arrow {
	background: var(--mf-primary, #2E7D32);
	color: #fff;
	border-color: transparent;
	transform: translateX(3px);
}
@media (max-width: 768px) {
	.mf-home-join {
		padding: 80px 0 72px;
	}
	.mf-home-modern .mf-home-join {
		padding: 80px 0 72px;
	}
	.mf-home-join__header {
		margin-bottom: 40px;
	}
	.mf-home-join__grid {
		grid-template-columns: 1fr;
		max-width: 28rem;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.mf-home-join__header {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}
	.mf-home-join__header > div {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
}
@media (max-width: 480px) {
	.mf-hjcard__desc { display: none; }
}

/* Join section "Learn More" button (standalone, no inheritance issues) */
.mf-join-learn-more {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 28px;
	border: 2px solid var(--mf-primary, #2E7D32);
	border-radius: 8px;
	background: transparent;
	color: var(--mf-primary, #2E7D32);
	font-size: .95rem;
	font-weight: 700;
	font-family: 'Inter', sans-serif;
	text-decoration: none;
	white-space: nowrap;
	flex-shrink: 0;
	transition: background .2s, color .2s;
}
.mf-join-learn-more:hover {
	background: var(--mf-primary, #2E7D32);
	color: #fff;
}

/* ── TIMELINE (clean left-aligned) ─────────────────────────────── */
.mf-tl-list {
	max-width: 680px;
	margin: 0 auto;
	position: relative;
	padding-left: 32px;
}
/* Vertical line */
.mf-tl-list::before {
	content: '';
	position: absolute;
	left: 7px;
	top: 6px;
	bottom: 0;
	width: 2px;
	background: linear-gradient(to bottom, var(--mf-primary,#2E7D32) 0%, rgba(46,125,50,.15) 100%);
	border-radius: 2px;
}
.mf-tl-entry {
	display: flex;
	gap: 20px;
	margin-bottom: 32px;
	position: relative;
}
.mf-tl-entry:last-child { margin-bottom: 0; }

/* Dot */
.mf-tl-entry__marker {
	position: absolute;
	left: -32px;
	top: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 16px;
}
.mf-tl-entry__dot {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #fff;
	border: 2.5px solid var(--mf-primary, #2E7D32);
	box-shadow: 0 0 0 3px rgba(46,125,50,.15);
	flex-shrink: 0;
	transition: background .2s, box-shadow .2s;
}
.mf-tl-entry:hover .mf-tl-entry__dot {
	background: var(--mf-primary, #2E7D32);
	box-shadow: 0 0 0 4px rgba(46,125,50,.2);
}

/* Content */
.mf-tl-entry__content {
	background: #f9fdf9;
	border: 1.5px solid rgba(46,125,50,.1);
	border-radius: 12px;
	padding: 16px 20px;
	flex: 1;
	transition: border-color .2s, box-shadow .2s;
}
.mf-tl-entry:hover .mf-tl-entry__content {
	border-color: rgba(46,125,50,.25);
	box-shadow: 0 4px 16px rgba(46,125,50,.08);
}
.mf-tl-entry__year {
	display: inline-block;
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var(--mf-primary, #2E7D32);
	margin-bottom: 6px;
	background: rgba(46,125,50,.08);
	padding: 2px 10px;
	border-radius: 20px;
}
.mf-tl-entry__text {
	font-size: .9rem;
	color: #555;
	line-height: 1.7;
	margin: 0;
}

/* =====================================================================
   Home + About — modern surface refresh
   ===================================================================== */
:root {
	--mf-surface-soft: #fafcfb;
	--mf-surface-muted: #f3f7f4;
	--mf-radius-xl: 20px;
	--mf-shadow-card: 0 4px 28px rgba(13, 40, 18, 0.07);
	--mf-shadow-card-hover: 0 22px 56px rgba(13, 40, 18, 0.12);
}

/* About page hero */
.mf-about-page__hero {
	min-height: 340px;
}
.mf-about-page__hero .mf-page-hero__overlay {
	background: linear-gradient(
		165deg,
		rgba(6, 18, 8, 0.88) 0%,
		rgba(20, 52, 24, 0.62) 45%,
		rgba(0, 0, 0, 0.55) 100%
	);
}
.mf-about-page__hero .mf-page-hero__title {
	letter-spacing: -0.02em;
}
.mf-about-page__hero .mf-page-hero__subtitle {
	max-width: 34rem;
	line-height: 1.65;
}

/* About page sections */
.mf-ap-section {
	padding: 104px 0;
}
.mf-ap-section--white {
	background: #fff;
}
.mf-ap-section--muted {
	background: linear-gradient(180deg, var(--mf-surface-soft) 0%, var(--mf-surface-muted) 100%);
}
.mf-ap-section--team.mf-ap-section--muted {
	background: #eef2ee;
}
.mf-ap-section--flush-top {
	padding-top: 48px;
}
.mf-ap-prose {
	font-size: 1rem;
	line-height: 1.8;
	color: #3d4d3d;
}
.mf-ap-prose > *:first-child {
	margin-top: 0;
}

.mf-services-section--about.mf-ap-section {
	padding-top: 88px;
	padding-bottom: 88px;
}

.mf-about-page .mf-about-mission-vision {
	gap: 24px;
}
.mf-about-page .mf-mv-card {
	background: #fff;
	border: 1px solid rgba(15, 40, 18, 0.07);
	border-radius: var(--mf-radius-xl);
	padding: 40px 36px;
	box-shadow: var(--mf-shadow-card);
	transition: box-shadow 0.3s ease, transform 0.3s ease, border-color 0.3s ease;
}
.mf-about-page .mf-mv-card:hover {
	box-shadow: var(--mf-shadow-card-hover);
	transform: translateY(-4px);
	border-color: rgba(46, 125, 50, 0.14);
}
.mf-about-page .mf-mv-card__icon {
	width: 58px;
	height: 58px;
	border-radius: 16px;
	background: linear-gradient(145deg, rgba(46, 125, 50, 0.12), rgba(46, 125, 50, 0.04));
	color: var(--mf-primary, #2e7d32);
	border: 1px solid rgba(46, 125, 50, 0.12);
	box-shadow: none;
}
.mf-about-page .mf-mv-card h3 {
	font-size: 1.35rem;
	letter-spacing: -0.02em;
	margin-bottom: 14px;
}
.mf-about-page .mf-mv-card p {
	color: #5a6a5a;
	font-size: 0.95rem;
	line-height: 1.82;
}

.mf-about-page .mf-counter-item {
	background: #fff;
	border: 1px solid rgba(15, 40, 18, 0.06);
	border-radius: var(--mf-radius-xl);
	box-shadow: var(--mf-shadow-card);
}
.mf-about-page .mf-counter-item:hover {
	box-shadow: var(--mf-shadow-card-hover);
}

.mf-about-page .mf-tl-entry__content {
	background: #fff;
	border: 1px solid rgba(15, 40, 18, 0.07);
	border-radius: 16px;
	box-shadow: var(--mf-shadow-card);
}

/* Home */
.mf-home-modern #slider .mf-hero-heading,
.mf-home-modern #slider .slider-title {
	max-width: 20ch;
	margin-left: auto;
	margin-right: auto;
	letter-spacing: -0.025em;
	line-height: 1.15 !important;
}
.mf-home-modern .mf-hero-sub {
	max-width: 36rem;
	margin-left: auto !important;
	margin-right: auto !important;
	opacity: 0.95;
}
.mf-home-modern .mf-btn-hero {
	border-radius: 8px !important;
	padding: 14px 32px !important;
	font-size: 0.9rem !important;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.22) !important;
}

.mf-home-modern .mf-don-float-card {
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	border: 1px solid rgba(255, 255, 255, 0.9);
	box-shadow: var(--mf-shadow-card-hover);
	border-radius: 22px;
}

.mf-home-modern .mf-services-section {
	background: linear-gradient(180deg, var(--mf-surface-soft) 0%, #fff 28%, #fff 100%);
}
@media (max-width: 991px) {
	.mf-home-modern .mf-services-section {
		padding: 40px 0 48px;
	}
	.mf-home-modern .mf-services-grid {
		margin-top: 28px;
	}
}
@media (max-width: 575px) {
	.mf-home-modern .mf-services-section {
		padding: 28px 0 40px;
	}
	.mf-home-modern .mf-services-grid {
		margin-top: 20px;
	}
}
.mf-home-modern .mf-service-card {
	background: #fff;
	border: 1px solid rgba(15, 40, 18, 0.06);
	border-radius: var(--mf-radius-xl);
	box-shadow: var(--mf-shadow-card);
}
.mf-home-modern .mf-service-card:hover {
	border-color: rgba(46, 125, 50, 0.18);
	box-shadow: var(--mf-shadow-card-hover);
}
.mf-home-modern .mf-service-card__icon {
	width: 68px;
	height: 68px;
	font-size: 1.45rem;
	border-radius: 18px;
	background: linear-gradient(145deg, rgba(46, 125, 50, 0.14), rgba(46, 125, 50, 0.05));
	color: var(--mf-primary, #2e7d32);
	border: 1px solid rgba(46, 125, 50, 0.12);
	box-shadow: none;
}
.mf-home-modern .mf-service-card:hover .mf-service-card__icon {
	background: linear-gradient(135deg, #2e7d32, #43a047);
	color: #fff;
	border-color: transparent;
	transform: scale(1.06) rotate(0deg);
}

.mf-home-modern .mf-stats-bar {
	border-top: none;
	border-bottom: none;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}
.mf-home-modern .mf-stat-item {
	padding: 32px 40px;
}
.mf-home-modern .mf-stat-item__num {
	font-variant-numeric: tabular-nums;
}

.mf-home-modern #mf-about.mf-section--about-modern {
	background: linear-gradient(180deg, #fff 0%, var(--mf-surface-soft) 100%);
	padding: 108px 0;
}
.mf-home-modern #mf-about .mf-about-img-wrap img {
	border-radius: 24px;
	box-shadow: 0 28px 70px rgba(13, 40, 18, 0.14);
}
.mf-home-modern #mf-about .mf-about-img-wrap::before,
.mf-home-modern #mf-about .mf-about-img-wrap::after {
	width: 72px;
	height: 72px;
	opacity: 0.75;
}
.mf-home-modern #mf-about .mf-about-badge {
	border-radius: 16px;
	backdrop-filter: blur(8px);
}
.mf-home-modern #mf-about .mf-about-feature {
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(46, 125, 50, 0.1);
	border-radius: 14px;
	padding: 12px 18px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.mf-home-modern #mf-about .mf-about-feature:hover {
	border-color: rgba(46, 125, 50, 0.22);
	box-shadow: 0 6px 20px rgba(46, 125, 50, 0.08);
}
.mf-home-modern #mf-about .mf-about-feature__icon {
	width: 40px;
	height: 40px;
	border-radius: 12px;
	background: rgba(46, 125, 50, 0.08);
}

@media (max-width: 991.98px) {
	.mf-home-modern #mf-about .mf-about-content {
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
		margin-top: 40px;
	}
	.mf-home-modern #mf-about .mf-about-content .mf-label-tag {
		display: inline-block;
	}
	.mf-home-modern #mf-about .mf-about-content h2 {
		max-width: min(100%, 22rem);
		margin-left: auto;
		margin-right: auto;
	}
	.mf-home-modern #mf-about .mf-about-text,
	.mf-home-modern #mf-about .mf-about-text p {
		text-align: center;
		max-width: 36rem;
		margin-left: auto;
		margin-right: auto;
	}
	.mf-home-modern #mf-about .mf-about-features {
		align-items: center;
		width: 100%;
		max-width: 22rem;
		margin-left: auto;
		margin-right: auto;
	}
	.mf-home-modern #mf-about .mf-about-feature {
		flex-direction: column;
		justify-content: center;
		text-align: center;
		gap: 10px;
		width: 100%;
	}
	.mf-home-modern #mf-about .mf-about-feature > span:last-child {
		line-height: 1.45;
	}
	.mf-home-modern #mf-about .mf-about-content > .mf-btn {
		align-self: center;
	}
	.mf-home-modern #mf-about .row > [class*="col-"]:first-child {
		display: flex;
		justify-content: center;
	}
	.mf-home-modern #mf-about .mf-about-img-wrap {
		width: 100%;
		max-width: 420px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media (max-width: 767.98px) {
	.mf-home-modern #mf-about.mf-section--about-modern {
		padding: 64px 0;
	}
	.mf-home-modern #mf-about .mf-about-content h2 {
		font-size: 1.65rem;
		max-width: none;
	}
}

.mf-home-modern #mf-campaigns.mf-section--campaigns {
	background: linear-gradient(180deg, #f2f7f3 0%, #e8f2ea 55%, #f4f8f4 100%);
	padding-top: 100px;
	padding-bottom: 100px;
}
.mf-home-modern #mf-campaigns .mf-campaign-card {
	border-radius: var(--mf-radius-xl);
	border: 1px solid rgba(15, 40, 18, 0.06);
	box-shadow: var(--mf-shadow-card);
}
.mf-home-modern #mf-campaigns .mf-campaign-card:hover {
	box-shadow: var(--mf-shadow-card-hover);
}

.mf-home-modern .mf-home-join {
	background: linear-gradient(180deg, #fff 0%, var(--mf-surface-soft) 100%);
	border-top: 1px solid rgba(15, 40, 18, 0.05);
	padding: 120px 0 108px;
}
.mf-home-modern .mf-hjcard {
	background: #fff;
	border: 1px solid rgba(15, 40, 18, 0.06);
	border-radius: var(--mf-radius-xl);
	box-shadow: var(--mf-shadow-card);
	min-height: 124px;
	padding-top: 30px;
	padding-bottom: 30px;
}
.mf-home-modern .mf-hjcard:hover {
	box-shadow: var(--mf-shadow-card-hover);
}

@media (max-width: 767px) {
	.mf-ap-section {
		padding: 80px 0;
	}
	.mf-about-page__hero {
		min-height: 260px;
	}
	.mf-page-hero + .mf-section,
	.mf-page-hero + .mf-cp-section,
	.mf-page-hero + .mf-ap-section {
		padding-top: 72px;
		padding-bottom: 80px;
	}
	.mf-page-hero__content {
		gap: 16px;
	}
	.mf-join-hero .container.mf-join-hero__content {
		gap: 16px;
	}
}
