/**
 * Sarvagyata: Campaign listing (gallery/donate page) layout fixes.
 * Ensures full-width container and correct grid when shortcode/block is used.
 */
.wpneo-wrapper {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}
.wpneo-wrapper .wpneo-container {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding-left: 55px;
	padding-right: 55px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 30px;
}
.wpneo-wrapper-inner {
	width: 100%;
	overflow: hidden;
}
.wpneo-wrapper-inner::after {
	content: "";
	display: table;
	clear: both;
}
.wpneo-listings.three,
.wpneo-listings.two,
.wpneo-listings.four {
	box-sizing: border-box;
}

/* Balanced grid spacing and slightly larger cards on donate listing. */
.wpneo-wrapper .wpneo-wrapper-inner {
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 6px !important;
	padding-right: 6px !important;
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px !important;
}

/* Disable legacy clearfix pseudo-items; they break grid/flex alignment. */
.wpneo-wrapper .wpneo-wrapper-inner::before,
.wpneo-wrapper .wpneo-wrapper-inner::after {
	content: none !important;
	display: none !important;
}

.wpneo-wrapper .wpneo-campaign-listing .wpneo-listings.three {
	float: none !important;
	width: calc(50% - 8px) !important;
	flex: 0 0 calc(50% - 8px) !important;
	max-width: calc(50% - 8px) !important;
	margin: 0 !important;
}

/* Strong fallback: some WP Crowdfunding templates inject inline widths/classes.
 * Force all listing columns inside donate grid to 2-up on desktop. */
.wpneo-wrapper .wpneo-campaign-listing > [class*="wpneo-listings"] {
	float: none !important;
	width: calc(50% - 8px) !important;
	flex: 0 0 calc(50% - 8px) !important;
	max-width: calc(50% - 8px) !important;
	margin: 0 !important;
}

/* Template fallback: campaign cards are direct children of .wpneo-wrapper-inner. */
.wpneo-wrapper .wpneo-wrapper-inner > [class*="wpneo-listings"] {
	float: none !important;
	width: 100% !important;
	flex: none !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding-right: 0 !important;
	clear: none !important;
}

.wpneo-wrapper .wpneo-listing-content {
	min-height: 285px !important;
	padding: 20px 20px 18px !important;
	border: 1px solid #b9aacb !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	background: #ffffff !important;
}

@media (max-width: 1024px) {
	.wpneo-wrapper .wpneo-campaign-listing .wpneo-listings.three {
		width: calc(50% - 8px) !important;
		max-width: none !important;
	}
	.wpneo-wrapper .wpneo-listing-content {
		min-height: 270px !important;
		padding: 18px 16px 16px !important;
	}
	.wpneo-wrapper .wpneo-listing-content h4,
	.wpneo-wrapper .wpneo-listing-content h4 a {
		font-size: 20px !important;
	}
	.wpneo-wrapper .wpneo-listing-content .stat-lbl {
		font-size: 12px !important;
	}
	.wpneo-wrapper .wpneo-listing-content .stat-val {
		font-size: 18px !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-row > div:last-child {
		gap: 16px !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-desc {
		font-size: 13px !important;
	}
}

@media (max-width: 767px) {
	.wpneo-container {
		padding-left: 12px !important;
		padding-right: 12px !important;
		margin-top: 16px !important;
	}

	.wpneo-listings.three {
		padding-right: 0 !important;
	}

	.wpneo-wrapper .wpneo-wrapper-inner {
		padding-left: 8px !important;
		padding-right: 8px !important;
	}
	.wpneo-wrapper .wpneo-campaign-listing {
		gap: 10px !important;
	}
	.wpneo-wrapper .wpneo-campaign-listing .wpneo-listings.three,
	.wpneo-wrapper .wpneo-campaign-listing > [class*="wpneo-listings"],
	.wpneo-wrapper .wpneo-wrapper-inner > [class*="wpneo-listings"] {
		width: 100% !important;
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}
	.wpneo-wrapper .wpneo-wrapper-inner {
		grid-template-columns: 1fr !important;
	}
	.wpneo-wrapper .wpneo-listing-content {
		min-height: auto !important;
		padding: 14px 12px 12px !important;
		border-radius: 10px !important;
	}
	.wpneo-wrapper .wpneo-listing-content h4,
	.wpneo-wrapper .wpneo-listing-content h4 a {
		font-size: 16px !important;
		line-height: 1.2 !important;
		margin-bottom: 8px !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-row {
		gap: 8px !important;
		align-items: flex-start !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-circle {
		width: 48px !important;
		height: 48px !important;
		flex: 0 0 48px !important;
	}
	/* Mobile only: remove fixed desktop circle height */
	.wpneo-wrapper .wpneo-listing-content .milaap-circle {
		height: auto !important;
		min-height: 0 !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-circle::after {
		width: 35px !important;
		height: 35px !important;
		font-size: 10px !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-row > div:last-child {
		display: flex !important;
		flex-wrap: wrap !important;
		gap: 8px !important;
	}
	.wpneo-wrapper .wpneo-listing-content .stat-box {
		min-width: 0 !important;
		flex: 1 1 calc(50% - 6px) !important;
	}
	.wpneo-wrapper .wpneo-listing-content .stat-lbl {
		font-size: 11px !important;
		white-space: normal !important;
		line-height: 1.25 !important;
	}
	.wpneo-wrapper .wpneo-listing-content .stat-val {
		font-size: 16px !important;
		font-weight: 400 !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-desc {
		font-size: 13px !important;
		line-height: 1.4 !important;
		-webkit-line-clamp: 3 !important;
		display: -webkit-box !important;
		-webkit-box-orient: vertical !important;
		overflow: hidden !important;
		margin: 8px 0 10px !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-btn a {
		font-size: 14px !important;
		padding: 10px 12px !important;
		border-radius: 8px !important;
		width: 100% !important;
		text-align: center !important;
	}
}

@media (max-width: 480px) {
	.wpneo-wrapper .wpneo-wrapper-inner {
		padding-left: 6px !important;
		padding-right: 6px !important;
	}
	.wpneo-wrapper .wpneo-listing-content {
		padding: 12px 10px 10px !important;
	}
	.wpneo-wrapper .wpneo-listing-content h4,
	.wpneo-wrapper .wpneo-listing-content h4 a {
		font-size: 15px !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-circle {
		width: 48px !important;
		height: 48px !important;
		flex: 0 0 48px !important;
	}
	/* Extra-small mobile: keep height unfixed as well */
	.wpneo-wrapper .wpneo-listing-content .milaap-circle {
		height: auto !important;
		min-height: 0 !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-circle::after {
		width: 35px !important;
		height: 35px !important;
		font-size: 10px !important;
	}
	.wpneo-wrapper .wpneo-listing-content .stat-lbl {
		font-size: 10px !important;
		white-space: normal !important;
	}
	.wpneo-wrapper .wpneo-listing-content .stat-val {
		font-size: 14px !important;
		font-weight: 400 !important;
	}
	.wpneo-wrapper .wpneo-listing-content .milaap-btn a {
		font-size: 13px !important;
		padding: 9px 10px !important;
	}
}
.neo-progressbar > div {
	background-color: #6237c8;
	transition: width 0.3s ease;
	min-height: 4px;
}

/* Hide "Created by" / "by" + author name on campaign cards (donate page) */
.wpneo-wrapper .wpneo-listing-content p.wpneo-author,
.wpneo-wrapper .wpneo-listings .wpneo-listing-content .wpneo-author {
	display: none !important;
}

/* Align custom donate cards with site typography. */
.wpneo-wrapper .wpneo-listing-content .milaap-row,
.wpneo-wrapper .wpneo-listing-content .milaap-desc,
.wpneo-wrapper .wpneo-listing-content .milaap-btn a,
.wpneo-wrapper .wpneo-listing-content .stat-lbl,
.wpneo-wrapper .wpneo-listing-content .stat-val,
.wpneo-wrapper .wpneo-listing-content h4,
.wpneo-wrapper .wpneo-listing-content h4 a {
	font-family: inherit !important;
}

.wpneo-wrapper .wpneo-listing-content,
.wpneo-wrapper .wpneo-listing-content * {
	font-family: "Poppins", sans-serif !important;
	color: #111111 !important;
}

/* Bigger and clearer progress + stats for campaign cards. */
.wpneo-wrapper .wpneo-listing-content .milaap-circle {
	width: 58px !important;
	height: 58px !important;
}
.wpneo-wrapper .wpneo-listing-content .milaap-circle::after {
	width: 43px !important;
	height: 43px !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	color: #6237c8 !important;
}
.wpneo-wrapper .wpneo-listing-content .stat-lbl {
	font-size: 13px !important;
	font-weight: 400 !important;
	letter-spacing: 0.02em !important;
	color: #111111 !important;
	text-transform: none !important;
	font-variant: normal !important;
	white-space: nowrap !important;
}
.wpneo-wrapper .wpneo-listing-content .stat-val {
	font-size: 19px !important;
	font-weight: 400 !important;
	color: #111111 !important;
	line-height: 1.1 !important;
	margin-top: 4px !important;
	display: block !important;
}

.wpneo-wrapper .wpneo-listing-content .milaap-row > div:last-child {
	gap: 22px !important;
}
.wpneo-wrapper .wpneo-listing-content .milaap-desc {
	font-size: 14px !important;
	line-height: 1.4 !important;
	font-weight: 400 !important;
	color: #111111 !important;
	text-align: left !important;
	word-spacing: normal !important;
	letter-spacing: normal !important;
	text-justify: auto !important;
}

.wpneo-wrapper .wpneo-listing-content h4,
.wpneo-wrapper .wpneo-listing-content h4 a {
	font-family: "Poppins", sans-serif !important;
	font-size: 21px !important;
	line-height: 1.25 !important;
	font-weight: 600 !important;
	color: #111111 !important;
	letter-spacing: 0 !important;
}

.wpneo-wrapper .wpneo-listing-content .milaap-btn a {
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: 0.01em !important;
	color: #ffffff !important;
}
