/**
 * Haven Donation card — Figma SVNM_Donate hero skin.
 * Prefix: .havenDonation
 * Specs beat Elementor kit (h3/button) via higher specificity + !important where needed.
 */

/*
 * Match local JKit #masthead (header #529): sticky bar on canvas /new-donate/
 * where the header lives in page content as #svnm-donate-header.
 */
#svnm-donate-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	width: 100%;
}

body.admin-bar #svnm-donate-header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar #svnm-donate-header {
		top: 46px;
	}
}

/* Match JKit header (#529): all SVNM sections use Elementor boxed 1440 content width */
#svnm-donate-header.e-con-boxed,
#svnm-hero.e-con-boxed,
#svnm-promise.e-con-boxed,
#svnm-impact.e-con-boxed,
#svnm-before-after.e-con-boxed,
#svnm-mid-donate.e-con-boxed,
#svnm-choose-amount.e-con-boxed,
#svnm-festival-donate.e-con-boxed,
#svnm-stories.e-con-boxed,
#svnm-legacy.e-con-boxed,
#svnm-closing-cta.e-con-boxed,
#svnm-footer.e-con-boxed {
	--content-width: 1440px;
}

#svnm-donate-header.e-con-boxed > .e-con-inner,
#svnm-hero.e-con-boxed > .e-con-inner,
#svnm-promise.e-con-boxed > .e-con-inner,
#svnm-impact.e-con-boxed > .e-con-inner,
#svnm-before-after.e-con-boxed > .e-con-inner,
#svnm-mid-donate.e-con-boxed > .e-con-inner,
#svnm-choose-amount.e-con-boxed > .e-con-inner,
#svnm-festival-donate.e-con-boxed > .e-con-inner,
#svnm-stories.e-con-boxed > .e-con-inner,
#svnm-legacy.e-con-boxed > .e-con-inner,
#svnm-closing-cta.e-con-boxed > .e-con-inner,
#svnm-footer.e-con-boxed > .e-con-inner {
	max-width: var(--content-width, 1440px);
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

/*
 * Mid / festival: keep absolute slider full-bleed across the viewport
 * even when the section content is boxed to 1440 (same as header).
 */
#svnm-mid-donate .elementor-element-midslide,
#svnm-festival-donate .elementor-element-festslide {
	width: 100vw !important;
	max-width: 100vw !important;
	left: 50% !important;
	right: auto !important;
	margin-left: -50vw !important;
	transform: none;
}

#donate.havenDonation,
.havenDonation {
	--haven-orange: #f58633;
	--haven-orange-hover: #e07522;
	--haven-maroon: #8f2d2d;
	--haven-text: #2b2b2b;
	--haven-beige: #f8ece2;
	--haven-white: #ffffff;
	font-family: Montserrat, "Helvetica Neue", Arial, sans-serif;
	width: 100%;
	max-width: 400px;
	margin: 12px 0 0;
	box-sizing: border-box;
}

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

.havenDonation__card {
	position: relative;
	background: var(--haven-white);
	padding: 36px 29px 24px;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
	border-radius: 0 !important;
	overflow: visible;
}

.havenDonation__flag {
	position: absolute;
	top: -12px;
	left: 29px;
	z-index: 2;
	background: var(--haven-orange);
	color: var(--haven-white);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	padding: 5px 17px;
	white-space: nowrap;
	line-height: 1.2;
	border-radius: 0;
}

.havenDonation__title {
	margin: 8px 0 6px !important;
	color: var(--haven-maroon) !important;
	font-family: Montserrat, "Helvetica Neue", Arial, sans-serif !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	line-height: 1.15 !important;
	letter-spacing: 0 !important;
}

.havenDonation__sub {
	margin: 0 0 16px;
	color: var(--haven-text);
	font-size: 12px;
	font-weight: 400;
	line-height: 1.3;
}
body{
	background-color: #F7F3EE;
}

/* Mid compact copy is mobile-only (Figma 3736:1550); hero copy is default. */
.havenDonation__sub--mid {
	display: none;
}

/*
 * Mid-donate slider images — Desktop Figma 3795:5244
 * Full-bleed cover, left-biased so Hindi/QR stay visible when viewport < 1440.
 */
#svnm-mid-donate .elementor-element-midslide .swiper-slide-bg {
	background-size: cover !important;
	background-position: left center !important;
	background-repeat: no-repeat !important;
}

/*
 * Mid-donate form — Desktop Figma 3795:5244
 * Card 402×430, no flag badge, no impact box, 30px padding.
 */
#svnm-mid-donate .havenDonation--mid{
	max-width: 402px;
	width: 100%;
	margin: 0;
}
#svnm-mid-donate .havenDonation--mid .havenDonation__card{
	width:402px;
}
#svnm-mid-donate .havenDonation--mid .havenDonation__card {
	padding: 30px 30px 30px;
}

#svnm-mid-donate .havenDonation--mid .havenDonation__flag,
#svnm-mid-donate .havenDonation--mid .havenDonation__impact,
#svnm-mid-donate .havenDonation--mid .havenDonation__sub--mid {
	display: none !important;
}

#svnm-mid-donate .havenDonation--mid .havenDonation__title {
	margin: 0 0 0 !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	line-height: 1.22 !important;
}

#svnm-mid-donate .havenDonation--mid .havenDonation__sub--hero {
	display: block;
	margin: 0 0 20px;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.25;
}

#svnm-mid-donate .havenDonation--mid .havenDonation__freq {
	height: 45px;
	padding: 5px;
	margin-bottom: 27px;
}

#svnm-mid-donate .havenDonation--mid .havenDonation__grid {
	gap: 15px 5px;
	margin-bottom: 15px;
}

#svnm-mid-donate .havenDonation--mid .havenDonation__custom {
	margin-bottom: 18px;
}

#svnm-mid-donate .havenDonation--mid .havenDonation__cta {
	font-size: 18px !important;
	margin: 0;
}

#svnm-mid-donate .havenDonation--mid .havenDonation__trust {
	margin-top: 27px;
	gap: 28px;
	font-size: 13px;
	font-weight: 300;
	line-height: 17px;
	min-height: 17px;
}

#svnm-mid-donate .havenDonation--mid .havenDonation__trust span {
	line-height: 17px;
}

.havenDonation__freq {
	display: flex;
	background: var(--haven-beige);
	height: 45px;
	align-items: center;
	padding: 5px;
	margin-bottom: 16px;
	gap: 0;
	border-radius: 0;
}

.havenDonation__freq .havenDonation__freqBtn {
	flex: 1;
	height: 35px;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-family: inherit !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: var(--haven-orange) !important;
	cursor: pointer;
	text-transform: capitalize;
	line-height: 1 !important;
	padding: 0 !important;
	appearance: none;
	-webkit-appearance: none;
}

.havenDonation__freq .havenDonation__freqBtn.is-on {
	background: var(--haven-white) !important;
	color: var(--haven-maroon) !important;
}

.havenDonation__grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	/* Figma 3795:5239 — row gap 15, column gap ~5 */
	gap: 15px 5px;
	margin-bottom: 15px;
}

.havenDonation__grid .havenDonation__amt {
	height: 35px;
	border: 1px solid var(--haven-maroon) !important;
	border-radius: 0 !important;
	background: var(--haven-white) !important;
	color: var(--haven-maroon) !important;
	box-shadow: none !important;
	font-family: inherit !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.96px;
	text-transform: uppercase;
	cursor: pointer;
	line-height: 1 !important;
	padding: 0 !important;
	appearance: none;
	-webkit-appearance: none;
}

.havenDonation__grid .havenDonation__amt.is-on {
	background: var(--haven-maroon) !important;
	color: var(--haven-white) !important;
}

.havenDonation__custom {
	width: 100%;
	height: 35px;
	border: 1px solid var(--haven-maroon) !important;
	border-radius: 0 !important;
	padding: 0 15px;
	font-family: inherit !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.96px;
	color: var(--haven-maroon) !important;
	margin-bottom: 15px;
	background: var(--haven-white) !important;
	box-shadow: none !important;
	outline: none;
	appearance: textfield;
	-moz-appearance: textfield;
}

.havenDonation__custom::-webkit-outer-spin-button,
.havenDonation__custom::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.havenDonation__custom::placeholder {
	color: var(--haven-maroon);
	opacity: 0.85;
}

.havenDonation__impact {
	display: flex;
	gap: 12px;
	align-items: center;
	background: var(--haven-beige);
	padding: 15px 13px;
	margin-bottom: 15px;
	min-height: 65px;
	border-radius: 0;
}

/* Figma 3758:240–242 — white circle + orange eye stroke */
.havenDonation__eye {
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #ffffff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M2 12s3.5-6 10-6 10 6 10 6-3.5 6-10 6S2 12 2 12Z' stroke='%23F58633' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='2.5' stroke='%23F58633' stroke-width='2'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
	box-shadow: 0 0 0 1px rgba(245, 134, 51, 0.15);
	display: inline-block;
}

.havenDonation__impact-text {
	margin: 0 !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #000 !important;
	line-height: 1.25 !important;
	font-family: inherit !important;
}

.havenDonation__impact-text strong {
	color: var(--haven-maroon) !important;
	font-weight: 600 !important;
}

/* Use <a> so Elementor kit button rules cannot zero-out the CTA */
.havenDonation__cta {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	height: 40px !important;
	min-height: 40px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--haven-orange) !important;
	color: var(--haven-white) !important;
	font-family: Montserrat, "Helvetica Neue", Arial, sans-serif !important;
	font-size: 18px !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
	letter-spacing: 0 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	cursor: pointer;
	box-shadow: none !important;
	padding: 0 12px !important;
	appearance: none;
	-webkit-appearance: none;
}

.havenDonation__cta:hover,
.havenDonation__cta:focus-visible {
	background: var(--haven-orange-hover) !important;
	color: var(--haven-white) !important;
	text-decoration: none !important;
}

.havenDonation__cta-label {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 5px;
	color: inherit !important;
	font: inherit !important;
}

/* Figma 3758:210 / 3758:211 — 15px heart + linear arrow */
.havenDonation__cta-icon {
	display: inline-block;
	flex: 0 0 auto;
	width: 15px;
	height: 15px;
	background-color: currentColor;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}

.havenDonation__cta-icon--heart {
	-webkit-mask-image: url("/wp-content/themes/hello-elementor-child/assets/icons/health-heart.svg");
	mask-image: url("/wp-content/themes/hello-elementor-child/assets/icons/health-heart.svg");
}

.havenDonation__cta-icon--arrow {
	-webkit-mask-image: url("/wp-content/themes/hello-elementor-child/assets/icons/arrow-right-linear.svg");
	mask-image: url("/wp-content/themes/hello-elementor-child/assets/icons/arrow-right-linear.svg");
	margin-left: 3px;
}

.havenDonation__cta-text {
	line-height: 1;
}

.havenDonation__trust {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 28px;
	margin-top: 14px;
	font-size: 13px;
	font-weight: 300;
	color: var(--haven-text);
}

.havenDonation__trust span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

/* Figma 3758:217 / 3758:220 — 17×17 outline shield + receipt */
.havenDonation__trust span::before {
	content: "";
	width: 17px;
	height: 17px;
	flex: 0 0 17px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.havenDonation__trust span:first-child::before {
	background-image: url("/wp-content/themes/hello-elementor-child/assets/icons/secure-payment-17.svg");
}

.havenDonation__trust span:last-child::before {
	/* Figma uses maroon fill + receipt alpha mask */
	background-color: #8f2d2d;
	background-image: none;
	-webkit-mask-image: url("/wp-content/themes/hello-elementor-child/assets/icons/instant-receipt-17.png");
	mask-image: url("/wp-content/themes/hello-elementor-child/assets/icons/instant-receipt-17.png");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}

.havenDonation__sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

/* Hide GiveWP's default modal open button — our CTA triggers it.
   Keep it in layout flow for JS clickability (do not use display:none). */
.havenDonation__give {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	margin: -1px;
	padding: 0;
	border: 0;
}

.havenDonation__give[hidden] {
	display: block !important; /* override [hidden] so GiveWP can mount the trigger */
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.havenDonation__give .givewp-donation-form-modal__open,
.havenDonation__give button.givewp-donation-form-modal__open {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	border: 0 !important;
	padding: 0 !important;
	margin: -1px !important;
}

/*
 * GiveWP modal chrome: hide viewport-fixed Close.
 * In-form Close is injected inside .givewp-layouts via haven-form-bridge.
 */
.givewp-donation-form-modal {
	position: relative !important;
	max-width: 420px;
	width: calc(100% - 24px);
	margin: 0 auto;
	padding: 0 !important;
	scrollbar-width: none !important;
	-ms-overflow-style: none !important;
}

.givewp-donation-form-modal::-webkit-scrollbar,
.givewp-donation-form-modal__overlay::-webkit-scrollbar,
.givewp-donation-form-modal .givewp-embed-frame__iframe::-webkit-scrollbar {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
}

.givewp-donation-form-modal__overlay {
	scrollbar-width: none !important;
	-ms-overflow-style: none !important;
	z-index: 100000 !important;
}

.givewp-donation-form-modal .givewp-embed-frame,
.givewp-donation-form-modal .givewp-embed-frame__iframe {
	max-width: 402px !important;
	width: 100% !important;
	margin: 0 auto !important;
	scrollbar-width: none !important;
	-ms-overflow-style: none !important;
}

.givewp-donation-form-modal__dialog__content {
	position: relative !important;
}

.givewp-donation-form-modal__close {
	/* Keep for a11y/Escape path but visually replaced by in-form Close */
	opacity: 0 !important;
	pointer-events: none !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	position: absolute !important;
	top: 0 !important;
	right: 0 !important;
}

/* Left-side Elementor trust icons (Figma 3758:144 ≈26px / 3758:148 ≈24px) */
#svnm-hero .elementor-element-8e0ccde .elementor-icon-list-icon svg,
#svnm-hero .elementor-element-8e0ccde .elementor-icon-list-icon img {
	width: 26px !important;
	height: 26px !important;
	max-width: 26px;
}

#svnm-hero .elementor-element-8e0ccde .elementor-icon-list-item:last-child .elementor-icon-list-icon svg,
#svnm-hero .elementor-element-8e0ccde .elementor-icon-list-item:last-child .elementor-icon-list-icon img {
	width: 24px !important;
	height: 24px !important;
	max-width: 24px;
}

/* Hero column alignment */
#hero-donate .elementor-widget-shortcode,
#hero-donate .elementor-widget-container {
	width: 100%;
}

#svnm-hero .elementor-element-1409ada img {
	/* Push black Hindi glyph toward maroon to match Figma */
	filter: brightness(0) saturate(100%) invert(18%) sepia(54%) saturate(1680%) hue-rotate(336deg) brightness(90%) contrast(92%);
}

/* Desktop / mobile copy swap (Figma desktop vs iPhone frames) */
.svnm-hero-title-mob,
.svnm-hero-body-mob {
	display: none;
}

.svnm-hero-title-desk,
.svnm-hero-body-desk {
	display: inline;
}

.svnm-hero-body-desk {
	display: block;
}

/*
 * Desktop hero type/CTA tokens only.
 * Container width/padding come from Elementor boxed 1440 (same as header #529) —
 * do not override .e-con-inner max-width or section padding here.
 */
@media (min-width: 768px) {
	#svnm-hero .elementor-element-b0f58a2 .elementor-heading-title {
		color: #f58633 !important;
		font-size: 15px !important;
		font-weight: 500 !important;
		line-height: 1 !important;
		letter-spacing: 0.02em;
		text-transform: uppercase !important;
	}

	/* Figma 3758:131 — 3 plain H1 lines, leading normal, no column-gap between lines */
	#svnm-hero .elementor-element-639154b .elementor-heading-title,
	#svnm-hero .elementor-element-ac3e01e .elementor-heading-title,
	#svnm-hero .elementor-element-f091139 .elementor-heading-title {
		font-size: 45px !important;
		font-weight: 800 !important;
		line-height: normal !important;
		text-transform: uppercase !important;
	}

	#svnm-hero .elementor-element-639154b .elementor-heading-title,
	#svnm-hero .elementor-element-ac3e01e .elementor-heading-title {
		color: #8f2d2d !important;
	}

	#svnm-hero .elementor-element-f091139 .elementor-heading-title {
		color: #f58633 !important;
	}

	/* Column flex gap is 20px — pull lines 2–3 up so title stacks like one text block */
	#svnm-hero .elementor-element-ac3e01e,
	#svnm-hero .elementor-element-f091139 {
		margin-top: -20px !important;
	}

	/* Figma 3758:132 — 18px / leading normal / opacity 80% / width 553 / 3 soft-wrapped lines */
	#svnm-hero #svnm-hero-body,
	#svnm-hero #svnm-hero-body p {
		font-size: 18px !important;
		font-weight: 400 !important;
		line-height: normal !important;
		color: #2b2b2b !important;
		opacity: 0.8 !important;
		max-width: 553px;
		margin: 0 !important;
	}

	/* Figma gap title→body ≈ 15px (column gap 20 − 5) */
	#svnm-hero #svnm-hero-body {
		margin-top: -5px !important;
	}

	/* Figma 15px between body → Hindi → buttons → trust icons (column gap 20 − 5) */
	#svnm-hero .elementor-element-1409ada,
	#svnm-hero .elementor-element-87f06c6,
	#svnm-hero .elementor-element-8e0ccde {
		margin-top: -5px !important;
	}

	#svnm-hero .elementor-element-1409ada img {
		width: 180px !important;
		height: auto !important;
		max-width: 180px;
	}

	#svnm-hero .elementor-element-307a749,
	#svnm-hero .elementor-element-c5a7441 {
		width: 200px !important;
		max-width: 200px !important;
	}

	#svnm-hero .elementor-element-307a749 .elementor-button,
	#svnm-hero .elementor-element-c5a7441 .elementor-button {
		width: 200px !important;
		height: 50px !important;
		min-height: 50px !important;
		font-size: 18px !important;
		font-weight: 500 !important;
		line-height: 1 !important;
		padding: 0 18px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		border-radius: 0 !important;
		white-space: nowrap !important;
	}

	#svnm-hero .elementor-element-307a749 .elementor-button {
		background-color: #8f2d2d !important;
		color: #ffffff !important;
	}

	/* Figma 3758:137 — linear arrow displayed at 30×30 inside 200×50 button */
	#svnm-hero .elementor-element-307a749 .elementor-button-icon {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: 30px !important;
		height: 30px !important;
		margin: 0 !important;
		font-size: 0 !important;
	}

	#svnm-hero .elementor-element-307a749 .elementor-button-icon svg,
	#svnm-hero .elementor-element-307a749 .elementor-button-icon img {
		width: 30px !important;
		height: 30px !important;
		max-width: 30px !important;
		display: block !important;
	}

	#svnm-hero .elementor-element-307a749 .elementor-button-icon svg path {
		stroke: currentColor !important;
		fill: none !important;
	}

	#svnm-hero .elementor-element-307a749 .elementor-button-content-wrapper {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 5px !important;
		width: 100%;
	}

	#svnm-hero .elementor-element-c5a7441 .elementor-button {
		color: #8f2d2d !important;
		background: transparent !important;
		border: 1px solid #8f2d2d !important;
	}

	#svnm-hero .elementor-element-c5a7441 .elementor-button:hover,
	#svnm-hero .elementor-element-c5a7441 .elementor-button:focus {
		color: #ffffff !important;
		background: #8f2d2d !important;
	}
}

@media (max-width: 1024px) {
	.havenDonation {
		max-width: 400px;
		margin-left: auto;
		margin-right: auto;
	}
}

/* —— Mobile hero —— */
@media (max-width: 767px) {

	.svnm-hero-title-mob {
		display: inline !important;
	}

	.svnm-hero-body-mob {
		display: block !important;
	}

	/* Parent: cream only — no patient image */
	#svnm-hero.e-con,
	#svnm-hero.elementor-element {
		background-image: none !important;
		background-color: #f6f5ee !important;
		min-height: 0 !important;
	}

	#svnm-hero > .e-con-inner {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* Copy column — owns patient background image (Figma / user request) */
	#svnm-hero .elementor-element-dd3489c {
		width: 100% !important;
		max-width: 100% !important;
		min-height: 420px !important;
		padding: 28px 20px 28px !important;
		background-image: url("http://localhost:8091/wp-content/uploads/2026/09/svnm-hero-bg.png") !important;
		background-position: center right !important;
		background-size: cover !important;
		background-repeat: no-repeat !important;
		background-color: #f6f5ee !important;
		justify-content: flex-start !important;
	}

	#svnm-hero .elementor-element-639154b .elementor-heading-title {
		font-size: 30px !important;
		line-height: 1.1 !important;
		color: #7f2726 !important;
	}

	#svnm-hero .elementor-element-b0f58a2 .elementor-heading-title {
		font-size: 10px !important;
		letter-spacing: 0.02em;
	}

	#svnm-hero #svnm-hero-body-mob {
		max-width: 314px;
	}

	#svnm-hero #svnm-hero-body-mob,
	#svnm-hero #svnm-hero-body-mob p {
		font-size: 12px !important;
		line-height: 1.45 !important;
		color: #000 !important;
		opacity: 1 !important;
	}

	/* CTA buttons side-by-side */
	#svnm-hero .elementor-element-87f06c6 {
		flex-wrap: nowrap !important;
		gap: 14px !important;
		width: 100% !important;
		max-width: 294px;
	}

	#svnm-hero .elementor-element-307a749,
	#svnm-hero .elementor-element-c5a7441 {
		width: 140px !important;
		max-width: 140px !important;
		flex: 0 0 140px !important;
	}

	#svnm-hero .elementor-element-307a749 .elementor-button,
	#svnm-hero .elementor-element-c5a7441 .elementor-button {
		width: 100% !important;
		justify-content: center;
		font-size: 12px !important;
		padding: 10px 8px !important;
		min-height: 35px;
		height: 35px;
	}

	#svnm-hero .elementor-element-c5a7441 .elementor-button {
		color: #7f2726 !important;
		background: transparent !important;
		border: 1px solid #7f2726 !important;
	}

	#svnm-hero .elementor-element-c5a7441 .elementor-button:hover,
	#svnm-hero .elementor-element-c5a7441 .elementor-button:focus {
		color: #ffffff !important;
		background: #7f2726 !important;
	}

	/* Donate column — no background image */
	#hero-donate.elementor-element,
	#svnm-hero .elementor-element-51b426d {
		width: 100% !important;
		max-width: 100% !important;
		padding: 8px 20px 24px !important;
		background-image: none !important;
		background-color: #f6f5ee !important;
		align-items: stretch !important;
		min-height: 0 !important;
	}

	.havenDonation {
		max-width: 100% !important;
		width: 100% !important;
		margin: 0 !important;
		position: relative;
		z-index: 2;
	}

	.havenDonation__card {
		padding: 28px 20px 20px;
		width: 100%;
		border-radius: 0 !important;
	}

	.havenDonation__flag {
		left: 20px;
		font-size: 11px;
		padding: 4px 12px;
	}

	.havenDonation__title {
		font-size: 18px !important;
	}

	.havenDonation__grid {
		gap: 10px;
	}

	.havenDonation__cta {
		font-size: 12px !important;
		letter-spacing: 0.04em;
	}

	.havenDonation__trust {
		gap: 16px;
		flex-wrap: wrap;
	}

	/*
	 * Mid-donate mobile (Figma 3736:1550):
	 * Slider 280px, form 400×339 overlapping by 11px.
	 * Use mobile-aspect crops + object-cover (not 100% 100% stretch).
	 * Compact card: orange title, no freq/impact.
	 */
	#svnm-mid-donate .elementor-element-midslide .swiper-slide-bg {
		background-size: cover !important;
		background-position: left center !important;
		background-repeat: no-repeat !important;
	}

	#svnm-mid-donate .elementor-element-midcaro .elementor-repeater-item-sld1eye .swiper-slide-bg {
		background-image: url("/wp-content/uploads/2026/09/svnm-mid-mob-eye.jpg") !important;
	}

	#svnm-mid-donate .elementor-element-midcaro .elementor-repeater-item-sld2boy .swiper-slide-bg {
		background-image: url("/wp-content/uploads/2026/09/svnm-mid-mob-r65.jpg") !important;
	}

	#svnm-mid-donate .elementor-element-midcaro .elementor-repeater-item-sld3gan .swiper-slide-bg {
		background-image: url("/wp-content/uploads/2026/09/svnm-mid-mob-r66.jpg") !important;
	}

	#svnm-mid-donate .elementor-element-midcaro .elementor-repeater-item-sld4otx .swiper-slide-bg {
		background-image: url("/wp-content/uploads/2026/09/svnm-mid-mob-r67.jpg") !important;
	}

	#svnm-mid-donate .elementor-element-midslide .swiper-pagination {
		bottom: 28px !important;
	}

	#svnm-mid-donate .havenDonation--mid {
		max-width: 400px !important;
		width: 100% !important;
		margin: 0 auto !important;
	}

	#svnm-mid-donate .havenDonation--mid .havenDonation__card {
		padding: 23px 20px 23px;
	}

	#svnm-mid-donate .havenDonation--mid .havenDonation__flag {
		position: static;
		display: block !important;
		background: none;
		color: var(--haven-orange);
		font-size: 14px;
		font-weight: 400;
		letter-spacing: 1.12px;
		padding: 0;
		margin: 0 0 5px;
		line-height: 1.2;
		white-space: normal;
	}

	#svnm-mid-donate .havenDonation--mid .havenDonation__title {
		display: none !important;
	}

	#svnm-mid-donate .havenDonation--mid .havenDonation__sub--hero {
		display: none !important;
	}

	#svnm-mid-donate .havenDonation--mid .havenDonation__sub--mid {
		display: block !important;
		margin: 0 0 25px;
		color: var(--haven-text);
		font-size: 12px;
		font-weight: 300;
		line-height: 1.25;
	}

	#svnm-mid-donate .havenDonation--mid .havenDonation__freq,
	#svnm-mid-donate .havenDonation--mid .havenDonation__impact {
		display: none !important;
	}

	#svnm-mid-donate .havenDonation--mid .havenDonation__grid {
		gap: 15px;
		margin-bottom: 18px;
	}

	#svnm-mid-donate .havenDonation--mid .havenDonation__custom {
		margin-bottom: 18px;
	}

	#svnm-mid-donate .havenDonation--mid .havenDonation__cta {
		font-size: 12px !important;
	}

	#svnm-mid-donate .havenDonation--mid .havenDonation__trust {
		margin-top: 18px;
		gap: 16px;
	}
}

/*
 * Impact strip — Figma desktop 3758:298 / mobile 3741:1886
 * Tighten counter widget default spacing so cell flex_gap wins.
 */
#svnm-impact .elementor-counter {
	margin: 0 !important;
	padding: 0 !important;
}

#svnm-impact .elementor-counter .elementor-counter-number-wrapper,
#svnm-impact .elementor-counter .elementor-counter-title {
	margin: 0 !important;
	padding: 0 !important;
}

#svnm-impact .elementor-widget-counter,
#svnm-impact .elementor-widget-heading {
	margin: 0 !important;
}

/*
 * Desktop: Figma keeps cataract + Drishti labels on one line;
 * Namo stays two lines. Mobile keeps the <br> wraps.
 */
@media (min-width: 768px) {
	#svnm-impact .elementor-element-impact3l .elementor-heading-title br,
	#svnm-impact .elementor-element-impact4l .elementor-heading-title br {
		display: none;
	}
}

/* Mobile: 20px inset (400 wide on 440) — margin alone won't shrink 100% width. */
@media (max-width: 767px) {
	#svnm-impact {
		width: calc(100% - 40px) !important;
		max-width: calc(100% - 40px) !important;
		margin-left: 20px !important;
		margin-right: 20px !important;
	}

	/* Force "Ghar Ghar" onto two lines like Figma (102px text box). */
	#svnm-impact .elementor-element-impact4v .elementor-heading-title {
		max-width: 102px;
		margin-left: auto;
		margin-right: auto;
	}

	/*
	 * Mobile Figma page order (y positions): Impact (1068) then Promise (1434).
	 * Desktop keeps DOM order: Promise → Impact.
	 * Skip in Elementor editor preview — flex+order breaks canvas bottom scroll.
	 */
	body:not(.elementor-editor-active) .elementor-93 {
		display: flex !important;
		flex-direction: column;
	}

	body:not(.elementor-editor-active) .elementor-93 > .e-con {
		order: 100;
	}

	body:not(.elementor-editor-active) #svnm-hero {
		order: 10 !important;
	}

	body:not(.elementor-editor-active) #svnm-impact {
		order: 20 !important;
	}

	body:not(.elementor-editor-active) #svnm-promise {
		order: 30 !important;
	}

	body:not(.elementor-editor-active) #svnm-before-after {
		order: 40 !important;
	}

	body:not(.elementor-editor-active) #svnm-mid-donate {
		order: 50 !important;
	}

	body:not(.elementor-editor-active) #svnm-choose-amount {
		order: 60 !important;
	}
}

/*
 * Promise banner — Figma 3766:2606 / 3729:677
 * Kill default widget margins so flex_gap (15/20) + CTA margin (10/5) = exact gaps.
 */
#svnm-promise .elementor-widget-heading,
#svnm-promise .elementor-widget-text-editor,
#svnm-promise .elementor-widget-button,
#svnm-promise .elementor-widget-divider {
	margin: 0 !important;
}

#svnm-promise .elementor-widget-text-editor p {
	margin: 0 !important;
}

#svnm-promise .elementor-element-blursec8 {
	margin-top: 10px !important;
}

#svnm-promise .elementor-element-blursec8 .elementor-button {
	min-height: 45px;
	box-sizing: border-box;
}

@media (max-width: 767px) {
	#svnm-promise .elementor-element-blursec8 {
		margin-top: 5px !important;
	}

	#svnm-promise .elementor-element-blursec8 .elementor-button {
		min-height: 35px;
	}
}

/*
 * Choose Amount — keep 2×2 grid from desktop through tablet (1160→768).
 * 48.5% + 30px gap overflows and stacks half-width cards; use calc(50% − gap/2).
 */
@media (min-width: 768px) {
	#svnm-choose-amount .elementor-element-amt5,
	#svnm-choose-amount .elementor-element-amt6,
	#svnm-choose-amount .elementor-element-amt7,
	#svnm-choose-amount .elementor-element-amt8 {
		--width: calc(50% - 15px) !important;
		width: calc(50% - 15px) !important;
		max-width: calc(50% - 15px) !important;
	}

	#svnm-choose-amount .elementor-element-amt3 {
		max-width: 100% !important;
	}
}

@media (max-width: 1200px) and (min-width: 768px) {
	#svnm-choose-amount {
		padding-left: 40px !important;
		padding-right: 40px !important;
	}

	#svnm-choose-amount .elementor-element-amt4 {
		--gap: 20px 20px !important;
		--row-gap: 20px !important;
		--column-gap: 20px !important;
		gap: 20px !important;
	}

	#svnm-choose-amount .elementor-element-amt5,
	#svnm-choose-amount .elementor-element-amt6,
	#svnm-choose-amount .elementor-element-amt7,
	#svnm-choose-amount .elementor-element-amt8 {
		--width: calc(50% - 10px) !important;
		width: calc(50% - 10px) !important;
		max-width: calc(50% - 10px) !important;
	}
}

@media (max-width: 767px) {
	#svnm-choose-amount .elementor-element-amt5,
	#svnm-choose-amount .elementor-element-amt6,
	#svnm-choose-amount .elementor-element-amt7,
	#svnm-choose-amount .elementor-element-amt8 {
		--width: 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* Choose Amount cards — Donate CTA full width of card content */
#svnm-choose-amount .elementor-element-amt5b,
#svnm-choose-amount .elementor-element-amt6b,
#svnm-choose-amount .elementor-element-amt7b,
#svnm-choose-amount .elementor-element-amt8b {
	width: 100% !important;
	max-width: 100% !important;
}

#svnm-choose-amount .elementor-element-amt5b .elementor-button,
#svnm-choose-amount .elementor-element-amt6b .elementor-button,
#svnm-choose-amount .elementor-element-amt7b .elementor-button,
#svnm-choose-amount .elementor-element-amt8b .elementor-button {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	text-align: left !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
}

/* Elementor icon-right uses row-reverse — flex-start then pins content to the physical right.
   Use flex-end so "DONATE →" sits on the left. */
#svnm-choose-amount .elementor-element-amt5b .elementor-button-content-wrapper,
#svnm-choose-amount .elementor-element-amt6b .elementor-button-content-wrapper,
#svnm-choose-amount .elementor-element-amt7b .elementor-button-content-wrapper,
#svnm-choose-amount .elementor-element-amt8b .elementor-button-content-wrapper {
	display: flex !important;
	flex-direction: row-reverse !important;
	justify-content: flex-end !important;
	align-items: center !important;
	width: 100% !important;
	gap: 8px !important;
}

/*
 * Before & After image preview — Figma desktop 3762:90 (600×300) / mobile 3736:1726 (400×220)
 * Correct after image, label chips, orange handle + white divider, object-fit crop.
 */
#svnm-before-after .elementor-element-ba8 {
	width: 600px;
	max-width: 100%;
}

#svnm-before-after .mbai-before-after-wrap,
#svnm-before-after .mbai-wrapper,
#svnm-before-after .mbai-before-after-container,
#svnm-before-after .twentytwenty-container {
	width: 100% !important;
	height: 300px !important;
	max-height: 300px !important;
	overflow: hidden !important;
	border-radius: 0 !important;
}

#svnm-before-after .mbai-before-after-container img,
#svnm-before-after .twentytwenty-container img {
	width: 100% !important;
	height: 300px !important;
	max-width: none !important;
	object-fit: cover !important;
	object-position: center center !important;
}

/* Labels sit top-left / top-right like Figma (~10px inset, ~22px tall chips) */
#svnm-before-after .mbai-horizontal .mbai-before-label::before,
#svnm-before-after .mbai-horizontal .mbai-after-label::before,
#svnm-before-after .twentytwenty-horizontal .twentytwenty-before-label::before,
#svnm-before-after .twentytwenty-horizontal .twentytwenty-after-label::before {
	top: 10px !important;
	margin-top: 0 !important;
	line-height: 22px !important;
	padding: 0 10px !important;
	font-size: 10px !important;
	font-weight: 500 !important;
	font-family: Montserrat, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
}

#svnm-before-after .mbai-before-label::before,
#svnm-before-after .twentytwenty-before-label::before {
	left: 10px !important;
	background-color: rgba(255, 255, 255, 0.5) !important;
	color: rgba(143, 45, 45, 0.5) !important;
	border: none !important;
}

#svnm-before-after .mbai-after-label::before,
#svnm-before-after .twentytwenty-after-label::before {
	right: 10px !important;
	background-color: #8f2d2d !important;
	color: #ffffff !important;
	border: 1px solid #8f2d2d !important;
}

/* Figma handle: filled orange circle (~34px), white arrows, white divider */
#svnm-before-after .mbai-handle,
#svnm-before-after .twentytwenty-handle {
	width: 34px !important;
	height: 34px !important;
	margin-left: -17px !important;
	margin-top: -17px !important;
	background-color: #f58633 !important;
	border: none !important;
	box-shadow: none !important;
}

#svnm-before-after .mbai-horizontal .mbai-handle::before,
#svnm-before-after .mbai-horizontal .mbai-handle::after,
#svnm-before-after .twentytwenty-horizontal .twentytwenty-handle::before,
#svnm-before-after .twentytwenty-horizontal .twentytwenty-handle::after {
	width: 2px !important;
	background: #ffffff !important;
	box-shadow: none !important;
	margin-left: -1px !important;
}

#svnm-before-after .mbai-horizontal .mbai-handle::before,
#svnm-before-after .twentytwenty-horizontal .twentytwenty-handle::before {
	margin-bottom: 17px !important;
}

#svnm-before-after .mbai-horizontal .mbai-handle::after,
#svnm-before-after .twentytwenty-horizontal .twentytwenty-handle::after {
	margin-top: 17px !important;
}

#svnm-before-after .mbai-handle .mbai-left-arrow,
#svnm-before-after .twentytwenty-left-arrow {
	border-right-color: #ffffff !important;
}

#svnm-before-after .mbai-handle .mbai-right-arrow,
#svnm-before-after .twentytwenty-right-arrow {
	border-left-color: #ffffff !important;
}

@media (max-width: 767px) {
	#svnm-before-after .elementor-element-ba8 {
		width: 100%;
		max-width: 400px;
	}

	#svnm-before-after .mbai-before-after-wrap,
	#svnm-before-after .mbai-wrapper,
	#svnm-before-after .mbai-before-after-container,
	#svnm-before-after .twentytwenty-container {
		height: 220px !important;
		max-height: 220px !important;
	}

	#svnm-before-after .mbai-before-after-container img,
	#svnm-before-after .twentytwenty-container img {
		height: 220px !important;
	}

	#svnm-before-after .mbai-horizontal .mbai-before-label::before,
	#svnm-before-after .mbai-horizontal .mbai-after-label::before,
	#svnm-before-after .twentytwenty-horizontal .twentytwenty-before-label::before,
	#svnm-before-after .twentytwenty-horizontal .twentytwenty-after-label::before {
		top: 5px !important;
		left: auto;
	}

	#svnm-before-after .mbai-before-label::before,
	#svnm-before-after .twentytwenty-before-label::before {
		left: 5px !important;
	}

	#svnm-before-after .mbai-after-label::before,
	#svnm-before-after .twentytwenty-after-label::before {
		right: 5px !important;
	}
}


/* —— Festival donate (Ganeshotsav) — mirrors mid-donate —— */
#svnm-festival-donate .elementor-element-festslide .swiper-slide-bg {
	background-size: cover !important;
	background-position: left center !important;
	background-repeat: no-repeat !important;
}

#svnm-festival-donate .havenDonation--mid {
	max-width: 402px;
	width: 100%;
	margin: 0;
}

#svnm-festival-donate .havenDonation--mid .havenDonation__card {
	padding: 30px 30px 30px;
}

#svnm-festival-donate .havenDonation--mid .havenDonation__flag,
#svnm-festival-donate .havenDonation--mid .havenDonation__impact,
#svnm-festival-donate .havenDonation--mid .havenDonation__sub--mid {
	display: none !important;
}

#svnm-festival-donate .havenDonation--mid .havenDonation__title {
	margin: 0 0 0 !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	line-height: 1.22 !important;
}

#svnm-festival-donate .havenDonation--mid .havenDonation__sub--hero {
	display: block;
	margin: 0 0 20px;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.25;
}

#svnm-festival-donate .havenDonation--mid .havenDonation__freq {
	height: 45px;
	padding: 5px;
	margin-bottom: 27px;
}

#svnm-festival-donate .havenDonation--mid .havenDonation__grid {
	gap: 15px 5px;
	margin-bottom: 15px;
}

#svnm-festival-donate .havenDonation--mid .havenDonation__custom {
	margin-bottom: 18px;
}

#svnm-festival-donate .havenDonation--mid .havenDonation__cta {
	font-size: 18px !important;
	margin: 0;
}

#svnm-festival-donate .havenDonation--mid .havenDonation__trust {
	margin-top: 27px;
	gap: 28px;
	font-size: 13px;
	font-weight: 300;
	line-height: 17px;
	min-height: 17px;
}

#svnm-festival-donate .havenDonation--mid .havenDonation__trust span {
	line-height: 17px;
}

@media (max-width: 767px) {
	#svnm-festival-donate .elementor-element-festslide .swiper-slide-bg {
		background-size: cover !important;
		background-position: left center !important;
		background-repeat: no-repeat !important;
	}

	#svnm-festival-donate .elementor-element-festcaro .elementor-repeater-item-fst1gan .swiper-slide-bg {
		background-image: url("/wp-content/uploads/2026/09/svnm-fest-mob-ganesh.jpg") !important;
	}

	#svnm-festival-donate .elementor-element-festcaro .elementor-repeater-item-fst2eye .swiper-slide-bg {
		background-image: url("/wp-content/uploads/2026/09/svnm-fest-mob-eye.jpg") !important;
	}

	#svnm-festival-donate .elementor-element-festcaro .elementor-repeater-item-fst3boy .swiper-slide-bg {
		background-image: url("/wp-content/uploads/2026/09/svnm-fest-mob-boy.jpg") !important;
	}

	#svnm-festival-donate .elementor-element-festcaro .elementor-repeater-item-fst4otx .swiper-slide-bg {
		background-image: url("/wp-content/uploads/2026/09/svnm-fest-mob-ot.jpg") !important;
	}

	#svnm-festival-donate .elementor-element-festslide .swiper-pagination {
		bottom: 28px !important;
	}

	#svnm-festival-donate .havenDonation--mid {
		max-width: 400px !important;
		width: 100% !important;
		margin: 0 auto !important;
	}

	#svnm-festival-donate .havenDonation--mid .havenDonation__card {
		padding: 23px 20px 23px;
	}

	#svnm-festival-donate .havenDonation--mid .havenDonation__flag {
		position: static;
		display: block !important;
		background: none;
		color: var(--haven-orange);
		font-size: 14px;
		font-weight: 400;
		letter-spacing: 1.12px;
		padding: 0;
		margin: 0 0 5px;
		line-height: 1.2;
		white-space: normal;
	}

	#svnm-festival-donate .havenDonation--mid .havenDonation__title {
		display: none !important;
	}

	#svnm-festival-donate .havenDonation--mid .havenDonation__sub--hero {
		display: none !important;
	}

	#svnm-festival-donate .havenDonation--mid .havenDonation__sub--mid {
		display: block !important;
		margin: 0 0 25px;
		color: var(--haven-text);
		font-size: 12px;
		font-weight: 300;
		line-height: 1.25;
	}

	#svnm-festival-donate .havenDonation--mid .havenDonation__freq,
	#svnm-festival-donate .havenDonation--mid .havenDonation__impact {
		display: none !important;
	}

	#svnm-festival-donate .havenDonation--mid .havenDonation__grid {
		gap: 15px;
		margin-bottom: 18px;
	}

	#svnm-festival-donate .havenDonation--mid .havenDonation__custom {
		margin-bottom: 18px;
	}

	#svnm-festival-donate .havenDonation--mid .havenDonation__cta {
		font-size: 12px !important;
	}

	#svnm-festival-donate .havenDonation--mid .havenDonation__trust {
		margin-top: 18px;
		gap: 16px;
	}

	body:not(.elementor-editor-active) #svnm-festival-donate {
		order: 65 !important;
	}
}


/* —— Stories (Figma 3795:5242 / 3736:1794) —— */
/* Desktop: 1440×492 · pad 61/80 · copy 454 · player 650×370 · gaps 20 */
#svnm-stories {
	box-sizing: border-box;
}

#svnm-stories > .e-con,
#svnm-stories > .elementor-element {
	margin: 0 !important;
}

#svnm-stories .elementor-element-sto1,
#svnm-stories .svnm-stories__copy {
	flex: 0 0 454px !important;
	width: 454px !important;
	max-width: 454px !important;
	gap: 20px !important;
	row-gap: 20px !important;
}

#svnm-stories .elementor-element-sto1 > .elementor-element,
#svnm-stories .svnm-stories__eyebrow,
#svnm-stories .svnm-stories__title,
#svnm-stories .svnm-stories__quote,
#svnm-stories .svnm-stories__cta {
	margin: 0 !important;
	padding: 0 !important;
	width: auto;
}

#svnm-stories .svnm-stories__eyebrow .elementor-widget-container,
#svnm-stories .svnm-stories__title .elementor-widget-container,
#svnm-stories .svnm-stories__quote .elementor-widget-container,
#svnm-stories .svnm-stories__cta .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}

#svnm-stories .svnm-stories__eyebrow .elementor-heading-title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 18px !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	height: 18px;
}

#svnm-stories .svnm-stories__eyebrow-line {
	display: inline-block;
	width: 20px;
	height: 1px;
	background: #f58633;
	flex-shrink: 0;
}

#svnm-stories .svnm-stories__eyebrow-mob {
	display: none;
}

#svnm-stories .svnm-stories__br-mob {
	display: none;
}

#svnm-stories .svnm-stories__title .elementor-heading-title {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 45px !important;
	line-height: 55px !important;
	font-weight: 800 !important;
	letter-spacing: 0 !important;
}

#svnm-stories .svnm-stories__keep {
	color: #ffffff;
}

#svnm-stories .svnm-stories__hope {
	color: #f58633;
}

#svnm-stories .svnm-stories__quote {
	max-width: 392px;
}

#svnm-stories .svnm-stories__quote .elementor-widget-container {
	border-left: 3px solid #f58633;
	padding: 0 0 0 10px !important;
	margin: 0 !important;
	box-sizing: border-box;
}

#svnm-stories .svnm-stories__quote p {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 18px !important;
	line-height: 24px !important;
	font-weight: 400 !important;
}

#svnm-stories .svnm-stories__cta .elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-wrap: nowrap !important;
	width: 165px !important;
	height: 45px !important;
	min-height: 45px !important;
	padding: 0 18px !important;
	border-radius: 0 !important;
	box-sizing: border-box;
	white-space: nowrap !important;
	gap: 10px;
}

#svnm-stories .svnm-stories__cta .elementor-button-content-wrapper {
	display: inline-flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	flex-direction: row !important;
	white-space: nowrap !important;
	gap: 10px;
}

#svnm-stories .svnm-stories__cta .elementor-button-text {
	white-space: nowrap !important;
	flex-shrink: 0;
}

#svnm-stories .svnm-stories__cta .elementor-button-icon {
	margin: 0 !important;
	font-size: 14px !important;
	flex-shrink: 0;
}

#svnm-stories .elementor-element-sto2,
#svnm-stories .svnm-stories__player {
	flex: 0 0 650px !important;
	width: 650px !important;
	max-width: 650px !important;
	height: 370px !important;
	min-height: 370px !important;
	overflow: hidden;
	background: #2b2b2b !important;
	padding: 0 !important;
	margin: 0 !important;
}

#svnm-stories .svnm-stories__video,
#svnm-stories .svnm-stories__video .elementor-widget-container,
#svnm-stories .svnm-stories__video .elementor-wrapper {
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

#svnm-stories .svnm-stories__video .elementor-wrapper {
	aspect-ratio: auto !important;
	padding-bottom: 0 !important;
}

#svnm-stories .svnm-stories__video iframe.elementor-video {
	width: 100% !important;
	height: 100% !important;
	position: absolute;
	inset: 0;
	border: 0;
}

#svnm-stories .svnm-stories__video .elementor-wrapper {
	position: relative;
	height: 370px !important;
}

@media (max-width: 1024px) and (min-width: 768px) {
	#svnm-stories {
		padding: 48px 40px !important;
	}

	#svnm-stories .elementor-element-sto1,
	#svnm-stories .svnm-stories__copy {
		flex: 0 0 380px !important;
		width: 380px !important;
		max-width: 380px !important;
	}

	#svnm-stories .svnm-stories__title .elementor-heading-title {
		font-size: 36px !important;
		line-height: 44px !important;
	}

	#svnm-stories .elementor-element-sto2,
	#svnm-stories .svnm-stories__player {
		flex: 0 0 520px !important;
		width: 520px !important;
		max-width: 520px !important;
		height: 296px !important;
		min-height: 296px !important;
	}

	#svnm-stories .svnm-stories__video .elementor-wrapper {
		height: 296px !important;
	}
}

@media (max-width: 767px) {
	body:not(.elementor-editor-active) #svnm-stories {
		order: 70 !important;
	}

	#svnm-stories {
		background-color: #f7f3ee !important;
		/* Figma 3736:1794 = 424×512; header 112 + player 400 */
		padding: 0 12px !important;
		min-height: 512px !important;
		gap: 0 !important;
		row-gap: 0 !important;
		justify-content: center !important;
	}

	#svnm-stories .elementor-element-sto1,
	#svnm-stories .svnm-stories__copy {
		flex: 0 0 auto !important;
		width: 400px !important;
		max-width: 100% !important;
		align-items: center !important;
		gap: 15px !important;
		row-gap: 15px !important;
		margin: 0 0 25px !important;
	}

	#svnm-stories .svnm-stories__eyebrow .elementor-heading-title {
		justify-content: center;
		width: 100%;
		font-size: 10px !important;
		line-height: 12px !important;
		height: 12px;
		gap: 8px;
	}

	#svnm-stories .svnm-stories__eyebrow-desk {
		display: none;
	}

	#svnm-stories .svnm-stories__eyebrow-mob {
		display: inline;
	}

	#svnm-stories .svnm-stories__br-mob {
		display: unset;
	}

	#svnm-stories .svnm-stories__br-desk {
		display: none;
	}

	#svnm-stories .svnm-stories__title {
		margin-bottom: 0 !important;
	}

	#svnm-stories .svnm-stories__title .elementor-heading-title {
		color: #8f2d2d !important;
		text-align: center;
		font-size: 25px !important;
		line-height: 30px !important;
		width: 100%;
	}

	#svnm-stories .svnm-stories__keep {
		color: #8f2d2d;
	}

	#svnm-stories .svnm-stories__hope {
		color: #f58633;
	}

	/* Figma 3736:1794 — player card 400×400 */
	#svnm-stories .elementor-element-sto2,
	#svnm-stories .svnm-stories__player {
		flex: 0 0 auto !important;
		width: 400px !important;
		max-width: 100% !important;
		height: 400px !important;
		min-height: 400px !important;
		aspect-ratio: 1 / 1;
		margin: 0 auto !important;
	}

	#svnm-stories .svnm-stories__video .elementor-wrapper {
		height: 400px !important;
		aspect-ratio: 1 / 1;
	}

	#svnm-stories .svnm-stories__quote,
	#svnm-stories .svnm-stories__cta {
		display: none !important;
	}
}


/* —— Sponsor a Legacy (Figma 3795:5087 / 3729:810) —— */
#svnm-legacy .svnm-legacy__eyebrow .elementor-heading-title {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	margin: 0 !important;
}

@media (max-width: 767px) {
	#svnm-legacy .svnm-legacy__eyebrow .elementor-heading-title {
		justify-content: center;
		width: 100%;
	}
}

#svnm-legacy .svnm-legacy__eyebrow-line {
	display: inline-block;
	width: 20px;
	height: 1px;
	background: #f58633;
}

#svnm-legacy .svnm-legacy__heading-accent {
	color: #f58633;
}

#svnm-legacy .svnm-legacy__heading .elementor-heading-title {
	margin: 0 !important;
}

#svnm-legacy .svnm-legacy__carousel {
	width: 100%;
	max-width: 100%;
	position: relative;
	padding-top: 70px; /* room for Figma arrows above slides */
}

#svnm-legacy .svnm-legacy__carousel .swiper-slide {
	height: auto;
	max-width: 100%;
}

#svnm-legacy .svnm-legacy__carousel .swiper-slide-image,
#svnm-legacy .svnm-legacy__carousel .swiper-slide img {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: 520px;
	aspect-ratio: 410 / 260;
	object-fit: cover;
	display: block;
	border-radius: 0;
}

/* Figma 3795:4380 — 50px circular arrows, top-left above banners */
#svnm-legacy .svnm-legacy__carousel .elementor-swiper-button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	position: absolute !important;
	top: 0 !important;
	bottom: auto !important;
	width: 50px !important;
	height: 50px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 50% !important;
	box-sizing: border-box;
	transform: none !important;
	z-index: 3;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 50px 50px !important;
	font-size: 0 !important;
	line-height: 0 !important;
	text-indent: -9999px;
	overflow: hidden;
}

#svnm-legacy .svnm-legacy__carousel .elementor-swiper-button i,
#svnm-legacy .svnm-legacy__carousel .elementor-swiper-button svg {
	display: none !important;
}

#svnm-legacy .svnm-legacy__carousel .elementor-swiper-button-prev {
	left: 0 !important;
	right: auto !important;
	background-image: url("/wp-content/uploads/2026/09/svnm-legacy-arrow-prev.svg") !important;
	background-color: transparent !important;
	border: 0 !important;
	color: transparent !important;
}

#svnm-legacy .svnm-legacy__carousel .elementor-swiper-button-next {
	left: 60px !important; /* 50 + 10 gap */
	right: auto !important;
	background-image: url("/wp-content/uploads/2026/09/svnm-legacy-arrow-next.svg") !important;
	background-color: transparent !important;
	border: 0 !important;
	color: transparent !important;
}

#svnm-legacy .svnm-legacy__carousel .swiper-pagination {
	position: relative !important;
	margin-top: 16px;
	bottom: auto !important;
}

#svnm-legacy .svnm-legacy__carousel .swiper-pagination-bullet {
	background: rgba(143, 45, 45, 0.25);
	opacity: 1;
}

#svnm-legacy .svnm-legacy__carousel .swiper-pagination-bullet-active {
	background: #8f2d2d;
}

#svnm-legacy .svnm-legacy__list {
	width: 100%;
}

#svnm-legacy .svnm-legacy__row.svnm-legacy__row--more {
	display: none !important;
}

#svnm-legacy.is-expanded .svnm-legacy__row.svnm-legacy__row--more {
	display: grid !important;
}

#svnm-legacy .svnm-legacy__more .elementor-button-icon {
	transition: transform 0.2s ease;
	display: inline-flex;
}

#svnm-legacy .svnm-legacy__row {
	display: grid !important;
	grid-template-columns: minmax(0, 520px) minmax(160px, 1fr) 191px;
	align-items: center;
	column-gap: 24px;
	border-top: 0;
	border-bottom: 0;
}

#svnm-legacy .svnm-legacy__row + .svnm-legacy__row {
	border-top: 1px solid rgba(143, 45, 45, 0.35);
}

#svnm-legacy .svnm-legacy__title,
#svnm-legacy .svnm-legacy__amount,
#svnm-legacy .svnm-legacy__enquire {
	width: 100%;
}

#svnm-legacy .svnm-legacy__title .elementor-heading-title {
	margin: 0 !important;
	max-width: 520px;
}

#svnm-legacy .svnm-legacy__amount .elementor-heading-title {
	margin: 0 !important;
	white-space: nowrap;
}

#svnm-legacy .svnm-legacy__enquire .elementor-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 191px;
	width: 191px;
	height: 35px !important;
	min-height: 35px !important;
	padding: 0 24px !important;
	border-radius: 0 !important;
	box-sizing: border-box;
	white-space: nowrap;
}

#svnm-legacy .svnm-legacy__more .elementor-button {
	box-shadow: none !important;
	border: 0 !important;
	border-bottom: 1px solid #2b2b2b !important;
	border-radius: 0 !important;
	padding: 0 0 4px !important;
	background: transparent !important;
}

#svnm-legacy .svnm-legacy__more .elementor-button:hover {
	border-bottom-color: #f58633 !important;
}

@media (max-width: 767px) {
	body:not(.elementor-editor-active) #svnm-legacy {
		order: 80 !important;
	}

	/* Mobile carousel is dots-only (Figma 3729:810); no arrow padding */
	#svnm-legacy .svnm-legacy__carousel {
		margin-left: 0;
		margin-right: 0;
		width: 100%;
		padding-top: 0;
	}

	#svnm-legacy .svnm-legacy__carousel .elementor-swiper-button {
		display: none !important;
	}

	#svnm-legacy .svnm-legacy__carousel .swiper-slide-image,
	#svnm-legacy .svnm-legacy__carousel .swiper-slide img {
		aspect-ratio: 440 / 280;
	}

	/* Let Elementor flex wrap handle title → amount|enquire (no forced edge space-between) */
	#svnm-legacy .svnm-legacy__row {
		display: flex !important;
		grid-template-columns: none;
		grid-template-areas: none;
		max-width: 400px;
		margin: 0 auto;
		width: 100%;
	}

	#svnm-legacy .svnm-legacy__title {
		flex: 0 0 100%;
		width: 100%;
	}

	#svnm-legacy .svnm-legacy__amount,
	#svnm-legacy .svnm-legacy__enquire {
		width: auto;
		flex: 0 0 auto;
	}

	#svnm-legacy .svnm-legacy__title .elementor-heading-title {
		max-width: 100%;
		text-align: center;
	}

	#svnm-legacy .svnm-legacy__enquire .elementor-button {
		min-width: 115px;
		width: 115px;
		font-size: 12px !important;
		padding: 0 8px !important;
	}
}


/* —— Closing CTA (Figma 3795:5240 / 3737:1882) —— */
/* Arc = section background_image (Figma 3795:5108 Mask group, 1440×550).
 * !important beats Elementor lazyload which zeroes bg until .e-lazyloaded. */
#svnm-closing-cta {
	position: relative;
	overflow: hidden;
	background-image: url("/wp-content/uploads/2026/09/svnm-closing-cta-arc.svg") !important;
	background-size: 100% 100% !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	/* Desktop Figma: 65px gap before footer (6524−6459) */
	margin-bottom: 65px !important;
}

#svnm-closing-cta .svnm-closing-cta__inner {
	position: relative;
	z-index: 1;
	max-width: 900px;
	margin: 0 auto;
}

#svnm-closing-cta .svnm-closing-cta__hindi .elementor-heading-title {
	margin: 0 !important;
	font-family: "Noto Sans Devanagari", "Noto Sans", Montserrat, sans-serif !important;
}

#svnm-closing-cta .svnm-closing-cta__sub .elementor-heading-title {
	margin: 0 !important;
}

#svnm-closing-cta .svnm-closing-cta__btn .elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 165px !important;
	height: 45px !important;
	min-height: 45px !important;
	padding: 0 20px !important;
	border-radius: 0 !important;
	box-sizing: border-box;
	white-space: nowrap !important;
	gap: 10px;
}

#svnm-closing-cta .svnm-closing-cta__btn .elementor-button-content-wrapper {
	display: inline-flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	gap: 10px;
}

@media (max-width: 767px) {
	body:not(.elementor-editor-active) #svnm-closing-cta {
		order: 85 !important;
	}

	#svnm-closing-cta {
		min-height: 235px !important;
		height: auto !important;
		/* Figma 3737:1884 — 20px side inset; 50px gap before footer (7180−7130) */
		margin-left: 20px !important;
		margin-right: 20px !important;
		margin-bottom: 50px !important;
		width: auto !important;
		max-width: calc(100% - 40px) !important;
		box-sizing: border-box !important;
		/* Soft orange ring — Figma 3737:1836 Ellipse 17 (not desktop arc) */
		background-image: url("/wp-content/uploads/2026/09/svnm-closing-cta-ellipse-mobile.svg") !important;
		background-size: 260px 271px !important;
		background-position: right -10px top -120px !important;
		background-repeat: no-repeat !important;
	}

	#svnm-closing-cta .svnm-closing-cta__inner {
		max-width: 347px;
	}

	#svnm-closing-cta .svnm-closing-cta__btn .elementor-button {
		width: 160px !important;
		height: 35px !important;
		min-height: 35px !important;
	}
}


/* —— Footer (Figma 3795:5267 / 3729:734) —— */
#svnm-footer .svnm-footer__logo,
#svnm-footer .svnm-footer__logo img {
	width: 200px !important;
	max-width: 100%;
	height: auto !important;
	display: block;
}

#svnm-footer .svnm-footer__tagline .elementor-heading-title {
	margin: 0 !important;
	max-width: 360px;
}

#svnm-footer .svnm-footer__heading .elementor-heading-title {
	margin: 0 !important;
}

#svnm-footer .svnm-footer__donate .elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 165px !important;
	height: 45px !important;
	min-height: 45px !important;
	padding: 0 20px !important;
	border-radius: 0 !important;
	box-sizing: border-box;
	white-space: nowrap !important;
	gap: 10px;
}

#svnm-footer .svnm-footer__row {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #fff;
	font-family: Montserrat, sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.4;
	margin: 0;
}

#svnm-footer .svnm-footer__row a {
	color: #fff;
	text-decoration: none;
}

#svnm-footer .svnm-footer__row a:hover {
	color: #f58633;
}

#svnm-footer .svnm-footer__row p {
	margin: 0;
}

#svnm-footer .svnm-footer__ico {
	width: 22px;
	height: 22px;
	flex-shrink: 0;
	margin-top: 2px;
	object-fit: contain;
}

#svnm-footer .svnm-footer__social .elementor-social-icon {
	background: transparent !important;
	border: 1px solid rgba(245, 134, 51, 0.6) !important;
	color: #f58633 !important;
}

#svnm-footer .svnm-footer__social .elementor-social-icon:hover {
	background: #f58633 !important;
	color: #fff !important;
}
#svnm-footer .svnm-footer__social .elementor-social-icon:hover svg{
	color: #fff !important;
}

#svnm-footer .svnm-footer__list .elementor-icon-list-icon {
	display: none !important;
}

#svnm-footer .svnm-footer__list .elementor-icon-list-text {
	color: #fff;
}

#svnm-footer .svnm-footer__list a:hover .elementor-icon-list-text {
	color: #f58633;
}

@media (max-width: 767px) {
	/* Figma 3729:734 — 440×477, left-aligned; no Quick links column */
	#svnm-footer {
		min-height: 477px !important;
		height: auto !important;
		padding: 30px 20px 20px !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		justify-content: flex-start !important;
		gap: 0 !important;
		row-gap: 0 !important;
	}

	#svnm-footer .svnm-footer__links,
	#svnm-footer .elementor-element-ftlinks {
		display: none !important;
	}

	#svnm-footer .svnm-footer__brand,
	#svnm-footer .elementor-element-ftbrand {
		width: 100% !important;
		max-width: 100% !important;
		align-items: flex-start !important;
		text-align: left !important;
		gap: 20px !important;
		row-gap: 20px !important;
		margin: 0 0 10px !important;
		padding: 0 !important;
	}

	#svnm-footer .svnm-footer__contact,
	#svnm-footer .elementor-element-ftcontact {
		width: 100% !important;
		max-width: 100% !important;
		align-items: flex-start !important;
		text-align: left !important;
		gap: 12px !important;
		row-gap: 12px !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	#svnm-footer .svnm-footer__logo,
	#svnm-footer .svnm-footer__logo img {
		width: 140px !important;
		height: auto !important;
		margin: 0 !important;
	}

	#svnm-footer .svnm-footer__tagline .elementor-heading-title {
		text-align: left !important;
		max-width: 400px;
		margin: 0 !important;
		font-size: 16px !important;
		font-weight: 500 !important;
		text-transform: uppercase !important;
		color: #fff !important;
	}

	#svnm-footer .svnm-footer__heading .elementor-heading-title {
		font-size: 12px !important;
		text-align: left !important;
	}

	#svnm-footer .svnm-footer__row {
		font-size: 12px !important;
		justify-content: flex-start;
		text-align: left;
		gap: 10px;
	}

	#svnm-footer .svnm-footer__ico {
		width: 15px;
		height: 15px;
		margin-top: 0;
	}

	#svnm-footer .svnm-footer__social {
		justify-content: flex-start !important;
	}

	#svnm-footer .svnm-footer__social .elementor-social-icon {
		width: 46px !important;
		height: 46px !important;
	}

	#svnm-footer .svnm-footer__donate .elementor-button {
		width: 115px !important;
		height: 35px !important;
		min-height: 35px !important;
		font-size: 12px !important;
		padding: 0 12px !important;
	}
}

/* —— Elementor editor: keep natural DOM flow so canvas can scroll to bottom —— */
body.elementor-editor-active .elementor-93 {
	display: block !important;
}

body.elementor-editor-active .elementor-93 > .e-con,
body.elementor-editor-active #svnm-hero,
body.elementor-editor-active #svnm-impact,
body.elementor-editor-active #svnm-promise,
body.elementor-editor-active #svnm-before-after,
body.elementor-editor-active #svnm-mid-donate,
body.elementor-editor-active #svnm-choose-amount,
body.elementor-editor-active #svnm-festival-donate,
body.elementor-editor-active #svnm-stories,
body.elementor-editor-active #svnm-legacy,
body.elementor-editor-active #svnm-closing-cta,
body.elementor-editor-active #svnm-footer {
	order: unset !important;
}

/*
 * Elementor still paints responsive-hidden widgets in the canvas.
 * Mobile-only legacy carousel (legcarom) + aspect-ratio images explode to
 * multi-million-px height and break bottom scroll — hide off mobile viewport.
 */
@media (min-width: 768px) {
	body.elementor-editor-active .elementor-element-legcarom,
	body.elementor-editor-active .svnm-legacy__carousel--mobile {
		display: none !important;
		height: 0 !important;
		max-height: 0 !important;
		overflow: hidden !important;
		margin: 0 !important;
		padding: 0 !important;
	}
}

body.elementor-editor-active .svnm-legacy__carousel .swiper-slide,
body.elementor-editor-active .svnm-legacy__carousel .swiper-slide-image,
body.elementor-editor-active .svnm-legacy__carousel img {
	max-width: 100% !important;
	width: 100% !important;
	max-height: 520px !important;
	height: auto !important;
}

/* sticky nav contrast */
#svnm-donate-header{background-color:#f6f5ee}#svnm-donate-header.elementor-sticky--effects,#svnm-donate-header.elementor-sticky--active{background-color:#f6f5ee!important}#svnm-donate-header.elementor-sticky--effects .elementor-nav-menu--main .elementor-item,#svnm-donate-header.elementor-sticky--active .elementor-nav-menu--main .elementor-item,#svnm-donate-header.elementor-sticky--effects .elementor-nav-menu a,#svnm-donate-header.elementor-sticky--active .elementor-nav-menu a{color:#33373d!important}


.elementor-slides .swiper-slide-bg:before {
    content: '';
    padding-top: 36%;
    display: block !important; 
}