/**
 * NGO Formula Template Stylesheet
 * Scoped via body.formula-layout-ngo for clean styling isolation.
 *
 * @package formula
 */

/* ==========================================================================
   Typography & Accents
   ========================================================================== */
body.formula-layout-ngo {
	background-color: #fcfcf9;
	color: #3b4249;
}

body.formula-layout-ngo a {
	color: var(--thm-primary, #61ce70);
	transition: color 0.25s ease;
}

body.formula-layout-ngo a:hover,
body.formula-layout-ngo a:focus {
	color: #4bad5a;
	color: color-mix(in srgb, var(--thm-primary, #61ce70) 85%, #000);
	text-decoration: none;
}

/* Rounded Theme Buttons */
body.formula-layout-ngo .button,
body.formula-layout-ngo .button-primary,
body.formula-layout-ngo .btn-theme,
body.formula-layout-ngo input[type="submit"],
body.formula-layout-ngo .slider-caption .button-primary,
body.formula-layout-ngo .slider-caption .button-secondary {
	border-radius: var(--thm-btn-radius, 8px);
	padding: 12px 30px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	box-shadow: 0 4px 10px rgba(97, 206, 112, 0.15);
	box-shadow: 0 4px 10px color-mix(in srgb, var(--thm-primary, #61ce70) 15%, transparent);
	transition: all 0.3s ease;
}

body.formula-layout-ngo .button:hover,
body.formula-layout-ngo .button-primary:hover,
body.formula-layout-ngo .btn-theme:hover,
body.formula-layout-ngo input[type="submit"]:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 15px rgba(97, 206, 112, 0.25);
	box-shadow: 0 6px 15px color-mix(in srgb, var(--thm-primary, #61ce70) 25%, transparent);
}

/* ==========================================================================
   Slider Customizations
   ========================================================================== */
body.formula-layout-ngo #slider-demo .item::before {
	background-color: rgba(15, 23, 42, 0.45); /* Richer dark overlay */
}

body.formula-layout-ngo .slider-caption {
	/* Max-width is dynamically controlled via Customizer settings */
}

body.formula-layout-ngo .slider-caption h2 {
	font-weight: 800;
	letter-spacing: -1px;
}

body.formula-layout-ngo .slider-caption p {
	font-size: 18px;
	line-height: 1.6;
	color: #e2e8f0;
}

body.formula-layout-ngo .slider-caption .overlay-buttons {
	display: flex;
	gap: 15px;
	margin-top: 25px;
}

body.formula-layout-ngo .slider-caption .button-secondary {
	background: transparent;
	border: 2px solid #ffffff;
	color: #ffffff;
}

body.formula-layout-ngo .slider-caption .button-secondary:hover {
	background: #ffffff;
	color: #3b4249;
}

/* ==========================================================================
   Causes & Service Cards Section
   ========================================================================== */
body.formula-layout-ngo .causes-section {
	padding: 80px 0;
	background: #f8fafc;
}

body.formula-layout-ngo .cause-card {
	background: #ffffff;
	border-radius: var(--thm-card-radius, 12px);
	overflow: hidden;
	box-shadow: 0 5px 20px rgba(0, 0, 0, 0.03);
	margin-bottom: 30px;
	transition: all 0.3s ease;
	border: 1px solid #f1f5f9;
}

body.formula-layout-ngo .cause-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
}

body.formula-layout-ngo .cause-card-icon {
	background: rgba(97, 206, 112, 0.08);
	background: color-mix(in srgb, var(--thm-primary, #61ce70) 8%, transparent);
	color: var(--thm-primary, #61ce70);
	width: 70px;
	height: 70px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 30px auto 15px auto;
	font-size: 28px;
	overflow: hidden;
}

body.formula-layout-ngo .cause-card-icon img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}

body.formula-layout-ngo .cause-card-body {
	padding: 25px 30px 30px 30px;
	text-align: center;
}

body.formula-layout-ngo .cause-card-body h3 {
	font-size: 20px;
	font-weight: 700;
	margin: 0 0 12px 0;
	color: #1e293b;
}

body.formula-layout-ngo .cause-card-body p {
	color: #64748b;
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 20px;
}

/* Donation Progress Bar */
body.formula-layout-ngo .cause-progress-wrapper {
	margin-top: 20px;
	margin-bottom: 25px;
	text-align: left;
}

body.formula-layout-ngo .cause-progress-bar-bg {
	background: #e2e8f0;
	height: 8px;
	border-radius: 10px;
	overflow: hidden;
	position: relative;
	margin-bottom: 10px;
}

body.formula-layout-ngo .cause-progress-bar-fill {
	background: linear-gradient(90deg, #61ce70 0%, #4bad5a 100%);
	background: linear-gradient(90deg, var(--thm-primary, #61ce70) 0%, color-mix(in srgb, var(--thm-primary, #61ce70) 85%, #000) 100%);
	height: 100%;
	border-radius: 10px;
	width: 0; /* Animated/controlled via width */
	transition: width 1.5s ease-in-out;
}

body.formula-layout-ngo .cause-progress-stats {
	display: flex;
	justify-content: space-between;
	font-size: 13px;
	font-weight: 600;
	color: #64748b;
}

body.formula-layout-ngo .cause-progress-stats .raised {
	color: #1e293b;
	font-weight: 700;
}

body.formula-layout-ngo .cause-progress-stats .percent {
	color: var(--thm-primary, #61ce70);
	font-weight: 700;
}

/* ==========================================================================
   Header & Menu Scoping
   ========================================================================== */
body.formula-layout-ngo .header .menu>li>a {
	text-transform: capitalize;
	font-weight: 600;
	letter-spacing: 0.1px;
}

/* ==========================================================================
   Funfact & Statistics
   ========================================================================== */
body.formula-layout-ngo .funfact {
	background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%) !important;
	color: #ffffff;
}

body.formula-layout-ngo .funfact h2,
body.formula-layout-ngo .funfact p {
	color: #ffffff !important;
}

body.formula-layout-ngo .funfact .counter-item {
	border-right: 1px solid rgba(255, 255, 255, 0.1);
}

body.formula-layout-ngo .funfact .counter-item:last-child {
	border-right: none;
}
