@font-face {
	font-display: swap;
	font-family: "Bebas Neue";
	font-style: normal;
	font-weight: 400;
	src: url("../fonts/BebasNeue-Regular.ttf") format("truetype");
}

@font-face {
	font-display: swap;
	font-family: "Montserrat";
	font-style: normal;
	font-weight: 400;
	src: url("../fonts/Montserrat-Regular.ttf") format("truetype");
}

@font-face {
	font-display: swap;
	font-family: "Montserrat";
	font-style: normal;
	font-weight: 500;
	src: url("../fonts/Montserrat-Medium.ttf") format("truetype");
}

@font-face {
	font-display: swap;
	font-family: "Montserrat";
	font-style: normal;
	font-weight: 600;
	src: url("../fonts/Montserrat-SemiBold.ttf") format("truetype");
}

@font-face {
	font-display: swap;
	font-family: "Montserrat";
	font-style: normal;
	font-weight: 700;
	src: url("../fonts/Montserrat-Bold.ttf") format("truetype");
}

:root {
	--asu-brand-yellow: #ffcc00;
	--asu-brand-yellow-70: #ffdb4d;
	--asu-brand-yellow-40: #ffeb99;
	--asu-brand-green: #0c6f48;
	--asu-brand-green-70: #55a17f;
	--asu-brand-green-40: #9dcbba;
	--asu-brand-black: #0a0a0a;
	--asu-text-green: var(--asu-brand-green);
	--asu-forest: var(--asu-brand-green);
	--asu-forest-2: #075c3b;
	--asu-leaf: #128755;
	--asu-clay: var(--asu-brand-yellow);
	--asu-clay-dark: #c99f00;
	--asu-sun: var(--asu-brand-yellow);
	--asu-cream: #fff3bf;
	--asu-paper: #fffbea;
	--asu-white: #ffffff;
	--asu-charcoal: var(--asu-brand-black);
	--asu-muted: #4d5b53;
	--asu-line: rgba(10, 10, 10, 0.13);
	--asu-shadow: 0 18px 46px rgba(12, 111, 72, 0.14);
	--asu-shadow-soft: 0 10px 24px rgba(12, 111, 72, 0.1);
	--asu-radius: 14px;
	--asu-radius-sm: 8px;
	--asu-edge: clamp(1.35rem, 4.2vw, 4rem);
	--asu-container-floor: 80vw;
	--asu-content: max(var(--asu-container-floor), min(86vw, 1320px));
	--asu-content-loose: max(var(--asu-container-floor), min(90vw, 1480px));
	--asu-reading: min(72ch, 920px);
	--asu-section-y: clamp(5rem, 9vw, 9rem);
	--asu-section-y-tight: clamp(3.75rem, 7vw, 6rem);
	--asu-card-pad: clamp(1.45rem, 2.2vw, 2.25rem);
	--asu-max: 1320px;
	--asu-font: "Montserrat", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
	--asu-display: "Bebas Neue", Impact, "Arial Narrow", sans-serif;
}

* {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	--asu-header-side: clamp(0.9rem, 2.4vw, 2rem);
	--asu-header-height: 82px;
	--wp--style--root--padding-left: var(--asu-edge);
	--wp--style--root--padding-right: var(--asu-edge);
	background: var(--asu-paper);
	color: var(--asu-charcoal);
	font-family: var(--asu-font);
	font-size: 18px;
	line-height: 1.65;
	margin: 0;
	overflow-x: hidden;
	text-rendering: optimizeLegibility;
}

.wp-site-blocks {
	transition: opacity 220ms ease;
}

body.asu-language-transitioning .wp-site-blocks {
	opacity: 0.42;
	pointer-events: none;
}

main {
	display: block;
}

body.asu-scrolled .asu-site-header {
	background: rgba(12, 111, 72, 0.97);
	backdrop-filter: blur(12px);
	border-bottom-color: rgba(255, 255, 255, 0.12);
	box-shadow: 0 10px 30px rgba(12, 111, 72, 0.18);
}

body.asu-no-top-hero:not(.asu-scrolled) .asu-site-header {
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(12px);
	border-bottom-color: rgba(12, 111, 72, 0.12);
	box-shadow: 0 10px 26px rgba(12, 111, 72, 0.08);
	color: var(--asu-text-green);
}

a {
	color: var(--asu-leaf);
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

a:focus-visible,
button:focus-visible,
.wp-block-button__link:focus-visible,
.elementor-button:focus-visible,
.wp-block-navigation a:focus-visible {
	outline: 3px solid var(--asu-sun);
	outline-offset: 4px;
}

h1,
h2,
h3,
h4 {
	color: var(--asu-text-green);
	font-family: var(--asu-display);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.04;
	text-wrap: balance;
}

h1 {
	font-size: clamp(3rem, 7vw, 6.5rem);
}

h2 {
	font-size: clamp(2.2rem, 4.4vw, 4.4rem);
}

h3 {
	font-size: clamp(1.35rem, 2vw, 2rem);
}

p {
	margin-top: 0;
}

p:last-child,
.asu-card > *:last-child,
.asu-program-card > *:last-child,
.asu-help-card > *:last-child,
.asu-donation-card > *:last-child,
.asu-value-card > *:last-child,
.asu-impact-card > *:last-child {
	margin-bottom: 0;
}

li,
p,
dd {
	overflow-wrap: break-word;
}

img,
svg,
video {
	max-width: 100%;
}

.wp-site-blocks {
	overflow-x: clip;
}

.wp-block-columns {
	gap: clamp(1.1rem, 2.5vw, 2rem);
}

.wp-block-buttons {
	gap: 0.8rem;
}

.wp-block-column {
	min-width: 0;
}

.wp-site-blocks > * {
	margin-block-start: 0;
}

.entry-content > * {
	margin-block-start: 0;
}

.asu-page-main > .wp-block-post-content,
.asu-page-main > .wp-block-post-content > * {
	margin-block-start: 0;
}

body.elementor-page .asu-page-main.has-global-padding,
body.elementor-page .asu-page-main > .wp-block-post-content.has-global-padding,
body.elementor-page .asu-page-main > .wp-block-post-content {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}

body.elementor-page .asu-page-main > .wp-block-post-content > .elementor {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}

body.single-post.elementor-page main > .wp-block-post-content,
body.single-post.elementor-page main > .entry-content,
body.single-post.elementor-page main > .wp-block-post-content > .elementor,
body.single-post.elementor-page main > .entry-content > .elementor {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}

body.single-post.elementor-page .entry-content.alignfull.wp-block-post-content {
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	max-width: 100vw !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100vw !important;
}

body.single-post.elementor-page .entry-content.alignfull.wp-block-post-content > .elementor {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}

body.elementor-page .elementor .e-con.alignwide,
body.elementor-page .elementor .elementor-element.alignwide {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--asu-content) !important;
	width: var(--asu-content) !important;
}

body.elementor-page .elementor .e-con.alignfull,
body.elementor-page .elementor .elementor-element.alignfull {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: 100% !important;
	width: 100% !important;
}

body.elementor-page .elementor .alignfull > .alignwide {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--asu-content) !important;
	width: var(--asu-content) !important;
}

body.elementor-page .elementor .wp-block-columns {
	min-width: 0;
}

.wp-site-blocks .elementor .e-con.asu-hero,
body.elementor-page .elementor .e-con.asu-hero,
.wp-site-blocks .elementor .e-con.asu-page-hero,
body.elementor-page .elementor .e-con.asu-page-hero,
.wp-site-blocks .elementor .e-con.asu-section,
body.elementor-page .elementor .e-con.asu-section,
.wp-site-blocks .elementor .e-con.asu-section-narrow,
body.elementor-page .elementor .e-con.asu-section-narrow,
.wp-site-blocks .elementor .e-con.asu-page-section,
body.elementor-page .elementor .e-con.asu-page-section,
.wp-site-blocks .elementor .e-con.asu-band,
body.elementor-page .elementor .e-con.asu-band,
.wp-site-blocks .elementor .e-con.asu-dark-band,
body.elementor-page .elementor .e-con.asu-dark-band,
.wp-site-blocks .elementor .e-con.asu-cta-band,
body.elementor-page .elementor .e-con.asu-cta-band,
.wp-site-blocks .elementor .e-con.asu-blog-empty,
body.elementor-page .elementor .e-con.asu-blog-empty {
	display: block !important;
}

.wp-site-blocks .elementor > .e-con.e-parent:is(.asu-hero, .asu-page-hero, .asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty).alignwide,
.wp-site-blocks .elementor > .e-con.e-parent:is(.asu-hero, .asu-page-hero, .asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty).alignfull,
body.elementor-page .elementor > .e-con.e-parent:is(.asu-hero, .asu-page-hero, .asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty).alignwide,
body.elementor-page .elementor > .e-con.e-parent:is(.asu-hero, .asu-page-hero, .asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty).alignfull {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	width: 100% !important;
	--content-width: var(--asu-content);
}

.wp-site-blocks main .elementor > .e-con.e-parent:is(.asu-hero, .asu-page-hero, .asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty).alignfull {
	box-sizing: border-box !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	max-width: 100vw !important;
	width: 100vw !important;
}

.asu-site-header {
	background: transparent;
	backdrop-filter: blur(0);
	border-bottom: 1px solid transparent;
	color: var(--asu-white);
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, backdrop-filter 180ms ease;
	width: 100%;
	z-index: 50;
}

.asu-site-header.has-global-padding,
.wp-site-blocks > .asu-site-header.has-global-padding {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.asu-site-header__inner {
	display: grid !important;
	gap: clamp(0.75rem, 2vw, 1.25rem);
	grid-template-columns: minmax(220px, auto) minmax(0, 1fr) auto auto;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: none !important;
	min-height: var(--asu-header-height);
	padding: 0.7rem 0;
	width: calc(100% - (var(--asu-header-side) * 2)) !important;
}

.wp-site-blocks > .asu-site-header > .asu-site-header__inner.alignwide,
.asu-site-header .asu-site-header__inner.alignwide {
	margin-left: var(--asu-header-side) !important;
	margin-right: var(--asu-header-side) !important;
	max-width: calc(100% - (var(--asu-header-side) * 2)) !important;
	width: calc(100% - (var(--asu-header-side) * 2)) !important;
}

body.asu-scrolled .asu-site-header {
	background: rgba(12, 111, 72, 0.97);
	backdrop-filter: blur(12px);
	border-bottom-color: rgba(255, 255, 255, 0.12);
	box-shadow: 0 10px 30px rgba(12, 111, 72, 0.18);
}

body.asu-no-top-hero:not(.asu-scrolled) .asu-site-header {
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(12px);
	border-bottom-color: rgba(12, 111, 72, 0.12);
	box-shadow: 0 10px 26px rgba(12, 111, 72, 0.08);
	color: var(--asu-text-green);
}

.asu-site-brand {
	gap: 0.8rem;
	min-width: 0;
}

.asu-site-brand .wp-block-site-logo {
	flex: 0 0 auto;
}

.asu-site-brand img {
	display: block;
}

.asu-site-title {
	font-family: var(--asu-display);
	font-size: clamp(1.15rem, 0.95rem + 0.7vw, 1.7rem);
	font-weight: 400;
	line-height: 1;
	margin: 0;
	max-width: 12rem;
	overflow-wrap: normal;
}

.asu-site-header a,
.asu-site-footer a {
	color: inherit;
	text-decoration: none;
}

.asu-site-nav {
	color: rgba(255, 255, 255, 0.9);
	font-size: 0.92rem;
	font-weight: 750;
	gap: 0.9rem;
	justify-self: end;
	letter-spacing: 0.02em;
	min-width: 0;
	text-transform: uppercase;
}

body.asu-no-top-hero:not(.asu-scrolled) .asu-site-nav {
	color: var(--asu-text-green);
}

.asu-site-nav .wp-block-navigation-item__content {
	padding: 0.3rem 0;
}

.asu-site-nav .wp-block-navigation__container {
	gap: clamp(0.75rem, 1.5vw, 1.15rem);
}

.asu-site-nav .wp-block-navigation__submenu-container {
	background: rgba(12, 111, 72, 0.98) !important;
	border: 1px solid rgba(255, 255, 255, 0.14) !important;
	border-radius: 14px;
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.22);
	color: var(--asu-white) !important;
	min-width: 15rem !important;
	padding: 0.55rem;
	text-transform: none;
}

.asu-site-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	border-radius: 10px;
	font-size: 0.88rem;
	letter-spacing: 0;
	line-height: 1.15;
	padding: 0.55rem 0.7rem;
	white-space: nowrap;
}

.asu-site-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus {
	background: rgba(255, 255, 255, 0.08);
}

.asu-site-nav .asu-nav-mobile-action {
	display: none;
}

.asu-site-header .wc-block-mini-cart,
.asu-site-header .wc-block-customer-account,
.asu-site-header .wp-block-woocommerce-mini-cart,
.asu-site-header .wp-block-woocommerce-customer-account {
	display: none !important;
}

.asu-site-nav .wp-block-navigation__responsive-container-open {
	align-items: center;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 999px;
	color: var(--asu-white);
	display: none;
	min-height: 44px;
	padding: 0.55rem 0.7rem;
}

body.asu-no-top-hero:not(.asu-scrolled) .asu-site-nav .wp-block-navigation__responsive-container-open {
	border-color: rgba(12, 111, 72, 0.24);
	color: var(--asu-text-green);
}

.asu-site-nav .wp-block-navigation__responsive-container-open svg,
.asu-site-nav .wp-block-navigation__responsive-container-close svg {
	display: block;
	height: 24px;
	width: 24px;
}

.asu-site-nav .wp-block-navigation__responsive-container-close {
	color: var(--asu-white);
	padding: 0.6rem;
	width: auto;
}

.asu-site-nav a:focus,
.asu-footer-nav a:focus {
	color: var(--asu-sun);
}

body.asu-no-top-hero:not(.asu-scrolled) .asu-site-nav a:focus {
	color: var(--asu-clay-dark);
}

.asu-language-switcher {
	align-items: center;
	display: inline-flex;
	justify-self: end;
	white-space: nowrap;
}

.asu-language-toggle {
	align-items: center;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.34);
	border-radius: 999px;
	color: var(--asu-white);
	display: grid;
	font-size: 0.82rem;
	font-weight: 900;
	grid-template-columns: 1fr 1fr;
	letter-spacing: 0.08em;
	line-height: 1;
	min-height: 42px;
	min-width: 142px;
	overflow: hidden;
	padding: 0.22rem;
	position: relative;
	text-transform: uppercase;
}

.asu-language-toggle__thumb {
	background: var(--asu-sun);
	border-radius: 999px;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
	inset: 0.22rem auto 0.22rem 0.22rem;
	position: absolute;
	transform: translateX(0);
	transition: transform 220ms ease, box-shadow 160ms ease, background-color 160ms ease;
	width: calc(50% - 0.22rem);
	z-index: 0;
}

.asu-lang-en .asu-language-toggle__thumb {
	transform: translateX(calc(100% - 0.22rem));
}

.asu-language-toggle__option {
	align-items: center;
	border-radius: 999px;
	color: rgba(255, 255, 255, 0.76);
	display: inline-flex;
	gap: 0.28rem;
	justify-content: center;
	min-height: 34px;
	padding: 0 0.55rem;
	position: relative;
	transition: color 180ms ease;
	z-index: 1;
}

.asu-language-toggle__flag {
	border: 1px solid rgba(12, 111, 72, 0.18);
	border-radius: 2px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);
	display: inline-block;
	flex: 0 0 auto;
	height: 0.72rem;
	letter-spacing: 0;
	line-height: 1;
	overflow: hidden;
	width: 1rem;
}

.asu-language-toggle__flag.is-es {
	background: linear-gradient(180deg, #c60b1e 0 25%, #ffc400 25% 75%, #c60b1e 75% 100%);
}

.asu-language-toggle__flag.is-en {
	background:
		linear-gradient(90deg, transparent 0 42%, #cf142b 42% 58%, transparent 58% 100%),
		linear-gradient(0deg, transparent 0 38%, #cf142b 38% 62%, transparent 62% 100%),
		#ffffff;
}

.asu-lang-es .asu-language-toggle__option[data-asu-language-option="es"],
.asu-lang-en .asu-language-toggle__option[data-asu-language-option="en"] {
	color: var(--asu-text-green);
}

.asu-language-toggle:hover .asu-language-toggle__thumb,
.asu-language-toggle:focus-visible .asu-language-toggle__thumb {
	background: #ffdb4d;
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22);
}

.asu-header-actions {
	justify-self: end;
	gap: 0.7rem;
	white-space: nowrap;
}

.asu-header-actions .wp-block-button__link,
.asu-header-actions .elementor-button {
	min-height: 44px;
	padding: 0.72rem 1.05rem;
}

.asu-header-secondary .wp-block-button__link,
.asu-header-secondary .elementor-button {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.35);
	color: var(--asu-white);
}

.asu-header-secondary .wp-block-button__link:hover,
.asu-header-secondary .elementor-button:hover {
	background: rgba(255, 255, 255, 0.13);
	border-color: rgba(255, 255, 255, 0.7);
	color: var(--asu-white);
}

.wp-block-button__link,
.elementor-button,
.button,
button,
input[type="button"],
input[type="submit"] {
	align-items: center;
	border: 0;
	border-radius: 999px;
	background: var(--asu-sun);
	box-shadow: none;
	color: var(--asu-text-green);
	display: inline-flex;
	font-family: var(--asu-font);
	font-size: 0.96rem;
	font-weight: 800;
	justify-content: center;
	letter-spacing: 0.01em;
	line-height: 1.15;
	min-height: 48px;
	padding: 0.82rem 1.25rem;
	text-decoration: none;
	transition: transform 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

.wp-block-button__link:hover,
.elementor-button:hover,
.button:hover,
button:hover,
input[type="button"]:hover,
input[type="submit"]:hover {
	background: #ffdb4d;
	color: var(--asu-text-green);
	box-shadow: var(--asu-shadow-soft);
	transform: translateY(-2px);
}

.is-style-outline .wp-block-button__link,
.is-style-outline .elementor-button {
	background: transparent;
	border: 1px solid currentColor;
	color: var(--asu-forest);
}

.is-style-outline .wp-block-button__link:hover,
.is-style-outline .elementor-button:hover {
	background: var(--asu-forest);
	border-color: var(--asu-forest);
	color: var(--asu-white);
}

.asu-dark-band .is-style-outline .wp-block-button__link,
.asu-cta-band .is-style-outline .wp-block-button__link,
.asu-page-hero .is-style-outline .wp-block-button__link,
.asu-dark-band .is-style-outline .elementor-button,
.asu-cta-band .is-style-outline .elementor-button,
.asu-page-hero .is-style-outline .elementor-button {
	color: var(--asu-white);
}

.asu-dark-band .is-style-outline .wp-block-button__link:hover,
.asu-cta-band .is-style-outline .wp-block-button__link:hover,
.asu-page-hero .is-style-outline .wp-block-button__link:hover,
.asu-dark-band .is-style-outline .elementor-button:hover,
.asu-cta-band .is-style-outline .elementor-button:hover,
.asu-page-hero .is-style-outline .elementor-button:hover {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.8);
	color: var(--asu-white);
}

.asu-header-actions .asu-header-secondary .wp-block-button__link,
.asu-header-actions .asu-header-secondary .elementor-button {
	background: rgba(255, 255, 255, 0.04);
	border-color: rgba(255, 255, 255, 0.36);
	color: var(--asu-white);
}

body.asu-no-top-hero:not(.asu-scrolled) .asu-header-actions .asu-header-secondary .wp-block-button__link,
body.asu-no-top-hero:not(.asu-scrolled) .asu-header-actions .asu-header-secondary .elementor-button {
	background: rgba(12, 111, 72, 0.04);
	border-color: rgba(12, 111, 72, 0.3);
	color: var(--asu-text-green);
}

.asu-header-actions .asu-header-secondary .wp-block-button__link:hover,
.asu-header-actions .asu-header-secondary .wp-block-button__link:focus,
.asu-header-actions .asu-header-secondary .elementor-button:hover,
.asu-header-actions .asu-header-secondary .elementor-button:focus {
	background: rgba(255, 255, 255, 0.13);
	border-color: rgba(255, 255, 255, 0.72);
	color: var(--asu-white);
}

body.asu-no-top-hero:not(.asu-scrolled) .asu-header-actions .asu-header-secondary .wp-block-button__link:hover,
body.asu-no-top-hero:not(.asu-scrolled) .asu-header-actions .asu-header-secondary .wp-block-button__link:focus,
body.asu-no-top-hero:not(.asu-scrolled) .asu-header-actions .asu-header-secondary .elementor-button:hover,
body.asu-no-top-hero:not(.asu-scrolled) .asu-header-actions .asu-header-secondary .elementor-button:focus {
	background: var(--asu-forest);
	border-color: var(--asu-forest);
	color: var(--asu-white);
}

.asu-header-actions .asu-header-primary .wp-block-button__link,
.asu-header-actions .asu-header-primary .elementor-button,
body.asu-scrolled .asu-header-actions .asu-header-primary .wp-block-button__link,
body.asu-scrolled .asu-header-actions .asu-header-primary .elementor-button,
body.asu-no-top-hero:not(.asu-scrolled) .asu-header-actions .asu-header-primary .wp-block-button__link,
body.asu-no-top-hero:not(.asu-scrolled) .asu-header-actions .asu-header-primary .elementor-button {
	background: var(--asu-sun);
	border-color: var(--asu-sun);
	color: var(--asu-text-green) !important;
}

.asu-header-actions .asu-header-primary .wp-block-button__link:hover,
.asu-header-actions .asu-header-primary .wp-block-button__link:focus,
.asu-header-actions .asu-header-primary .elementor-button:hover,
.asu-header-actions .asu-header-primary .elementor-button:focus {
	background: var(--asu-white);
	border-color: var(--asu-white);
	color: var(--asu-text-green) !important;
}

.asu-site-header .asu-language-toggle {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.34);
	color: var(--asu-white);
	font-size: 0.82rem;
	letter-spacing: 0.08em;
	line-height: 1;
	min-height: 42px;
	min-width: 142px;
	padding: 0.22rem;
	width: auto;
}

body.asu-no-top-hero:not(.asu-scrolled) .asu-site-header .asu-language-toggle {
	background: rgba(12, 111, 72, 0.05);
	border-color: rgba(12, 111, 72, 0.22);
	color: var(--asu-text-green);
}

body.asu-no-top-hero:not(.asu-scrolled) .asu-language-toggle__option {
	color: rgba(12, 111, 72, 0.72);
}

.asu-site-header .asu-language-toggle:hover,
.asu-site-header .asu-language-toggle:focus {
	background: rgba(255, 255, 255, 0.16);
	border-color: rgba(255, 255, 255, 0.7);
	box-shadow: none;
	color: var(--asu-white);
	transform: translateY(-1px);
}

body.asu-no-top-hero:not(.asu-scrolled) .asu-site-header .asu-language-toggle:hover,
body.asu-no-top-hero:not(.asu-scrolled) .asu-site-header .asu-language-toggle:focus {
	background: rgba(12, 111, 72, 0.08);
	border-color: rgba(12, 111, 72, 0.38);
	color: var(--asu-text-green);
}

.asu-section,
.asu-page-section {
	padding-bottom: var(--asu-section-y);
	padding-top: var(--asu-section-y);
}

@media (min-width: 1100px) {
	.wp-site-blocks .asu-section.alignwide:not(.asu-band):not(.asu-dark-band),
	.wp-site-blocks .asu-section-narrow.alignwide:not(.asu-band):not(.asu-dark-band),
	.wp-site-blocks .asu-page-section.alignwide:not(.asu-band):not(.asu-dark-band) {
		margin-left: 0 !important;
		margin-right: 0 !important;
		max-width: none !important;
		width: 100% !important;
	}

	.wp-site-blocks .asu-section.alignwide:not(.asu-band):not(.asu-dark-band) > :where(*),
	.wp-site-blocks .asu-section-narrow.alignwide:not(.asu-band):not(.asu-dark-band) > :where(*),
	.wp-site-blocks .asu-page-section.alignwide:not(.asu-band):not(.asu-dark-band) > :where(*),
	.wp-site-blocks .asu-section.alignfull > .alignwide,
	.wp-site-blocks .asu-section-narrow.alignfull > .alignwide,
	.wp-site-blocks .asu-page-section.alignfull > .alignwide,
	.wp-site-blocks .asu-cta-band.alignfull > .alignwide,
	.wp-site-blocks .asu-hero.alignfull > .alignwide,
	.wp-site-blocks .asu-page-hero.alignfull > .alignwide {
		margin-left: auto !important;
		margin-right: auto !important;
		max-width: var(--asu-content) !important;
		width: var(--asu-content);
	}

	.wp-site-blocks .asu-section.alignfull > .alignwide > :where(*),
	.wp-site-blocks .asu-page-section.alignfull > .alignwide > :where(*) {
		max-width: 100% !important;
	}

	.wp-site-blocks .asu-section.alignwide:not(.asu-band):not(.asu-dark-band) > .wp-block-columns,
	.wp-site-blocks .asu-section-narrow.alignwide:not(.asu-band):not(.asu-dark-band) > .wp-block-columns,
	.wp-site-blocks .asu-page-section.alignwide:not(.asu-band):not(.asu-dark-band) > .wp-block-columns,
	.wp-site-blocks .asu-section.alignfull > .wp-block-columns.alignwide,
	.wp-site-blocks .asu-section-narrow.alignfull > .wp-block-columns.alignwide,
	.wp-site-blocks .asu-page-section.alignfull > .wp-block-columns.alignwide,
	.wp-site-blocks .asu-section.alignfull > .alignwide > .wp-block-columns,
	.wp-site-blocks .asu-section-narrow.alignfull > .alignwide > .wp-block-columns,
	.wp-site-blocks .asu-page-section.alignfull > .alignwide > .wp-block-columns {
		gap: clamp(1.35rem, 2vw, 2.4rem);
	}
}

@media (min-width: 721px) and (max-width: 1180px) {
	.asu-completed-projects-grid,
	.asu-collab-options-grid,
	.asu-periodic-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.asu-section-narrow {
	padding-bottom: var(--asu-section-y-tight);
	padding-top: var(--asu-section-y-tight);
}

.asu-kicker {
	color: var(--asu-clay-dark);
	font-size: 0.82rem;
	font-weight: 850;
	letter-spacing: 0.14em;
	margin-bottom: 0.7rem;
	text-transform: uppercase;
}

.asu-section-kicker-title {
	margin-bottom: clamp(1.25rem, 2.4vw, 2rem);
}

.asu-about-tororo-title .elementor-heading-title,
h1.asu-about-tororo-title,
.wp-block-heading.asu-about-tororo-title {
	color: var(--asu-text-green);
	font-family: var(--asu-display);
	font-size: clamp(4.2rem, 8vw, 8rem) !important;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 0.9;
	margin-bottom: clamp(0.9rem, 2vw, 1.4rem);
	text-wrap: balance;
}

body.page-id-11 .elementor > .e-con:first-child,
body.page-id-11 .entry-content > .e-con:first-child,
body.page-id-20 .elementor > .e-con:first-child,
body.page-id-20 .entry-content > .e-con:first-child {
	padding-top: calc(var(--asu-header-height) + clamp(2.2rem, 4vw, 4.2rem)) !important;
}

.asu-section-kicker-title,
.wp-block-heading.asu-section-kicker-title,
h1.asu-section-kicker-title,
h2.asu-section-kicker-title,
h3.asu-section-kicker-title,
.asu-section-kicker-title .elementor-heading-title,
.asu-section-kicker-title h1,
.asu-section-kicker-title h2,
.asu-section-kicker-title h3 {
	color: var(--asu-text-green);
	font-family: var(--asu-display);
	font-size: clamp(3rem, 5.4vw, 5.8rem);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 0.95;
	text-transform: none;
	text-wrap: balance;
}

.asu-dark-band .asu-section-kicker-title,
.asu-dark-band .wp-block-heading.asu-section-kicker-title,
.asu-dark-band h1.asu-section-kicker-title,
.asu-dark-band h2.asu-section-kicker-title,
.asu-dark-band h3.asu-section-kicker-title,
.asu-dark-band .asu-section-kicker-title .elementor-heading-title,
.asu-dark-band .asu-section-kicker-title h1,
.asu-dark-band .asu-section-kicker-title h2,
.asu-dark-band .asu-section-kicker-title h3 {
	color: var(--asu-sun);
	text-shadow: 0 8px 26px rgba(0, 0, 0, 0.22);
}

.asu-lead {
	color: var(--asu-muted);
	font-size: clamp(1.08rem, 1rem + 0.45vw, 1.35rem);
	max-width: 48rem;
}

.asu-hero {
	align-items: center;
	background-color: var(--asu-forest);
	color: var(--asu-white);
	display: grid !important;
	min-height: 100vh;
	min-height: 100svh;
	min-height: 100dvh;
	overflow: hidden;
	padding: calc(var(--asu-header-height) + clamp(4rem, 8vw, 7.5rem)) 0 clamp(4rem, 7vw, 6.5rem);
	padding-left: var(--wp--style--root--padding-left);
	padding-right: var(--wp--style--root--padding-right);
	place-items: center;
	position: relative;
}

body.elementor-page .elementor .e-con.asu-hero {
	display: grid !important;
}

body.elementor-page .elementor .e-con.asu-hero > .elementor-background-overlay {
	pointer-events: none;
	z-index: 1;
}

.elementor-element-a467c85 {
	display: none !important;
}

.asu-hero > .wp-block-group {
	position: relative;
	z-index: 1;
}

.asu-hero > .wp-block-columns,
body.elementor-page .elementor .asu-hero > .e-con.wp-block-columns {
	align-items: center !important;
	display: grid !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--asu-container-floor) !important;
	min-height: 0;
	place-items: center;
	position: relative;
	text-align: center;
	width: var(--asu-container-floor) !important;
	z-index: 2;
}

.asu-hero .wp-block-column:first-child,
body.elementor-page .elementor .asu-hero .wp-block-column:first-child {
	align-items: center !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--asu-container-floor) !important;
	position: relative;
	text-align: center;
	width: var(--asu-container-floor) !important;
	z-index: 2;
}

.asu-hero .wp-block-column:last-child:not(:first-child),
body.elementor-page .elementor .asu-hero .wp-block-column:last-child:not(:first-child) {
	display: none !important;
	inset: 0;
	max-width: none !important;
	min-height: 100%;
	pointer-events: none;
	position: absolute !important;
	width: 100% !important;
	z-index: 0;
}

.asu-hero .asu-photo-frame,
body.elementor-page .elementor .asu-hero .asu-photo-frame {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	height: 100%;
	inset: 0;
	margin: 0 !important;
	max-width: none !important;
	min-height: 100%;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 100% !important;
}

.asu-hero .asu-real-photo-widget,
.asu-hero .asu-real-photo-widget .elementor-widget-container {
	height: 100%;
	inset: 0;
	position: absolute !important;
	width: 100%;
}

.asu-hero .asu-real-photo-widget img {
	border-radius: 0 !important;
	box-shadow: none !important;
	filter: saturate(0.96) contrast(1.04);
	height: 100% !important;
	min-height: 100% !important;
	object-fit: cover;
	object-position: center;
	transform: scale(1.01);
	width: 100% !important;
}

.asu-hero .wp-block-column:last-child:not(:first-child) .elementor-widget-text-editor {
	display: none;
}

.asu-hero h1,
.asu-hero h2,
.asu-hero p {
	color: inherit;
}

.asu-hero .asu-kicker,
.asu-page-hero .asu-kicker {
	color: var(--asu-sun) !important;
}

.asu-hero .elementor-widget-text-editor,
.asu-hero .elementor-widget-text-editor p,
.asu-page-hero .elementor-widget-text-editor,
.asu-page-hero .elementor-widget-text-editor p {
	color: inherit;
}

.asu-hero h1 {
	font-size: clamp(2.9rem, 5.6vw, 5.25rem);
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.1rem;
	hyphens: none;
	max-width: var(--asu-container-floor);
	overflow-wrap: normal;
	text-align: center;
	text-wrap: balance;
	word-break: normal;
}

.asu-hero .wp-block-columns {
	align-items: center !important;
}

.asu-hero .asu-lead {
	color: rgba(255, 255, 255, 0.84);
	hyphens: none;
	margin-left: auto;
	margin-right: auto;
	max-width: var(--asu-container-floor);
	overflow-wrap: normal;
	text-align: center;
	word-break: normal;
}

.asu-hero .elementor-widget-text-editor .asu-lead,
.asu-page-hero .asu-lead,
.asu-page-hero .elementor-widget-text-editor .asu-lead {
	color: rgba(255, 255, 255, 0.84) !important;
}

.asu-hero .elementor-widget-text-editor.asu-lead,
.asu-hero .elementor-widget-text-editor .asu-lead {
	margin-left: auto;
	margin-right: auto;
	max-width: var(--asu-container-floor) !important;
	width: 100%;
}

.asu-hero-actions {
	align-items: center !important;
	display: flex !important;
	gap: 0.9rem;
	margin-top: 2rem;
	justify-content: center !important;
	text-align: center;
}

.asu-hero-actions .wp-block-button,
.asu-hero-actions .elementor-widget-button {
	flex: 0 0 auto;
	width: auto !important;
}

.asu-hero-actions .wp-block-button:first-child .wp-block-button__link,
.asu-hero-actions .elementor-widget-button:first-child .elementor-button {
	font-size: 1.05rem;
	min-height: 56px;
	padding: 1rem 1.65rem;
}

.asu-hero-actions .is-style-outline .wp-block-button__link {
	color: var(--asu-white);
}

.asu-hero-actions .is-style-outline .elementor-button {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.76);
	color: var(--asu-white);
}

.asu-hero-actions .is-style-outline .wp-block-button__link:hover {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.9);
}

.asu-hero-actions .is-style-outline .elementor-button:hover {
	background: rgba(255, 255, 255, 0.16);
	border-color: rgba(255, 255, 255, 0.95);
	color: var(--asu-white);
}

.asu-hero.asu-old-technical-hero,
body.elementor-page .elementor .e-con.asu-hero.asu-old-technical-hero {
	background-color: #0c6f48;
	background-image:
		linear-gradient(rgba(0, 0, 0, 0.34), rgba(0, 0, 0, 0.34)),
		linear-gradient(135deg, rgba(12, 111, 72, 0.46) 0%, rgba(12, 111, 72, 0.24) 45%, rgba(0, 0, 0, 0.12) 100%),
		url("/wp-content/uploads/2026/05/IMG_1510-scaled.jpg") !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	isolation: isolate;
}

body.elementor-page .elementor .e-con.asu-hero.asu-old-technical-hero > .elementor-background-overlay {
	background: transparent !important;
	opacity: 0 !important;
}

.asu-hero.asu-old-technical-hero::before,
body.elementor-page .elementor .e-con.asu-hero.asu-old-technical-hero::before {
	content: "";
	display: none;
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.asu-hero.asu-old-technical-hero .asu-kicker,
.asu-hero.asu-old-technical-hero .elementor-widget-text-editor.asu-kicker,
.asu-hero.asu-old-technical-hero .elementor-widget-text-editor.asu-kicker p {
	color: #ffcc00 !important;
	font-family: var(--asu-font);
	font-size: clamp(1.05rem, 1.1vw, 1.32rem);
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.34);
}

.asu-hero.asu-old-technical-hero .asu-hero-quote {
	display: block;
	margin: 0 auto;
	max-width: min(86vw, 42rem);
}

.asu-hero.asu-old-technical-hero .asu-quote-author {
	color: rgba(255, 255, 255, 0.9);
	display: block;
	font-size: 0.86em;
	font-weight: 600;
	margin-top: 0.35rem;
}

.asu-hero.asu-old-technical-hero h1,
body.elementor-page .elementor .asu-hero.asu-old-technical-hero h1.elementor-heading-title {
	color: #ffcc00 !important;
	font-family: var(--asu-display);
	font-size: clamp(4rem, 8vw, 8.1rem);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 0.92;
	max-width: min(86vw, 1050px);
	text-shadow: 0 14px 38px rgba(0, 0, 0, 0.42);
}

.asu-hero.asu-old-technical-hero .asu-lead,
.asu-hero.asu-old-technical-hero .elementor-widget-text-editor.asu-lead,
.asu-hero.asu-old-technical-hero .elementor-widget-text-editor.asu-lead p {
	color: rgba(255, 255, 255, 0.9) !important;
	font-family: var(--asu-font);
	text-shadow: 0 6px 22px rgba(0, 0, 0, 0.35);
}

.asu-hero.asu-old-technical-hero .asu-lead .asu-hero-quote,
.asu-hero.asu-old-technical-hero .elementor-widget-text-editor.asu-lead .asu-hero-quote {
	color: #ffcc00 !important;
	font-size: clamp(1.08rem, 1.45vw, 1.45rem);
	font-weight: 750;
	line-height: 1.32;
	margin-top: 0.45rem;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.38);
}

.asu-hero.asu-old-technical-hero .asu-hero-actions .wp-block-button:first-child .wp-block-button__link,
.asu-hero.asu-old-technical-hero .asu-hero-actions .elementor-widget-button:first-child .elementor-button,
.asu-hero.asu-old-technical-hero .asu-hero-actions .asu-hero-dona .elementor-button {
	background: rgba(255, 204, 0, 0.75) !important;
	border-color: rgba(255, 204, 0, 0.86) !important;
	color: #0a0a0a !important;
	font-family: var(--asu-font);
	font-size: 1.12rem;
	font-weight: 800;
	letter-spacing: 0;
	min-height: 60px;
	padding: 1.08rem 2rem;
	text-transform: uppercase;
	box-shadow: 0 18px 38px rgba(0, 0, 0, 0.28);
}

.asu-hero.asu-old-technical-hero .asu-hero-actions .wp-block-button:first-child .wp-block-button__link:hover,
.asu-hero.asu-old-technical-hero .asu-hero-actions .elementor-widget-button:first-child .elementor-button:hover,
.asu-hero.asu-old-technical-hero .asu-hero-actions .asu-hero-dona .elementor-button:hover {
	background: #ffcc00 !important;
	color: #0a0a0a !important;
	transform: translateY(-2px);
}

.asu-hero.asu-old-technical-hero .asu-hero-actions .is-style-outline .elementor-button {
	background: rgba(12, 111, 72, 0.34);
	border-color: rgba(255, 255, 255, 0.72);
}

.asu-hero.asu-old-technical-hero .asu-hero-actions {
	display: none !important;
}

.asu-section-actions,
body.elementor-page .elementor .e-con.asu-section-actions {
	align-items: center !important;
	display: flex !important;
	justify-content: center !important;
	margin-left: auto !important;
	margin-right: auto !important;
	margin-top: clamp(1.8rem, 4vw, 3rem);
	text-align: center;
	width: 100% !important;
}

.asu-section-actions .wp-block-button,
.asu-section-actions .elementor-widget-button {
	flex: 0 0 auto;
	width: auto !important;
}

.asu-section-actions .wp-block-button__link,
.asu-section-actions .elementor-button {
	min-height: 52px;
	min-width: 142px;
	padding: 0.92rem 1.45rem;
}

.asu-card,
.asu-program-card,
.asu-help-card,
.asu-donation-card,
.asu-value-card,
.asu-impact-card {
	background: var(--asu-white);
	border: 1px solid var(--asu-line);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	height: 100%;
	min-width: 0;
	overflow: hidden;
	padding: var(--asu-card-pad);
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.asu-card h3,
.asu-program-card h3,
.asu-help-card h3,
.asu-donation-card h3,
.asu-value-card h3,
.asu-impact-card h3 {
	font-size: clamp(1.28rem, 1.45vw, 1.72rem);
	margin-top: 0;
	overflow-wrap: normal;
	word-break: normal;
}

.asu-card p,
.asu-program-card p,
.asu-help-card p,
.asu-donation-card p,
.asu-value-card p,
.asu-impact-card p {
	hyphens: none;
	overflow-wrap: break-word;
	word-break: normal;
}

.asu-help-card {
	background: linear-gradient(180deg, var(--asu-white), rgba(255, 250, 240, 0.92));
	border-color: rgba(12, 111, 72, 0.18);
	border-top: 6px solid var(--asu-sun);
	box-shadow: 0 18px 46px rgba(12, 111, 72, 0.13);
	position: relative;
}

.asu-help-card h3 {
	color: var(--asu-forest);
}

.asu-help-card a {
	align-items: center;
	background: var(--asu-forest) !important;
	border: 1px solid rgba(12, 111, 72, 0.22);
	border-radius: 999px;
	box-shadow: 0 12px 28px rgba(12, 111, 72, 0.18);
	color: var(--asu-white) !important;
	display: inline-flex;
	font-weight: 850;
	gap: 0.55rem;
	justify-content: center;
	line-height: 1.1;
	margin-top: 0.9rem;
	min-height: 46px;
	padding: 0.82rem 1.15rem;
	text-decoration: none !important;
	transition: background-color 160ms ease, box-shadow 160ms ease, color 160ms ease, transform 160ms ease;
}

.asu-help-card a::after {
	border-right: 2px solid currentColor;
	border-top: 2px solid currentColor;
	content: "";
	display: inline-block;
	height: 0.44rem;
	transform: rotate(45deg);
	width: 0.44rem;
}

.asu-help-card a:hover,
.asu-help-card a:focus {
	background: var(--asu-clay-dark) !important;
	box-shadow: 0 16px 34px rgba(201, 159, 0, 0.2);
	color: var(--asu-charcoal) !important;
	transform: translateY(-2px);
}

.asu-help-card a:focus-visible {
	outline: 3px solid rgba(255, 204, 0, 0.95);
	outline-offset: 3px;
}

.asu-home-help-grid,
body.elementor-page .elementor .e-con.asu-home-help-grid {
	align-items: stretch;
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.6rem);
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: min(86vw, 1180px) !important;
	width: min(86vw, 1180px) !important;
}

.asu-home-help-card,
body.elementor-page .elementor .e-con.asu-home-help-card {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.85rem;
	min-height: 100%;
}

.asu-home-help-card .elementor-widget-heading,
.asu-home-help-card .elementor-widget-text-editor,
body.elementor-page .elementor .e-con.asu-home-help-card .elementor-widget-heading,
body.elementor-page .elementor .e-con.asu-home-help-card .elementor-widget-text-editor {
	width: 100%;
}

.asu-home-help-card .elementor-widget-button,
body.elementor-page .elementor .e-con.asu-home-help-card .elementor-widget-button {
	margin-top: auto;
	width: auto;
}

.asu-help-age,
.asu-help-card .asu-help-age,
.asu-help-card .asu-help-age p {
	color: rgba(13, 48, 39, 0.72);
	font-size: 0.82rem;
	font-weight: 850;
	letter-spacing: 0.08em;
	line-height: 1.2;
	margin: -0.25rem 0 0.2rem;
	text-transform: uppercase;
}

.asu-spain-help-grid,
body.elementor-page .elementor .e-con.asu-spain-help-grid {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.45rem);
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.asu-spain-help-steps,
body.elementor-page .elementor .e-con.asu-spain-help-steps {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.45rem);
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.asu-campaign-hero {
	background:
		linear-gradient(135deg, rgba(12, 111, 72, 0.94), rgba(85, 161, 127, 0.86)),
		linear-gradient(45deg, rgba(255, 204, 0, 0.18), transparent 46%);
	color: var(--asu-white);
	text-align: center;
}

.asu-campaign-hero .asu-lead {
	margin-inline: auto;
	max-width: 56rem;
}

.asu-campaign-hero .asu-kicker,
.asu-campaign-hero h1,
.asu-campaign-hero p {
	color: inherit;
}

.asu-campaign-summary,
.asu-campaign-note {
	background: rgba(255, 250, 240, 0.9);
	border: 1px solid rgba(255, 204, 0, 0.36);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	padding: clamp(1.35rem, 2.6vw, 2.15rem);
}

.asu-campaign-summary strong,
.asu-campaign-note strong {
	color: var(--asu-forest);
}

.asu-active-campaigns__inner,
body.elementor-page .elementor .e-con.asu-active-campaigns__inner,
.asu-previous-campaigns__inner,
body.elementor-page .elementor .e-con.asu-previous-campaigns__inner {
	gap: clamp(1.15rem, 2vw, 1.65rem);
}

.asu-active-campaigns__grid,
body.elementor-page .elementor .e-con.asu-active-campaigns__grid {
	--padding-bottom: 0;
	--padding-left: 0;
	--padding-right: 0;
	--padding-top: 0;
	display: grid !important;
	gap: clamp(1.15rem, 2vw, 1.65rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	padding: 0 !important;
	width: 100% !important;
}

.asu-campaign-card,
body.elementor-page .elementor .e-con.asu-campaign-card {
	background: var(--asu-white);
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	height: 100%;
	overflow: hidden;
	padding: 0 !important;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.asu-active-campaigns__grid > .asu-campaign-card:only-child,
body.elementor-page .elementor .e-con.asu-active-campaigns__grid > .e-con.asu-campaign-card:only-child {
	align-items: stretch;
	display: grid !important;
	grid-column: 1 / -1;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	min-height: 0;
}

.asu-active-campaigns__grid > .asu-campaign-card:only-child .asu-campaign-card__image,
.asu-active-campaigns__grid > .asu-campaign-card:only-child .asu-campaign-card__image .elementor-widget-container,
body.elementor-page .elementor .e-con.asu-active-campaigns__grid > .e-con.asu-campaign-card:only-child .asu-campaign-card__image,
body.elementor-page .elementor .e-con.asu-active-campaigns__grid > .e-con.asu-campaign-card:only-child .asu-campaign-card__image .elementor-widget-container {
	height: clamp(360px, 30vw, 460px);
}

.asu-active-campaigns__grid > .asu-campaign-card:only-child .asu-campaign-card__image img,
body.elementor-page .elementor .e-con.asu-active-campaigns__grid > .e-con.asu-campaign-card:only-child .asu-campaign-card__image img {
	aspect-ratio: auto;
	height: 100%;
	min-height: 0;
}

.asu-active-campaigns__grid > .asu-campaign-card:only-child .asu-campaign-card__footer,
body.elementor-page .elementor .e-con.asu-active-campaigns__grid > .e-con.asu-campaign-card:only-child .asu-campaign-card__footer {
	border-left: 4px solid var(--asu-sun);
	border-top: 0;
	justify-content: center;
	padding: clamp(1.8rem, 3.2vw, 3rem) !important;
}

.asu-campaign-card__image,
.asu-campaign-card__image .elementor-widget-container {
	line-height: 0;
	margin: 0 !important;
	width: 100%;
}

.asu-campaign-card__image img {
	aspect-ratio: 16 / 10;
	display: block;
	height: auto;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.asu-campaign-card__footer,
body.elementor-page .elementor .e-con.asu-campaign-card__footer {
	background: linear-gradient(180deg, rgba(255, 250, 240, 0.98), var(--asu-white));
	border-top: 4px solid var(--asu-sun);
	display: flex !important;
	flex: 1 1 auto;
	flex-direction: column !important;
	gap: 0.72rem;
	padding: clamp(1.2rem, 2.2vw, 1.75rem) !important;
}

.asu-campaign-card__footer .asu-kicker,
.asu-campaign-card__dates,
.asu-campaign-card__summary {
	margin: 0 !important;
}

.asu-campaign-card__title {
	color: var(--asu-forest);
	font-size: clamp(1.45rem, 2vw, 2rem);
	line-height: 1.04;
	margin: 0 !important;
}

.asu-campaign-card__dates {
	color: var(--asu-clay-dark);
	font-size: 0.92rem;
	font-weight: 800;
}

.asu-campaign-card__summary {
	color: var(--asu-charcoal);
}

.asu-campaign-card__button {
	margin-top: auto;
}

.asu-campaign-card__button .elementor-button,
.asu-campaign-card__button .wp-block-button__link,
.asu-previous-campaigns-button .elementor-button,
.asu-previous-campaigns-button .wp-block-button__link {
	min-height: 46px;
}

.asu-campaign-card--empty,
body.elementor-page .elementor .e-con.asu-campaign-card--empty {
	border-style: dashed;
}

.asu-ihelp-panel {
	background:
		linear-gradient(135deg, rgba(255, 250, 240, 0.98), rgba(255, 243, 191, 0.92)),
		radial-gradient(circle at top right, rgba(255, 204, 0, 0.22), transparent 38%);
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	display: grid;
	gap: clamp(1.35rem, 2.4vw, 2rem);
	margin: clamp(1.6rem, 3vw, 2.6rem) auto 0;
	max-width: var(--asu-content);
	overflow: hidden;
	padding: clamp(1.35rem, 2.8vw, 2.65rem);
	position: relative;
	width: 100%;
}

.asu-ihelp-panel::before {
	background: linear-gradient(90deg, var(--asu-sun), var(--asu-clay));
	content: "";
	height: 5px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.asu-ihelp-panel__intro {
	display: grid;
	gap: 0.85rem;
	max-width: 62rem;
}

.asu-ihelp-panel__intro h2 {
	font-size: clamp(2rem, 4vw, 3.75rem);
	margin: 0;
}

.asu-compact-page-title .elementor-heading-title,
h1.asu-compact-page-title,
.wp-block-heading.asu-compact-page-title {
	font-size: clamp(2rem, 4vw, 3.9rem) !important;
	line-height: 1.05;
	margin-bottom: clamp(0.7rem, 1.8vw, 1.25rem);
	max-width: min(100%, 62rem);
}

.asu-ihelp-panel__intro p {
	color: var(--asu-charcoal);
	font-size: clamp(1rem, 1.2vw, 1.15rem);
	margin: 0;
	max-width: 62rem;
}

.asu-ihelp-panel__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
	margin-top: 0.45rem;
}

.asu-ihelp-button,
.asu-ihelp-cause__link {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-weight: 850;
	justify-content: center;
	line-height: 1.15;
	min-height: 48px;
	padding: 0.86rem 1.22rem;
	text-decoration: none !important;
	transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, color 160ms ease, transform 160ms ease;
}

.asu-ihelp-button--primary,
.asu-ihelp-cause__link {
	background: var(--asu-forest);
	border: 1px solid rgba(12, 111, 72, 0.24);
	box-shadow: 0 12px 28px rgba(12, 111, 72, 0.18);
	color: var(--asu-white) !important;
}

.asu-ihelp-button--secondary {
	background: rgba(255, 255, 255, 0.82);
	border: 1px solid rgba(12, 111, 72, 0.18);
	color: var(--asu-forest) !important;
}

.asu-ihelp-button:hover,
.asu-ihelp-cause__link:hover,
.asu-ihelp-button:focus,
.asu-ihelp-cause__link:focus {
	background: var(--asu-clay-dark);
	border-color: rgba(201, 159, 0, 0.38);
	box-shadow: 0 16px 34px rgba(201, 159, 0, 0.2);
	color: var(--asu-charcoal) !important;
	transform: translateY(-2px);
}

.asu-ihelp-causes {
	display: grid;
	gap: clamp(1rem, 2vw, 1.35rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asu-ihelp-cause {
	background: var(--asu-white);
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	display: flex;
	flex-direction: column;
	gap: 0.9rem;
	min-width: 0;
	padding: clamp(1.2rem, 2.2vw, 1.8rem);
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.asu-ihelp-cause__topline {
	align-items: center;
	color: var(--asu-clay-dark);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.9rem;
	font-weight: 800;
	gap: 0.55rem;
}

.asu-ihelp-badge {
	background: rgba(255, 204, 0, 0.25);
	border: 1px solid rgba(255, 204, 0, 0.18);
	border-radius: 999px;
	color: var(--asu-clay-dark);
	display: inline-flex;
	padding: 0.24rem 0.62rem;
}

.asu-ihelp-cause h3 {
	font-size: clamp(1.35rem, 1.9vw, 2rem);
	margin: 0;
}

.asu-ihelp-cause h3 a {
	color: var(--asu-forest);
	text-decoration: none;
}

.asu-ihelp-cause p {
	margin: 0;
}

.asu-ihelp-cause__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.asu-ihelp-cause__tags li {
	background: rgba(85, 161, 127, 0.1);
	border: 1px solid rgba(85, 161, 127, 0.13);
	border-radius: 999px;
	color: var(--asu-forest);
	font-size: 0.85rem;
	font-weight: 800;
	padding: 0.24rem 0.62rem;
}

.asu-ihelp-cause__stats {
	display: grid;
	gap: 0.65rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 0.2rem;
}

.asu-ihelp-cause__stat {
	background: rgba(255, 243, 191, 0.58);
	border: 1px solid rgba(12, 111, 72, 0.09);
	border-radius: var(--asu-radius-sm);
	display: grid;
	gap: 0.12rem;
	padding: 0.7rem;
}

.asu-ihelp-cause__stat span {
	color: var(--asu-muted);
	font-size: 0.78rem;
	font-weight: 800;
	text-transform: uppercase;
}

.asu-ihelp-cause__stat strong {
	color: var(--asu-forest);
	font-size: clamp(1rem, 1.25vw, 1.22rem);
	line-height: 1.15;
}

.asu-ihelp-cause__link {
	align-self: flex-start;
	margin-top: auto;
	min-height: 44px;
	padding-inline: 1rem;
}

.asu-ihelp-panel__note {
	color: var(--asu-muted);
	font-size: 0.92rem;
	margin: 0;
}

.asu-ihelp-admin-page {
	background:
		linear-gradient(135deg, rgba(12, 111, 72, 0.94), rgba(4, 45, 31, 0.96)),
		linear-gradient(180deg, var(--asu-cream), var(--asu-white));
	min-height: 100vh;
}

.asu-admin-shell {
	align-items: center;
	display: flex;
	justify-content: center;
	min-height: 100vh;
	padding: clamp(1.25rem, 4vw, 3.5rem);
	width: 100%;
}

.asu-admin-card {
	background: rgba(255, 250, 240, 0.98);
	border: 1px solid rgba(255, 204, 0, 0.22);
	border-radius: var(--asu-radius);
	box-shadow: 0 28px 80px rgba(0, 0, 0, 0.28);
	display: grid;
	gap: clamp(1rem, 2vw, 1.6rem);
	max-width: min(100%, 980px);
	padding: clamp(1.35rem, 3vw, 2.6rem);
	width: 100%;
}

.asu-admin-card h1,
.asu-admin-card h2,
.asu-admin-card h3,
.asu-admin-card p {
	margin: 0;
}

.asu-admin-card h1 {
	color: var(--asu-text-green);
	font-size: clamp(2.4rem, 5vw, 4.5rem);
	line-height: 0.98;
}

.asu-admin-card h2 {
	color: var(--asu-text-green);
	font-size: clamp(1.6rem, 3vw, 2.4rem);
}

.asu-admin-card p {
	color: var(--asu-charcoal);
}

.asu-admin-form,
.asu-admin-action {
	display: grid;
	gap: 1rem;
}

.asu-admin-form label {
	display: grid;
	gap: 0.45rem;
}

.asu-admin-form label span {
	color: var(--asu-forest);
	font-size: 0.88rem;
	font-weight: 900;
	text-transform: uppercase;
}

.asu-admin-form input {
	background: var(--asu-white);
	border: 1px solid rgba(12, 111, 72, 0.22);
	border-radius: 14px;
	color: var(--asu-charcoal);
	font: inherit;
	min-height: 52px;
	padding: 0.85rem 1rem;
	width: 100%;
}

.asu-admin-form input:focus-visible {
	border-color: var(--asu-sun);
	box-shadow: 0 0 0 4px rgba(255, 204, 0, 0.22);
	outline: 0;
}

.asu-admin-form button,
.asu-admin-action button,
.asu-admin-ghost {
	align-items: center;
	background: var(--asu-forest);
	border: 1px solid rgba(12, 111, 72, 0.28);
	border-radius: 999px;
	box-shadow: 0 14px 30px rgba(12, 111, 72, 0.2);
	color: var(--asu-white);
	cursor: pointer;
	display: inline-flex;
	font-weight: 900;
	justify-content: center;
	line-height: 1.15;
	min-height: 52px;
	padding: 0.9rem 1.25rem;
	text-decoration: none;
	transition: background-color 160ms ease, box-shadow 160ms ease, color 160ms ease, transform 160ms ease;
}

.asu-admin-form button:hover,
.asu-admin-action button:hover,
.asu-admin-ghost:hover,
.asu-admin-form button:focus-visible,
.asu-admin-action button:focus-visible,
.asu-admin-ghost:focus-visible {
	background: var(--asu-sun);
	box-shadow: 0 18px 36px rgba(201, 159, 0, 0.24);
	color: var(--asu-text-green);
	transform: translateY(-2px);
}

.asu-admin-form button:disabled {
	cursor: not-allowed;
	opacity: 0.52;
	transform: none;
}

.asu-admin-dashboard__top {
	align-items: flex-start;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
}

.asu-admin-ghost {
	background: rgba(255, 255, 255, 0.72);
	box-shadow: none;
	color: var(--asu-forest);
	min-height: 44px;
}

.asu-admin-maintenance {
	align-items: center;
	background:
		linear-gradient(135deg, rgba(255, 204, 0, 0.15), rgba(12, 111, 72, 0.08)),
		var(--asu-white);
	border: 1px solid rgba(12, 111, 72, 0.16);
	border-radius: 20px;
	display: grid;
	gap: 1.2rem;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: clamp(1rem, 2vw, 1.4rem);
}

.asu-admin-maintenance h2 {
	margin-top: 0.5rem;
}

.asu-admin-maintenance__form {
	min-width: min(100%, 280px);
}

.asu-admin-status-pill {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 900;
	gap: 0.5rem;
	letter-spacing: 0.08em;
	padding: 0.45rem 0.7rem;
	text-transform: uppercase;
	width: fit-content;
}

.asu-admin-status-pill::before {
	border-radius: 999px;
	content: "";
	height: 0.62rem;
	width: 0.62rem;
}

.asu-admin-status-pill--on {
	background: rgba(139, 43, 29, 0.09);
	color: #6f2118;
}

.asu-admin-status-pill--on::before {
	background: #9a3412;
}

.asu-admin-status-pill--off {
	background: rgba(12, 111, 72, 0.1);
	color: var(--asu-text-green);
}

.asu-admin-status-pill--off::before {
	background: var(--asu-forest);
}

.asu-admin-action button.asu-admin-danger {
	background: #8b2b1d;
	border-color: rgba(139, 43, 29, 0.3);
	box-shadow: 0 14px 30px rgba(139, 43, 29, 0.18);
}

.asu-admin-action button.asu-admin-danger:hover,
.asu-admin-action button.asu-admin-danger:focus-visible {
	background: var(--asu-sun);
	color: var(--asu-text-green);
}

.asu-admin-alert {
	border-radius: 14px;
	display: grid;
	gap: 0.3rem;
	padding: 1rem;
}

.asu-admin-alert code {
	background: rgba(12, 111, 72, 0.08);
	border-radius: 8px;
	padding: 0.08rem 0.32rem;
}

.asu-admin-alert--warning {
	background: rgba(255, 204, 0, 0.18);
	border: 1px solid rgba(255, 204, 0, 0.32);
	color: var(--asu-text-green);
}

.asu-admin-alert--error {
	background: rgba(139, 43, 29, 0.08);
	border: 1px solid rgba(139, 43, 29, 0.22);
	color: #6f2118;
}

.asu-admin-alert--success {
	background: rgba(12, 111, 72, 0.1);
	border: 1px solid rgba(12, 111, 72, 0.22);
	color: var(--asu-text-green);
}

.asu-admin-campaign-list {
	display: grid;
	gap: 1rem;
}

.asu-admin-campaign-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asu-admin-campaign-grid article {
	background: var(--asu-white);
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: 16px;
	display: grid;
	gap: 0.65rem;
	padding: 1rem;
}

.asu-admin-campaign-grid span {
	color: var(--asu-clay-dark);
	font-size: 0.82rem;
	font-weight: 900;
	text-transform: uppercase;
}

.asu-admin-campaign-grid a {
	color: var(--asu-forest);
	font-weight: 900;
}

.asu-team-grid,
body.elementor-page .elementor .e-con.asu-team-grid {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.4rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	width: 100%;
}

.asu-team-card,
body.elementor-page .elementor .e-con.asu-team-card {
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: 18px;
	box-shadow: 0 16px 34px rgba(12, 111, 72, 0.1);
	display: flex !important;
	flex-direction: column !important;
	gap: 0.55rem;
	min-height: 100%;
	padding: clamp(1.15rem, 2vw, 1.55rem);
}

.asu-team-card .asu-kicker,
.asu-team-card h3,
.asu-team-card p {
	margin: 0;
}

.asu-team-card h3,
.asu-team-card .elementor-heading-title {
	color: var(--asu-text-green);
	font-size: clamp(1.35rem, 1.8vw, 1.9rem);
	line-height: 1.05;
}

.asu-ihelp-imported-stats {
	display: grid;
	gap: 0.85rem;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	width: 100%;
}

.asu-ihelp-imported-stats div {
	background: rgba(255, 243, 191, 0.7);
	border: 1px solid rgba(12, 111, 72, 0.1);
	border-radius: 16px;
	display: grid;
	gap: 0.15rem;
	padding: 1rem;
}

.asu-ihelp-imported-stats span {
	color: var(--asu-muted);
	font-size: 0.78rem;
	font-weight: 900;
	text-transform: uppercase;
}

.asu-ihelp-imported-stats strong {
	color: var(--asu-forest);
	font-size: clamp(1rem, 1.2vw, 1.25rem);
}

.asu-ihelp-imported-detail-grid,
body.elementor-page .elementor .e-con.asu-ihelp-imported-detail-grid {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.35rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
	width: 100%;
}

.asu-campaign-levels,
body.elementor-page .elementor .e-con.asu-campaign-levels,
.asu-campaign-use-grid,
body.elementor-page .elementor .e-con.asu-campaign-use-grid,
.asu-campaign-donor-grid,
body.elementor-page .elementor .e-con.asu-campaign-donor-grid {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.35rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	width: 100% !important;
}

.asu-campaign-level-card {
	background: linear-gradient(180deg, var(--asu-white), rgba(255, 250, 240, 0.94));
	border: 1px solid rgba(12, 111, 72, 0.16);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	display: flex !important;
	flex-direction: column !important;
	gap: 0.75rem;
	height: 100%;
	overflow: hidden;
	padding: clamp(1.25rem, 2.4vw, 1.9rem);
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.asu-campaign-level-card .asu-kicker {
	color: var(--asu-clay-dark);
	font-size: 0.72rem;
	letter-spacing: 0.08em;
	margin: 0;
}

.asu-campaign-level-card h3 {
	color: var(--asu-forest);
	font-size: clamp(1.25rem, 1.45vw, 1.62rem);
	line-height: 1.04;
	margin: 0;
}

.asu-campaign-level-card p {
	margin-bottom: 0;
}

.asu-campaign-amount {
	color: var(--asu-clay-dark);
	font-family: var(--asu-display);
	font-size: clamp(2.1rem, 4vw, 3.35rem);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 0.98;
	margin-block: 0.2rem 0;
}

.asu-campaign-amount small {
	color: var(--asu-charcoal);
	display: block;
	font-family: inherit;
	font-size: 0.86rem;
	font-weight: 700;
	margin-top: 0.25rem;
}

.asu-campaign-level-card .elementor-widget-button,
.asu-campaign-level-card .wp-block-button {
	margin-top: auto;
	width: 100%;
}

.asu-campaign-level-card .elementor-button,
.asu-campaign-level-card .wp-block-button__link {
	justify-content: center;
	width: 100%;
}

.asu-campaign-pill {
	background: rgba(12, 111, 72, 0.08);
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: 999px;
	color: var(--asu-forest);
	display: inline-flex;
	font-size: 0.86rem;
	font-weight: 850;
	line-height: 1;
	padding: 0.48rem 0.72rem;
	width: fit-content;
}

.asu-campaign-progress {
	background: rgba(12, 111, 72, 0.1);
	border-radius: 999px;
	height: 0.72rem;
	overflow: hidden;
	width: 100%;
}

.asu-campaign-progress span {
	background: linear-gradient(90deg, var(--asu-sun), var(--asu-clay));
	border-radius: inherit;
	display: block;
	height: 100%;
	width: 18%;
}

.asu-campaign-smallprint {
	color: rgba(35, 35, 30, 0.72);
	font-size: 0.92rem;
}

.asu-stat-card {
	background: var(--asu-white);
	border-left: 5px solid var(--asu-sun);
	border-radius: var(--asu-radius-sm);
	height: 100%;
	padding: 1.3rem 1.4rem;
}

.asu-stat-card strong {
	color: var(--asu-forest);
	display: block;
	font-size: clamp(1.35rem, 2vw, 2rem);
	line-height: 1;
}

.asu-icon {
	align-items: center;
	background: rgba(255, 204, 0, 0.28);
	border-radius: 50%;
	color: var(--asu-clay-dark);
	display: inline-flex;
	font-weight: 900;
	height: 2.9rem;
	justify-content: center;
	margin-bottom: 1rem;
	width: 2.9rem;
}

.asu-photo-placeholder {
	align-items: center;
	aspect-ratio: 16 / 9;
	background:
		linear-gradient(135deg, rgba(12, 111, 72, 0.88), rgba(85, 161, 127, 0.72)),
		repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.10) 0 1px, transparent 1px 18px);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow);
	color: rgba(255, 255, 255, 0.9);
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	justify-content: center;
	max-width: 100%;
	min-height: 220px;
	min-width: 0;
	overflow: hidden;
	padding: 1.5rem;
	position: relative;
	text-align: center;
	width: 100%;
}

.asu-photo-placeholder > * {
	position: relative;
	z-index: 1;
}

.asu-photo-placeholder::before {
	border: 2px solid rgba(255, 255, 255, 0.65);
	border-radius: 12px;
	content: "";
	height: 38px;
	width: 52px;
}

.asu-photo-placeholder::after {
	background: rgba(255, 204, 0, 0.8);
	border-radius: 50%;
	content: "";
	height: 10px;
	position: absolute;
	right: 27%;
	top: 34%;
	width: 10px;
}

.asu-photo-placeholder span {
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.asu-photo-placeholder em {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.95rem;
	font-style: normal;
}

.asu-program-card .asu-photo-placeholder {
	aspect-ratio: 4 / 3;
	box-shadow: none;
	margin-top: 1rem;
	min-height: 0;
}

.asu-photo-placeholder.is-warm {
	background:
		linear-gradient(135deg, rgba(201, 159, 0, 0.88), rgba(255, 204, 0, 0.72)),
		repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.12) 0 1px, transparent 1px 18px);
}

.asu-photo-placeholder.is-light {
	background:
		linear-gradient(135deg, rgba(255, 243, 191, 0.96), rgba(255, 204, 0, 0.35)),
		repeating-linear-gradient(45deg, rgba(12, 111, 72, 0.08) 0 1px, transparent 1px 18px);
	color: var(--asu-forest);
}

.asu-photo-placeholder.is-light::before {
	border-color: rgba(12, 111, 72, 0.45);
}

.asu-photo-frame {
	display: block;
	min-width: 0;
	width: 100%;
}

.asu-photo-frame > .elementor-element,
.asu-photo-frame > .elementor-widget-image {
	width: 100%;
}

.asu-photo-frame > .elementor-widget-text-editor,
.asu-photo-frame em,
.asu-photo-placeholder em,
figcaption,
.wp-caption-text,
.elementor-image-caption {
	display: none !important;
}

.asu-real-photo-widget,
.asu-real-photo-widget .elementor-widget-container {
	height: 100%;
	min-width: 0;
	width: 100%;
}

.asu-real-photo-widget img {
	aspect-ratio: 16 / 9;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow);
	display: block;
	height: 100%;
	max-width: 100%;
	min-height: 220px;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.asu-real-photo-widget.is-portrait img {
	aspect-ratio: 4 / 5;
}

.asu-real-photo-widget.is-square img {
	aspect-ratio: 1 / 1;
}

.asu-real-photo-widget.is-soft img {
	box-shadow: var(--asu-shadow-soft);
}

.asu-real-photo-widget.is-top img {
	object-position: center top;
}

.asu-real-photo-widget.is-bottom img {
	object-position: center bottom;
}

.asu-program-card .asu-real-photo-widget img {
	aspect-ratio: 4 / 3;
	box-shadow: none;
	min-height: 0;
}

.asu-story-hero {
	background:
		radial-gradient(circle at 82% 18%, rgba(255, 204, 0, 0.38), transparent 18rem),
		linear-gradient(135deg, rgba(7, 92, 59, 0.98), rgba(12, 111, 72, 0.94) 54%, rgba(201, 159, 0, 0.88)),
		repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.08) 0 1px, transparent 1px 22px);
}

.asu-story-intro-grid,
.asu-story-split,
.asu-story-work-grid,
.asu-story-learning-grid {
	align-items: center;
	gap: clamp(1.5rem, 3vw, 3rem);
}

.asu-text-card,
.asu-quote-panel,
.asu-story-card {
	background: rgba(255, 255, 255, 0.9);
	border: 1px solid var(--asu-line);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	padding: clamp(1.25rem, 2.6vw, 2.2rem);
}

.asu-text-card {
	position: relative;
}

.asu-text-card::before {
	background: var(--asu-sun);
	border-radius: 999px;
	content: "";
	height: 5px;
	left: clamp(1.25rem, 2.6vw, 2.2rem);
	position: absolute;
	top: 0;
	width: 72px;
}

.asu-story-carousel {
	display: grid;
	min-height: clamp(300px, 38vw, 520px);
	position: relative;
	width: 100%;
}

.asu-story-carousel .asu-story-slide {
	grid-area: 1 / 1;
	min-height: 100%;
	opacity: 0;
	transform: translateY(18px) scale(0.97);
	animation: asu-story-slide 13.5s ease-in-out infinite;
}

.asu-story-carousel .asu-story-slide:first-child {
	opacity: 1;
	transform: translateY(0) scale(1);
}

.asu-story-carousel .asu-story-slide:nth-child(2) {
	animation-delay: 4.5s;
}

.asu-story-carousel .asu-story-slide:nth-child(3) {
	animation-delay: 9s;
}

@keyframes asu-story-slide {
	0%,
	30% {
		opacity: 1;
		transform: translateY(0) scale(1);
	}

	40%,
	100% {
		opacity: 0;
		transform: translateY(-14px) scale(0.99);
	}
}

.asu-story-timeline {
	display: grid;
	gap: clamp(1rem, 2vw, 1.4rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: clamp(1.6rem, 3vw, 2.4rem);
	position: relative;
}

.asu-story-card {
	overflow: hidden;
	position: relative;
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.asu-story-card::before {
	background: linear-gradient(180deg, var(--asu-sun), var(--asu-clay));
	content: "";
	inset: 0 auto 0 0;
	position: absolute;
	width: 5px;
}

.asu-story-year {
	color: var(--asu-clay-dark);
	font-size: 0.82rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	margin-bottom: 0.75rem;
	text-transform: uppercase;
}

.asu-story-mini-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asu-dark-band .asu-story-mini-grid .asu-card {
	background: rgba(255, 255, 255, 0.94);
	color: var(--asu-charcoal);
}

.asu-dark-band .asu-story-mini-grid .asu-card h3 {
	color: var(--asu-text-green);
}

.asu-dark-band .asu-story-mini-grid .asu-card p {
	color: var(--asu-muted);
}

.asu-quote-panel {
	background:
		radial-gradient(circle at 90% 10%, rgba(255, 204, 0, 0.32), transparent 13rem),
		linear-gradient(135deg, var(--asu-forest-2), var(--asu-forest));
	color: rgba(255, 255, 255, 0.86);
	min-height: 100%;
}

.asu-quote-panel p,
.asu-quote-panel h3 {
	color: inherit;
}

.asu-quote-panel .asu-kicker {
	color: var(--asu-sun);
}

.asu-story-quote {
	color: var(--asu-white) !important;
	font-family: var(--asu-display);
	font-size: clamp(1.8rem, 3.5vw, 3.4rem);
	line-height: 1.05;
	margin-bottom: 1rem;
}

.asu-testimonials-hero {
	background:
		radial-gradient(circle at 86% 16%, rgba(255, 204, 0, 0.34), transparent 18rem),
		linear-gradient(135deg, rgba(12, 111, 72, 0.98), rgba(7, 92, 59, 0.94) 48%, rgba(85, 161, 127, 0.9)),
		repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.07) 0 1px, transparent 1px 24px);
}

.asu-testimonials-intro,
.asu-testimonial-feature {
	align-items: center;
	gap: clamp(1.5rem, 3vw, 3rem);
}

.asu-testimonials-grid {
	display: grid;
	gap: clamp(1.1rem, 2vw, 1.6rem);
	grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
	margin-top: clamp(1.5rem, 3vw, 2.4rem);
}

.asu-testimonial-card,
.asu-featured-testimonial {
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid var(--asu-line);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	overflow: hidden;
	padding: clamp(1.25rem, 2.4vw, 2rem);
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.asu-testimonial-card::before,
.asu-featured-testimonial::before {
	background: linear-gradient(180deg, var(--asu-sun), var(--asu-clay));
	content: "";
	inset: 0 auto 0 0;
	position: absolute;
	width: 5px;
}

.asu-testimonial-card.is-hope {
	background:
		radial-gradient(circle at 90% 10%, rgba(255, 204, 0, 0.25), transparent 12rem),
		var(--asu-white);
}

.asu-testimonial-card.is-earth {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(255, 243, 191, 0.92));
}

.asu-testimonial-mark {
	color: rgba(255, 204, 0, 0.32);
	font-family: var(--asu-display);
	font-size: clamp(3.8rem, 7vw, 6.2rem);
	line-height: 0.72;
	margin-bottom: 0.5rem;
}

.asu-testimonial-card h3,
.asu-featured-testimonial h2 {
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.asu-testimonial-card p,
.asu-featured-testimonial p {
	overflow-wrap: anywhere;
}

.asu-featured-testimonial {
	background:
		radial-gradient(circle at 98% 2%, rgba(255, 204, 0, 0.2), transparent 13rem),
		var(--asu-white);
}

.asu-featured-testimonial h2 {
	font-size: clamp(2.2rem, 4.5vw, 4.6rem);
}

.asu-testimonial-photo-stack {
	display: grid;
	min-height: clamp(360px, 48vw, 640px);
	position: relative;
}

.asu-testimonial-photo-stack .asu-photo-placeholder,
.asu-testimonial-photo-stack .asu-real-photo-widget {
	grid-area: 1 / 1;
	min-height: 100%;
}

.asu-testimonial-photo-stack .asu-photo-placeholder:nth-child(1),
.asu-testimonial-photo-stack .asu-real-photo-widget:nth-child(1) {
	transform: rotate(-2.5deg) translate(-2%, -2%);
}

.asu-testimonial-photo-stack .asu-photo-placeholder:nth-child(2),
.asu-testimonial-photo-stack .asu-real-photo-widget:nth-child(2) {
	opacity: 0.9;
	transform: rotate(3deg) translate(7%, 10%) scale(0.82);
}

.asu-completed-projects-section {
	background:
		radial-gradient(circle at 90% 8%, rgba(255, 204, 0, 0.28), transparent 18rem),
		linear-gradient(180deg, var(--asu-cream), var(--asu-paper));
}

.asu-completed-projects-grid {
	display: grid;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: clamp(1.5rem, 3vw, 2.4rem);
}

.asu-completed-project-card {
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(10, 10, 10, 0.14);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	min-width: 0;
	overflow: hidden;
	padding: clamp(1rem, 2vw, 1.55rem);
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.asu-completed-project-card::before {
	background: linear-gradient(180deg, var(--asu-sun), var(--asu-clay));
	content: "";
	inset: 0 auto 0 0;
	position: absolute;
	width: 5px;
}

.asu-completed-project-card h3 {
	font-size: clamp(1.2rem, 1.45vw, 1.65rem);
	letter-spacing: 0.02em;
	line-height: 1.05;
	margin-bottom: 0.75rem;
	text-transform: uppercase;
}

.asu-projects-hero {
	background:
		radial-gradient(circle at 88% 12%, rgba(255, 204, 0, 0.32), transparent 18rem),
		linear-gradient(135deg, rgba(12, 111, 72, 0.99), rgba(12, 111, 72, 0.94) 55%, rgba(7, 92, 59, 0.98)),
		repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.08) 0 1px, transparent 1px 24px);
}

.asu-projects-story-grid,
.asu-projects-feature-grid {
	align-items: center;
	display: grid;
	gap: clamp(1.8rem, 4vw, 4rem);
	grid-template-columns: minmax(0, 1.02fr) minmax(320px, 0.98fr);
}

.asu-projects-feature-grid {
	grid-template-columns: minmax(320px, 0.92fr) minmax(0, 1.08fr);
}

.asu-projects-copy {
	max-width: 62rem;
}

.asu-projects-photo-rail {
	display: grid;
	min-height: clamp(330px, 38vw, 560px);
	position: relative;
}

.asu-projects-photo-rail > .elementor-widget {
	animation: asu-projects-photo-fade 15s ease-in-out infinite;
	grid-area: 1 / 1;
	opacity: 0;
	transform: translateY(18px) scale(0.97);
}

.asu-projects-photo-rail > .elementor-widget:first-child {
	opacity: 1;
	transform: translateY(0) scale(1);
}

.asu-projects-photo-rail > .elementor-widget:nth-child(2) {
	animation-delay: 5s;
}

.asu-projects-photo-rail > .elementor-widget:nth-child(3) {
	animation-delay: 10s;
}

.asu-projects-photo-rail .asu-photo-placeholder,
.asu-projects-photo-rail .asu-real-photo-widget,
.asu-projects-visual-card .asu-photo-placeholder,
.asu-projects-visual-card .asu-real-photo-widget {
	min-height: 100%;
}

.asu-projects-visual-card {
	display: grid;
	gap: 1.1rem;
}

.asu-projects-visual-card .elementor-widget:first-child {
	transform: rotate(-1.5deg);
}

.asu-projects-visual-card .elementor-widget:nth-child(2) {
	transform: rotate(1.5deg) translateX(4%);
}

@keyframes asu-projects-photo-fade {
	0%,
	30% {
		opacity: 1;
		transform: translateY(0) scale(1);
	}

	40%,
	100% {
		opacity: 0;
		transform: translateY(-14px) scale(0.99);
	}
}

.asu-projects-timeline,
.asu-projects-pillar-grid,
.asu-projects-stat-grid {
	display: grid;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: clamp(1.5rem, 3vw, 2.4rem);
}

.asu-projects-timeline-card,
.asu-projects-pillar-card,
.asu-projects-stat-card {
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid var(--asu-line);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	min-width: 0;
	overflow: hidden;
	padding: clamp(1.2rem, 2.4vw, 1.8rem);
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.asu-projects-timeline-card::before,
.asu-projects-pillar-card::before,
.asu-projects-stat-card::before,
.asu-projects-map-card::before {
	background: linear-gradient(180deg, var(--asu-sun), var(--asu-clay));
	content: "";
	inset: 0 auto 0 0;
	position: absolute;
	width: 5px;
}

.asu-projects-timeline-card h3,
.asu-projects-pillar-card h3,
.asu-projects-stat-card h3 {
	font-size: clamp(1.25rem, 1.7vw, 1.7rem);
	line-height: 1.08;
}

.asu-projects-sponsorship-section .asu-lead {
	max-width: 68rem;
}

.asu-projects-sponsorship-section .asu-projects-pillar-card {
	color: var(--asu-charcoal);
}

.asu-projects-sponsorship-section .asu-projects-pillar-card h3,
.asu-projects-sponsorship-section .asu-projects-pillar-card p {
	color: var(--asu-charcoal);
}

.asu-projects-future-section {
	background:
		radial-gradient(circle at 90% 8%, rgba(255, 204, 0, 0.26), transparent 18rem),
		linear-gradient(180deg, var(--asu-cream), var(--asu-paper));
}

.asu-projects-long-text {
	max-width: 78rem;
}

.asu-projects-stat-card {
	background:
		radial-gradient(circle at 88% 10%, rgba(255, 204, 0, 0.22), transparent 10rem),
		var(--asu-white);
}

.asu-projects-stat-value {
	color: var(--asu-clay-dark);
	font-family: var(--asu-display);
	font-size: clamp(2.4rem, 5.5vw, 4.8rem);
	font-weight: 900;
	line-height: 0.95;
	margin: 0 0 0.8rem;
}

.asu-projects-map-card .asu-project-info-space {
	min-height: 9rem;
}

.asu-project-info-space {
	background: rgba(255, 243, 191, 0.72);
	border: 1px dashed rgba(12, 111, 72, 0.24);
	border-radius: var(--asu-radius-sm);
	margin-top: 1rem;
	padding: 1rem;
}

.asu-project-info-space .asu-kicker {
	font-size: 0.72rem;
	letter-spacing: 0.07em;
	margin-bottom: 0.4rem;
	overflow-wrap: normal;
	word-break: normal;
}

.asu-project-info-space p:last-child {
	color: var(--asu-muted);
	font-size: 0.93rem;
	margin-bottom: 0;
}

.asu-collab-hero,
.asu-bizum-hero {
	background:
		radial-gradient(circle at 88% 14%, rgba(255, 204, 0, 0.35), transparent 18rem),
		linear-gradient(135deg, rgba(12, 111, 72, 0.98), rgba(85, 161, 127, 0.92) 54%, rgba(7, 92, 59, 0.96)),
		repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.08) 0 1px, transparent 1px 24px);
}

.asu-collab-options-grid,
.asu-periodic-grid,
.asu-sponsorship-grid {
	display: grid;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: clamp(1.5rem, 3vw, 2.4rem);
}

.asu-sponsorship-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asu-collab-split {
	align-items: center;
	gap: clamp(1.5rem, 3vw, 3rem);
}

.asu-collab-option-card,
.asu-collab-card,
.asu-bank-details,
.asu-bizum-card,
.asu-sponsorship-card {
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid var(--asu-line);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	min-width: 0;
	overflow: hidden;
	padding: clamp(1.25rem, 2.4vw, 2rem);
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.asu-collab-option-card::before,
.asu-collab-card::before,
.asu-bank-details::before,
.asu-bizum-card::before,
.asu-sponsorship-card::before {
	background: linear-gradient(180deg, var(--asu-sun), var(--asu-clay));
	content: "";
	inset: 0 auto 0 0;
	position: absolute;
	width: 5px;
}

.asu-collab-option-card h3 {
	font-size: clamp(1.25rem, 1.45vw, 1.55rem);
	line-height: 1.05;
}

.asu-bank-details {
	background:
		radial-gradient(circle at 92% 12%, rgba(255, 204, 0, 0.26), transparent 12rem),
		var(--asu-white);
}

.asu-bank-details p {
	border-bottom: 1px solid rgba(10, 10, 10, 0.1);
	margin: 0;
	padding: 0.85rem 0;
}

.asu-bank-details p:last-child {
	border-bottom: 0;
}

.asu-iban {
	background: rgba(255, 243, 191, 0.9);
	border: 1px solid rgba(12, 111, 72, 0.12);
	border-radius: 999px;
	display: inline-block;
	font-weight: 850;
	margin-top: 0.45rem;
	padding: 0.4rem 0.7rem;
}

.asu-provisional-note {
	background: rgba(255, 204, 0, 0.18);
	border: 1px solid rgba(255, 204, 0, 0.24);
	border-radius: var(--asu-radius-sm);
	color: var(--asu-clay-dark);
	font-weight: 750;
	padding: 0.9rem 1rem;
}

.asu-bizum-card {
	background:
		radial-gradient(circle at 95% 0%, rgba(12, 111, 72, 0.16), transparent 12rem),
		linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 243, 191, 0.84));
}

.asu-bizum-card.is-large {
	padding: clamp(1.5rem, 3vw, 2.6rem);
}

.asu-bizum-card h2 {
	hyphens: none;
	overflow-wrap: normal;
	text-wrap: balance;
	word-break: normal;
}

.asu-bizum-logo {
	align-items: center;
	background: #07c0d8;
	border-radius: 14px;
	color: #ffffff;
	display: inline-flex;
	font-size: clamp(1.8rem, 4vw, 3.2rem);
	font-weight: 900;
	letter-spacing: -0.02em;
	line-height: 1;
	margin-bottom: 1.2rem;
	min-height: 64px;
	padding: 0.65rem 1rem;
	text-transform: lowercase;
}

.asu-bizum-logo::after {
	background: #b5d334;
	border-radius: 50%;
	content: "";
	display: inline-block;
	height: 0.35em;
	margin-left: 0.12em;
	margin-top: -0.48em;
	width: 0.35em;
}

.asu-bizum-code-placeholder {
	background: var(--asu-forest-2);
	border-radius: var(--asu-radius-sm);
	color: var(--asu-white);
	font-size: clamp(2rem, 6vw, 3rem);
	font-weight: 900;
	letter-spacing: 0.12em;
	line-height: 1.05;
	margin-top: 1rem;
	padding: 1rem;
	text-align: center;
}

.asu-bizum-status-placeholder {
	background: var(--asu-forest-2);
	border-radius: var(--asu-radius-sm);
	color: var(--asu-white);
	font-size: clamp(1rem, 1.7vw, 1.2rem);
	font-weight: 850;
	letter-spacing: 0.02em;
	line-height: 1.35;
	margin-top: 1rem;
	padding: 1rem;
	text-align: center;
}

.asu-dark-band .asu-collab-option-card,
.asu-dark-band .asu-bank-details {
	background: rgba(255, 255, 255, 0.94);
	color: var(--asu-charcoal);
}

.asu-dark-band .asu-collab-option-card h3,
.asu-dark-band .asu-bank-details h3,
.asu-dark-band .asu-bank-details p {
	color: var(--asu-charcoal);
}

.asu-band {
	background: var(--asu-cream);
}

.asu-dark-band {
	background: var(--asu-forest-2);
	background-color: var(--asu-forest-2);
	color: rgba(255, 255, 255, 0.84);
}

.asu-dark-band h2,
.asu-dark-band h3,
.asu-dark-band p {
	color: inherit;
}

.asu-dark-band h2 {
	font-size: clamp(2.35rem, 3.7vw, 3.9rem);
	hyphens: none;
	line-height: 1.04;
	overflow-wrap: normal;
	word-break: normal;
}

.asu-dark-band .asu-kicker {
	color: var(--asu-sun);
}

.asu-cta-band {
	background:
		radial-gradient(circle at 90% 15%, rgba(255, 204, 0, 0.45), transparent 18rem),
		linear-gradient(135deg, var(--asu-forest), var(--asu-forest-2));
	background-color: var(--asu-forest);
	color: var(--asu-white);
	padding: clamp(3rem, 6vw, 5.5rem) 0;
}

body.elementor-page .elementor .asu-cta-band {
	background:
		radial-gradient(circle at 90% 15%, rgba(255, 204, 0, 0.45), transparent 18rem),
		linear-gradient(135deg, var(--asu-forest), var(--asu-forest-2)) !important;
	background-color: var(--asu-forest) !important;
	color: var(--asu-white);
}

body.elementor-page .elementor .elementor-element-cbe07c5.asu-cta-band {
	background:
		radial-gradient(circle at 88% 8%, rgba(255, 204, 0, 0.18), transparent 16rem),
		linear-gradient(180deg, var(--asu-white), rgba(255, 250, 240, 0.94)) !important;
	background-color: var(--asu-white) !important;
	border-bottom: 1px solid rgba(12, 111, 72, 0.1);
	border-top: 1px solid rgba(12, 111, 72, 0.1);
	color: var(--asu-charcoal);
}

body.elementor-page .elementor .elementor-element-cbe07c5.asu-cta-band h2 {
	color: var(--asu-forest) !important;
}

body.elementor-page .elementor .elementor-element-cbe07c5.asu-cta-band p {
	color: var(--asu-charcoal) !important;
}

body.elementor-page .elementor .elementor-element-cbe07c5.asu-cta-band .elementor-button {
	background: var(--asu-sun) !important;
	border-color: var(--asu-sun) !important;
	box-shadow: 0 12px 28px rgba(201, 159, 0, 0.16);
	color: var(--asu-forest) !important;
}

body.elementor-page .elementor .elementor-element-cbe07c5.asu-cta-band .is-style-outline .elementor-button {
	background: rgba(12, 111, 72, 0.04) !important;
	border-color: rgba(12, 111, 72, 0.34) !important;
	box-shadow: none;
	color: var(--asu-forest) !important;
}

body.elementor-page .elementor .elementor-element-cbe07c5.asu-cta-band .elementor-button:hover,
body.elementor-page .elementor .elementor-element-cbe07c5.asu-cta-band .elementor-button:focus {
	background: var(--asu-clay) !important;
	border-color: var(--asu-clay) !important;
	color: var(--asu-charcoal) !important;
}

.asu-cta-band h2,
.asu-cta-band p {
	color: inherit;
}

.asu-page-hero {
	background:
		linear-gradient(135deg, rgba(12, 111, 72, 0.96), rgba(85, 161, 127, 0.92)),
		repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.08) 0 1px, transparent 1px 22px);
	background-color: var(--asu-forest);
	color: var(--asu-white);
	padding: calc(var(--asu-header-height) + clamp(3.5rem, 7vw, 6.5rem)) 0 clamp(3.5rem, 7vw, 6.5rem);
	padding-left: var(--wp--style--root--padding-left);
	padding-right: var(--wp--style--root--padding-right);
}

.asu-cta-band {
	padding-left: var(--wp--style--root--padding-left);
	padding-right: var(--wp--style--root--padding-right);
}

.asu-page-hero h1,
.asu-page-hero p {
	color: inherit;
}

.asu-page-hero h1 {
	margin-bottom: 0.9rem;
	overflow-wrap: break-word;
}

.asu-notice {
	background: rgba(255, 204, 0, 0.18);
	border: 1px solid rgba(255, 204, 0, 0.22);
	border-radius: var(--asu-radius);
	margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
	margin-top: clamp(2rem, 4vw, 3rem);
	padding: clamp(1.25rem, 2.6vw, 2rem);
}

.asu-form-placeholder {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(255, 243, 191, 0.72));
	border: 1px dashed rgba(12, 111, 72, 0.28);
	border-radius: var(--asu-radius);
	padding: clamp(1.4rem, 3vw, 2.3rem);
}

.asu-managed-form {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 243, 191, 0.5));
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	display: grid;
	gap: 1rem;
	margin-top: 1.2rem;
	padding: clamp(1.25rem, 3vw, 2rem);
}

.asu-managed-form label {
	color: var(--asu-charcoal);
	display: grid;
	font-weight: 800;
	gap: 0.45rem;
	line-height: 1.25;
}

.asu-form-contact-note {
	background: rgba(255, 204, 0, 0.14);
	border: 1px solid rgba(255, 204, 0, 0.18);
	border-radius: var(--asu-radius-sm);
	color: var(--asu-charcoal);
	display: grid;
	gap: 0.7rem;
	line-height: 1.45;
	margin-bottom: 1rem;
	padding: 1rem;
}

.asu-form-contact-note strong {
	color: var(--asu-text-green);
	font-family: var(--asu-display);
	font-size: 1.15rem;
	line-height: 1.08;
}

.asu-form-contact-note a {
	color: var(--asu-forest);
	font-weight: 850;
	overflow-wrap: anywhere;
}

.asu-contact-channel-list {
	display: grid;
	gap: 0.55rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.asu-contact-channel-list li {
	display: grid;
	gap: 0.1rem;
}

.asu-contact-channel-list span {
	color: var(--asu-muted);
	font-size: 0.9rem;
	font-weight: 800;
}

.asu-managed-form input,
.asu-managed-form select,
.asu-managed-form textarea {
	background: var(--asu-white);
	border: 1px solid rgba(10, 10, 10, 0.18);
	border-radius: 10px;
	color: var(--asu-charcoal);
	font: inherit;
	font-weight: 500;
	min-height: 48px;
	padding: 0.75rem 0.9rem;
	width: 100%;
}

.asu-managed-form textarea {
	line-height: 1.55;
	min-height: 130px;
	resize: vertical;
}

.asu-managed-form input:focus,
.asu-managed-form select:focus,
.asu-managed-form textarea:focus {
	border-color: var(--asu-clay);
	box-shadow: 0 0 0 3px rgba(255, 204, 0, 0.16);
	outline: none;
}

.asu-form-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asu-form-check {
	align-items: flex-start;
	color: var(--asu-muted);
	display: flex !important;
	font-size: 0.95rem;
	font-weight: 700 !important;
	gap: 0.65rem !important;
}

.asu-form-check input {
	flex: 0 0 auto;
	margin-top: 0.2rem;
	min-height: 0;
	width: auto;
}

.asu-form-submit {
	align-items: center;
	background: var(--asu-clay);
	border: 0;
	border-radius: 999px;
	color: var(--asu-charcoal);
	cursor: pointer;
	display: inline-flex;
	font-weight: 900;
	justify-content: center;
	min-height: 50px;
	padding: 0.85rem 1.4rem;
	transition: background-color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
	width: fit-content;
}

.asu-form-submit:hover,
.asu-form-submit:focus-visible {
	background: var(--asu-forest);
	box-shadow: 0 12px 28px rgba(12, 111, 72, 0.18);
	color: var(--asu-white);
	transform: translateY(-1px);
}

.asu-form-message {
	border-radius: var(--asu-radius-sm);
	font-weight: 800;
	padding: 0.9rem 1rem;
}

.asu-form-message ul {
	margin: 0;
	padding-left: 1.1rem;
}

.asu-form-message.is-success {
	background: rgba(85, 161, 127, 0.12);
	border: 1px solid rgba(85, 161, 127, 0.24);
	color: var(--asu-forest);
}

.asu-form-message.is-error {
	background: rgba(255, 204, 0, 0.12);
	border: 1px solid rgba(255, 204, 0, 0.28);
	color: var(--asu-clay-dark);
}

.asu-form-hidden {
	height: 0;
	left: -999em;
	overflow: hidden;
	position: absolute;
	width: 0;
}

.asu-donation-shell {
	background: var(--asu-white);
	border: 1px solid var(--asu-line);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow);
	overflow: hidden;
}

.asu-donation-shell__header {
	background:
		radial-gradient(circle at 92% 0%, rgba(255, 204, 0, 0.4), transparent 15rem),
		linear-gradient(135deg, rgba(12, 111, 72, 0.96), rgba(85, 161, 127, 0.9));
	color: var(--asu-white);
	padding: clamp(1.4rem, 3vw, 2.2rem);
}

.asu-donation-shell__header h2,
.asu-donation-shell__header p {
	color: inherit;
	margin-bottom: 0;
}

.asu-donation-shell__header h2 {
	font-size: clamp(1.85rem, 3.5vw, 3.35rem);
}

.asu-donation-shell__body {
	padding: clamp(1.25rem, 3vw, 2.4rem);
}

.asu-amount-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	margin-top: 1.2rem;
}

.asu-donate-overview__inner,
body.elementor-page .elementor .e-con.asu-donate-overview__inner,
.asu-donation-path-section__inner,
body.elementor-page .elementor .e-con.asu-donation-path-section__inner {
	gap: clamp(1.15rem, 2vw, 1.8rem);
}

.asu-donate-anchor-grid,
body.elementor-page .elementor .e-con.asu-donate-anchor-grid {
	display: grid !important;
	gap: 0;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	isolation: isolate;
	margin: clamp(1.7rem, 3.5vw, 2.7rem) auto 0;
	max-width: min(1080px, 100%);
	padding-inline: clamp(0.2rem, 1vw, 0.9rem);
	width: 100%;
}

.asu-donate-anchor-grid .elementor-widget-button,
.asu-donate-anchor-grid .wp-block-button {
	aspect-ratio: 1.06 / 1;
	position: relative;
	transition: transform 180ms ease, z-index 0ms linear 180ms;
	width: 100% !important;
	z-index: 1;
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(2),
.asu-donate-anchor-grid .wp-block-button:nth-child(2) {
	margin-left: clamp(-2.3rem, -2.6vw, -1rem);
	margin-top: 0.6rem;
	z-index: 2;
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(3),
.asu-donate-anchor-grid .wp-block-button:nth-child(3) {
	margin-left: clamp(-2.3rem, -2.6vw, -1rem);
	margin-top: -0.35rem;
	z-index: 3;
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(4),
.asu-donate-anchor-grid .wp-block-button:nth-child(4) {
	margin-left: clamp(-2.3rem, -2.6vw, -1rem);
	margin-top: 0.7rem;
	z-index: 4;
}

.asu-donate-anchor-grid .elementor-widget-button:hover,
.asu-donate-anchor-grid .elementor-widget-button:focus-within,
.asu-donate-anchor-grid .wp-block-button:hover,
.asu-donate-anchor-grid .wp-block-button:focus-within {
	transform: translateY(-0.35rem) rotate(0deg) scale(1.025);
	transition: transform 180ms ease, z-index 0ms linear;
	z-index: 20;
}

.asu-donate-anchor-grid .elementor-widget-container {
	height: 100%;
}

.asu-donate-anchor-button .elementor-button,
.asu-donate-anchor-button .wp-block-button__link {
	--asu-anchor-border: var(--asu-forest-2);
	align-items: flex-end !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 32% 26% 30% 24% / 24% 34% 26% 32%;
	box-shadow: none;
	color: var(--asu-sun) !important;
	display: flex !important;
	font-family: var(--asu-display);
	font-size: clamp(1.25rem, 1.65vw, 1.85rem);
	font-weight: 900;
	justify-content: center !important;
	line-height: 1.08;
	min-height: 100%;
	min-width: 0 !important;
	hyphens: none;
	overflow: visible;
	overflow-wrap: break-word;
	padding: clamp(1rem, 1.6vw, 1.35rem) clamp(0.95rem, 1.6vw, 1.25rem) clamp(0.9rem, 1.35vw, 1.1rem);
	position: relative;
	text-align: center;
	text-decoration: none !important;
	text-shadow:
		0 1px 0 var(--asu-forest-2),
		1px 0 0 var(--asu-forest-2),
		-1px 0 0 var(--asu-forest-2),
		0 -1px 0 var(--asu-forest-2),
		0 6px 14px rgba(7, 92, 59, 0.16);
	text-transform: uppercase;
	transform: rotate(-2.5deg);
	transition: background 180ms ease, border-color 180ms ease, box-shadow 180ms ease, color 180ms ease, transform 180ms ease;
	white-space: normal;
	word-break: normal;
	height: 100%;
	width: 100%;
}

.asu-donate-anchor-button .elementor-button::before,
.asu-donate-anchor-button .wp-block-button__link::before {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	inset: 0.75rem 0.75rem clamp(4.6rem, 6vw, 5.55rem);
	opacity: 0.86;
	pointer-events: none;
	position: absolute;
	transform: rotate(2deg);
	transition: opacity 180ms ease, transform 180ms ease, filter 180ms ease;
	z-index: 0;
}

.asu-donate-anchor-button .elementor-button::after,
.asu-donate-anchor-button .wp-block-button__link::after {
	content: "";
	display: none;
	pointer-events: none;
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(1) .elementor-button,
.asu-donate-anchor-grid .wp-block-button:nth-child(1) .wp-block-button__link {
	border-radius: 17% 20% 18% 19% / 18% 16% 22% 20%;
	clip-path: none;
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(1) .elementor-button::before,
.asu-donate-anchor-grid .wp-block-button:nth-child(1) .wp-block-button__link::before {
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%20240%20220%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27%23075c3b%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%20stroke-width%3D%2710%27%3E%3Cpath%20fill%3D%27none%27%20d%3D%27M38%2060h164c10%200%2018%208%2018%2018v84c0%2010-8%2018-18%2018H38c-10%200-18-8-18-18V78c0-10%208-18%2018-18Z%27/%3E%3Cpath%20d%3D%27M22%2093h196%27/%3E%3Cpath%20d%3D%27M52%20133h42M52%20155h72%27/%3E%3Crect%20x%3D%27148%27%20y%3D%27122%27%20width%3D%2736%27%20height%3D%2728%27%20rx%3D%276%27/%3E%3C/g%3E%3C/svg%3E");
	inset: 0.9rem 0.8rem clamp(4.7rem, 6.1vw, 5.65rem);
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(2) .elementor-button,
.asu-donate-anchor-grid .wp-block-button:nth-child(2) .wp-block-button__link {
	border-radius: 52% 48% 42% 56% / 34% 38% 56% 48%;
	clip-path: none;
	transform: rotate(2.25deg);
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(2) .elementor-button::before,
.asu-donate-anchor-grid .wp-block-button:nth-child(2) .wp-block-button__link::before {
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%20240%20220%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27%23075c3b%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%20stroke-width%3D%279%27%3E%3Ccircle%20cx%3D%27120%27%20cy%3D%2788%27%20r%3D%2737%27/%3E%3Ccircle%20cx%3D%2782%27%20cy%3D%2764%27%20r%3D%2718%27/%3E%3Ccircle%20cx%3D%27100%27%20cy%3D%2747%27%20r%3D%2719%27/%3E%3Ccircle%20cx%3D%27124%27%20cy%3D%2743%27%20r%3D%2720%27/%3E%3Ccircle%20cx%3D%27148%27%20cy%3D%2751%27%20r%3D%2718%27/%3E%3Ccircle%20cx%3D%27162%27%20cy%3D%2771%27%20r%3D%2716%27/%3E%3Cpath%20d%3D%27M78%20178c8-34%2028-52%2042-52s34%2018%2042%2052%27/%3E%3Cpath%20d%3D%27M86%20146c-19%207-31%2019-38%2036M154%20146c19%207%2031%2019%2038%2036%27/%3E%3C/g%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27%23075c3b%27%20stroke-linecap%3D%27round%27%20stroke-width%3D%276%27%3E%3Cpath%20d%3D%27M105%2090h.1M135%2090h.1M110%20108c7%206%2015%206%2022%200%27/%3E%3C/g%3E%3C/svg%3E");
	inset: 0.4rem 0.4rem clamp(4.85rem, 6.3vw, 5.8rem);
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(3) .elementor-button,
.asu-donate-anchor-grid .wp-block-button:nth-child(3) .wp-block-button__link {
	border-radius: 999px;
	transform: rotate(-1deg);
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(3) .elementor-button::before,
.asu-donate-anchor-grid .wp-block-button:nth-child(3) .wp-block-button__link::before {
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%20240%20220%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27%23075c3b%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%20stroke-width%3D%2710%27%3E%3Ccircle%20cx%3D%27120%27%20cy%3D%27117%27%20r%3D%2768%27/%3E%3Cpath%20d%3D%27M100%2032h40M120%2032v18M68%2055l-22-20M172%2055l22-20M120%2079v42l30%2021%27/%3E%3Cpath%20d%3D%27M120%2049c37%200%2068%2031%2068%2068%27/%3E%3C/g%3E%3C/svg%3E");
	inset: 0.45rem 0.55rem clamp(4.8rem, 6.25vw, 5.75rem);
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(4) .elementor-button,
.asu-donate-anchor-grid .wp-block-button:nth-child(4) .wp-block-button__link {
	border-radius: 24% 24% 16% 16% / 30% 30% 18% 18%;
	clip-path: none;
	transform: rotate(2deg);
}

.asu-donate-anchor-grid .elementor-widget-button:nth-child(4) .elementor-button::before,
.asu-donate-anchor-grid .wp-block-button:nth-child(4) .wp-block-button__link::before {
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%20240%20220%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27%23075c3b%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%20stroke-width%3D%2710%27%3E%3Cpath%20d%3D%27M36%2088h168v94H36Z%27/%3E%3Cpath%20d%3D%27M24%2088l96-58%2096%2058%27/%3E%3Cpath%20d%3D%27M120%2030v-1M62%20117h34v30H62zM144%20117h34v30h-34zM106%20182v-44h28v44M44%20182h152%27/%3E%3Cpath%20d%3D%27M120%2068h.1%27/%3E%3C/g%3E%3C/svg%3E");
	inset: 0.75rem 0.55rem clamp(4.75rem, 6.15vw, 5.7rem);
}

.asu-donate-anchor-button .elementor-button-content-wrapper {
	align-items: center !important;
	bottom: clamp(1rem, 1.25vw, 1.28rem);
	display: flex !important;
	height: auto;
	inset-inline: clamp(0.8rem, 1.45vw, 1.2rem);
	justify-content: center !important;
	position: absolute;
	text-align: center;
	width: auto;
	z-index: 2;
}

.asu-donate-anchor-button .elementor-button-text {
	display: block;
	max-width: 100%;
	text-align: center;
	width: 100%;
}

.asu-donate-anchor-button .elementor-button:hover,
.asu-donate-anchor-button .elementor-button:focus-visible,
.asu-donate-anchor-button .wp-block-button__link:hover,
.asu-donate-anchor-button .wp-block-button__link:focus-visible {
	background: transparent !important;
	border-color: transparent !important;
	box-shadow: none;
	color: var(--asu-sun) !important;
	transform: rotate(0deg);
}

.asu-donate-anchor-button .elementor-button:hover::before,
.asu-donate-anchor-button .elementor-button:focus-visible::before,
.asu-donate-anchor-button .wp-block-button__link:hover::before,
.asu-donate-anchor-button .wp-block-button__link:focus-visible::before {
	filter: drop-shadow(0 8px 10px rgba(12, 111, 72, 0.22)) saturate(1.12) brightness(0.94);
	opacity: 1;
	transform: rotate(0deg) scale(1.035);
}

.asu-donate-anchor-button .elementor-button:focus-visible,
.asu-donate-anchor-button .wp-block-button__link:focus-visible {
	outline: 2px solid rgba(255, 204, 0, 0.85);
	outline-offset: 0.3rem;
}

.asu-donation-path-section,
body.elementor-page .elementor .e-con.asu-donation-path-section {
	scroll-margin-top: calc(var(--asu-header-height) + 1.25rem);
}

.asu-donation-path-section__inner[id],
body.elementor-page .elementor .e-con.asu-donation-path-section__inner[id] {
	scroll-margin-top: calc(var(--asu-header-height) + 1.25rem);
}

.asu-donation-path-grid,
body.elementor-page .elementor .e-con.asu-donation-path-grid {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-width: 100%;
	width: 100%;
}

.asu-donation-path-card,
body.elementor-page .elementor .e-con.asu-donation-path-card {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.85rem;
}

.asu-donation-path-card .elementor-widget-shortcode {
	margin-top: auto;
	width: 100%;
}

.asu-donation-path-note,
body.elementor-page .elementor .e-con.asu-donation-path-note {
	align-items: center;
	background: rgba(255, 204, 0, 0.14);
	border: 1px solid rgba(255, 204, 0, 0.28);
	border-radius: var(--asu-radius-sm);
	display: grid !important;
	gap: 1rem;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: clamp(1rem, 2vw, 1.35rem);
	width: 100%;
}

.asu-donation-path-note p {
	margin: 0;
}

.asu-donation-period-grid,
body.elementor-page .elementor .e-con.asu-donation-period-grid {
	display: grid !important;
	gap: clamp(0.9rem, 1.6vw, 1.25rem);
	grid-template-columns: repeat(4, minmax(0, 1fr));
	max-width: 100%;
	width: 100%;
}

.asu-donate-specific-overview,
body.elementor-page .elementor .e-con.asu-donate-specific-overview {
	padding-top: calc(var(--asu-header-height) + clamp(2.4rem, 5vw, 4.6rem)) !important;
	text-align: center;
}

.asu-donate-specific-overview .asu-compact-page-title,
body.elementor-page .elementor .asu-donate-specific-overview .asu-compact-page-title {
	margin-left: auto;
	margin-right: auto;
}

body.page-id-7 .asu-donate-specific-section .asu-donation-path-section__inner > .asu-kicker,
body.page-id-7 .asu-donate-specific-section .asu-donation-path-section__inner > .asu-kicker p,
body.page-id-7.elementor-page .elementor .asu-donate-specific-section .asu-donation-path-section__inner > .asu-kicker,
body.page-id-7.elementor-page .elementor .asu-donate-specific-section .asu-donation-path-section__inner > .asu-kicker p {
	color: var(--asu-sun) !important;
	font-family: var(--asu-display);
	font-size: clamp(3.2rem, 7vw, 5.6rem) !important;
	font-weight: 400;
	letter-spacing: 0.035em;
	line-height: 0.9;
	margin-bottom: clamp(1.15rem, 2.2vw, 1.9rem) !important;
	text-shadow: 0 2px 0 rgba(7, 92, 59, 0.32);
	text-transform: uppercase !important;
	text-wrap: balance;
}

body.page-id-7 .asu-donate-specific-section .asu-donation-path-section__inner > .asu-kicker p,
body.page-id-7.elementor-page .elementor .asu-donate-specific-section .asu-donation-path-section__inner > .asu-kicker p {
	margin-top: 0 !important;
}

body.page-id-7 .asu-donate-specific-section .asu-lead,
body.page-id-7.elementor-page .elementor .asu-donate-specific-section .asu-lead {
	display: none !important;
}

body.page-id-7 .asu-donate-specific-section .asu-donate-section-title,
body.page-id-7 .asu-donate-specific-section .asu-donate-section-title .elementor-heading-title,
body.page-id-7 .asu-donate-specific-section h2.asu-donate-section-title,
body.page-id-7.elementor-page .elementor .asu-donate-specific-section .asu-donate-section-title,
body.page-id-7.elementor-page .elementor .asu-donate-specific-section .asu-donate-section-title .elementor-heading-title {
	display: none !important;
}

.asu-donate-projects-copy,
.asu-donate-projects-copy .elementor-widget-container,
body.elementor-page .elementor .asu-donate-projects-copy,
body.elementor-page .elementor .asu-donate-projects-copy .elementor-widget-container {
	width: 100%;
}

.asu-donate-projects-copy .elementor-widget-container,
.asu-donate-projects-copy:not(.elementor-widget-text-editor),
body.elementor-page .elementor .asu-donate-projects-copy .elementor-widget-container {
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(12, 111, 72, 0.12);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	color: var(--asu-charcoal);
	padding: clamp(1.2rem, 2.4vw, 1.8rem);
}

.asu-donate-project-list {
	display: grid;
	gap: 0.85rem;
	list-style: none;
	margin: 1rem 0 0;
	padding: 0;
}

.asu-donate-project-list li {
	align-items: flex-start;
	display: grid;
	gap: 0.75rem;
	grid-template-columns: 0.8rem minmax(0, 1fr);
	line-height: 1.55;
}

.asu-donate-project-list li::before {
	background: var(--asu-sun);
	border-radius: 999px;
	content: "";
	display: block;
	height: 0.55rem;
	margin-top: 0.5rem;
	width: 0.55rem;
}

.asu-donate-method-grid,
body.elementor-page .elementor .e-con.asu-donate-method-grid,
.asu-donate-serendipity-options,
body.elementor-page .elementor .e-con.asu-donate-serendipity-options {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
	width: 100%;
}

.asu-donate-method-card,
body.elementor-page .elementor .e-con.asu-donate-method-card {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.85rem;
}

.asu-donate-method-card h3,
.asu-donate-method-card .elementor-heading-title {
	margin-bottom: 0;
}

.asu-donate-method-card--ihelp,
body.elementor-page .elementor .e-con.asu-donate-method-card--ihelp {
	grid-column: 1 / -1;
}

.asu-donate-ihelp-list {
	display: grid;
	gap: 0.85rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 0.4rem;
}

.asu-donate-ihelp-list article {
	background: rgba(12, 111, 72, 0.045);
	border: 1px solid rgba(12, 111, 72, 0.12);
	border-radius: 14px;
	display: flex;
	flex-direction: column;
	gap: 0.8rem;
	min-width: 0;
	padding: 1rem;
}

.asu-donate-ihelp-list h4 {
	font-family: var(--asu-font);
	font-size: 0.98rem;
	font-weight: 850;
	line-height: 1.3;
	margin: 0;
}

.asu-donate-ihelp-list a {
	align-items: center;
	align-self: flex-start;
	background: var(--asu-forest);
	border-radius: 999px;
	color: var(--asu-white) !important;
	display: inline-flex;
	font-size: 0.88rem;
	font-weight: 850;
	line-height: 1.1;
	margin-top: auto;
	padding: 0.72rem 0.9rem;
	text-decoration: none !important;
}

.asu-sponsorship-options-grid,
body.elementor-page .elementor .e-con.asu-sponsorship-options-grid {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	width: 100%;
}

.asu-sponsorship-option-button,
.asu-sponsorship-options-grid .elementor-widget-button,
.asu-sponsorship-options-grid .elementor-widget-container {
	height: 100%;
	width: 100% !important;
}

.asu-sponsorship-option-button .elementor-button,
.asu-sponsorship-option-button .wp-block-button__link {
	align-items: center !important;
	background:
		linear-gradient(135deg, var(--asu-forest), var(--asu-forest-2)) !important;
	border: 1px solid rgba(255, 204, 0, 0.24) !important;
	border-radius: 18px !important;
	box-shadow: 0 18px 38px rgba(12, 111, 72, 0.16);
	color: var(--asu-white) !important;
	display: flex !important;
	font-family: var(--asu-display);
	font-size: clamp(1.25rem, 1.8vw, 1.9rem);
	font-weight: 400;
	justify-content: center !important;
	letter-spacing: 0;
	line-height: 1.03;
	min-height: clamp(9rem, 15vw, 13rem);
	padding: 1.2rem !important;
	text-align: center;
	white-space: normal;
	width: 100%;
}

.asu-sponsorship-option-button .elementor-button-content-wrapper,
.asu-sponsorship-option-button .elementor-button-text {
	align-items: center;
	display: flex;
	justify-content: center;
	text-align: center;
	width: 100%;
}

.asu-sponsorship-option-button .elementor-button:hover,
.asu-sponsorship-option-button .wp-block-button__link:hover {
	background: var(--asu-sun) !important;
	color: var(--asu-text-green) !important;
}

.asu-donate-bank-details,
body.elementor-page .elementor .e-con.asu-donate-bank-details {
	max-width: min(100%, 760px);
}

body.page-id-7 {
	overflow-x: hidden;
}

body.page-id-7 .elementor,
body.page-id-7 .elementor .e-con,
body.page-id-7 .elementor .elementor-widget,
body.page-id-7 .elementor .elementor-widget-container {
	max-width: 100%;
	min-width: 0;
}

body.page-id-7 .elementor .asu-donate-overview__inner,
body.page-id-7 .elementor .asu-donation-path-section__inner {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: min(var(--asu-content), calc(100vw - (var(--asu-edge) * 2))) !important;
	width: min(var(--asu-content), calc(100vw - (var(--asu-edge) * 2))) !important;
}

.asu-donation-period-card,
body.elementor-page .elementor .e-con.asu-donation-period-card {
	border-top: 5px solid var(--asu-sun);
}

.asu-bank-details p,
.asu-bizum-details p {
	overflow-wrap: anywhere;
}

.asu-general-donation-section {
	position: relative;
}

.asu-general-donation-panel,
.asu-general-donation-form {
	background: var(--asu-white);
	border: 1px solid var(--asu-line);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
}

.asu-general-donation-panel {
	margin-top: 1.4rem;
	padding: clamp(1rem, 2vw, 1.35rem);
}

.asu-general-donation-form {
	align-items: end;
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(180px, 1fr) auto;
	padding: clamp(1.1rem, 2.2vw, 1.5rem);
}

.asu-general-donation-form h3 {
	font-size: clamp(1.45rem, 2vw, 2rem);
	margin: 0 0 0.35rem;
}

.asu-general-donation-form p {
	margin: 0;
}

.asu-general-donation-form__field {
	color: var(--asu-text-green);
	display: grid;
	font-size: 0.92rem;
	font-weight: 800;
	gap: 0.4rem;
}

.asu-general-donation-form__amount {
	align-items: center;
	background: var(--asu-paper);
	border: 1px solid rgba(12, 111, 72, 0.18);
	border-radius: 999px;
	display: flex;
	gap: 0.35rem;
	padding: 0.16rem 0.85rem 0.16rem 0.25rem;
}

.asu-general-donation-form__amount input {
	background: transparent;
	border: 0;
	border-radius: 999px;
	color: var(--asu-text-green);
	font-size: 1.08rem;
	font-weight: 850;
	min-height: 48px;
	min-width: 0;
	padding: 0 0.25rem 0 0.85rem;
	width: 100%;
}

.asu-general-donation-form__amount input::placeholder {
	color: rgba(31, 40, 36, 0.56);
	font-size: 0.9rem;
	font-weight: 800;
	opacity: 1;
}

.asu-general-donation-form__amount input:focus {
	box-shadow: none;
	outline: 0;
}

.asu-general-donation-form__amount:focus-within {
	border-color: var(--asu-leaf);
	box-shadow: 0 0 0 4px rgba(85, 161, 127, 0.16);
}

.asu-general-donation-form__amount span {
	color: var(--asu-clay-dark);
	font-size: 1.15rem;
	font-weight: 900;
}

.asu-general-donation-form button {
	min-height: 54px;
	white-space: nowrap;
}

.asu-campaign-counter {
	align-items: center;
	background:
		radial-gradient(circle at 92% 12%, rgba(255, 204, 0, 0.26), transparent 14rem),
		linear-gradient(135deg, var(--asu-white), rgba(255, 250, 240, 0.96));
	border: 1px solid rgba(12, 111, 72, 0.13);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	display: grid;
	gap: clamp(1.1rem, 2.4vw, 2rem);
	grid-template-columns: minmax(0, 1fr) auto;
	margin: clamp(1rem, 2.4vw, 1.6rem) auto;
	max-width: var(--asu-content);
	padding: clamp(1.35rem, 2.6vw, 2.4rem);
	width: 100%;
}

.asu-campaign-counter__copy h3 {
	font-size: clamp(1.55rem, 2.4vw, 2.35rem);
	margin: 0 0 0.55rem;
}

.asu-campaign-counter__copy p:not(.asu-kicker) {
	color: var(--asu-muted);
	margin: 0;
	max-width: 62ch;
}

.asu-campaign-counter__metric {
	background: var(--asu-forest);
	border-radius: var(--asu-radius-sm);
	box-shadow: 0 16px 32px rgba(12, 111, 72, 0.15);
	color: var(--asu-white);
	min-width: min(26vw, 260px);
	padding: clamp(1rem, 2vw, 1.45rem);
	text-align: center;
}

.asu-campaign-counter__amount {
	color: inherit;
	display: block;
	font-family: var(--asu-display);
	font-size: clamp(2rem, 4vw, 3.6rem);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1;
	white-space: nowrap;
}

.asu-campaign-counter__label {
	color: rgba(255, 255, 255, 0.78);
	display: block;
	font-size: 0.86rem;
	font-weight: 850;
	letter-spacing: 0.08em;
	margin-top: 0.5rem;
	text-transform: uppercase;
}

.asu-campaign-counter__meta {
	align-items: center;
	color: var(--asu-clay-dark);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.92rem;
	font-weight: 850;
	gap: 0.6rem 1rem;
	grid-column: 1 / -1;
	letter-spacing: 0.01em;
}

.asu-campaign-counter__progress {
	background: rgba(12, 111, 72, 0.1);
	border-radius: 999px;
	grid-column: 1 / -1;
	height: 0.7rem;
	overflow: hidden;
	width: 100%;
}

.asu-campaign-counter__progress span {
	background: linear-gradient(90deg, var(--asu-sun), var(--asu-clay));
	border-radius: inherit;
	display: block;
	height: 100%;
	min-width: 0.4rem;
}

.asu-amount-option {
	background: var(--asu-paper);
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: var(--asu-radius-sm);
	padding: 1rem;
	transition: border-color 160ms ease, transform 160ms ease, background-color 160ms ease;
}

.asu-amount-option strong {
	color: var(--asu-clay-dark);
	display: block;
	font-family: var(--asu-display);
	font-size: clamp(1.8rem, 3vw, 2.6rem);
	line-height: 1;
}

.asu-amount-option span {
	color: var(--asu-muted);
	display: block;
	font-size: 0.95rem;
	margin-top: 0.35rem;
}

.asu-future-fieldset {
	border: 1px dashed rgba(12, 111, 72, 0.28);
	border-radius: var(--asu-radius);
	display: grid;
	gap: 0.9rem;
	margin-top: 1.2rem;
	padding: clamp(1rem, 2.5vw, 1.6rem);
}

.asu-future-field {
	background: rgba(255, 255, 255, 0.78);
	border: 1px solid rgba(10, 10, 10, 0.12);
	border-radius: var(--asu-radius-sm);
	color: var(--asu-muted);
	min-height: 48px;
	padding: 0.85rem 1rem;
}

.asu-future-payment-card {
	align-items: center;
	background: linear-gradient(135deg, rgba(255, 243, 191, 0.9), rgba(255, 204, 0, 0.22));
	border: 1px solid rgba(255, 204, 0, 0.18);
	border-radius: var(--asu-radius);
	display: flex;
	gap: 1rem;
	min-width: 0;
	padding: 1rem;
}

.asu-future-payment-card > * {
	min-width: 0;
}

.asu-future-payment-card::before {
	background: var(--asu-forest);
	border-radius: 8px;
	box-shadow: inset 0 10px 0 rgba(255, 255, 255, 0.18);
	content: "";
	flex: 0 0 64px;
	height: 42px;
	width: 64px;
}

.asu-donation-summary-panel,
.asu-summary-placeholder {
	background: var(--asu-forest-2);
	border-radius: var(--asu-radius);
	color: rgba(255, 255, 255, 0.84);
	padding: clamp(1.2rem, 2.8vw, 2rem);
}

.asu-donation-summary-panel h3,
.asu-donation-summary-panel p,
.asu-summary-placeholder h3,
.asu-summary-placeholder p {
	color: inherit;
}

.asu-summary-row {
	border-bottom: 1px solid rgba(255, 255, 255, 0.14);
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	padding: 0.75rem 0;
}

.asu-summary-row:last-child {
	border-bottom: 0;
	font-weight: 800;
}

.asu-donation-status,
.asu-provisional-banner {
	background: rgba(255, 204, 0, 0.1);
	border: 1px solid rgba(255, 204, 0, 0.24);
	border-radius: var(--asu-radius);
	padding: clamp(1.1rem, 2.5vw, 1.6rem);
}

.asu-receipt {
	background: var(--asu-white);
	border: 1px solid rgba(10, 10, 10, 0.16);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	margin-inline: auto;
	max-width: 820px;
	padding: clamp(1.4rem, 3vw, 2.4rem);
}

.asu-receipt dl {
	display: grid;
	gap: 0;
	grid-template-columns: minmax(130px, 0.7fr) 1.3fr;
	margin: 0;
}

.asu-receipt dt,
.asu-receipt dd {
	border-bottom: 1px solid var(--asu-line);
	margin: 0;
	padding: 0.85rem 0;
}

.asu-receipt dt {
	color: var(--asu-muted);
	font-weight: 800;
}

.asu-receipt dd {
	color: var(--asu-charcoal);
}

.asu-print-note {
	color: var(--asu-muted);
	font-size: 0.92rem;
	margin-top: 1rem;
}

.asu-form-placeholder label {
	color: var(--asu-muted);
	display: block;
	font-size: 0.84rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	margin-bottom: 0.45rem;
	text-transform: uppercase;
}

.asu-fake-input,
input,
select,
textarea {
	background: var(--asu-white);
	border: 1px solid rgba(10, 10, 10, 0.16);
	border-radius: var(--asu-radius-sm);
	color: var(--asu-charcoal);
	display: block;
	min-height: 48px;
	padding: 0.85rem 1rem;
	width: 100%;
}

input:focus,
select:focus,
textarea:focus {
	border-color: var(--asu-leaf);
	box-shadow: 0 0 0 4px rgba(85, 161, 127, 0.16);
	outline: none;
}

.asu-breadcrumb-note {
	color: var(--asu-muted);
	font-size: 0.92rem;
}

.asu-site-footer {
	background:
		linear-gradient(135deg, var(--asu-forest-2), #06472e);
	color: rgba(255, 255, 255, 0.82);
	margin-top: 0;
	padding: clamp(3rem, 6vw, 5.5rem) 0 2rem;
}

.asu-site-footer__grid {
	align-items: flex-start !important;
	row-gap: 2.2rem;
}

.asu-site-footer__grid--compact {
	column-gap: clamp(2rem, 7vw, 8rem);
	justify-content: space-between;
}

.asu-site-footer__grid--compact .wp-block-column {
	min-width: min(100%, 18rem);
}

.asu-site-footer p,
.asu-site-footer a {
	overflow-wrap: anywhere;
}

.asu-site-footer h3,
.asu-site-footer h4 {
	color: var(--asu-white);
	margin-top: 0;
}

.asu-footer-title {
	color: var(--asu-white);
	font-family: var(--asu-display);
	font-size: clamp(1.8rem, 2.4vw, 2.8rem);
	font-weight: 400;
	line-height: 0.98;
}

.asu-footer-nav {
	gap: 0.45rem;
}

.asu-footer-contact-list {
	display: grid;
	gap: 0.7rem;
	margin-bottom: 1rem;
}

.asu-footer-contact-list p {
	font-size: 0.9rem;
	line-height: 1.35;
	margin: 0;
}

.asu-footer-contact-list strong {
	color: var(--asu-white);
	display: inline-block;
	font-size: 0.78rem;
	letter-spacing: 0.04em;
	margin-bottom: 0.18rem;
	text-transform: uppercase;
}

.asu-footer-contact-list a {
	color: rgba(255, 255, 255, 0.82);
	font-weight: 700;
}

.asu-footer-contact-list a:focus {
	color: var(--asu-sun);
}

.asu-social-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.asu-social-link {
	align-items: center;
	aspect-ratio: 1;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 50%;
	color: rgba(255, 255, 255, 0.82);
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 800;
	justify-content: center;
	line-height: 1;
	min-height: 2.3rem;
	text-decoration: none;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
	width: 2.3rem;
}

.asu-social-link:hover,
.asu-social-link:focus-visible {
	background: var(--asu-sun);
	border-color: var(--asu-sun);
	color: var(--asu-text-green);
	transform: translateY(-2px);
}

.asu-social-link svg {
	fill: currentColor;
	height: 1rem;
	width: 1rem;
}

.asu-social-link--instagram {
	border-radius: 0.85rem;
}

.asu-footer-bottom {
	align-items: center;
	border-top: 1px solid rgba(255, 255, 255, 0.13);
	color: rgba(255, 255, 255, 0.62);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.9rem;
	gap: 0.75rem 1.25rem;
	justify-content: space-between;
	margin-top: 2.4rem;
	padding-top: 1.2rem;
}

.asu-footer-legal-note {
	margin: 0;
}

.asu-footer-legal-links {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.9rem;
	justify-content: flex-end;
}

.asu-footer-legal-links a {
	color: rgba(255, 255, 255, 0.7);
	font-size: 0.86rem;
	font-weight: 700;
	line-height: 1.35;
}

.asu-footer-legal-links a:focus {
	color: var(--asu-sun);
}

.asu-blog-empty {
	background: var(--asu-white);
	border: 1px solid var(--asu-line);
	border-radius: var(--asu-radius);
	padding: clamp(1.4rem, 3vw, 2.4rem);
}

body.elementor-page .elementor .asu-section > .elementor-widget-text-editor,
body.elementor-page .elementor .asu-page-section > .elementor-widget-text-editor,
body.elementor-page .elementor .asu-blog-empty > .elementor-widget-text-editor,
body.elementor-page .elementor .asu-legal-policy .elementor-widget-text-editor,
body.elementor-page .elementor .asu-notice .elementor-widget-text-editor,
body.elementor-page .elementor .asu-provisional-banner .elementor-widget-text-editor,
body.elementor-page .elementor .asu-form-placeholder .elementor-widget-text-editor,
body.elementor-page .elementor .asu-donation-shell__header .elementor-widget-text-editor,
body.elementor-page .elementor .asu-card .elementor-widget-text-editor,
body.elementor-page .elementor .asu-receipt .elementor-widget-text-editor {
	max-width: 54rem !important;
	width: 100% !important;
}

body.elementor-page .elementor .asu-receipt .elementor-widget-text-editor {
	max-width: 42rem !important;
}

.asu-blog-empty h2,
.asu-legal-policy h2 {
	font-size: clamp(1.55rem, 2.5vw, 2.55rem);
	line-height: 1.12;
	overflow-wrap: break-word;
}

.woocommerce div.product,
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout form.checkout,
.woocommerce .woocommerce-notices-wrapper,
.forminator-ui,
.wpforms-container {
	border-radius: var(--asu-radius);
}

body.woocommerce-cart .asu-site-header,
body.woocommerce-checkout .asu-site-header,
body.woocommerce-account .asu-site-header,
body.single-product .asu-site-header,
body.page-id-192 .asu-site-header,
body.page-id-193 .asu-site-header {
	background: rgba(12, 111, 72, 0.97);
	backdrop-filter: blur(12px);
	border-bottom-color: rgba(255, 255, 255, 0.12);
	box-shadow: 0 10px 30px rgba(12, 111, 72, 0.18);
}

body.woocommerce-cart .asu-page-main,
body.woocommerce-checkout .asu-page-main,
body.woocommerce-account .asu-page-main,
body.single-product .asu-page-main,
body.woocommerce-cart main#wp--skip-link--target,
body.woocommerce-checkout main#wp--skip-link--target,
body.woocommerce-account main#wp--skip-link--target,
body.single-product main#wp--skip-link--target,
body.page-id-192 .asu-page-main,
body.page-id-193 .asu-page-main,
body.page-id-192 main#wp--skip-link--target,
body.page-id-193 main#wp--skip-link--target {
	min-height: 58vh;
	padding-top: calc(var(--asu-header-height) + clamp(2rem, 4vw, 3.5rem));
}

body.woocommerce-cart .asu-page-main > .wp-block-post-content,
body.woocommerce-checkout .asu-page-main > .wp-block-post-content,
body.woocommerce-account .asu-page-main > .wp-block-post-content,
body.single-product .asu-page-main > .wp-block-post-content,
body.page-id-192 .asu-page-main > .wp-block-post-content,
body.page-id-193 .asu-page-main > .wp-block-post-content {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--asu-content);
	width: var(--asu-content);
}

body.woocommerce-cart .asu-page-main h1,
body.woocommerce-checkout .asu-page-main h1,
body.woocommerce-account .asu-page-main h1,
body.single-product .asu-page-main h1,
body.woocommerce-cart .wp-block-post-title,
body.woocommerce-checkout .wp-block-post-title,
body.woocommerce-account .wp-block-post-title,
body.single-product .wp-block-post-title,
body.page-id-192 .asu-page-main h1,
body.page-id-193 .asu-page-main h1,
body.page-id-192 .wp-block-post-title,
body.page-id-193 .wp-block-post-title {
	font-size: clamp(2.65rem, 4.4vw, 4.7rem);
	line-height: 1.03;
	margin: 0 auto clamp(1.5rem, 3vw, 2.2rem);
	max-width: var(--asu-content);
	overflow-wrap: break-word;
	width: var(--asu-content);
}

body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-account .woocommerce,
body.single-product .woocommerce,
body.page-id-192 .woocommerce,
body.page-id-193 .woocommerce {
	margin-left: auto;
	margin-right: auto;
	max-width: var(--asu-content);
	width: var(--asu-content);
}

body.woocommerce-checkout .wp-block-template-part header:not(.asu-site-header) {
	background: var(--asu-forest);
	color: var(--asu-white);
	padding-bottom: 0.85rem;
	padding-top: 0.85rem;
}

body.woocommerce-checkout .wp-block-template-part header:not(.asu-site-header) a {
	color: inherit;
	font-weight: 800;
	text-decoration: none;
}

body.woocommerce-checkout .wp-block-woocommerce-cart-link,
body.woocommerce-checkout .wc-block-cart-link,
body.woocommerce-cart .woocommerce-message a,
body.woocommerce-checkout .woocommerce-message a,
body.woocommerce-cart .wc-block-components-notice-banner a,
body.woocommerce-checkout .wc-block-components-notice-banner a,
body.woocommerce-cart .coupon,
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon,
body.page-id-192 .woocommerce-message a,
body.page-id-193 .woocommerce-message a,
body.page-id-192 .wc-block-components-notice-banner a,
body.page-id-193 .wc-block-components-notice-banner a,
body.page-id-192 .coupon,
body.page-id-193 .woocommerce-form-coupon-toggle,
body.page-id-193 form.checkout_coupon {
	display: none !important;
}

body.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message + .woocommerce-message,
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message + .woocommerce-message,
body.page-id-192 .woocommerce-notices-wrapper .woocommerce-message + .woocommerce-message,
body.page-id-193 .woocommerce-notices-wrapper .woocommerce-message + .woocommerce-message {
	display: none !important;
}

body.woocommerce-checkout .woocommerce-notices-wrapper,
body.page-id-193 .woocommerce-notices-wrapper,
body.woocommerce-checkout .wc-block-components-notice-banner.is-success,
body.page-id-193 .wc-block-components-notice-banner.is-success {
	display: none !important;
}

body.asu-donation-checkout #customer_details,
body.asu-donation-checkout .woocommerce-billing-fields,
body.asu-donation-checkout .woocommerce-additional-fields,
body.asu-donation-checkout .woocommerce-shipping-fields,
body.asu-donation-checkout .asu-donation-impact-message,
body.asu-donation-checkout .asu-future-payment-card,
body.asu-donation-checkout .asu-donation-status,
body.asu-donation-checkout .asu-useful-info,
body.asu-donation-checkout .asu-info-card {
	display: none !important;
}

body.asu-donation-checkout form.checkout {
	display: block;
}

body.asu-donation-checkout #order_review_heading {
	color: var(--asu-text-green);
	font-size: clamp(1.75rem, 2.8vw, 2.6rem);
	margin: 0 0 clamp(1rem, 2vw, 1.5rem);
	text-align: left;
}

body.asu-donation-checkout #order_review {
	align-items: stretch;
	display: flex;
	flex-direction: column;
	gap: clamp(1rem, 2vw, 1.4rem);
}

body.asu-donation-checkout .woocommerce-checkout-review-order-table {
	background: var(--asu-white);
	border: 1px solid rgba(12, 111, 72, 0.13);
	border-radius: var(--asu-radius-sm);
	box-shadow: var(--asu-shadow-soft);
	margin: 0;
	overflow: hidden;
	order: 1;
}

body.asu-donation-checkout .asu-checkout-wallet-first {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0;
	box-shadow: none !important;
	display: grid;
	gap: clamp(0.75rem, 1.7vw, 1.05rem);
	order: 2;
	padding: 0 !important;
}

body.asu-donation-checkout .asu-checkout-wallet-first.is-ready {
	display: block;
}

body.asu-donation-checkout .asu-checkout-wallet-first.is-ready .asu-checkout-wallet-fallback {
	display: none !important;
}

body.asu-donation-checkout .asu-checkout-wallet-first:not(.is-ready) .asu-checkout-wallet-slot {
	display: block !important;
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	pointer-events: none;
}

body.asu-donation-checkout .asu-checkout-wallet-fallback {
	display: grid;
	gap: clamp(0.8rem, 1.8vw, 1.1rem);
}

body.asu-donation-checkout .asu-checkout-wallet-fallback__intro {
	display: grid;
	gap: 0.25rem;
	margin: 0;
}

body.asu-donation-checkout .asu-checkout-wallet-fallback__intro strong {
	color: var(--asu-text-green);
	font-family: var(--asu-display);
	font-size: clamp(1.55rem, 2.4vw, 2.25rem);
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 0.95;
	text-transform: uppercase;
}

body.asu-donation-checkout .asu-checkout-wallet-fallback__intro span {
	color: var(--asu-charcoal);
	font-size: 0.98rem;
	line-height: 1.5;
	max-width: 62ch;
}

body.asu-donation-checkout .asu-checkout-wallet-fallback__buttons {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.asu-donation-checkout .asu-wallet-pending-button {
	align-items: center;
	background: var(--asu-white);
	border: 1px solid rgba(12, 111, 72, 0.18);
	border-radius: 999px;
	box-shadow: 0 12px 26px rgba(12, 111, 72, 0.08);
	color: var(--asu-text-green);
	cursor: pointer;
	display: inline-flex;
	font-weight: 900;
	justify-content: center;
	line-height: 1;
	min-height: 50px;
	padding: 0.9rem 1.1rem;
	text-align: center;
	transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

body.asu-donation-checkout .asu-wallet-pending-button--google {
	background: var(--asu-sun);
	border-color: var(--asu-sun);
	color: var(--asu-text-green);
}

body.asu-donation-checkout .asu-wallet-pending-button--apple {
	background: var(--asu-forest);
	border-color: var(--asu-forest);
	color: var(--asu-white);
}

body.asu-donation-checkout .asu-wallet-pending-button--woopay {
	background: var(--asu-white);
	color: var(--asu-text-green);
}

body.asu-donation-checkout .asu-wallet-pending-button:hover,
body.asu-donation-checkout .asu-wallet-pending-button:focus-visible {
	box-shadow: 0 16px 32px rgba(12, 111, 72, 0.16);
	outline: 2px solid rgba(255, 204, 0, 0.78);
	outline-offset: 0.18rem;
	transform: translateY(-2px);
}

body.asu-donation-checkout .asu-checkout-wallet-slot > * {
	margin: 0 !important;
	width: 100%;
}

body.asu-donation-checkout .asu-checkout-wallet-slot,
body.asu-donation-checkout .asu-checkout-wallet-slot :is(.wcpay-express-checkout-wrapper, #wcpay-express-checkout-element, #wc-stripe-payment-request-wrapper, #wc-stripe-express-checkout-element) {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
}

body.asu-donation-checkout :is(#wc-stripe-express-checkout-element, #wcpay-express-checkout-element) {
	min-height: 44px;
}

body.asu-donation-checkout :is(#wc-stripe-express-checkout-element, #wc-stripe-payment-request-wrapper, .wcpay-express-checkout-wrapper):not(.asu-wallet-mounted) {
	display: none !important;
}

body.asu-donation-checkout :is(#wc-stripe-express-checkout-button-separator, #wc-stripe-payment-request-button-separator, #wcpay-express-checkout-button-separator) {
	display: none !important;
}

body.asu-donation-checkout .asu-checkout-wallet-separator {
	align-items: center;
	color: var(--asu-text-green);
	display: flex;
	font-weight: 900;
	gap: 1rem;
	justify-content: center;
	letter-spacing: 0.08em;
	margin: clamp(0.2rem, 0.8vw, 0.45rem) 0 0;
	text-transform: uppercase;
	white-space: nowrap;
}

body.asu-donation-checkout .asu-checkout-wallet-separator::before,
body.asu-donation-checkout .asu-checkout-wallet-separator::after {
	background: rgba(12, 111, 72, 0.18);
	content: "";
	height: 1px;
	max-width: 10rem;
	width: 100%;
}

body.asu-donation-checkout #payment {
	background: var(--asu-white);
	border: 1px solid rgba(12, 111, 72, 0.13);
	border-radius: var(--asu-radius-sm);
	box-shadow: var(--asu-shadow-soft);
	order: 3;
	padding: clamp(1rem, 2.4vw, 1.5rem);
}

body.asu-donation-checkout #payment ul.payment_methods {
	border-bottom-color: rgba(12, 111, 72, 0.14);
	padding: 0 0 clamp(0.8rem, 1.8vw, 1.1rem);
}

body.asu-donation-checkout #payment div.payment_box {
	background: rgba(255, 204, 0, 0.1);
	border-radius: var(--asu-radius-sm);
	color: var(--asu-text-green);
	margin: 0.75rem 0 0;
	padding: 1rem;
}

body.asu-donation-checkout #payment div.payment_box::before {
	display: none;
}

.asu-wallet-dialog {
	align-items: center;
	background: rgba(7, 92, 59, 0.54);
	display: grid;
	inset: 0;
	justify-items: center;
	padding: clamp(1rem, 4vw, 2rem);
	position: fixed;
	z-index: 100000;
}

.asu-wallet-dialog__panel {
	background: var(--asu-white);
	border: 1px solid rgba(12, 111, 72, 0.16);
	border-radius: var(--asu-radius-sm);
	box-shadow: 0 28px 70px rgba(4, 51, 35, 0.32);
	display: grid;
	gap: 0;
	max-width: min(92vw, 30rem);
	width: 100%;
}

.asu-wallet-dialog__panel h2 {
	color: var(--asu-text-green);
	font-family: var(--asu-display);
	font-size: clamp(2rem, 5vw, 3.1rem);
	font-weight: 400;
	line-height: 0.95;
	margin: 0;
	padding: clamp(1.25rem, 3vw, 1.65rem) clamp(1.25rem, 3vw, 1.8rem) 0.65rem;
	text-transform: uppercase;
}

.asu-wallet-dialog__panel p {
	color: var(--asu-charcoal);
	line-height: 1.55;
	margin: 0;
	padding: 0 clamp(1.25rem, 3vw, 1.8rem) clamp(1rem, 2vw, 1.2rem);
}

.asu-wallet-dialog__panel button {
	background: var(--asu-sun);
	border: 0;
	border-radius: 999px;
	color: var(--asu-text-green);
	cursor: pointer;
	font-weight: 900;
	margin: 0 clamp(1.25rem, 3vw, 1.8rem) clamp(1.25rem, 3vw, 1.65rem);
	min-height: 48px;
	padding: 0.8rem 1.25rem;
}

body.woocommerce-cart .siteleads-root,
body.woocommerce-checkout .siteleads-root,
body.page-id-192 .siteleads-root,
body.page-id-193 .siteleads-root {
	display: none !important;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		transition-duration: 0.01ms !important;
	}

	.asu-story-carousel .asu-story-slide {
		animation: none;
		opacity: 0;
		transform: none;
	}

	.asu-story-carousel .asu-story-slide:first-child {
		opacity: 1;
	}

	.asu-projects-photo-rail > .elementor-widget {
		animation: none;
		opacity: 0;
		transform: none;
	}

	.asu-projects-photo-rail > .elementor-widget:first-child {
		opacity: 1;
	}
}

/* Semantic section roles: color now follows purpose, not document order. */
.wp-site-blocks :where(.asu-section, .asu-page-section),
body.elementor-page .elementor :where(.asu-section, .asu-page-section) {
	background: var(--asu-white) !important;
	background-color: var(--asu-white) !important;
	color: var(--asu-charcoal);
}

.wp-site-blocks :where(.asu-section-narrow, .asu-seo-support),
body.elementor-page .elementor :where(.asu-section-narrow, .asu-seo-support) {
	background:
		linear-gradient(180deg, var(--asu-white), rgba(255, 250, 240, 0.96)) !important;
	background-color: var(--asu-white) !important;
	color: var(--asu-charcoal);
}

.wp-site-blocks :where(.asu-band),
body.elementor-page .elementor :where(.asu-band) {
	background:
		linear-gradient(180deg, var(--asu-cream), rgba(255, 250, 240, 0.9)) !important;
	background-color: var(--asu-cream) !important;
	color: var(--asu-charcoal);
}

.wp-site-blocks :where(.asu-dark-band),
body.elementor-page .elementor :where(.asu-dark-band) {
	background:
		radial-gradient(circle at 88% 16%, rgba(255, 204, 0, 0.18), transparent 19rem),
		linear-gradient(135deg, var(--asu-forest), var(--asu-forest-2)) !important;
	background-color: var(--asu-forest-2) !important;
	color: rgba(255, 255, 255, 0.86);
}

.wp-site-blocks :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band) :where(h2, h3, h4),
body.elementor-page .elementor :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band) :where(h2, h3, h4) {
	color: var(--asu-text-green);
}

.wp-site-blocks :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band) :where(p, li, .asu-lead),
body.elementor-page .elementor :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band) :where(p, li, .asu-lead) {
	color: var(--asu-charcoal);
}

.wp-site-blocks :where(.asu-dark-band) :where(h2, h3, h4, p, li, .asu-lead),
body.elementor-page .elementor :where(.asu-dark-band) :where(h2, h3, h4, p, li, .asu-lead) {
	color: inherit;
}

.wp-site-blocks :where(.asu-page-hero) :where(h1, h2, h3, h4, p, li, .asu-lead, .elementor-heading-title),
body.elementor-page .elementor :where(.asu-page-hero) :where(h1, h2, h3, h4, p, li, .asu-lead, .elementor-heading-title) {
	color: rgba(255, 255, 255, 0.9) !important;
}

.wp-site-blocks :where(.asu-page-hero) :where(.asu-kicker),
body.elementor-page .elementor :where(.asu-page-hero) :where(.asu-kicker) {
	color: var(--asu-sun) !important;
}

.wp-site-blocks :where(.asu-cta-band:not(.elementor-element-cbe07c5)) :where(h2, h3, h4, p, li, .asu-lead, .elementor-heading-title),
body.elementor-page .elementor :where(.asu-cta-band:not(.elementor-element-cbe07c5)) :where(h2, h3, h4, p, li, .asu-lead, .elementor-heading-title) {
	color: rgba(255, 255, 255, 0.9) !important;
}

.wp-site-blocks :where(.asu-cta-band:not(.elementor-element-cbe07c5)) :where(.asu-kicker),
body.elementor-page .elementor :where(.asu-cta-band:not(.elementor-element-cbe07c5)) :where(.asu-kicker) {
	color: var(--asu-sun) !important;
}

.wp-site-blocks :where(.asu-section, .asu-page-section) :where(.asu-story-quote),
body.elementor-page .elementor :where(.asu-section, .asu-page-section) :where(.asu-story-quote) {
	color: var(--asu-text-green) !important;
}

body.elementor-page .elementor .asu-section .elementor-widget-text-editor.asu-story-quote,
body.elementor-page .elementor .asu-section .elementor-widget-text-editor.asu-story-quote p.asu-story-quote {
	color: var(--asu-text-green) !important;
}

.wp-site-blocks :where(.asu-quote-panel) :where(.asu-story-quote),
body.elementor-page .elementor :where(.asu-quote-panel) :where(.asu-story-quote) {
	color: var(--asu-white) !important;
}

.wp-site-blocks :where(.asu-dark-band) :where(.asu-kicker),
body.elementor-page .elementor :where(.asu-dark-band) :where(.asu-kicker) {
	color: var(--asu-sun);
}

.wp-site-blocks :where(.asu-dark-band) :where(a:not(.wp-block-button__link):not(.elementor-button)),
body.elementor-page .elementor :where(.asu-dark-band) :where(a:not(.wp-block-button__link):not(.elementor-button)) {
	color: var(--asu-sun);
}

.wp-site-blocks :where(.asu-dark-band) :where(.asu-card, .asu-stat-card, .asu-testimonial-card, .asu-projects-timeline-card, .asu-projects-stat-card, .asu-collab-option-card, .asu-bank-details, .asu-donation-card, .asu-help-card, .asu-program-card, .asu-value-card, .asu-impact-card),
body.elementor-page .elementor :where(.asu-dark-band) :where(.asu-card, .asu-stat-card, .asu-testimonial-card, .asu-projects-timeline-card, .asu-projects-stat-card, .asu-collab-option-card, .asu-bank-details, .asu-donation-card, .asu-help-card, .asu-program-card, .asu-value-card, .asu-impact-card) {
	color: var(--asu-charcoal);
}

.wp-site-blocks .asu-home-bg-white,
body.elementor-page .elementor .e-con.asu-home-bg-white {
	background: var(--asu-white) !important;
	background-color: var(--asu-white) !important;
	color: var(--asu-charcoal) !important;
}

.wp-site-blocks .asu-home-bg-green,
body.elementor-page .elementor .e-con.asu-home-bg-green {
	background:
		radial-gradient(circle at 88% 18%, rgba(255, 204, 0, 0.16), transparent 18rem),
		linear-gradient(135deg, var(--asu-forest), var(--asu-forest-2)) !important;
	background-color: var(--asu-forest-2) !important;
	color: rgba(255, 255, 255, 0.9) !important;
}

.wp-site-blocks .asu-home-bg-white :where(h2, h3, h4, p, li, .asu-lead, .elementor-heading-title),
body.elementor-page .elementor .e-con.asu-home-bg-white :where(h2, h3, h4, p, li, .asu-lead, .elementor-heading-title) {
	color: var(--asu-charcoal) !important;
}

.wp-site-blocks .asu-home-bg-white :where(h2, h3, h4, .elementor-heading-title),
body.elementor-page .elementor .e-con.asu-home-bg-white :where(h2, h3, h4, .elementor-heading-title) {
	color: var(--asu-text-green) !important;
}

.wp-site-blocks .asu-home-bg-green :where(h2, h3, h4, p, li, .asu-lead, .elementor-heading-title),
body.elementor-page .elementor .e-con.asu-home-bg-green :where(h2, h3, h4, p, li, .asu-lead, .elementor-heading-title) {
	color: rgba(255, 255, 255, 0.9) !important;
}

.wp-site-blocks .asu-home-bg-green :where(.asu-section-kicker-title, .wp-block-heading.asu-section-kicker-title, h1.asu-section-kicker-title, h2.asu-section-kicker-title, h3.asu-section-kicker-title, .asu-section-kicker-title .elementor-heading-title, .asu-section-kicker-title h1, .asu-section-kicker-title h2, .asu-section-kicker-title h3),
body.elementor-page .elementor .e-con.asu-home-bg-green :where(.asu-section-kicker-title, .wp-block-heading.asu-section-kicker-title, h1.asu-section-kicker-title, h2.asu-section-kicker-title, h3.asu-section-kicker-title, .asu-section-kicker-title .elementor-heading-title, .asu-section-kicker-title h1, .asu-section-kicker-title h2, .asu-section-kicker-title h3) {
	color: var(--asu-sun) !important;
}

.wp-site-blocks .asu-home-bg-green :where(.asu-card, .asu-program-card, .asu-help-card),
body.elementor-page .elementor .e-con.asu-home-bg-green :where(.asu-card, .asu-program-card, .asu-help-card) {
	background: rgba(255, 255, 255, 0.96) !important;
	color: var(--asu-charcoal) !important;
}

.asu-home-shop-section {
	text-align: center;
}

.asu-home-shop-section > .elementor-widget-text-editor,
.asu-home-shop-section > .elementor-widget-heading,
.asu-home-shop-section > .e-con {
	margin-left: auto;
	margin-right: auto;
	max-width: min(80vw, 980px);
	width: 100%;
}

.asu-home-shop-section .asu-lead {
	margin-left: auto;
	margin-right: auto;
}

.asu-home-shop-showcase {
	margin: clamp(1.4rem, 3vw, 2.6rem) auto 0;
	max-width: 100vw;
	overflow: hidden;
	padding: 0.35rem 0 1.1rem;
	position: relative;
	width: 100%;
}

.asu-home-shop-showcase::before,
.asu-home-shop-showcase::after {
	content: "";
	inset-block: 0;
	pointer-events: none;
	position: absolute;
	width: min(10vw, 7rem);
	z-index: 2;
}

.asu-home-shop-showcase::before {
	background: linear-gradient(90deg, var(--asu-cream), rgba(255, 250, 240, 0));
	left: 0;
}

.asu-home-bg-green .asu-home-shop-showcase::before {
	background: linear-gradient(90deg, var(--asu-forest), rgba(12, 111, 72, 0));
}

.asu-home-shop-showcase::after {
	background: linear-gradient(270deg, var(--asu-cream), rgba(255, 250, 240, 0));
	right: 0;
}

.asu-home-bg-green .asu-home-shop-showcase::after {
	background: linear-gradient(270deg, var(--asu-forest), rgba(12, 111, 72, 0));
}

.asu-home-shop-showcase__track {
	animation: asu-shop-marquee 34s linear infinite;
	display: flex;
	gap: clamp(0.9rem, 1.6vw, 1.35rem);
	width: max-content;
	will-change: transform;
}

.asu-home-shop-showcase:focus-within .asu-home-shop-showcase__track {
	animation-play-state: paused;
}

.asu-home-shop-card {
	background: rgba(255, 255, 255, 0.95);
	border: 1px solid rgba(12, 111, 72, 0.13);
	border-radius: 18px;
	box-shadow: 0 18px 38px rgba(12, 111, 72, 0.12);
	flex: 0 0 clamp(13.5rem, 20vw, 18rem);
	overflow: hidden;
	text-align: left;
	transition: box-shadow 180ms ease, transform 180ms ease;
}

.asu-home-shop-card:focus-within {
	box-shadow: 0 22px 46px rgba(12, 111, 72, 0.18);
	transform: translateY(-3px);
}

.asu-home-shop-card__image {
	aspect-ratio: 4 / 3;
	background:
		linear-gradient(135deg, rgba(12, 111, 72, 0.12), rgba(255, 204, 0, 0.24));
	display: block;
	overflow: hidden;
}

.asu-home-shop-card__image img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.asu-home-shop-card__body {
	display: grid;
	gap: 0.45rem;
	padding: 1rem;
}

.asu-home-shop-card h3 {
	color: var(--asu-text-green);
	font-size: clamp(1.08rem, 1.5vw, 1.35rem);
	line-height: 1.08;
	margin: 0;
}

.asu-home-shop-card h3 a {
	color: inherit;
	text-decoration: none;
}

.asu-home-shop-card p {
	color: var(--asu-charcoal);
	font-size: 0.92rem;
	line-height: 1.45;
	margin: 0;
}

.wp-site-blocks .asu-home-bg-green .asu-home-shop-card,
body.elementor-page .elementor .e-con.asu-home-bg-green .asu-home-shop-card {
	background: rgba(255, 255, 255, 0.97) !important;
	color: var(--asu-text-green) !important;
}

.wp-site-blocks .asu-home-bg-green .asu-home-shop-card h3,
.wp-site-blocks .asu-home-bg-green .asu-home-shop-card h3 a,
body.elementor-page .elementor .e-con.asu-home-bg-green .asu-home-shop-card h3,
body.elementor-page .elementor .e-con.asu-home-bg-green .asu-home-shop-card h3 a {
	color: var(--asu-text-green) !important;
}

.wp-site-blocks .asu-home-bg-green .asu-home-shop-card p,
body.elementor-page .elementor .e-con.asu-home-bg-green .asu-home-shop-card p {
	color: #8a6900 !important;
}

.wp-site-blocks .asu-home-bg-green .asu-home-shop-card__image,
body.elementor-page .elementor .e-con.asu-home-bg-green .asu-home-shop-card__image {
	background:
		linear-gradient(135deg, rgba(12, 111, 72, 0.14), rgba(255, 204, 0, 0.26)) !important;
}

@keyframes asu-shop-marquee {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		transform: translate3d(calc(-50% - (clamp(0.9rem, 1.6vw, 1.35rem) / 2)), 0, 0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.asu-home-shop-showcase__track {
		animation: none;
		flex-wrap: wrap;
		justify-content: center;
		width: 100%;
	}
}

.asu-work-split,
body.elementor-page .elementor .e-con.asu-work-split {
	align-items: center !important;
	display: grid !important;
	gap: clamp(2rem, 4vw, 4.5rem);
	grid-template-columns: minmax(0, 0.95fr) minmax(20rem, 0.8fr);
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: min(80vw, 1320px) !important;
	width: min(80vw, 1320px) !important;
}

.asu-work-copy,
body.elementor-page .elementor .e-con.asu-work-copy {
	align-items: flex-start !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 1rem;
	max-width: 44rem;
}

.asu-work-copy .asu-lead,
body.elementor-page .elementor .asu-work-copy .asu-lead {
	font-size: clamp(1.2rem, 1.05rem + 0.5vw, 1.55rem);
	line-height: 1.42;
	margin-bottom: 0.5rem;
	max-width: 42rem;
}

.asu-work-list,
body.elementor-page .elementor .asu-work-list {
	display: grid;
	gap: 0.75rem;
	list-style: none;
	margin: 0.6rem 0 0;
	padding: 0;
}

.asu-work-list li {
	align-items: flex-start;
	display: grid;
	gap: 0.7rem;
	grid-template-columns: 0.8rem minmax(0, 1fr);
	line-height: 1.55;
}

.asu-work-list li::before {
	background: var(--asu-sun);
	border-radius: 999px;
	content: "";
	display: block;
	height: 0.55rem;
	margin-top: 0.52rem;
	width: 0.55rem;
}

.asu-work-photo-stack,
body.elementor-page .elementor .e-con.asu-work-photo-stack {
	align-items: stretch !important;
	display: grid !important;
	gap: clamp(0.9rem, 1.6vw, 1.35rem);
	grid-template-columns: 1fr;
	justify-items: end !important;
	position: relative;
}

.asu-work-photo,
.asu-work-photo .elementor-widget-container,
body.elementor-page .elementor .asu-work-photo,
body.elementor-page .elementor .asu-work-photo .elementor-widget-container {
	width: 100% !important;
}

.asu-work-photo img {
	aspect-ratio: 4 / 3;
	border: 1px solid rgba(255, 255, 255, 0.34);
	border-radius: 22px;
	box-shadow: 0 24px 58px rgba(0, 0, 0, 0.24);
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.asu-work-photo-main {
	max-width: min(100%, 33rem);
}

.asu-work-photo-secondary {
	justify-self: start;
	margin-top: -3.5rem;
	max-width: min(82%, 25rem);
	position: relative;
	z-index: 2;
}

.asu-work-photo-secondary img {
	aspect-ratio: 16 / 10;
	border-color: rgba(255, 204, 0, 0.65);
}

@media (max-width: 980px) {
	body {
		--asu-header-height: 132px;
		font-size: 17px;
	}

	.asu-site-header {
		position: fixed;
	}

	.asu-site-header__inner {
		align-items: center;
		gap: 1rem;
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.asu-site-nav {
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
	}

	.asu-language-switcher {
		grid-column: 1 / -1;
		grid-row: 2;
		justify-content: center;
		justify-self: stretch;
		max-height: 46px;
		opacity: 1;
		overflow: hidden;
		transform: translateY(0);
		transition: opacity 180ms ease, max-height 180ms ease, transform 180ms ease, visibility 180ms ease;
		visibility: visible;
	}

	.asu-header-actions {
		display: none !important;
	}

	body.asu-language-collapsed .asu-language-switcher {
		max-height: 0;
		opacity: 0;
		pointer-events: none;
		transform: translateY(-0.55rem);
		visibility: hidden;
	}

	.asu-page-main .wp-block-columns > .wp-block-column,
	.entry-content .wp-block-columns > .wp-block-column {
		min-width: 0;
	}

	.asu-projects-story-grid,
	.asu-projects-feature-grid {
		grid-template-columns: 1fr;
	}

	.asu-projects-photo-rail {
		min-height: clamp(280px, 58vw, 440px);
	}

	.asu-projects-timeline,
	.asu-projects-pillar-grid,
	.asu-projects-stat-grid {
		grid-template-columns: 1fr;
	}

	.asu-site-nav .wp-block-navigation__responsive-container {
		z-index: 1000;
	}

	.asu-site-nav .wp-block-navigation__responsive-dialog {
		margin-top: 0;
	}

	.asu-site-nav .wp-block-navigation__responsive-container.is-menu-open,
	.wp-block-navigation__responsive-container.is-menu-open {
		background: rgba(7, 92, 59, 0.9) !important;
		backdrop-filter: blur(16px);
		border: 1px solid rgba(255, 255, 255, 0.18);
		border-radius: 18px;
		box-shadow: 0 20px 55px rgba(0, 0, 0, 0.28);
		bottom: auto !important;
		color: var(--asu-white) !important;
		height: auto !important;
		inset: auto var(--asu-header-side) auto auto !important;
		left: auto !important;
		margin: 0 !important;
		max-height: min(76svh, calc(100dvh - (var(--asu-header-side) * 2)));
		max-width: min(80vw, 21rem);
		min-height: 0;
		min-width: min(64vw, 17rem);
		overscroll-behavior: contain;
		overflow-y: auto;
		padding: clamp(0.95rem, 4vw, 1.25rem) !important;
		right: var(--asu-header-side) !important;
		scrollbar-width: thin;
		top: var(--asu-header-side) !important;
		width: max-content !important;
	}

	.asu-site-nav .wp-block-navigation__responsive-container-open {
		display: inline-flex;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close {
		margin: 0;
		max-width: 100%;
		width: max-content;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		align-items: flex-start;
		gap: 0.7rem;
		padding-top: 3.1rem;
		width: max-content;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
		align-items: flex-start;
		gap: 0.2rem;
		width: max-content;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		border-bottom: 1px solid rgba(255, 255, 255, 0.12);
		color: var(--asu-white) !important;
		display: inline-block;
		font-size: clamp(1.05rem, 4.2vw, 1.35rem);
		line-height: 1.12;
		padding: 0.58rem 0;
		width: auto;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
		background: transparent !important;
		border: 0 !important;
		border-radius: 0;
		box-shadow: none;
		color: var(--asu-white) !important;
		min-width: 0 !important;
		padding: 0 0 0 1rem;
		width: max-content;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		background: transparent;
		border-bottom-color: rgba(255, 255, 255, 0.08);
		font-size: clamp(0.92rem, 3.7vw, 1.08rem);
		padding: 0.48rem 0;
		white-space: normal;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle {
		color: var(--asu-white) !important;
		width: auto;
	}

	.wp-block-navigation__responsive-container.is-menu-open .asu-nav-mobile-action {
		display: block;
	}

	.wp-block-navigation__responsive-container.is-menu-open .asu-nav-mobile-action .wp-block-navigation-item__content {
		background: rgba(255, 204, 0, 0.14);
		border: 1px solid rgba(255, 204, 0, 0.34);
		border-radius: 999px;
		font-size: clamp(0.95rem, 3.8vw, 1.08rem);
		margin-top: 0.5rem;
		padding: 0.72rem 1.05rem;
		text-align: center;
	}

	.wp-block-navigation__responsive-container.is-menu-open .asu-nav-mobile-action:last-child .wp-block-navigation-item__content {
		background: var(--asu-sun);
		color: var(--asu-text-green) !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
		align-items: center;
		background: var(--asu-sun);
		border: 0;
		border-radius: 999px;
		color: var(--asu-text-green);
		display: inline-flex;
		height: 44px;
		justify-content: center;
		position: absolute;
		right: 0.6rem;
		top: 0.6rem;
		width: 44px;
	}
}

@media (max-width: 720px) {
	body {
		--asu-header-height: 128px;
		font-size: 16px;
	}

	h1 {
		font-size: clamp(2.55rem, 11.5vw, 3.75rem);
	}

	.asu-site-title {
		max-width: 12rem;
	}

	.asu-site-header__inner {
		grid-template-columns: minmax(0, 1fr) auto;
		min-height: 70px;
	}

	.asu-site-brand {
		grid-column: 1;
		grid-row: 1;
	}

	.asu-site-brand .wp-block-site-logo {
		max-width: 48px;
	}

	.asu-site-nav {
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
		width: auto;
	}

	.asu-header-actions {
		display: none !important;
	}

	.asu-header-actions .wp-block-button {
		min-width: 0 !important;
		width: 100%;
	}

	.asu-header-actions .wp-block-button__link,
	.asu-header-actions .elementor-button {
		min-width: 0;
		padding-left: 0.72rem;
		padding-right: 0.72rem;
	}

	.asu-site-nav .wp-block-navigation__responsive-container-open,
	.asu-site-nav .wp-block-navigation__responsive-container-close {
		min-height: 44px;
		width: auto;
	}

	.asu-hero,
	.asu-page-hero {
		padding-bottom: 3.4rem;
		padding-top: calc(var(--asu-header-height) + 3.4rem);
	}

	.asu-hero {
		min-height: 100vh;
		min-height: 100svh;
		min-height: 100dvh;
		padding-bottom: clamp(2.2rem, 5svh, 2.7rem);
		padding-top: calc(var(--asu-header-height) + clamp(0.5rem, 1.5svh, 0.75rem));
	}

	.asu-hero > .wp-block-columns,
	body.elementor-page .elementor .asu-hero > .e-con.wp-block-columns {
		max-width: 90vw !important;
		width: 90vw !important;
	}

	.asu-hero .wp-block-column:first-child,
	body.elementor-page .elementor .asu-hero .wp-block-column:first-child,
	.asu-hero .elementor-widget,
	.asu-hero .elementor-widget-container,
	.asu-hero h1,
	.asu-hero .asu-lead,
	.asu-hero .elementor-widget-text-editor.asu-lead,
	.asu-hero .elementor-widget-text-editor .asu-lead {
		max-width: 90vw !important;
		min-width: 0 !important;
	}

	.asu-hero h1 {
		font-size: clamp(1.45rem, 6.1vw, 1.95rem);
		hyphens: none;
		max-width: 90vw !important;
		overflow-wrap: normal;
		text-wrap: wrap;
		word-break: normal;
	}

	.asu-hero.asu-old-technical-hero h1,
	body.elementor-page .elementor .asu-hero.asu-old-technical-hero h1.elementor-heading-title {
		font-size: clamp(2.8rem, 12vw, 3.7rem);
		line-height: 0.94;
		max-width: min(88vw, 21rem) !important;
		white-space: normal;
	}

	.asu-hero.asu-old-technical-hero .asu-kicker,
	.asu-hero.asu-old-technical-hero .elementor-widget-text-editor.asu-kicker,
	.asu-hero.asu-old-technical-hero .elementor-widget-text-editor.asu-kicker p {
		font-size: clamp(0.98rem, 4vw, 1.12rem);
		line-height: 1.22;
		margin-left: auto;
		margin-right: auto;
		max-width: min(90vw, 19rem) !important;
		white-space: normal;
		text-wrap: balance;
	}

	.asu-hero.asu-old-technical-hero .asu-hero-quote {
		max-width: 88vw;
	}

	.asu-hero.asu-old-technical-hero .asu-lead,
	.asu-hero.asu-old-technical-hero .elementor-widget-text-editor.asu-lead,
	.asu-hero.asu-old-technical-hero .elementor-widget-text-editor.asu-lead p {
		font-size: clamp(0.95rem, 3.85vw, 1.04rem);
		line-height: 1.48;
		margin-left: auto;
		margin-right: auto;
		max-width: 88vw !important;
		min-width: 0 !important;
		overflow-wrap: normal;
		white-space: normal;
		width: 100% !important;
		word-break: normal;
	}

	.asu-hero .asu-lead {
		font-size: clamp(1rem, 3.7vw, 1.08rem);
		hyphens: none;
		max-width: 90vw !important;
		overflow-wrap: normal;
		word-break: normal;
	}

	.asu-dark-band h2,
	.asu-dark-band .elementor-heading-title {
		font-size: clamp(1.95rem, 7.4vw, 2.28rem);
		hyphens: none;
		overflow-wrap: normal;
		text-wrap: balance;
		word-break: normal;
	}

	.asu-section-kicker-title,
	.wp-block-heading.asu-section-kicker-title,
	h1.asu-section-kicker-title,
	h2.asu-section-kicker-title,
	h3.asu-section-kicker-title,
	.asu-section-kicker-title .elementor-heading-title,
	.asu-section-kicker-title h1,
	.asu-section-kicker-title h2,
	.asu-section-kicker-title h3 {
		font-size: clamp(2.55rem, 12vw, 3.35rem);
		line-height: 0.96;
	}

	.asu-work-split,
	body.elementor-page .elementor .e-con.asu-work-split {
		gap: 2rem;
		grid-template-columns: 1fr;
		max-width: calc(100vw - 2rem) !important;
		width: calc(100vw - 2rem) !important;
	}

	.asu-work-copy,
	body.elementor-page .elementor .e-con.asu-work-copy {
		max-width: 100%;
	}

	.asu-work-photo-stack,
	body.elementor-page .elementor .e-con.asu-work-photo-stack {
		justify-items: center !important;
	}

	.asu-work-photo-main,
	.asu-work-photo-secondary {
		justify-self: center;
		max-width: 100%;
	}

	.asu-work-photo-secondary {
		margin-top: 0;
	}

	.asu-form-grid {
		grid-template-columns: 1fr;
	}

	.asu-general-donation-form {
		align-items: stretch;
		grid-template-columns: 1fr;
	}

	.asu-donate-anchor-grid,
	body.elementor-page .elementor .e-con.asu-donate-anchor-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.asu-donation-path-grid,
	body.elementor-page .elementor .e-con.asu-donation-path-grid,
	.asu-donation-path-note,
	body.elementor-page .elementor .e-con.asu-donation-path-note {
		grid-template-columns: 1fr;
	}

	.asu-donation-period-grid,
	body.elementor-page .elementor .e-con.asu-donation-period-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.asu-donate-method-grid,
	body.elementor-page .elementor .e-con.asu-donate-method-grid,
	.asu-donate-serendipity-options,
	body.elementor-page .elementor .e-con.asu-donate-serendipity-options,
	.asu-donate-ihelp-list,
	.asu-admin-campaign-grid,
	.asu-ihelp-imported-stats,
	.asu-ihelp-imported-detail-grid,
	body.elementor-page .elementor .e-con.asu-ihelp-imported-detail-grid,
	.asu-team-grid,
	body.elementor-page .elementor .e-con.asu-team-grid,
	.asu-sponsorship-options-grid,
	body.elementor-page .elementor .e-con.asu-sponsorship-options-grid {
		grid-template-columns: 1fr;
	}

	.asu-admin-dashboard__top {
		align-items: stretch;
		flex-direction: column;
	}

	.asu-admin-maintenance {
		grid-template-columns: 1fr;
	}

	.asu-admin-maintenance__form {
		min-width: 0;
	}

	.asu-donate-method-card--ihelp,
	body.elementor-page .elementor .e-con.asu-donate-method-card--ihelp {
		grid-column: auto;
	}

	.asu-sponsorship-option-button .elementor-button,
	.asu-sponsorship-option-button .wp-block-button__link {
		min-height: 7rem;
	}

	.asu-general-donation-form button {
		width: 100%;
	}

	body.asu-donation-checkout .asu-checkout-wallet-fallback__buttons {
		grid-template-columns: 1fr;
	}

	body.asu-donation-checkout .asu-wallet-pending-button {
		min-height: 52px;
		width: 100%;
	}

	.asu-managed-form select {
		text-overflow: clip;
	}

	.asu-section,
	.asu-page-section {
		padding-bottom: 3.6rem;
		padding-top: 3.6rem;
	}

	body.page-id-7 .elementor .asu-donate-overview {
		--padding-top: calc(var(--asu-header-height) + 4.4rem) !important;
		padding-top: calc(var(--asu-header-height) + 4.2rem) !important;
	}

	body.page-id-7 .elementor .asu-donate-overview__inner,
	body.page-id-7 .elementor .asu-donation-path-section__inner {
		max-width: calc(100vw - 2rem) !important;
		width: calc(100vw - 2rem) !important;
	}

	body.page-id-7 .elementor .asu-donate-overview__inner {
		margin-top: 2.75rem !important;
	}

	.asu-donate-anchor-button .elementor-button,
	.asu-donate-anchor-button .wp-block-button__link {
		font-size: clamp(1.08rem, 2.6vw, 1.45rem);
		letter-spacing: 0;
		line-height: 1.08;
		min-height: 100%;
		padding: clamp(0.85rem, 1.8vw, 1.15rem);
	}

	.asu-donate-overview .asu-lead,
	.asu-donation-path-section .asu-lead,
	body.elementor-page .elementor .asu-donate-overview .asu-lead,
	body.elementor-page .elementor .asu-donation-path-section .asu-lead {
		max-width: 100% !important;
		overflow-wrap: break-word;
	}

	.asu-section-narrow {
		padding-bottom: 2.4rem;
		padding-top: 2.4rem;
	}

	.entry-content .wp-block-button,
	.entry-content .wp-block-button__link,
	.asu-cta-band .wp-block-button,
	.asu-cta-band .wp-block-button__link,
	.asu-page-hero .wp-block-button,
	.asu-page-hero .wp-block-button__link,
	.asu-site-footer .wp-block-button,
	.asu-site-footer .wp-block-button__link,
	.asu-header-actions .wp-block-button,
	.asu-header-actions .wp-block-button__link,
	.button,
	input[type="button"],
	input[type="submit"] {
		width: 100%;
	}

	.entry-content .wp-block-buttons,
	.asu-cta-band .wp-block-buttons,
	.asu-page-hero .wp-block-buttons,
	.asu-site-footer .wp-block-buttons {
		width: 100%;
	}

	.entry-content .asu-hero-actions,
	.asu-hero-actions {
		align-items: center !important;
		flex-direction: column;
		justify-content: center !important;
		margin-left: auto;
		margin-right: auto;
		width: auto !important;
	}

	.asu-hero.asu-old-technical-hero .asu-hero-actions {
		display: flex !important;
	}

	.entry-content .asu-hero-actions .wp-block-button,
	.entry-content .asu-hero-actions .wp-block-button__link,
	.asu-hero-actions .elementor-widget-button,
	.asu-hero-actions .elementor-button {
		min-width: 152px;
		width: auto !important;
	}

	.entry-content .asu-hero-actions .wp-block-button:first-child .wp-block-button__link,
	.asu-hero-actions .elementor-widget-button:first-child .elementor-button {
		min-width: 164px;
	}

	.entry-content .asu-section-actions,
	.asu-section-actions {
		justify-content: center !important;
		width: 100% !important;
	}

	.entry-content .asu-section-actions .wp-block-button,
	.entry-content .asu-section-actions .wp-block-button__link,
	.asu-section-actions .elementor-widget-button,
	.asu-section-actions .elementor-button {
		min-width: 150px;
		width: auto !important;
	}

	.asu-photo-placeholder {
		min-height: 190px;
	}

	.asu-real-photo-widget img {
		min-height: 190px;
	}

	.asu-story-timeline,
	.asu-story-mini-grid,
	.asu-testimonials-grid,
	.asu-completed-projects-grid,
	.asu-collab-options-grid,
	.asu-periodic-grid,
	.asu-sponsorship-grid {
		grid-template-columns: 1fr;
	}

	.asu-story-carousel {
		min-height: 250px;
	}

	.asu-testimonial-photo-stack {
		min-height: 300px;
	}

	.asu-testimonial-photo-stack .asu-photo-placeholder:nth-child(1),
	.asu-testimonial-photo-stack .asu-photo-placeholder:nth-child(2),
	.asu-testimonial-photo-stack .asu-real-photo-widget:nth-child(1),
	.asu-testimonial-photo-stack .asu-real-photo-widget:nth-child(2) {
		transform: none;
	}

	.asu-iban {
		border-radius: var(--asu-radius-sm);
		overflow-wrap: anywhere;
		width: 100%;
	}

	.asu-site-footer {
		padding-left: var(--wp--style--root--padding-left);
		padding-right: var(--wp--style--root--padding-right);
	}

	.asu-site-footer .alignwide,
	.asu-site-footer .wp-block-group.alignwide {
		max-width: 100%;
		width: 100%;
	}

	.asu-footer-title {
		font-size: clamp(1.65rem, 8vw, 2.25rem);
		line-height: 1.02;
	}

	.asu-future-payment-card {
		align-items: flex-start;
		flex-direction: column;
	}

	.asu-summary-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.25rem;
	}

	.asu-footer-bottom {
		align-items: flex-start;
		gap: 0.6rem;
	}

	.asu-footer-legal-links {
		justify-content: flex-start;
	}

	.asu-receipt dl {
		grid-template-columns: 1fr;
	}

	.asu-receipt dt {
		border-bottom: 0;
		padding-bottom: 0;
	}
}

@media (max-width: 700px) {
	body.woocommerce-cart .asu-page-main,
	body.woocommerce-checkout .asu-page-main,
	body.woocommerce-account .asu-page-main,
	body.single-product .asu-page-main,
	body.page-id-192 .asu-page-main,
	body.page-id-193 .asu-page-main,
	body.woocommerce-cart main#wp--skip-link--target,
	body.woocommerce-checkout main#wp--skip-link--target,
	body.woocommerce-account main#wp--skip-link--target,
	body.single-product main#wp--skip-link--target,
	body.page-id-192 main#wp--skip-link--target,
	body.page-id-193 main#wp--skip-link--target {
		padding-top: calc(var(--asu-header-height) + 2rem);
	}

	body.woocommerce-cart .asu-page-main > .wp-block-post-content,
	body.woocommerce-checkout .asu-page-main > .wp-block-post-content,
	body.woocommerce-account .asu-page-main > .wp-block-post-content,
	body.single-product .asu-page-main > .wp-block-post-content,
	body.page-id-192 .asu-page-main > .wp-block-post-content,
	body.page-id-193 .asu-page-main > .wp-block-post-content,
	body.woocommerce-cart .woocommerce,
	body.woocommerce-checkout .woocommerce,
	body.woocommerce-account .woocommerce,
	body.single-product .woocommerce,
	body.page-id-192 .woocommerce,
	body.page-id-193 .woocommerce {
		max-width: min(92vw, 1320px);
		width: min(92vw, 1320px);
	}

	body.woocommerce-cart .asu-page-main h1,
	body.woocommerce-checkout .asu-page-main h1,
	body.woocommerce-account .asu-page-main h1,
	body.single-product .asu-page-main h1,
	body.page-id-192 .asu-page-main h1,
	body.page-id-193 .asu-page-main h1,
	body.woocommerce-cart .wp-block-post-title,
	body.woocommerce-checkout .wp-block-post-title,
	body.woocommerce-account .wp-block-post-title,
	body.single-product .wp-block-post-title,
	body.page-id-192 .wp-block-post-title,
	body.page-id-193 .wp-block-post-title {
		font-size: clamp(2.2rem, 10.5vw, 3.05rem);
		max-width: min(92vw, 1320px);
		overflow-wrap: break-word;
		width: min(92vw, 1320px);
	}
}

@media (min-width: 700px) {
	body.elementor-page .wp-site-blocks .elementor .asu-section.alignwide > .elementor-widget-text-editor,
	body.elementor-page .wp-site-blocks .elementor .asu-page-section.alignwide > .elementor-widget-text-editor,
	body.elementor-page .wp-site-blocks .elementor .asu-blog-empty.alignwide > .elementor-widget-text-editor,
	body.elementor-page .wp-site-blocks .elementor .asu-legal-policy.alignwide > .elementor-widget-text-editor,
	body.elementor-page .wp-site-blocks .elementor .asu-notice > .elementor-widget-text-editor,
	body.elementor-page .wp-site-blocks .elementor .asu-provisional-banner > .elementor-widget-text-editor,
	body.elementor-page .wp-site-blocks .elementor .asu-form-placeholder > .elementor-widget-text-editor,
	body.elementor-page .wp-site-blocks .elementor .asu-donation-shell__header > .elementor-widget-text-editor,
	body.elementor-page .wp-site-blocks .elementor .asu-card > .elementor-widget-text-editor,
	body.elementor-page .wp-site-blocks .elementor .asu-receipt > .elementor-widget-text-editor,
	body.elementor-page .wp-site-blocks .elementor .asu-cta-band .elementor-widget-text-editor {
		max-width: 54rem !important;
		width: 100% !important;
	}

	body.elementor-page .wp-site-blocks .elementor .asu-receipt > .elementor-widget-text-editor {
		max-width: 42rem !important;
	}
}

@media (max-width: 480px) {
	body {
		--wp--style--root--padding-left: 1.15rem;
		--wp--style--root--padding-right: 1.15rem;
		--asu-edge: 1.15rem;
	}

	h1 {
		font-size: clamp(2.25rem, 10.5vw, 3.1rem);
	}

	.asu-page-hero h1 {
		font-size: clamp(1.85rem, 8vw, 2.3rem);
		max-width: calc(100vw - (var(--asu-edge) * 2));
		overflow-wrap: break-word;
		width: calc(100vw - (var(--asu-edge) * 2));
		word-break: normal;
	}

	h2 {
		font-size: clamp(2rem, 10vw, 3rem);
	}

	.asu-active-campaigns h2,
	body.elementor-page .elementor .asu-active-campaigns h2 {
		font-size: clamp(1.85rem, 8vw, 2.3rem);
		max-width: calc(100vw - (var(--asu-edge) * 2));
		overflow-wrap: break-word;
		text-wrap: balance;
		width: calc(100vw - (var(--asu-edge) * 2));
		word-break: normal;
	}

	.asu-site-title {
		font-size: 1.08rem;
		max-width: 12rem;
	}

	.asu-header-actions {
		gap: 0.55rem;
	}

	.asu-language-switcher {
		justify-content: center;
	}

	.asu-language-toggle {
		min-height: 40px;
		min-width: min(100%, 158px);
	}

	.asu-header-actions .wp-block-button__link {
		font-size: 0.9rem;
		padding-inline: 0.7rem;
	}

	.asu-card,
	.asu-program-card,
	.asu-help-card,
	.asu-donation-card,
	.asu-value-card,
	.asu-impact-card,
	.asu-collab-option-card,
	.asu-collab-card,
	.asu-bank-details,
	.asu-bizum-card,
	.asu-sponsorship-card,
	.asu-donation-shell__body,
	.asu-receipt {
		padding: 1.15rem;
	}

	.asu-bizum-card h2 {
		font-size: clamp(1.85rem, 7.6vw, 2.35rem);
		line-height: 1.04;
	}

	.asu-projects-sponsorship-section h2,
	.asu-completed-projects-section h2 {
		font-size: clamp(1.75rem, 7.2vw, 2.25rem);
		line-height: 1.05;
		overflow-wrap: break-word;
		word-break: normal;
	}

	.asu-bizum-code-placeholder {
		font-size: clamp(1.75rem, 9vw, 2.4rem);
		letter-spacing: 0.08em;
	}

	.asu-photo-placeholder {
		border-radius: 14px;
		min-height: 170px;
	}

	.asu-real-photo-widget img {
		border-radius: 14px;
		min-height: 170px;
	}

	.asu-amount-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 900px) {
	.asu-home-help-grid,
	body.elementor-page .elementor .e-con.asu-home-help-grid,
	.asu-spain-help-grid,
	body.elementor-page .elementor .e-con.asu-spain-help-grid,
	.asu-spain-help-steps,
	body.elementor-page .elementor .e-con.asu-spain-help-steps {
		grid-template-columns: 1fr !important;
		max-width: min(100%, calc(100vw - (var(--asu-edge) * 2))) !important;
		width: min(100%, calc(100vw - (var(--asu-edge) * 2))) !important;
	}

	.asu-active-campaigns__grid,
	body.elementor-page .elementor .e-con.asu-active-campaigns__grid,
	.asu-campaign-levels,
	body.elementor-page .elementor .e-con.asu-campaign-levels,
	.asu-campaign-use-grid,
	body.elementor-page .elementor .e-con.asu-campaign-use-grid,
	.asu-campaign-donor-grid,
	body.elementor-page .elementor .e-con.asu-campaign-donor-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.asu-active-campaigns__grid > .asu-campaign-card:only-child,
	body.elementor-page .elementor .e-con.asu-active-campaigns__grid > .e-con.asu-campaign-card:only-child {
		display: grid !important;
		grid-template-columns: 1fr !important;
		min-height: 0;
	}

	.asu-active-campaigns__grid > .asu-campaign-card:only-child .asu-campaign-card__image img,
	body.elementor-page .elementor .e-con.asu-active-campaigns__grid > .e-con.asu-campaign-card:only-child .asu-campaign-card__image img {
		aspect-ratio: 16 / 10;
		height: auto;
		min-height: 0;
	}

	.asu-active-campaigns__grid > .asu-campaign-card:only-child .asu-campaign-card__image,
	.asu-active-campaigns__grid > .asu-campaign-card:only-child .asu-campaign-card__image .elementor-widget-container,
	body.elementor-page .elementor .e-con.asu-active-campaigns__grid > .e-con.asu-campaign-card:only-child .asu-campaign-card__image,
	body.elementor-page .elementor .e-con.asu-active-campaigns__grid > .e-con.asu-campaign-card:only-child .asu-campaign-card__image .elementor-widget-container {
		height: auto;
	}

	.asu-active-campaigns__grid > .asu-campaign-card:only-child .asu-campaign-card__footer,
	body.elementor-page .elementor .e-con.asu-active-campaigns__grid > .e-con.asu-campaign-card:only-child .asu-campaign-card__footer {
		border-left: 0;
		border-top: 4px solid var(--asu-sun);
		justify-content: flex-start;
	}
}

@media (max-width: 640px) {
	.asu-active-campaigns__grid,
	body.elementor-page .elementor .e-con.asu-active-campaigns__grid,
	.asu-campaign-levels,
	body.elementor-page .elementor .e-con.asu-campaign-levels,
	.asu-campaign-use-grid,
	body.elementor-page .elementor .e-con.asu-campaign-use-grid,
	.asu-campaign-donor-grid,
	body.elementor-page .elementor .e-con.asu-campaign-donor-grid {
		grid-template-columns: 1fr;
	}

	.asu-campaign-level-card,
	.asu-campaign-summary,
	.asu-campaign-note {
		padding: 1.15rem;
	}

	.asu-campaign-amount {
		font-size: clamp(2.05rem, 13vw, 3rem);
	}
}

/*
 * ASU design-system lock.
 * These rules keep top-level Elementor/Gutenberg sections visually consistent
 * after editor changes, without relying on hidden ad-hoc widths.
 */
.wp-site-blocks main :where(.wp-block-group.alignfull:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty)) {
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	max-width: 100vw !important;
	padding-left: var(--asu-edge) !important;
	padding-right: var(--asu-edge) !important;
	width: 100vw !important;
}

body .wp-site-blocks main .wp-block-group.alignfull:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty).has-global-padding {
	box-sizing: border-box !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	max-width: 100vw !important;
	padding-left: var(--asu-edge) !important;
	padding-right: var(--asu-edge) !important;
	width: 100vw !important;
}

.wp-site-blocks main :where(.wp-block-group.alignfull:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty)) > :where(.alignwide, .wp-block-columns, .wp-block-group, .wp-block-query, .wp-block-post-template, .wp-block-post-content) {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--asu-content) !important;
	width: 100% !important;
}

.wp-site-blocks main > :is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty),
.wp-site-blocks .elementor > .e-con.e-parent:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty),
body.elementor-page .elementor > .e-con.e-parent:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty) {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	padding-left: var(--asu-edge) !important;
	padding-right: var(--asu-edge) !important;
	width: 100% !important;
}

.wp-site-blocks .elementor > .e-con.e-parent:is(.asu-section, .asu-page-section, .asu-band, .asu-dark-band),
body.elementor-page .elementor > .e-con.e-parent:is(.asu-section, .asu-page-section, .asu-band, .asu-dark-band) {
	padding-bottom: var(--asu-section-y) !important;
	padding-top: var(--asu-section-y) !important;
}

.wp-site-blocks .elementor > .e-con.e-parent:is(.asu-section-narrow, .asu-blog-empty),
body.elementor-page .elementor > .e-con.e-parent:is(.asu-section-narrow, .asu-blog-empty) {
	padding-bottom: var(--asu-section-y-tight) !important;
	padding-top: var(--asu-section-y-tight) !important;
}

.wp-site-blocks main > :is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty) > :where(.alignwide, .wp-block-columns, .wp-block-group, .elementor-widget, .e-con),
.wp-site-blocks .elementor > .e-con.e-parent:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty) > :where(.elementor-widget, .e-con, .wp-block-columns, .wp-block-group),
body.elementor-page .elementor > .e-con.e-parent:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band, .asu-cta-band, .asu-blog-empty) > :where(.elementor-widget, .e-con, .wp-block-columns, .wp-block-group) {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--asu-content) !important;
	width: 100% !important;
}

.wp-site-blocks main > :is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band) > :where(p, .asu-lead, .wp-block-heading),
.wp-site-blocks .elementor > .e-con.e-parent:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band) > :where(.elementor-widget-text-editor, .elementor-widget-heading),
body.elementor-page .elementor > .e-con.e-parent:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band) > :where(.elementor-widget-text-editor, .elementor-widget-heading) {
	max-width: var(--asu-reading) !important;
}

.asu-card,
.asu-program-card,
.asu-help-card,
.asu-donation-card,
.asu-value-card,
.asu-impact-card,
.asu-campaign-level-card,
.asu-testimonial-card,
.asu-featured-testimonial,
.asu-completed-project-card,
.asu-projects-timeline-card,
.asu-projects-pillar-card,
.asu-projects-stat-card,
.asu-collab-option-card,
.asu-collab-card,
.asu-bank-details,
.asu-bizum-card,
.asu-sponsorship-card {
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	padding: var(--asu-card-pad);
}

.asu-text-card::before,
.asu-story-card::before,
.asu-testimonial-card::before,
.asu-featured-testimonial::before,
.asu-completed-project-card::before,
.asu-projects-timeline-card::before,
.asu-projects-pillar-card::before,
.asu-projects-stat-card::before,
.asu-projects-map-card::before,
.asu-collab-option-card::before,
.asu-collab-card::before,
.asu-bank-details::before,
.asu-bizum-card::before,
.asu-sponsorship-card::before {
	content: none !important;
	display: none !important;
}

.asu-story-card,
.asu-testimonial-card,
.asu-featured-testimonial,
.asu-completed-project-card,
.asu-projects-timeline-card,
.asu-projects-pillar-card,
.asu-projects-stat-card,
.asu-collab-option-card,
.asu-collab-card,
.asu-bank-details,
.asu-bizum-card,
.asu-sponsorship-card {
	border-top: 4px solid rgba(255, 204, 0, 0.72);
}

/*
 * Responsive card grids.
 * Card groups should sit side by side by default and wrap naturally when the
 * available width gets tight, instead of relying on fixed 2/3/4-column layouts.
 */
.asu-card-grid,
body.elementor-page .elementor .e-con.asu-card-grid,
.asu-active-campaigns__grid,
body.elementor-page .elementor .e-con.asu-active-campaigns__grid,
.asu-campaign-levels,
body.elementor-page .elementor .e-con.asu-campaign-levels,
.asu-campaign-use-grid,
body.elementor-page .elementor .e-con.asu-campaign-use-grid,
.asu-campaign-donor-grid,
body.elementor-page .elementor .e-con.asu-campaign-donor-grid,
.asu-completed-projects-grid,
.asu-projects-timeline,
.asu-projects-pillar-grid,
.asu-projects-stat-grid,
.asu-story-timeline,
.asu-story-mini-grid,
.asu-collab-options-grid,
.asu-periodic-grid,
.asu-sponsorship-grid,
.asu-ihelp-causes {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)) !important;
	width: 100%;
}

.asu-collab-options-grid,
.asu-periodic-grid,
.asu-card-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)) !important;
}

.asu-sponsorship-grid,
.asu-ihelp-causes,
.asu-testimonials-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)) !important;
}

@media (max-width: 700px) {
	.asu-campaign-counter {
		grid-template-columns: 1fr;
	}

	.asu-ihelp-panel {
		padding: 1.2rem;
	}

	.asu-ihelp-panel__actions,
	.asu-ihelp-button,
	.asu-ihelp-cause__link {
		width: 100%;
	}

	.asu-ihelp-causes,
	.asu-ihelp-cause__stats {
		grid-template-columns: 1fr;
	}

	.asu-campaign-counter__metric {
		min-width: 0;
		text-align: left;
	}

	.asu-hero {
		padding-left: var(--asu-edge) !important;
		padding-right: var(--asu-edge) !important;
	}

	.asu-hero > .wp-block-columns,
	body.elementor-page .elementor .asu-hero > .e-con.wp-block-columns {
		inset: 0 !important;
		margin: 0 !important;
		max-width: 100vw !important;
		place-items: center !important;
		position: absolute !important;
		width: 100vw !important;
	}

	.asu-hero .wp-block-column:first-child,
	body.elementor-page .elementor .asu-hero .wp-block-column:first-child,
	.asu-hero .elementor-widget,
	.asu-hero .elementor-widget-container,
	.asu-hero h1,
	.asu-hero .asu-lead,
	.asu-hero .elementor-widget-text-editor.asu-lead,
	.asu-hero .elementor-widget-text-editor .asu-lead {
		max-width: min(82vw, calc(100vw - (var(--asu-edge) * 2))) !important;
		width: min(82vw, calc(100vw - (var(--asu-edge) * 2))) !important;
	}

	.asu-hero .wp-block-column:first-child,
	body.elementor-page .elementor .asu-hero .wp-block-column:first-child {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.asu-hero h1 {
		font-size: clamp(1.34rem, 5.15vw, 1.72rem);
		overflow-wrap: anywhere;
		text-wrap: balance;
	}

	.asu-hero .asu-kicker {
		font-size: 0.64rem;
		letter-spacing: 0.08em;
		line-height: 1.45;
		margin-left: auto;
		margin-right: auto;
		max-width: min(82vw, calc(100vw - (var(--asu-edge) * 2))) !important;
		overflow-wrap: anywhere;
		text-align: center;
		width: min(82vw, calc(100vw - (var(--asu-edge) * 2))) !important;
	}

	.asu-hero .asu-lead {
		font-size: clamp(0.95rem, 3.45vw, 1.04rem);
		line-height: 1.55;
		overflow-wrap: break-word;
	}
}

@media (max-width: 700px) {
	.asu-donate-anchor-grid,
	body.elementor-page .elementor .e-con.asu-donate-anchor-grid {
		grid-template-columns: minmax(0, 1fr) !important;
		max-width: min(82vw, 22rem) !important;
		padding-inline: 0 !important;
	}

	.asu-donate-anchor-grid .elementor-widget-button,
	.asu-donate-anchor-grid .wp-block-button {
		aspect-ratio: 1.18 / 1;
		margin-left: 0 !important;
		margin-top: -1rem;
		width: 100% !important;
	}

	.asu-donate-anchor-grid .elementor-widget-button:first-child,
	.asu-donate-anchor-grid .wp-block-button:first-child {
		margin-top: 0;
	}

	.asu-donate-anchor-grid .elementor-widget-button:nth-child(2),
	.asu-donate-anchor-grid .wp-block-button:nth-child(2) {
		margin-top: -1.35rem;
	}

	.asu-donate-anchor-grid .elementor-widget-button:nth-child(3),
	.asu-donate-anchor-grid .wp-block-button:nth-child(3) {
		margin-top: -1.15rem;
	}

	.asu-donate-anchor-grid .elementor-widget-button:nth-child(4),
	.asu-donate-anchor-grid .wp-block-button:nth-child(4) {
		margin-top: -1.3rem;
	}

	.asu-donate-anchor-button .elementor-button,
	.asu-donate-anchor-button .wp-block-button__link {
		font-size: clamp(1.22rem, 7vw, 1.7rem);
		padding: 1rem 1rem 0.85rem;
	}

	.asu-donate-anchor-button .elementor-button::before,
	.asu-donate-anchor-button .wp-block-button__link::before {
		inset: 0.75rem 0.75rem clamp(4.65rem, 18vw, 5.35rem);
	}

	.asu-donate-anchor-button .elementor-button-content-wrapper {
		bottom: clamp(1.05rem, 4vw, 1.35rem);
		inset-inline: clamp(0.75rem, 4vw, 1.2rem);
	}

	.asu-donate-anchor-button .elementor-button-text {
		max-width: 88%;
	}
}

.asu-shop-hero,
body.elementor-page .elementor .e-con.asu-shop-hero {
	background:
		linear-gradient(135deg, rgba(12, 111, 72, 0.94), rgba(9, 45, 35, 0.92)),
		radial-gradient(circle at 18% 22%, rgba(255, 204, 0, 0.22), transparent 34%) !important;
	color: var(--asu-white) !important;
}

.asu-shop-hero h1,
.asu-shop-hero h2,
.asu-shop-hero h3,
.asu-shop-hero .asu-lead,
.asu-shop-hero .asu-lead p,
.asu-shop-hero .asu-kicker,
.asu-shop-hero .asu-kicker p,
.asu-shop-hero .elementor-heading-title,
body.elementor-page .elementor .e-con.asu-shop-hero h1,
body.elementor-page .elementor .e-con.asu-shop-hero h2,
body.elementor-page .elementor .e-con.asu-shop-hero h3,
body.elementor-page .elementor .e-con.asu-shop-hero .asu-lead,
body.elementor-page .elementor .e-con.asu-shop-hero .asu-lead p,
body.elementor-page .elementor .e-con.asu-shop-hero .asu-kicker,
body.elementor-page .elementor .e-con.asu-shop-hero .asu-kicker p,
body.elementor-page .elementor .e-con.asu-shop-hero .elementor-heading-title {
	color: var(--asu-white) !important;
}

.asu-shop-layout,
body.elementor-page .elementor .e-con.asu-shop-layout {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.6rem);
	grid-template-columns: minmax(0, 1.08fr) minmax(17rem, 0.92fr);
}

.asu-shop-visual,
body.elementor-page .elementor .e-con.asu-shop-visual {
	align-self: stretch;
	background:
		linear-gradient(135deg, rgba(255, 204, 0, 0.92), rgba(230, 134, 69, 0.88)),
		linear-gradient(45deg, rgba(255,255,255,0.16) 25%, transparent 25% 50%, rgba(255,255,255,0.16) 50% 75%, transparent 75%);
	background-size: auto, 22px 22px;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 22px;
	box-shadow: 0 26px 60px rgba(0, 0, 0, 0.24);
	display: grid !important;
	min-height: clamp(18rem, 32vw, 28rem);
	overflow: hidden;
	padding: clamp(1.2rem, 2.4vw, 2rem);
	place-items: end start;
}

.asu-shop-visual__card {
	background: rgba(255, 255, 255, 0.9);
	border-radius: 18px;
	box-shadow: 0 20px 38px rgba(5, 39, 30, 0.2);
	color: var(--asu-text-green);
	max-width: 17rem;
	padding: 1.1rem;
}

.asu-shop-visual__card h3 {
	font-size: clamp(1.25rem, 2vw, 1.7rem);
	margin: 0 0 0.4rem;
}

.asu-shop-hero .is-style-outline .wp-block-button__link,
.asu-shop-hero .is-style-outline .elementor-button {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.72);
	color: var(--asu-white);
}

.asu-shop-hero .is-style-outline .wp-block-button__link:hover,
.asu-shop-hero .is-style-outline .elementor-button:hover,
.asu-shop-hero .is-style-outline .wp-block-button__link:focus,
.asu-shop-hero .is-style-outline .elementor-button:focus {
	background: rgba(255, 255, 255, 0.16);
	border-color: var(--asu-white);
	color: var(--asu-white);
}

.asu-shop-category-grid,
body.elementor-page .elementor .e-con.asu-shop-category-grid,
.asu-shop-product-grid {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.4rem);
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: 100%;
}

.asu-shop-category-card,
body.elementor-page .elementor .e-con.asu-shop-category-card,
.asu-shop-product-card,
.asu-shop-empty {
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: 18px;
	box-shadow: 0 16px 34px rgba(12, 111, 72, 0.1);
	overflow: hidden;
}

.asu-shop-category-card,
body.elementor-page .elementor .e-con.asu-shop-category-card {
	padding: clamp(1rem, 2vw, 1.35rem);
}

.asu-shop-category-card .asu-kicker {
	margin-bottom: 0.45rem;
}

.asu-shop-category-card h3,
.asu-shop-product-card h3,
.asu-shop-empty h3 {
	color: var(--asu-text-green);
	font-size: clamp(1.25rem, 1.6vw, 1.65rem);
	margin: 0 0 0.45rem;
}

.asu-shop-category-card .asu-kicker,
.asu-shop-category-card p,
.asu-shop-product-card__body p,
.asu-shop-empty p {
	color: #8a6900 !important;
}

.asu-shop-product-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.asu-shop-product-card__image {
	aspect-ratio: 4 / 3;
	background:
		linear-gradient(135deg, rgba(12, 111, 72, 0.16), rgba(255, 204, 0, 0.22));
	display: block;
	overflow: hidden;
}

.asu-shop-product-card__image img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.asu-shop-product-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0.8rem;
	padding: clamp(1rem, 2vw, 1.25rem);
}

.asu-shop-product-card__body h3 a {
	color: var(--asu-text-green) !important;
	text-decoration: none;
}

.asu-shop-product-card__body p {
	margin: 0;
}

.asu-shop-product-card__meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: space-between;
	margin-top: auto;
}

.asu-shop-product-card__price {
	color: var(--asu-forest);
	font-weight: 900;
}

.asu-shop-product-card__button,
.asu-shop-product-card .button,
.asu-shop-empty .wp-element-button {
	background: var(--asu-forest) !important;
	border-radius: 999px !important;
	color: var(--asu-white) !important;
	font-weight: 900 !important;
	padding: 0.75rem 1rem !important;
	text-decoration: none !important;
}

.asu-shop-empty {
	padding: clamp(1.4rem, 3vw, 2rem);
	text-align: center;
}

.asu-shop-empty .wp-element-button {
	display: inline-flex;
	margin-top: 0.6rem;
}

@media (max-width: 980px) {
	.asu-shop-layout,
	body.elementor-page .elementor .e-con.asu-shop-layout,
	.asu-shop-category-grid,
	body.elementor-page .elementor .e-con.asu-shop-category-grid,
	.asu-shop-product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.asu-shop-layout,
	body.elementor-page .elementor .e-con.asu-shop-layout,
	.asu-shop-product-grid {
		grid-template-columns: 1fr;
	}

	.asu-shop-hero,
	body.elementor-page .elementor .e-con.asu-shop-hero {
		padding-left: var(--asu-edge) !important;
		padding-right: var(--asu-edge) !important;
	}

	.asu-shop-layout,
	body.elementor-page .elementor .e-con.asu-shop-layout {
		margin-left: 0 !important;
		margin-right: 0 !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	.asu-shop-hero__copy,
	body.elementor-page .elementor .e-con.asu-shop-hero__copy,
	.asu-shop-hero__copy > .elementor-widget,
	body.elementor-page .elementor .e-con.asu-shop-hero__copy > .elementor-widget {
		margin-left: 0 !important;
		margin-right: 0 !important;
		max-width: calc(100% - 2rem) !important;
		width: calc(100% - 2rem) !important;
	}

	.asu-shop-visual,
	body.elementor-page .elementor .e-con.asu-shop-visual {
		justify-self: center;
		max-width: calc(100% - 2rem) !important;
		width: calc(100% - 2rem) !important;
	}

	.asu-shop-hero .asu-section-actions,
	body.elementor-page .elementor .e-con.asu-shop-hero .asu-section-actions {
		max-width: calc(100% - 2rem) !important;
		width: calc(100% - 2rem) !important;
	}

	.asu-shop-hero h1,
	body.elementor-page .elementor .e-con.asu-shop-hero h1.elementor-heading-title {
		font-size: clamp(2.8rem, 14vw, 4rem);
		line-height: 0.95;
		overflow-wrap: break-word;
		word-break: normal;
	}

	.asu-shop-category-grid,
	body.elementor-page .elementor .e-con.asu-shop-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

body.page-id-7 .asu-donation-card,
body.page-id-7 .asu-bank-details,
body.page-id-7 .asu-bizum-card,
body.page-id-7 .asu-donate-ihelp-list > * {
	--asu-card-bg: var(--asu-white);
	--asu-card-text: var(--asu-charcoal);
	--asu-card-heading: var(--asu-text-green);
	--asu-card-link: var(--asu-forest);
	background: var(--asu-card-bg) !important;
	color: var(--asu-card-text) !important;
}

body.page-id-7 .asu-donation-card .elementor-heading-title,
body.page-id-7 .asu-donation-card :where(h1, h2, h3, h4, h5, h6),
body.page-id-7 .asu-bank-details .elementor-heading-title,
body.page-id-7 .asu-bank-details :where(h1, h2, h3, h4, h5, h6),
body.page-id-7 .asu-bizum-card .elementor-heading-title,
body.page-id-7 .asu-bizum-card :where(h1, h2, h3, h4, h5, h6),
body.page-id-7 .asu-donate-ihelp-list > * .elementor-heading-title,
body.page-id-7 .asu-donate-ihelp-list > * :where(h1, h2, h3, h4, h5, h6) {
	color: var(--asu-card-heading) !important;
}

body.page-id-7.elementor-page .elementor .e-con:is(.asu-dark-band, .asu-home-bg-green, .asu-cta-band) :is(.asu-donation-card, .asu-bank-details, .asu-bizum-card, .asu-donate-ihelp-list > *) :is(.elementor-heading-title, h1, h2, h3, h4, h5, h6) {
	color: var(--asu-card-heading) !important;
}

body.page-id-7 .asu-donation-card .elementor-widget-text-editor,
body.page-id-7 .asu-donation-card .elementor-widget-text-editor :where(p, li, strong, span, small, em),
body.page-id-7 .asu-bank-details .elementor-widget-text-editor,
body.page-id-7 .asu-bank-details .elementor-widget-text-editor :where(p, li, strong, span, small, em),
body.page-id-7 .asu-bizum-card .elementor-widget-text-editor,
body.page-id-7 .asu-bizum-card .elementor-widget-text-editor :where(p, li, strong, span, small, em),
body.page-id-7 .asu-donate-ihelp-list > * .elementor-widget-text-editor,
body.page-id-7 .asu-donate-ihelp-list > * .elementor-widget-text-editor :where(p, li, strong, span, small, em) {
	color: var(--asu-card-text) !important;
}

body.page-id-7 .asu-donation-card :where(p, li, strong, small, em, label),
body.page-id-7 .asu-bank-details :where(p, li, strong, small, em, label),
body.page-id-7 .asu-bizum-card :where(p, li, strong, small, em, label),
body.page-id-7 .asu-donate-ihelp-list > * :where(p, li, strong, small, em, label) {
	color: var(--asu-card-text) !important;
}

body.page-id-7.elementor-page .elementor .e-con:is(.asu-dark-band, .asu-home-bg-green, .asu-cta-band) :is(.asu-donation-card, .asu-bank-details, .asu-bizum-card, .asu-donate-ihelp-list > *) :is(.elementor-widget-text-editor, .elementor-widget-text-editor p, p, li, span:not(.elementor-button-text), strong, small, em, label) {
	color: var(--asu-card-text) !important;
}

body.page-id-7 .asu-donation-card span:not(.elementor-button-text),
body.page-id-7 .asu-bank-details span:not(.elementor-button-text),
body.page-id-7 .asu-bizum-card span:not(.elementor-button-text),
body.page-id-7 .asu-donate-ihelp-list > * span:not(.elementor-button-text) {
	color: var(--asu-card-text) !important;
}

body.page-id-7 .asu-donation-card a:not(.elementor-button):not(.wp-block-button__link):not(.button),
body.page-id-7 .asu-bank-details a:not(.elementor-button):not(.wp-block-button__link):not(.button),
body.page-id-7 .asu-bizum-card a:not(.elementor-button):not(.wp-block-button__link):not(.button),
body.page-id-7 .asu-donate-ihelp-list > * a:not(.elementor-button):not(.wp-block-button__link):not(.button) {
	color: var(--asu-card-link) !important;
}

body.page-id-7 .asu-donate-method-card--bank :where(.elementor-button, .wp-block-button__link, .button),
body.page-id-7 .asu-donate-method-card--ihelp :where(.elementor-button, .wp-block-button__link, .button),
body.page-id-7 .asu-donate-bank-details :where(.elementor-button, .wp-block-button__link, .button),
body.page-id-7 .asu-bank-details :where(.elementor-button, .wp-block-button__link, .button),
body.page-id-7 .asu-bizum-card :where(.elementor-button, .wp-block-button__link, .button),
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+1) :where(.elementor-button, .wp-block-button__link, .button) {
	background: var(--asu-forest) !important;
	border-color: var(--asu-forest) !important;
	color: var(--asu-white) !important;
}

body.page-id-7 .asu-donate-method-card--bank :where(.elementor-button, .wp-block-button__link, .button):where(:hover, :focus-visible),
body.page-id-7 .asu-donate-method-card--ihelp :where(.elementor-button, .wp-block-button__link, .button):where(:hover, :focus-visible),
body.page-id-7 .asu-donate-bank-details :where(.elementor-button, .wp-block-button__link, .button):where(:hover, :focus-visible),
body.page-id-7 .asu-bank-details :where(.elementor-button, .wp-block-button__link, .button):where(:hover, :focus-visible),
body.page-id-7 .asu-bizum-card :where(.elementor-button, .wp-block-button__link, .button):where(:hover, :focus-visible),
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+1) :where(.elementor-button, .wp-block-button__link, .button):where(:hover, :focus-visible) {
	background: var(--asu-sun) !important;
	border-color: var(--asu-sun) !important;
	color: var(--asu-text-green) !important;
}

body.page-id-7 .asu-donate-method-card--bank,
body.page-id-7 .asu-donate-bank-details,
body.page-id-7 .asu-donate-method-card--ihelp {
	--asu-card-bg: var(--asu-white);
	--asu-card-text: var(--asu-charcoal);
	--asu-card-heading: var(--asu-text-green);
	--asu-card-link: var(--asu-forest);
}

body.page-id-7 .asu-donate-method-card--bizum,
body.page-id-7 .asu-donation-period-card,
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+2) {
	--asu-card-bg: linear-gradient(135deg, rgba(255, 204, 0, 0.98), rgba(255, 230, 128, 0.94));
	--asu-card-text: var(--asu-text-green);
	--asu-card-heading: var(--asu-text-green);
	--asu-card-link: var(--asu-text-green);
	border-color: rgba(12, 111, 72, 0.2) !important;
}

body.page-id-7 .asu-donate-method-card--card,
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+3) {
	--asu-card-bg: linear-gradient(135deg, var(--asu-forest), var(--asu-forest-2));
	--asu-card-text: rgba(255, 255, 255, 0.92);
	--asu-card-heading: var(--asu-sun);
	--asu-card-link: var(--asu-sun);
	border-color: rgba(255, 204, 0, 0.28) !important;
}

body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+1) {
	--asu-card-bg: var(--asu-white);
	--asu-card-text: var(--asu-charcoal);
	--asu-card-heading: var(--asu-text-green);
	--asu-card-link: var(--asu-forest);
}

body.page-id-7 .asu-donate-method-card--card .asu-general-donation-form,
body.page-id-7 .asu-donate-method-card--card .asu-general-donation-form :where(label, span, strong, p) {
	color: var(--asu-text-green) !important;
}

body.page-id-7 .asu-donate-method-card--card .asu-general-donation-form {
	background: rgba(255, 255, 255, 0.96);
	border-color: rgba(255, 204, 0, 0.34);
	grid-template-columns: minmax(0, 1fr);
	width: 100%;
}

body.page-id-7.elementor-page .elementor .e-con.asu-donate-method-card--card .asu-general-donation-form,
body.page-id-7.elementor-page .elementor .e-con.asu-donate-method-card--card .asu-general-donation-form :is(.elementor-widget-text-editor, .elementor-widget-text-editor p, p, label, span:not(.elementor-button-text), strong, small, em, input) {
	color: var(--asu-charcoal) !important;
	overflow-wrap: normal;
	word-break: normal;
}

body.page-id-7.elementor-page .elementor .e-con.asu-donate-method-card--card .asu-general-donation-form :is(h1, h2, h3, h4, h5, h6, .elementor-heading-title) {
	color: var(--asu-text-green) !important;
}

body.page-id-7.elementor-page .elementor .e-con.asu-donate-method-card--card .asu-general-donation-form .asu-general-donation-form__amount span:not(.elementor-button-text) {
	color: var(--asu-clay-dark) !important;
}

body.page-id-7 .asu-donate-method-card--bizum :where(.elementor-button, .wp-block-button__link, .button),
body.page-id-7 .asu-donation-period-card :where(.elementor-button, .wp-block-button__link, .button),
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+2) :where(.elementor-button, .wp-block-button__link, .button) {
	background: var(--asu-forest) !important;
	border-color: var(--asu-forest) !important;
	color: var(--asu-white) !important;
}

body.page-id-7 .asu-donate-method-card--bizum :where(.elementor-button, .wp-block-button__link, .button):where(:hover, :focus-visible),
body.page-id-7 .asu-donation-period-card :where(.elementor-button, .wp-block-button__link, .button):where(:hover, :focus-visible),
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+2) :where(.elementor-button, .wp-block-button__link, .button):where(:hover, :focus-visible) {
	background: var(--asu-white) !important;
	border-color: var(--asu-white) !important;
	color: var(--asu-text-green) !important;
}

body.page-id-7 .asu-donate-method-card--bizum .elementor-button *,
body.page-id-7 .asu-donation-period-card .elementor-button *,
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+2) .elementor-button *,
body.page-id-7 .asu-donate-method-card--bizum .wp-block-button__link *,
body.page-id-7 .asu-donation-period-card .wp-block-button__link *,
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+2) .wp-block-button__link * {
	color: var(--asu-white) !important;
}

body.page-id-7.elementor-page .elementor .e-con:is(.asu-dark-band, .asu-home-bg-green, .asu-cta-band) :is(.asu-donate-method-card--bizum, .asu-donation-period-card, .asu-donate-ihelp-list > *:nth-child(3n+2)) :is(.elementor-button, .wp-block-button__link, .button, .elementor-button-text) {
	color: var(--asu-white) !important;
}

body.page-id-7 .asu-donate-method-card--card :where(.elementor-button, .wp-block-button__link, .button),
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+3) :where(.elementor-button, .wp-block-button__link, .button) {
	background: var(--asu-sun) !important;
	border-color: var(--asu-sun) !important;
	color: var(--asu-text-green) !important;
}

body.page-id-7 .asu-donate-method-card--card .elementor-button *,
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+3) .elementor-button *,
body.page-id-7 .asu-donate-method-card--card .wp-block-button__link *,
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+3) .wp-block-button__link * {
	color: var(--asu-text-green) !important;
}

body.page-id-7.elementor-page .elementor .e-con:is(.asu-dark-band, .asu-home-bg-green, .asu-cta-band) :is(.asu-donate-method-card--card, .asu-donate-ihelp-list > *:nth-child(3n+3)) :is(.elementor-button, .wp-block-button__link, .button, .elementor-button-text) {
	color: var(--asu-text-green) !important;
}

body.page-id-7 .asu-donate-ihelp-list > * a {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-weight: 900;
	justify-content: center;
	line-height: 1.15;
	min-height: 48px;
	padding: 0.82rem 1.15rem;
	text-decoration: none;
}

body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+1) a,
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+2) a {
	background: var(--asu-forest) !important;
	border-color: var(--asu-forest) !important;
	color: var(--asu-white) !important;
}

body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+3) a {
	background: var(--asu-sun) !important;
	border-color: var(--asu-sun) !important;
	color: var(--asu-text-green) !important;
}

body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+1) a:where(:hover, :focus-visible),
body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+2) a:where(:hover, :focus-visible) {
	background: var(--asu-sun) !important;
	border-color: var(--asu-sun) !important;
	color: var(--asu-text-green) !important;
}

body.page-id-7 .asu-donate-ihelp-list > *:nth-child(3n+3) a:where(:hover, :focus-visible) {
	background: var(--asu-white) !important;
	border-color: var(--asu-white) !important;
	color: var(--asu-text-green) !important;
}

body.page-id-7.elementor-page .elementor .asu-donate-ihelp-list > *:nth-child(3n+1) a:not(.elementor-button):not(.wp-block-button__link):not(.button),
body.page-id-7.elementor-page .elementor .asu-donate-ihelp-list > *:nth-child(3n+2) a:not(.elementor-button):not(.wp-block-button__link):not(.button) {
	color: var(--asu-white) !important;
}

body.page-id-7.elementor-page .elementor .asu-donate-ihelp-list > *:nth-child(3n+3) a:not(.elementor-button):not(.wp-block-button__link):not(.button) {
	color: var(--asu-text-green) !important;
}

body.page-id-7 .asu-sponsorship-option-button.elementor-button,
body.page-id-7 .asu-sponsorship-option-button.wp-block-button__link {
	background: linear-gradient(135deg, var(--asu-forest), var(--asu-forest-2)) !important;
	border-color: rgba(255, 204, 0, 0.28) !important;
	color: var(--asu-white) !important;
}

body.page-id-7 .asu-sponsorship-option-button.elementor-button:where(:hover, :focus-visible),
body.page-id-7 .asu-sponsorship-option-button.wp-block-button__link:where(:hover, :focus-visible) {
	background: var(--asu-sun) !important;
	border-color: var(--asu-sun) !important;
	color: var(--asu-text-green) !important;
}

body.page-id-7 .asu-general-donation-form button,
body.page-id-7 .asu-general-donation-form .button,
body.page-id-7 .asu-general-donation-form input[type="submit"] {
	background: var(--asu-sun) !important;
	border-color: var(--asu-sun) !important;
	color: var(--asu-text-green) !important;
}

body.page-id-7.elementor-page .elementor .elementor-widget-button:not(.asu-donate-anchor-button) .elementor-button :is(.elementor-button-content-wrapper, .elementor-button-text),
body.page-id-7.elementor-page .elementor .elementor-widget-button:not(.asu-donate-anchor-button) .elementor-button span,
body.page-id-7 .asu-general-donation-form button *,
body.page-id-7 .asu-general-donation-form .button *,
body.page-id-7 .asu-general-donation-form input[type="submit"] * {
	color: inherit !important;
}

/* Compact oversized vertical rhythm without editing Elementor content. */
@media (min-width: 900px) {
	body:not(.page-id-7) .wp-site-blocks main > :is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band):not(.asu-hero):not(.asu-page-hero),
	body:not(.page-id-7) .wp-site-blocks .elementor > .e-con.e-parent:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band):not(.asu-hero):not(.asu-page-hero),
	body:not(.page-id-7).elementor-page .elementor > .e-con.e-parent:is(.asu-section, .asu-section-narrow, .asu-page-section, .asu-band, .asu-dark-band):not(.asu-hero):not(.asu-page-hero) {
		padding-bottom: clamp(2.8rem, 4.8vw, 5.4rem) !important;
		padding-top: clamp(2.8rem, 4.8vw, 5.4rem) !important;
	}

	body:not(.page-id-7) .wp-site-blocks main > :is(.asu-section-narrow),
	body:not(.page-id-7) .wp-site-blocks .elementor > .e-con.e-parent:is(.asu-section-narrow),
	body:not(.page-id-7).elementor-page .elementor > .e-con.e-parent:is(.asu-section-narrow) {
		padding-bottom: clamp(2.1rem, 3.8vw, 3.9rem) !important;
		padding-top: clamp(2.1rem, 3.8vw, 3.9rem) !important;
	}
}

body.page-id-7 {
	--asu-donate-section-y: clamp(1.5rem, 2.7vw, 2.7rem);
	--asu-donate-section-y-tight: clamp(1.1rem, 2.1vw, 1.8rem);
}

body.page-id-7 .wp-site-blocks main > :is(.asu-section, .asu-page-section, .asu-band, .asu-dark-band, .asu-donation-path-section, .asu-donate-closing),
body.page-id-7 .wp-site-blocks .elementor > .e-con.e-parent:is(.asu-section, .asu-page-section, .asu-band, .asu-dark-band, .asu-donation-path-section, .asu-donate-closing),
body.page-id-7.elementor-page .elementor > .e-con.e-parent:is(.asu-section, .asu-page-section, .asu-band, .asu-dark-band, .asu-donation-path-section, .asu-donate-closing) {
	--padding-bottom: var(--asu-donate-section-y) !important;
	--padding-top: var(--asu-donate-section-y) !important;
	padding-bottom: var(--asu-donate-section-y) !important;
	padding-top: var(--asu-donate-section-y) !important;
}

body.page-id-7 .wp-site-blocks main > :is(.asu-section-narrow),
body.page-id-7 .wp-site-blocks .elementor > .e-con.e-parent:is(.asu-section-narrow),
body.page-id-7.elementor-page .elementor > .e-con.e-parent:is(.asu-section-narrow) {
	--padding-bottom: var(--asu-donate-section-y-tight) !important;
	--padding-top: var(--asu-donate-section-y-tight) !important;
	padding-bottom: var(--asu-donate-section-y-tight) !important;
	padding-top: var(--asu-donate-section-y-tight) !important;
}

body.page-id-20 .wp-site-blocks main > :is(.asu-tororo-intro),
body.page-id-20 .wp-site-blocks .elementor > .e-con.e-parent.asu-tororo-intro,
body.page-id-20.elementor-page .elementor > .e-con.e-parent.asu-tororo-intro {
	--padding-top: calc(var(--asu-header-height) + clamp(3.2rem, 7vw, 5.2rem)) !important;
	padding-top: calc(var(--asu-header-height) + clamp(3.2rem, 7vw, 5.2rem)) !important;
}

@media (max-width: 720px) {
	body.page-id-20 .asu-tororo-intro > .alignwide,
	body.page-id-20.elementor-page .elementor .asu-tororo-intro > .e-con.alignwide,
	body.page-id-20.elementor-page .elementor .asu-tororo-intro .asu-projects-copy,
	body.page-id-20.elementor-page .elementor .asu-tororo-intro .elementor-widget,
	body.page-id-20.elementor-page .elementor .asu-tororo-intro .elementor-widget-container,
	body.page-id-20.elementor-page .elementor .asu-tororo-intro :where(h1, p, .asu-lead) {
		max-width: calc(100vw - 5.5rem) !important;
		min-width: 0 !important;
		width: calc(100vw - 5.5rem) !important;
	}

	body.page-id-20 .asu-tororo-intro :where(p, .asu-lead) {
		display: block;
		hyphens: manual;
		overflow-wrap: anywhere;
		text-align: left;
		word-break: normal;
		white-space: normal;
	}
}

body.page-id-7 .wp-site-blocks main > :is(.asu-donate-overview, .asu-donate-specific-overview),
body.page-id-7 .wp-site-blocks .elementor > .e-con.e-parent:is(.asu-donate-overview, .asu-donate-specific-overview),
body.page-id-7.elementor-page .elementor > .e-con.e-parent:is(.asu-donate-overview, .asu-donate-specific-overview) {
	--padding-bottom: var(--asu-donate-section-y) !important;
	--padding-top: calc(var(--asu-header-height) + var(--asu-donate-section-y)) !important;
	padding-bottom: var(--asu-donate-section-y) !important;
	padding-top: calc(var(--asu-header-height) + var(--asu-donate-section-y)) !important;
}

@media (max-width: 767px) {
	body.page-id-7 {
		--asu-donate-section-y: clamp(1.05rem, 4vw, 1.45rem);
		--asu-donate-section-y-tight: clamp(0.9rem, 3.5vw, 1.2rem);
	}
}

/* Donation option grids: 3 in one row, 4 in two rows, or 3 + 1 when one card is long. */
@media (min-width: 900px) {
	body.page-id-7 .asu-sponsorship-options-grid,
	body.page-id-7.elementor-page .elementor .e-con.asu-sponsorship-options-grid,
	body.page-id-7 .asu-donate-ihelp-list {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	body.page-id-7 .asu-donation-period-grid:has(> :nth-child(4)),
	body.page-id-7.elementor-page .elementor .e-con.asu-donation-period-grid:has(> :nth-child(4)) {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.page-id-7 .asu-donate-method-grid:has(> :nth-child(4)):not(:has(> .asu-donate-method-card--ihelp)),
	body.page-id-7.elementor-page .elementor .e-con.asu-donate-method-grid:has(> :nth-child(4)):not(:has(> .asu-donate-method-card--ihelp)) {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.page-id-7 .asu-donate-method-grid:has(> .asu-donate-method-card--ihelp),
	body.page-id-7.elementor-page .elementor .e-con.asu-donate-method-grid:has(> .asu-donate-method-card--ihelp) {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	body.page-id-7 .asu-donate-method-grid > .asu-donate-method-card--ihelp,
	body.page-id-7.elementor-page .elementor .e-con.asu-donate-method-grid > .asu-donate-method-card--ihelp {
		grid-column: 1 / -1 !important;
	}

	body.page-id-7 .asu-donate-serendipity-options,
	body.page-id-7.elementor-page .elementor .e-con.asu-donate-serendipity-options {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

/* Contrast guardrails for light cards nested inside dark/green sections. */
.wp-site-blocks :where(.asu-card, .asu-program-card, .asu-help-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-spain-help-card, .asu-collab-option-card, .asu-projects-timeline-card, .asu-projects-stat-card, .asu-stat-card, .asu-testimonial-card, .asu-shop-category-card, .asu-shop-product-card, .asu-shop-empty, .asu-home-shop-card),
body.elementor-page .elementor :where(.e-con.asu-card, .e-con.asu-program-card, .e-con.asu-help-card, .e-con.asu-value-card, .e-con.asu-impact-card, .e-con.asu-team-card, .e-con.asu-spain-help-card, .e-con.asu-collab-option-card, .e-con.asu-projects-timeline-card, .e-con.asu-projects-stat-card, .e-con.asu-stat-card, .e-con.asu-testimonial-card, .e-con.asu-shop-category-card, .e-con.asu-shop-product-card, .e-con.asu-shop-empty),
body.elementor-page .elementor :where(.asu-home-shop-card) {
	background: rgba(255, 255, 255, 0.96) !important;
	color: var(--asu-charcoal) !important;
}

.wp-site-blocks :where(.asu-card, .asu-program-card, .asu-help-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-spain-help-card, .asu-collab-option-card, .asu-projects-timeline-card, .asu-projects-stat-card, .asu-stat-card, .asu-testimonial-card, .asu-shop-category-card, .asu-shop-product-card, .asu-shop-empty, .asu-home-shop-card) :where(.elementor-widget-container, .elementor-widget-text-editor, .elementor-widget-text-editor p, p, li, span:not(.elementor-button-text), strong, small, em),
body.elementor-page .elementor :where(.e-con.asu-card, .e-con.asu-program-card, .e-con.asu-help-card, .e-con.asu-value-card, .e-con.asu-impact-card, .e-con.asu-team-card, .e-con.asu-spain-help-card, .e-con.asu-collab-option-card, .e-con.asu-projects-timeline-card, .e-con.asu-projects-stat-card, .e-con.asu-stat-card, .e-con.asu-testimonial-card, .e-con.asu-shop-category-card, .e-con.asu-shop-product-card, .e-con.asu-shop-empty) :where(.elementor-widget-container, .elementor-widget-text-editor, .elementor-widget-text-editor p, p, li, span:not(.elementor-button-text), strong, small, em),
body.elementor-page .elementor :where(.asu-home-shop-card) :where(.elementor-widget-container, .elementor-widget-text-editor, .elementor-widget-text-editor p, p, li, span:not(.elementor-button-text), strong, small, em) {
	color: var(--asu-charcoal) !important;
}

.wp-site-blocks :where(.asu-card, .asu-program-card, .asu-help-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-spain-help-card, .asu-collab-option-card, .asu-projects-timeline-card, .asu-projects-stat-card, .asu-stat-card, .asu-testimonial-card, .asu-shop-category-card, .asu-shop-product-card, .asu-shop-empty, .asu-home-shop-card) :where(h1, h2, h3, h4, h5, h6, .elementor-heading-title, a:not(.elementor-button):not(.wp-block-button__link):not(.button)),
body.elementor-page .elementor :where(.e-con.asu-card, .e-con.asu-program-card, .e-con.asu-help-card, .e-con.asu-value-card, .e-con.asu-impact-card, .e-con.asu-team-card, .e-con.asu-spain-help-card, .e-con.asu-collab-option-card, .e-con.asu-projects-timeline-card, .e-con.asu-projects-stat-card, .e-con.asu-stat-card, .e-con.asu-testimonial-card, .e-con.asu-shop-category-card, .e-con.asu-shop-product-card, .e-con.asu-shop-empty) :where(h1, h2, h3, h4, h5, h6, .elementor-heading-title, a:not(.elementor-button):not(.wp-block-button__link):not(.button)),
body.elementor-page .elementor :where(.asu-home-shop-card) :where(h1, h2, h3, h4, h5, h6, .elementor-heading-title, a:not(.elementor-button):not(.wp-block-button__link):not(.button)) {
	color: var(--asu-text-green) !important;
}

.wp-site-blocks :where(.asu-card, .asu-program-card, .asu-help-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-spain-help-card, .asu-collab-option-card, .asu-projects-timeline-card, .asu-projects-stat-card, .asu-stat-card, .asu-testimonial-card, .asu-shop-category-card, .asu-shop-product-card, .asu-shop-empty, .asu-home-shop-card) :where(.asu-kicker),
body.elementor-page .elementor :where(.e-con.asu-card, .e-con.asu-program-card, .e-con.asu-help-card, .e-con.asu-value-card, .e-con.asu-impact-card, .e-con.asu-team-card, .e-con.asu-spain-help-card, .e-con.asu-collab-option-card, .e-con.asu-projects-timeline-card, .e-con.asu-projects-stat-card, .e-con.asu-stat-card, .e-con.asu-testimonial-card, .e-con.asu-shop-category-card, .e-con.asu-shop-product-card, .e-con.asu-shop-empty) :where(.asu-kicker),
body.elementor-page .elementor :where(.asu-home-shop-card) :where(.asu-kicker) {
	color: #8a6900 !important;
}

.wp-site-blocks :where(.asu-quote-panel, .asu-dark-band, .asu-home-bg-green) :where(.asu-story-quote),
body.elementor-page .elementor :where(.asu-quote-panel, .asu-dark-band, .asu-home-bg-green) :where(.asu-story-quote),
body.elementor-page .elementor :where(.asu-quote-panel, .asu-dark-band, .asu-home-bg-green) .elementor-widget-text-editor.asu-story-quote,
body.elementor-page .elementor :where(.asu-quote-panel, .asu-dark-band, .asu-home-bg-green) .elementor-widget-text-editor.asu-story-quote p.asu-story-quote {
	color: var(--asu-white) !important;
	text-shadow: 0 8px 18px rgba(5, 39, 30, 0.24);
}

.asu-donate-anchor-button .elementor-button,
.asu-donate-anchor-button .wp-block-button__link,
.asu-donate-anchor-button .elementor-button-text {
	color: var(--asu-sun) !important;
	-webkit-text-stroke: 0.7px var(--asu-forest-2);
	paint-order: stroke fill;
	text-shadow:
		0 1px 0 var(--asu-forest-2),
		1px 0 0 var(--asu-forest-2),
		-1px 0 0 var(--asu-forest-2),
		0 -1px 0 var(--asu-forest-2),
		0 8px 16px rgba(7, 92, 59, 0.18);
}

body.elementor-page .elementor :where(.asu-donation-path-section, .asu-donate-specific-section) :where(.asu-kicker, .asu-section-kicker-title, .wp-block-heading.asu-section-kicker-title, h1.asu-section-kicker-title, h2.asu-section-kicker-title, h3.asu-section-kicker-title, .asu-section-kicker-title .elementor-heading-title, .asu-section-kicker-title h1, .asu-section-kicker-title h2, .asu-section-kicker-title h3) {
	color: var(--asu-sun) !important;
	-webkit-text-stroke: 0.45px var(--asu-forest-2);
	paint-order: stroke fill;
	text-shadow:
		0 1px 0 var(--asu-forest-2),
		0 6px 14px rgba(7, 92, 59, 0.14);
}

body.elementor-page .elementor .asu-donate-anchor-button .elementor-button,
.wp-site-blocks .asu-donate-anchor-button .elementor-button,
.wp-site-blocks .asu-donate-anchor-button .wp-block-button__link {
	color: var(--asu-text-green) !important;
	-webkit-text-stroke: 0;
	text-shadow: none;
}

body.elementor-page .elementor .asu-donate-anchor-button .elementor-button-content-wrapper,
.wp-site-blocks .asu-donate-anchor-button .elementor-button-content-wrapper,
.wp-site-blocks .asu-donate-anchor-button .wp-block-button__link span {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0;
	box-shadow: none !important;
	max-width: 100%;
	padding: 0;
	width: auto;
}

body.elementor-page .elementor .asu-donate-anchor-button .elementor-button-text,
.wp-site-blocks .asu-donate-anchor-button .elementor-button-text,
.wp-site-blocks .asu-donate-anchor-button .wp-block-button__link span {
	color: var(--asu-sun) !important;
	-webkit-text-stroke: 0;
	text-shadow: 0 3px 10px rgba(5, 39, 30, 0.2);
}

body.elementor-page .elementor :is(.asu-donation-path-section, .asu-donate-specific-section) p.asu-kicker,
.wp-site-blocks :is(.asu-donation-path-section, .asu-donate-specific-section) p.asu-kicker {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0;
	box-shadow: none !important;
	color: var(--asu-sun) !important;
	display: block;
	padding: 0;
	width: auto;
	-webkit-text-stroke: 0;
	text-shadow: 0 3px 10px rgba(5, 39, 30, 0.18);
}

/* Justify readable copy only when the text block has enough horizontal room. */
.wp-site-blocks main :where(.elementor-widget-text-editor, .wp-block-list, .wp-block-quote, .wp-block-media-text__content),
body.elementor-page .elementor :where(.elementor-widget-text-editor) {
	container-name: asu-copy-flow;
	container-type: inline-size;
}

@supports (container-type: inline-size) {
	@media (min-width: 900px) {
		@container asu-copy-flow (min-width: 22rem) {
			:where(p, li) {
				hyphens: auto;
				overflow-wrap: break-word;
				text-align: justify;
				text-align-last: left;
				text-justify: inter-word;
			}
		}
	}

	@media (max-width: 899px) {
		@container asu-copy-flow (min-width: 19rem) {
			:where(p, li) {
				hyphens: auto;
				overflow-wrap: break-word;
				text-align: justify;
				text-align-last: left;
				text-justify: inter-word;
			}
		}
	}
}

@media (min-width: 900px) {
	.wp-site-blocks main :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band, .asu-dark-band) :where(.elementor-widget-text-editor p, p.wp-block-paragraph, .wp-block-list li):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-form-placeholder *, .asu-donate-anchor-grid *, .asu-home-help-grid *, .asu-spain-help-grid *, .asu-team-grid *, .asu-active-campaigns__grid *, .asu-campaign-use-grid *, .asu-campaign-donor-grid *, .asu-completed-projects-grid *, .asu-projects-pillar-grid *, .asu-projects-stat-grid *, .asu-collab-options-grid *, .asu-periodic-grid *, .asu-sponsorship-grid *, .asu-donation-period-grid *, .asu-donate-method-grid *, .asu-sponsorship-options-grid *, .asu-amount-grid *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-empty *, .asu-kicker, .asu-section-kicker-title *)),
	body.elementor-page .elementor :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band, .asu-dark-band) :where(.elementor-widget-text-editor p, p.wp-block-paragraph, .wp-block-list li):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-form-placeholder *, .asu-donate-anchor-grid *, .asu-home-help-grid *, .asu-spain-help-grid *, .asu-team-grid *, .asu-active-campaigns__grid *, .asu-campaign-use-grid *, .asu-campaign-donor-grid *, .asu-completed-projects-grid *, .asu-projects-pillar-grid *, .asu-projects-stat-grid *, .asu-collab-options-grid *, .asu-periodic-grid *, .asu-sponsorship-grid *, .asu-donation-period-grid *, .asu-donate-method-grid *, .asu-sponsorship-options-grid *, .asu-amount-grid *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-empty *, .asu-kicker, .asu-section-kicker-title *)) {
		hyphens: auto !important;
		overflow-wrap: break-word;
		text-align: justify !important;
		text-align-last: left !important;
		text-justify: inter-word;
	}
}

@media (max-width: 899px) {
	.wp-site-blocks main :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band, .asu-dark-band) :where(.elementor-widget-text-editor p, p.wp-block-paragraph, .wp-block-list li):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-form-placeholder *, .asu-donate-anchor-grid *, .asu-home-help-grid *, .asu-spain-help-grid *, .asu-team-grid *, .asu-active-campaigns__grid *, .asu-campaign-use-grid *, .asu-campaign-donor-grid *, .asu-completed-projects-grid *, .asu-projects-pillar-grid *, .asu-projects-stat-grid *, .asu-collab-options-grid *, .asu-periodic-grid *, .asu-sponsorship-grid *, .asu-donation-period-grid *, .asu-donate-method-grid *, .asu-sponsorship-options-grid *, .asu-amount-grid *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-empty *, .asu-kicker, .asu-section-kicker-title *)),
	body.elementor-page .elementor :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band, .asu-dark-band) :where(.elementor-widget-text-editor p, p.wp-block-paragraph, .wp-block-list li):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-form-placeholder *, .asu-donate-anchor-grid *, .asu-home-help-grid *, .asu-spain-help-grid *, .asu-team-grid *, .asu-active-campaigns__grid *, .asu-campaign-use-grid *, .asu-campaign-donor-grid *, .asu-completed-projects-grid *, .asu-projects-pillar-grid *, .asu-projects-stat-grid *, .asu-collab-options-grid *, .asu-periodic-grid *, .asu-sponsorship-grid *, .asu-donation-period-grid *, .asu-donate-method-grid *, .asu-sponsorship-options-grid *, .asu-amount-grid *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-empty *, .asu-kicker, .asu-section-kicker-title *)) {
		hyphens: auto !important;
		overflow-wrap: break-word;
		text-align: justify !important;
		text-align-last: left !important;
		text-justify: inter-word;
	}
}

.wp-site-blocks :where(.asu-hero, .asu-page-hero, .asu-site-header, .asu-site-footer, .wp-block-buttons, .elementor-widget-button, .asu-form-placeholder, .asu-donate-anchor-grid) :where(p, li),
body.elementor-page .elementor :where(.asu-hero, .asu-page-hero, .asu-site-header, .asu-site-footer, .wp-block-buttons, .elementor-widget-button, .asu-form-placeholder, .asu-donate-anchor-grid) :where(p, li) {
	hyphens: manual;
	text-align: inherit;
	text-align-last: auto;
}

@media (min-width: 900px) {
	.wp-site-blocks :where(.asu-home-help-grid, .asu-spain-help-grid, .asu-team-grid, .asu-active-campaigns__grid, .asu-campaign-use-grid, .asu-campaign-donor-grid, .asu-completed-projects-grid, .asu-projects-pillar-grid, .asu-projects-stat-grid, .asu-collab-options-grid, .asu-periodic-grid, .asu-sponsorship-grid, .asu-donation-period-grid, .asu-donate-method-grid, .asu-sponsorship-options-grid, .asu-amount-grid, .asu-card, .asu-program-card, .asu-help-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-testimonial-card, .asu-shop-product-card, .asu-home-shop-card) :where(p, li),
	body.elementor-page .elementor :where(.asu-home-help-grid, .asu-spain-help-grid, .asu-team-grid, .asu-active-campaigns__grid, .asu-campaign-use-grid, .asu-campaign-donor-grid, .asu-completed-projects-grid, .asu-projects-pillar-grid, .asu-projects-stat-grid, .asu-collab-options-grid, .asu-periodic-grid, .asu-sponsorship-grid, .asu-donation-period-grid, .asu-donate-method-grid, .asu-sponsorship-options-grid, .asu-amount-grid, .asu-card, .asu-program-card, .asu-help-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-testimonial-card, .asu-shop-product-card, .asu-home-shop-card) :where(p, li) {
		hyphens: manual;
		text-align: start;
		text-align-last: auto;
	}
}

body.home .wp-site-blocks .elementor .e-con.asu-section:has(.asu-help-card),
body.home.elementor-page .elementor .e-con.asu-section:has(.asu-help-card),
body.home .wp-site-blocks .elementor .elementor-element-bed81d6,
body.home.elementor-page .elementor .elementor-element-bed81d6 {
	text-align: center;
}

body.home .wp-site-blocks .elementor .e-con.asu-section:has(.asu-help-card) :where(.asu-section-kicker-title, .asu-promoted-kicker-title, .elementor-heading-title, .elementor-widget-text-editor, .elementor-widget-text-editor p, p, li),
body.home.elementor-page .elementor .e-con.asu-section:has(.asu-help-card) :where(.asu-section-kicker-title, .asu-promoted-kicker-title, .elementor-heading-title, .elementor-widget-text-editor, .elementor-widget-text-editor p, p, li),
body.home .wp-site-blocks .elementor .elementor-element-bed81d6 :where(.asu-section-kicker-title, .asu-promoted-kicker-title, .elementor-heading-title, .elementor-widget-text-editor, .elementor-widget-text-editor p, p, li),
body.home.elementor-page .elementor .elementor-element-bed81d6 :where(.asu-section-kicker-title, .asu-promoted-kicker-title, .elementor-heading-title, .elementor-widget-text-editor, .elementor-widget-text-editor p, p, li) {
	text-align: center !important;
	text-align-last: center;
}

body.home .wp-site-blocks .elementor .e-con.asu-section:has(.asu-help-card) :where(.asu-help-card),
body.home.elementor-page .elementor .e-con.asu-section:has(.asu-help-card) :where(.asu-help-card),
body.home .wp-site-blocks .elementor .elementor-element-bed81d6 :where(.asu-help-card),
body.home.elementor-page .elementor .elementor-element-bed81d6 :where(.asu-help-card) {
	align-items: center !important;
	text-align: center;
}

body.home .wp-site-blocks .elementor .e-con.asu-section:has(.asu-help-card) :where(.asu-help-card .elementor-widget-button),
body.home.elementor-page .elementor .e-con.asu-section:has(.asu-help-card) :where(.asu-help-card .elementor-widget-button),
body.home .wp-site-blocks .elementor .elementor-element-bed81d6 :where(.asu-help-card .elementor-widget-button),
body.home.elementor-page .elementor .elementor-element-bed81d6 :where(.asu-help-card .elementor-widget-button) {
	align-self: center;
}

.asu-home-shop-showcase::before,
.asu-home-shop-showcase::after {
	width: clamp(5.5rem, 14vw, 12rem) !important;
}

.asu-home-shop-showcase::before {
	background: linear-gradient(90deg, rgba(255, 243, 191, 1) 0%, rgba(255, 243, 191, 0.92) 24%, rgba(255, 243, 191, 0.58) 52%, rgba(255, 243, 191, 0.22) 78%, rgba(255, 243, 191, 0) 100%) !important;
}

.asu-home-bg-green .asu-home-shop-showcase::before {
	background: linear-gradient(90deg, rgba(12, 111, 72, 1) 0%, rgba(12, 111, 72, 0.92) 24%, rgba(12, 111, 72, 0.58) 52%, rgba(12, 111, 72, 0.22) 78%, rgba(12, 111, 72, 0) 100%) !important;
}

.asu-home-shop-showcase::after {
	background: linear-gradient(270deg, rgba(255, 243, 191, 1) 0%, rgba(255, 243, 191, 0.92) 24%, rgba(255, 243, 191, 0.58) 52%, rgba(255, 243, 191, 0.22) 78%, rgba(255, 243, 191, 0) 100%) !important;
}

.asu-home-bg-green .asu-home-shop-showcase::after {
	background: linear-gradient(270deg, rgba(12, 111, 72, 1) 0%, rgba(12, 111, 72, 0.92) 24%, rgba(12, 111, 72, 0.58) 52%, rgba(12, 111, 72, 0.22) 78%, rgba(12, 111, 72, 0) 100%) !important;
}

@media print {
	.asu-site-header,
	.asu-site-footer,
	.asu-page-hero,
	.wp-block-buttons {
		display: none !important;
	}

	body {
		background: #ffffff;
		color: #000000;
	}

	.asu-receipt {
		border: 1px solid #000000;
		box-shadow: none;
		max-width: none;
	}
}

/* Codex repair layer: image/content audit cleanup. */
.wp-site-blocks main :where(.elementor-widget-text-editor p, p.wp-block-paragraph, li),
body.elementor-page .elementor :where(.elementor-widget-text-editor p, p.wp-block-paragraph, li) {
	hyphens: manual !important;
	overflow-wrap: anywhere;
	text-align: start !important;
	text-align-last: auto !important;
	text-justify: auto !important;
	word-break: normal;
	word-spacing: normal !important;
}

@media (min-width: 960px) {
	.wp-site-blocks main :where(.asu-copy-justify p),
	body.elementor-page .elementor :where(.asu-copy-justify p) {
		hyphens: auto !important;
		text-align: justify !important;
		text-align-last: left !important;
		text-justify: inter-word !important;
	}
}

.asu-repair-section {
	padding: clamp(3.25rem, 7vw, 6.5rem) 0;
	position: relative;
}

.asu-bg-white {
	background: var(--asu-warm-white, #fffaf0);
}

.asu-bg-green {
	background: var(--asu-forest, #0c6f48);
	color: var(--asu-white, #fff);
}

.asu-bg-green :where(.elementor-heading-title, h1, h2, h3) {
	color: var(--asu-sun, #ffcc00) !important;
}

.asu-bg-green :where(p, li) {
	color: rgba(255, 255, 255, 0.92) !important;
}

.asu-repair-inner {
	margin-inline: auto;
	max-width: min(80vw, 1180px);
	width: min(80vw, 1180px);
}

.asu-repair-split {
	align-items: center;
	display: grid !important;
	gap: clamp(2rem, 5vw, 4rem);
	grid-template-columns: minmax(0, 1fr) minmax(280px, 0.88fr);
}

.asu-repair-copy {
	gap: 1.15rem;
	max-width: 680px;
}

.asu-repair-copy .elementor-widget-text-editor p,
.asu-repair-inner > .elementor-widget-text-editor p {
	font-size: clamp(1rem, 1.05vw, 1.12rem);
	line-height: 1.78;
	margin: 0 0 0.95rem;
}

.asu-section-kicker-title .elementor-heading-title,
.asu-section-kicker-title {
	color: var(--asu-forest, #0c6f48) !important;
	font-size: clamp(2.45rem, 5vw, 4.6rem) !important;
	letter-spacing: 0 !important;
	line-height: 0.95 !important;
	margin: 0 0 1.3rem !important;
	text-transform: uppercase;
}

.asu-bg-green .asu-section-kicker-title .elementor-heading-title,
.asu-bg-green .asu-section-kicker-title {
	color: var(--asu-sun, #ffcc00) !important;
}

.asu-repair-photo img,
.asu-gallery-image img {
	aspect-ratio: 4 / 3;
	border-radius: 12px;
	box-shadow: 0 22px 52px rgba(6, 54, 39, 0.2);
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.asu-repair-card-grid {
	display: grid !important;
	gap: clamp(1rem, 2.5vw, 1.5rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.asu-card,
.asu-help-card,
.asu-donation-card,
.asu-shop-product-card,
.asu-home-shop-card,
.asu-gallery-card {
	background: rgba(255, 255, 255, 0.97) !important;
	border: 1px solid rgba(12, 111, 72, 0.18);
	border-radius: 14px;
	box-shadow: 0 18px 42px rgba(7, 92, 59, 0.12);
	color: var(--asu-charcoal, #14231d) !important;
	overflow: hidden;
}

.asu-card :where(h1, h2, h3, h4, .elementor-heading-title),
.asu-help-card :where(h1, h2, h3, h4, .elementor-heading-title),
.asu-donation-card :where(h1, h2, h3, h4, .elementor-heading-title),
.asu-shop-product-card :where(h1, h2, h3, h4, .elementor-heading-title),
.asu-home-shop-card :where(h1, h2, h3, h4, .elementor-heading-title) {
	color: var(--asu-forest, #0c6f48) !important;
}

.asu-card :where(p, li),
.asu-help-card :where(p, li),
.asu-donation-card :where(p, li),
.asu-shop-product-card :where(p, li),
.asu-home-shop-card :where(p, li) {
	color: var(--asu-charcoal, #14231d) !important;
}

.asu-help-card,
.asu-card {
	display: flex !important;
	flex-direction: column;
	gap: 1rem;
	min-height: 230px;
	padding: clamp(1.2rem, 2.5vw, 1.75rem);
}

.asu-home-help-section {
	text-align: center;
}

.asu-home-help-section .asu-repair-card-grid {
	margin-top: 1.5rem;
}

.asu-home-help-section .asu-card-actions {
	justify-content: center;
	margin-top: auto;
}

.asu-repair-actions,
.asu-card-actions,
.asu-section-actions {
	align-items: center;
	display: flex !important;
	flex-wrap: wrap;
	gap: 0.8rem;
}

.asu-home-hero--photo {
	align-items: center;
	background-image:
		linear-gradient(180deg, rgba(5, 38, 29, 0.48), rgba(5, 38, 29, 0.38)),
		url("/wp-content/uploads/2026/05/IMG_1510-scaled.jpg") !important;
	background-position: center center !important;
	background-size: cover !important;
	display: flex;
	min-height: 100svh;
	overflow: hidden;
	padding: 7rem 1.5rem 5rem;
	text-align: center;
}

.asu-home-hero--photo::before {
	background: radial-gradient(circle at center, rgba(12, 111, 72, 0.12), rgba(5, 38, 29, 0.2) 58%, rgba(5, 38, 29, 0.38));
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.asu-repair-hero__content {
	align-items: center;
	color: var(--asu-white, #fff);
	margin-inline: auto;
	max-width: min(70vw, 980px);
	position: relative;
	width: min(70vw, 980px);
	z-index: 1;
}

.asu-home-hero-title .elementor-heading-title {
	color: var(--asu-sun, #ffcc00) !important;
	font-size: clamp(4rem, 10vw, 8.4rem) !important;
	letter-spacing: 0 !important;
	line-height: 0.9 !important;
	margin: 0;
	text-shadow: 0 10px 30px rgba(0, 0, 0, 0.32);
	text-transform: uppercase;
}

.asu-hero-quote {
	color: var(--asu-sun, #ffcc00) !important;
	font-family: var(--asu-font-heading, "Bebas Neue", Impact, sans-serif);
	font-size: clamp(2rem, 4vw, 4.2rem);
	letter-spacing: 0;
	line-height: 1;
	margin: 1.6rem 0 0.6rem;
	text-shadow: 0 8px 22px rgba(0, 0, 0, 0.28);
}

.asu-hero-author {
	color: rgba(255, 255, 255, 0.94) !important;
	font-weight: 800;
	margin: 0;
}

.asu-hero-actions {
	display: none !important;
	justify-content: center;
	margin-top: 1.6rem;
}

.asu-donate-choice-grid {
	align-items: end;
	display: grid;
	gap: 0;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: clamp(2rem, 4vw, 3.5rem);
	position: relative;
}

.asu-donate-choice {
	align-items: center;
	color: var(--asu-sun, #ffcc00) !important;
	display: flex;
	flex-direction: column;
	justify-content: end;
	margin-left: -1.2rem;
	min-height: 210px;
	text-decoration: none !important;
	transition: transform 180ms ease, filter 180ms ease;
}

.asu-donate-choice:first-child {
	margin-left: 0;
}

.asu-donate-choice:hover,
.asu-donate-choice:focus-visible {
	filter: drop-shadow(0 18px 24px rgba(7, 92, 59, 0.2));
	transform: translateY(-6px) scale(1.03);
}

.asu-choice-figure {
	border-color: var(--asu-forest, #0c6f48);
	color: var(--asu-forest, #0c6f48);
	display: block;
	height: 145px;
	position: relative;
	width: 185px;
}

.asu-choice-figure--card {
	border: 8px solid currentColor;
	border-radius: 22px;
	transform: rotate(-2deg);
}

.asu-choice-figure--card::before,
.asu-choice-figure--card::after {
	background: currentColor;
	border-radius: 999px;
	content: "";
	height: 8px;
	left: 22px;
	position: absolute;
	right: 22px;
	top: 34px;
}

.asu-choice-figure--card::after {
	left: 26px;
	right: auto;
	top: 78px;
	width: 58px;
}

.asu-choice-figure--child::before {
	border: 8px solid currentColor;
	border-radius: 50%;
	content: "";
	height: 66px;
	left: 50%;
	position: absolute;
	top: 4px;
	transform: translateX(-50%);
	width: 66px;
}

.asu-choice-figure--child::after {
	border: 8px solid currentColor;
	border-radius: 48% 48% 18% 18%;
	content: "";
	height: 72px;
	left: 50%;
	position: absolute;
	top: 70px;
	transform: translateX(-50%);
	width: 118px;
}

.asu-choice-figure--child span::before,
.asu-choice-figure--child span::after {
	background: currentColor;
	border-radius: 50%;
	content: "";
	height: 18px;
	position: absolute;
	top: 0;
	width: 18px;
}

.asu-choice-figure--child span::before {
	left: 62px;
}

.asu-choice-figure--child span::after {
	right: 62px;
}

.asu-choice-figure--clock {
	border: 8px solid currentColor;
	border-radius: 50%;
	width: 150px;
}

.asu-choice-figure--clock::before,
.asu-choice-figure--clock::after {
	background: currentColor;
	border-radius: 999px;
	content: "";
	left: 50%;
	position: absolute;
	top: 50%;
	transform-origin: left center;
}

.asu-choice-figure--clock::before {
	height: 8px;
	transform: rotate(-90deg);
	width: 48px;
}

.asu-choice-figure--clock::after {
	height: 8px;
	transform: rotate(20deg);
	width: 42px;
}

.asu-choice-figure--school::before {
	border-color: transparent transparent currentColor;
	border-style: solid;
	border-width: 0 92px 58px;
	content: "";
	left: 0;
	position: absolute;
	top: 0;
}

.asu-choice-figure--school::after {
	border: 8px solid currentColor;
	border-top: 0;
	content: "";
	height: 78px;
	left: 18px;
	position: absolute;
	top: 58px;
	width: 148px;
}

.asu-choice-figure--school span::before {
	border: 7px solid currentColor;
	border-bottom: 0;
	content: "";
	height: 38px;
	left: 70px;
	position: absolute;
	top: 98px;
	width: 36px;
}

.asu-choice-label {
	color: var(--asu-sun, #ffcc00) !important;
	font-family: var(--asu-font-heading, "Bebas Neue", Impact, sans-serif);
	font-size: clamp(1.7rem, 2.35vw, 2.55rem);
	letter-spacing: 0;
	line-height: 0.95;
	margin-top: 0.2rem;
	max-width: 12rem;
	text-align: center;
	text-shadow: 0 2px 0 var(--asu-forest, #0c6f48);
	text-transform: uppercase;
}

.asu-donate-method-grid,
.asu-sponsorship-options-grid {
	display: grid !important;
	gap: clamp(1rem, 2.4vw, 1.4rem);
	margin-top: 1.2rem;
}

.asu-donate-method-grid.is-three,
.asu-sponsorship-options-grid.is-three {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.asu-donate-method-grid.is-two {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asu-donate-method-grid.is-four {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asu-donation-card {
	padding: clamp(1.25rem, 2.5vw, 1.8rem);
}

.asu-donation-card .elementor-heading-title {
	font-size: clamp(1.55rem, 2vw, 2.15rem) !important;
	line-height: 1 !important;
}

.asu-general-donation-form {
	align-items: end;
	background: rgba(255, 255, 255, 0.96) !important;
	border: 1px solid rgba(12, 111, 72, 0.2);
	border-radius: 14px;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	padding: 1.1rem;
}

.asu-general-donation-form__field {
	display: grid;
	gap: 0.4rem;
}

.asu-general-donation-form__field > span:first-child {
	color: var(--asu-forest, #0c6f48) !important;
	font-size: 0.95rem;
	font-weight: 900;
}

.asu-general-donation-form__amount {
	align-items: center;
	background: var(--asu-cream, #fff8df);
	border: 1px solid rgba(12, 111, 72, 0.22);
	border-radius: 999px;
	color: var(--asu-forest, #0c6f48) !important;
	display: flex;
	gap: 0.45rem;
	min-height: 52px;
	padding: 0 0.9rem;
}

.asu-general-donation-form input[type="number"] {
	background: transparent;
	border: 0;
	font-size: 1rem;
	max-width: 8.5rem;
	min-width: 0;
}

.asu-general-donation-form input::placeholder {
	font-size: 0.95rem;
}

.asu-shop-product-grid {
	display: grid;
	gap: clamp(1rem, 2vw, 1.4rem);
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.asu-shop-product-card__image,
.asu-home-shop-card__image {
	background: var(--asu-warm-white, #fffaf0);
	display: block;
}

.asu-shop-product-card__image img,
.asu-home-shop-card__image img {
	aspect-ratio: 1 / 1;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.asu-shop-product-card__body,
.asu-home-shop-card__body {
	padding: 1rem;
}

.asu-shop-product-card__body h3,
.asu-home-shop-card__body h3 {
	font-size: 1.35rem;
	line-height: 1;
	margin: 0 0 0.55rem;
}

.asu-shop-product-card__body a,
.asu-home-shop-card__body a {
	color: var(--asu-forest, #0c6f48) !important;
	text-decoration: none;
}

.asu-shop-product-card__meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
	justify-content: space-between;
	margin-top: 1rem;
}

.asu-shop-product-card__price {
	color: var(--asu-forest, #0c6f48) !important;
	font-weight: 900;
}

.asu-home-shop-showcase {
	margin: 1.75rem 0;
	overflow: hidden;
	position: relative;
}

.asu-home-shop-showcase::before,
.asu-home-shop-showcase::after {
	content: "";
	inset-block: 0;
	pointer-events: none;
	position: absolute;
	width: clamp(72px, 9vw, 150px);
	z-index: 2;
}

.asu-home-shop-showcase::before {
	background: linear-gradient(90deg, var(--asu-forest, #0c6f48) 0%, rgba(12, 111, 72, 0) 100%) !important;
	left: 0;
}

.asu-home-shop-showcase::after {
	background: linear-gradient(270deg, var(--asu-forest, #0c6f48) 0%, rgba(12, 111, 72, 0) 100%) !important;
	right: 0;
}

.asu-home-shop-showcase__track {
	animation: asu-shop-marquee 34s linear infinite;
	display: flex;
	gap: 1rem;
	width: max-content;
}

.asu-home-shop-card {
	flex: 0 0 250px;
}

@keyframes asu-shop-marquee {
	from {
		transform: translateX(0);
	}

	to {
		transform: translateX(-50%);
	}
}

.asu-gallery-grid {
	display: grid !important;
	gap: clamp(1rem, 2.2vw, 1.5rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.asu-gallery-card {
	padding: 0;
}

.asu-gallery-card .elementor-widget-image,
.asu-gallery-card .elementor-widget-container {
	height: 100%;
}

.asu-gallery-image img {
	aspect-ratio: 4 / 3;
	border-radius: 14px;
	box-shadow: none;
	height: 100%;
}

body.home .asu-hero-donate-action {
	display: none;
}

@media (max-width: 900px) {
	.asu-repair-inner,
	.asu-repair-hero__content {
		max-width: 90vw;
		width: 90vw;
	}

	.asu-repair-split,
	.asu-repair-card-grid,
	.asu-shop-product-grid,
	.asu-gallery-grid,
	.asu-donate-method-grid.is-three,
	.asu-donate-method-grid.is-two,
	.asu-donate-method-grid.is-four,
	.asu-sponsorship-options-grid.is-three {
		grid-template-columns: 1fr;
	}

	.asu-donate-choice-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 1rem;
	}

	.asu-donate-choice {
		margin-left: 0;
		min-height: 185px;
	}

	.asu-choice-figure {
		transform: scale(0.85);
	}

	.asu-home-hero--photo {
		min-height: 100svh;
		padding-top: 6rem;
	}

	.asu-hero-actions {
		display: flex !important;
	}

	body.home .asu-hero-donate-action {
		display: block;
	}
}

@media (max-width: 560px) {
	.asu-donate-choice-grid {
		grid-template-columns: 1fr;
	}

	.asu-donate-choice {
		margin-top: -0.3rem;
	}

	.asu-choice-label {
		font-size: 2rem;
	}
}

body.post-type-archive-product .wp-site-blocks > main,
body.woocommerce-shop .wp-site-blocks > main {
	background: var(--asu-warm-white, #fffaf0);
	padding: clamp(7rem, 10vw, 9rem) min(10vw, 7rem) clamp(4rem, 8vw, 7rem);
}

body.post-type-archive-product .woocommerce-products-header,
body.woocommerce-shop .woocommerce-products-header {
	margin-inline: auto;
	max-width: min(80vw, 1180px);
	width: min(80vw, 1180px);
}

body.post-type-archive-product .woocommerce-products-header__title,
body.woocommerce-shop .woocommerce-products-header__title {
	color: var(--asu-forest, #0c6f48) !important;
	font-family: var(--asu-font-heading, "Bebas Neue", Impact, sans-serif);
	font-size: clamp(3.5rem, 8vw, 6.8rem);
	line-height: 0.9;
	margin: 0 0 2rem;
	text-transform: uppercase;
}

body.post-type-archive-product .woocommerce-notices-wrapper,
body.post-type-archive-product .woocommerce-result-count,
body.post-type-archive-product .woocommerce-ordering,
body.post-type-archive-product ul.products,
body.woocommerce-shop .woocommerce-notices-wrapper,
body.woocommerce-shop .woocommerce-result-count,
body.woocommerce-shop .woocommerce-ordering,
body.woocommerce-shop ul.products {
	margin-inline: auto;
	max-width: min(80vw, 1180px);
	width: min(80vw, 1180px);
}

body.post-type-archive-product ul.products,
body.woocommerce-shop ul.products {
	display: grid !important;
	gap: clamp(1.25rem, 2.4vw, 2rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	padding: 0 !important;
}

body.post-type-archive-product ul.products li.product,
body.woocommerce-shop ul.products li.product {
	background: rgba(255, 255, 255, 0.98);
	border: 1px solid rgba(12, 111, 72, 0.16);
	border-radius: 14px;
	box-shadow: 0 18px 42px rgba(7, 92, 59, 0.12);
	float: none !important;
	margin: 0 !important;
	overflow: hidden;
	padding: 0 0 1.2rem !important;
	text-align: center;
	width: auto !important;
}

body.post-type-archive-product ul.products li.product img,
body.woocommerce-shop ul.products li.product img {
	aspect-ratio: 1 / 1;
	display: block;
	height: auto;
	margin: 0 0 1rem !important;
	object-fit: cover;
	width: 100%;
}

body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title {
	color: var(--asu-forest, #0c6f48) !important;
	font-family: var(--asu-font-heading, "Bebas Neue", Impact, sans-serif);
	font-size: 1.4rem;
	line-height: 1;
	padding: 0 1rem !important;
	text-transform: uppercase;
}

body.post-type-archive-product ul.products li.product .price,
body.woocommerce-shop ul.products li.product .price {
	color: var(--asu-charcoal, #14231d) !important;
	font-weight: 900;
}

body.post-type-archive-product ul.products li.product .button,
body.woocommerce-shop ul.products li.product .button {
	background: var(--asu-sun, #ffcc00) !important;
	border: 0 !important;
	border-radius: 999px;
	color: var(--asu-forest, #0c6f48) !important;
	font-weight: 900;
	margin-top: 0.75rem !important;
	padding: 0.82rem 1.25rem;
}

@media (max-width: 900px) {
	body.post-type-archive-product .wp-site-blocks > main,
	body.woocommerce-shop .wp-site-blocks > main {
		padding-inline: 5vw;
	}

	body.post-type-archive-product .woocommerce-products-header,
	body.post-type-archive-product .woocommerce-notices-wrapper,
	body.post-type-archive-product .woocommerce-result-count,
	body.post-type-archive-product .woocommerce-ordering,
	body.post-type-archive-product ul.products,
	body.woocommerce-shop .woocommerce-products-header,
	body.woocommerce-shop .woocommerce-notices-wrapper,
	body.woocommerce-shop .woocommerce-result-count,
	body.woocommerce-shop .woocommerce-ordering,
	body.woocommerce-shop ul.products {
		max-width: 90vw;
		width: 90vw;
	}

body.post-type-archive-product ul.products,
body.woocommerce-shop ul.products {
	grid-template-columns: 1fr;
}
}

/* Production final polish: width, copy flow, donate headings and shop fades. */
@media (min-width: 1024px) {
	body:not(.single-product) .wp-site-blocks main > :where(.e-con, .elementor-section, .wp-block-group, .asu-section, .asu-page-section, .asu-band, .asu-dark-band),
	body:not(.single-product).elementor-page .elementor > :where(.e-con, .elementor-section, .wp-block-group, .asu-section, .asu-page-section, .asu-band, .asu-dark-band) {
		max-width: none !important;
		width: 100% !important;
	}

	body:not(.single-product) :where(.e-con-boxed > .e-con-inner, .elementor-section-boxed > .elementor-container, .asu-page-section__inner, .asu-section-inner, .asu-inner, .asu-repair-inner, .alignwide) {
		max-width: min(80vw, 1320px) !important;
		width: min(80vw, 1320px) !important;
	}
}

@media (max-width: 1023px) {
	body:not(.single-product) :where(.e-con-boxed > .e-con-inner, .elementor-section-boxed > .elementor-container, .asu-page-section__inner, .asu-section-inner, .asu-inner, .asu-repair-inner, .alignwide) {
		max-width: 90vw !important;
		width: 90vw !important;
	}
}

@media (min-width: 900px) {
	.wp-site-blocks main :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band, .asu-dark-band, .asu-copy-justify) :where(.elementor-widget-text-editor p, p.wp-block-paragraph, p.asu-lead, .wp-block-list li, li):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-form-placeholder *, .asu-donate-anchor-grid *, .asu-home-help-grid *, .asu-spain-help-grid *, .asu-team-grid *, .asu-active-campaigns__grid *, .asu-campaign-use-grid *, .asu-campaign-donor-grid *, .asu-completed-projects-grid *, .asu-projects-pillar-grid *, .asu-projects-stat-grid *, .asu-collab-options-grid *, .asu-periodic-grid *, .asu-sponsorship-grid *, .asu-donation-period-grid *, .asu-donate-method-grid *, .asu-sponsorship-options-grid *, .asu-amount-grid *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-empty *, .asu-kicker, .asu-section-kicker-title *)),
	body.elementor-page .elementor :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band, .asu-dark-band, .asu-copy-justify) :where(.elementor-widget-text-editor p, p.wp-block-paragraph, p.asu-lead, .wp-block-list li, li):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-form-placeholder *, .asu-donate-anchor-grid *, .asu-home-help-grid *, .asu-spain-help-grid *, .asu-team-grid *, .asu-active-campaigns__grid *, .asu-campaign-use-grid *, .asu-campaign-donor-grid *, .asu-completed-projects-grid *, .asu-projects-pillar-grid *, .asu-projects-stat-grid *, .asu-collab-options-grid *, .asu-periodic-grid *, .asu-sponsorship-grid *, .asu-donation-period-grid *, .asu-donate-method-grid *, .asu-sponsorship-options-grid *, .asu-amount-grid *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-empty *, .asu-kicker, .asu-section-kicker-title *)) {
		hyphens: auto !important;
		overflow-wrap: break-word !important;
		text-align: justify !important;
		text-align-last: left !important;
		text-justify: inter-word !important;
		word-break: normal !important;
		word-spacing: normal !important;
	}
}

@media (max-width: 899px) {
	.wp-site-blocks main :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band, .asu-dark-band, .asu-copy-justify) :where(.elementor-widget-text-editor p, p.wp-block-paragraph, p.asu-lead, .wp-block-list li, li):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-form-placeholder *, .asu-donate-anchor-grid *, .asu-home-help-grid *, .asu-spain-help-grid *, .asu-team-grid *, .asu-active-campaigns__grid *, .asu-campaign-use-grid *, .asu-campaign-donor-grid *, .asu-completed-projects-grid *, .asu-projects-pillar-grid *, .asu-projects-stat-grid *, .asu-collab-options-grid *, .asu-periodic-grid *, .asu-sponsorship-grid *, .asu-donation-period-grid *, .asu-donate-method-grid *, .asu-sponsorship-options-grid *, .asu-amount-grid *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-empty *, .asu-kicker, .asu-section-kicker-title *)),
	body.elementor-page .elementor :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band, .asu-dark-band, .asu-copy-justify) :where(.elementor-widget-text-editor p, p.wp-block-paragraph, p.asu-lead, .wp-block-list li, li):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-form-placeholder *, .asu-donate-anchor-grid *, .asu-home-help-grid *, .asu-spain-help-grid *, .asu-team-grid *, .asu-active-campaigns__grid *, .asu-campaign-use-grid *, .asu-campaign-donor-grid *, .asu-completed-projects-grid *, .asu-projects-pillar-grid *, .asu-projects-stat-grid *, .asu-collab-options-grid *, .asu-periodic-grid *, .asu-sponsorship-grid *, .asu-donation-period-grid *, .asu-donate-method-grid *, .asu-sponsorship-options-grid *, .asu-amount-grid *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-empty *, .asu-kicker, .asu-section-kicker-title *)) {
		hyphens: auto !important;
		overflow-wrap: break-word !important;
		text-align: justify !important;
		text-align-last: left !important;
		text-justify: inter-word !important;
	}
}

body.page-id-7 :where(.asu-donation-path-section, .asu-donate-specific-section) :where(.asu-kicker, .asu-section-kicker-title, .elementor-heading-title),
body.page-id-7.elementor-page .elementor :where(.asu-donation-path-section, .asu-donate-specific-section) :where(.asu-kicker, .asu-section-kicker-title, .elementor-heading-title) {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--asu-sun) !important;
	display: block;
	padding: 0 !important;
}

.asu-home-shop-showcase::before,
.asu-home-shop-showcase::after {
	width: clamp(7rem, 17vw, 18rem) !important;
}

.asu-home-shop-showcase::before {
	background: linear-gradient(90deg, rgba(12, 111, 72, 1) 0%, rgba(12, 111, 72, 0.9) 18%, rgba(12, 111, 72, 0.62) 44%, rgba(12, 111, 72, 0.24) 74%, rgba(12, 111, 72, 0) 100%) !important;
	left: 0;
}

.asu-home-shop-showcase::after {
	background: linear-gradient(270deg, rgba(12, 111, 72, 1) 0%, rgba(12, 111, 72, 0.9) 18%, rgba(12, 111, 72, 0.62) 44%, rgba(12, 111, 72, 0.24) 74%, rgba(12, 111, 72, 0) 100%) !important;
	right: 0;
}

.asu-shop-steps-grid,
body.elementor-page .elementor .e-con.asu-shop-steps-grid {
	display: grid !important;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.asu-shop-step-card,
body.elementor-page .elementor .e-con.asu-shop-step-card {
	background: var(--asu-white) !important;
	border: 1px solid rgba(12, 111, 72, 0.16);
	border-radius: var(--asu-radius);
	box-shadow: var(--asu-shadow-soft);
	padding: var(--asu-card-pad);
}

.asu-shop-step-card .asu-step-number,
.asu-shop-step-card .asu-step-number p {
	color: var(--asu-sun) !important;
	font-family: var(--asu-display);
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 0.9;
	margin: 0 0 0.5rem;
}

.asu-card :where(p, li),
.asu-shop-product-card :where(p, li),
.asu-home-shop-card :where(p, li),
.asu-shop-step-card :where(p, li),
body.elementor-page .elementor :where(.asu-card, .asu-shop-product-card, .asu-home-shop-card, .asu-shop-step-card) :where(p, li) {
	hyphens: manual !important;
	text-align: start !important;
	text-align-last: auto !important;
	text-justify: auto !important;
	word-spacing: normal !important;
}

.asu-ihelp-panel__intro p {
	hyphens: auto !important;
	text-align: justify !important;
	text-align-last: left !important;
	text-justify: inter-word !important;
}

body.elementor-page .elementor :where(.asu-section, .asu-page-section, .asu-band, .asu-dark-band) .elementor-widget-text-editor {
	align-self: stretch !important;
	aspect-ratio: auto !important;
	block-size: auto !important;
	contain: layout !important;
	flex-grow: 0 !important;
	height: auto !important;
	inline-size: 100% !important;
	max-height: none !important;
	max-width: 100% !important;
	min-height: 0 !important;
	width: 100% !important;
}

.asu-donate-motto,
.asu-donate-motto p {
	color: var(--asu-charcoal, #14231d) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 48rem;
	text-align: center !important;
	text-align-last: center !important;
}

body.page-id-15.elementor-page .elementor .asu-contact-intro .elementor-widget-text-editor.asu-lead {
	display: contents !important;
}

body.page-id-15.elementor-page .elementor .asu-contact-intro .elementor-widget-text-editor.asu-lead p {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 48rem;
	text-align: center !important;
	text-align-last: center !important;
}

@media (max-width: 899px) {
	body:not(.home) .wp-site-blocks main .elementor > .elementor-element:where(.asu-section, .asu-band):first-of-type,
	body:not(.home).elementor-page .elementor > .elementor-element:where(.asu-section, .asu-band):first-of-type {
		padding-top: clamp(9.25rem, 30vw, 10.5rem) !important;
	}

	body.page-id-20 :where(.alignwide, .asu-page-section__inner, .asu-repair-inner, .e-con-boxed > .e-con-inner) {
		--max-width: 100% !important;
		--width: 100% !important;
		align-self: stretch !important;
		flex-basis: auto !important;
		max-width: 90vw !important;
		width: 100% !important;
	}

	body.page-id-20 .elementor .elementor-element.elementor-element-3d878a8 {
		--max-width: 90vw !important;
		--width: 90vw !important;
		max-width: 90vw !important;
		width: 90vw !important;
	}
}

@media (min-width: 900px) {
	body:not(.home) .wp-site-blocks main :where(p.asu-lead, .asu-copy-justify p, .elementor-widget-text-editor p):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-step-card *)),
	body:not(.home).elementor-page .elementor :where(p.asu-lead, .asu-copy-justify p, .elementor-widget-text-editor p):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-step-card *)) {
		hyphens: auto !important;
		text-align: justify !important;
		text-align-last: left !important;
		text-justify: inter-word !important;
	}
}

@media (max-width: 899px) {
	body:not(.home) .wp-site-blocks main :where(p.asu-lead, .asu-copy-justify p, .elementor-widget-text-editor p):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-step-card *)),
	body:not(.home).elementor-page .elementor :where(p.asu-lead, .asu-copy-justify p, .elementor-widget-text-editor p):not(:where(.asu-hero *, .asu-page-hero *, .asu-site-header *, .asu-site-footer *, .wp-block-buttons *, .elementor-widget-button *, .asu-card *, .asu-program-card *, .asu-help-card *, .asu-value-card *, .asu-impact-card *, .asu-team-card *, .asu-testimonial-card *, .asu-shop-product-card *, .asu-home-shop-card *, .asu-shop-step-card *)) {
		hyphens: auto !important;
		text-align: start !important;
		text-align-last: auto !important;
		text-justify: auto !important;
		word-spacing: normal !important;
	}
}

@media (max-width: 900px) {
	.asu-shop-steps-grid,
	body.elementor-page .elementor .e-con.asu-shop-steps-grid {
		grid-template-columns: 1fr;
	}
}

/* Production audit repair: avoid narrow mobile justification and keep Woo products visible. */
.asu-donate-motto,
.asu-donate-motto p {
	text-align: center !important;
	text-align-last: center !important;
	word-spacing: normal !important;
}

:where(.asu-donate-bank-details, .asu-bank-details, .asu-bizum-details, .asu-donate-method-card, .asu-donate-ihelp-list, .asu-general-donation-form) :where(p, li, h3, h4, a, button),
body.elementor-page .elementor :where(.asu-donate-bank-details, .asu-bank-details, .asu-bizum-details, .asu-donate-method-card, .asu-donate-ihelp-list, .asu-general-donation-form) :where(p, li, h3, h4, a, button) {
	hyphens: manual !important;
	overflow-wrap: break-word !important;
	text-align: start !important;
	text-align-last: auto !important;
	text-justify: auto !important;
	word-spacing: normal !important;
}

.asu-bank-details p,
.asu-bizum-details p,
.asu-donate-bank-details p {
	line-height: 1.45 !important;
}

body.single-product .woocommerce-product-gallery {
	opacity: 1 !important;
	transition: none !important;
}

body.single-product .woocommerce-product-gallery .zoomImg {
	display: none !important;
	opacity: 0 !important;
	pointer-events: none !important;
	visibility: hidden !important;
}

body.single-product .woocommerce-product-gallery__image img,
body.single-product .wp-block-woocommerce-product-image img,
body.single-product .wp-block-woocommerce-product-image-gallery img {
	aspect-ratio: 1 / 1;
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: 16px;
	box-shadow: 0 20px 45px rgba(12, 111, 72, 0.1);
	display: block !important;
	height: auto;
	object-fit: cover;
	width: 100%;
}

body.single-product .wp-block-woocommerce-product-collection.alignwide,
body.single-product .wc-block-components-notices.alignwide {
	box-sizing: border-box;
	max-width: min(80vw, 1320px) !important;
	overflow: hidden;
	width: min(80vw, 1320px) !important;
}

body.single-product .wp-block-woocommerce-product-collection .wc-block-product-template.is-flex-container {
	display: grid !important;
	gap: clamp(1rem, 1.8vw, 1.35rem) !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	overflow: visible;
}

body.single-product .wp-block-woocommerce-product-collection .wc-block-product-template.is-flex-container > li {
	box-sizing: border-box;
	margin: 0 !important;
	max-width: 100% !important;
	min-width: 0 !important;
	width: auto !important;
}

body.single-product .wp-block-woocommerce-product-collection .wc-block-product img {
	aspect-ratio: 1 / 1;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

body.single-product main .wp-block-post-title {
	box-sizing: border-box;
	max-width: 100% !important;
	overflow-wrap: break-word;
	width: 100% !important;
}

body.single-product .wp-block-woocommerce-product-collection .wp-block-post-title {
	box-sizing: border-box;
	font-family: var(--asu-display);
	font-size: clamp(1.15rem, 1.5vw, 1.45rem) !important;
	line-height: 1;
	margin-top: 0.75rem !important;
	max-width: 100% !important;
	min-height: 2.3em;
	overflow-wrap: break-word;
	width: 100% !important;
}

body.single-product .wp-block-woocommerce-product-collection .wp-block-post-title a {
	display: block;
	max-width: 100% !important;
	overflow-wrap: break-word;
	width: 100% !important;
}

body.single-product .wp-block-woocommerce-product-collection .wc-block-product-template.is-flex-container > li {
	background: var(--asu-white) !important;
	border: 1px solid rgba(12, 111, 72, 0.14);
	border-radius: 16px;
	box-shadow: 0 12px 30px rgba(12, 111, 72, 0.08);
	height: auto !important;
	list-style: none !important;
	padding: clamp(0.8rem, 1.4vw, 1rem) !important;
}

body.single-product .wp-block-woocommerce-product-collection .wc-block-product-template.is-flex-container > li::marker {
	content: "";
}

/* Production visual audit hardening: keep Elementor boxed cards inside their own card. */
.wp-site-blocks main :where(.asu-card, .asu-help-card, .asu-donation-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-testimonial-card, .asu-spain-help-card, .asu-collab-option-card, .asu-shop-step-card).e-con-boxed > .e-con-inner,
body.elementor-page .elementor :where(.asu-card, .asu-help-card, .asu-donation-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-testimonial-card, .asu-spain-help-card, .asu-collab-option-card, .asu-shop-step-card).e-con-boxed > .e-con-inner {
	box-sizing: border-box !important;
	margin: 0 !important;
	max-width: 100% !important;
	padding: 0 !important;
	width: 100% !important;
}

.wp-site-blocks main :where(.asu-card, .asu-help-card, .asu-donation-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-testimonial-card, .asu-spain-help-card, .asu-collab-option-card, .asu-shop-step-card) :where(.elementor-widget, .elementor-widget-container, .elementor-heading-title, .elementor-widget-text-editor, p),
body.elementor-page .elementor :where(.asu-card, .asu-help-card, .asu-donation-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-testimonial-card, .asu-spain-help-card, .asu-collab-option-card, .asu-shop-step-card) :where(.elementor-widget, .elementor-widget-container, .elementor-heading-title, .elementor-widget-text-editor, p) {
	box-sizing: border-box !important;
	inline-size: 100% !important;
	max-inline-size: 100% !important;
	max-width: 100% !important;
	min-inline-size: 0 !important;
	overflow-wrap: break-word !important;
	width: 100% !important;
}

.wp-site-blocks main :where(.asu-card, .asu-help-card, .asu-donation-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-testimonial-card, .asu-spain-help-card, .asu-collab-option-card, .asu-shop-step-card) :where(p, li),
body.elementor-page .elementor :where(.asu-card, .asu-help-card, .asu-donation-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-testimonial-card, .asu-spain-help-card, .asu-collab-option-card, .asu-shop-step-card) :where(p, li) {
	hyphens: manual !important;
	letter-spacing: 0 !important;
	text-align: start !important;
	text-align-last: auto !important;
	text-justify: auto !important;
	word-break: normal !important;
	word-spacing: normal !important;
}

.wp-site-blocks main :where(.asu-card, .asu-help-card, .asu-donation-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-testimonial-card, .asu-spain-help-card, .asu-collab-option-card, .asu-shop-step-card) :where(h1, h2, h3, h4, .elementor-heading-title),
body.elementor-page .elementor :where(.asu-card, .asu-help-card, .asu-donation-card, .asu-value-card, .asu-impact-card, .asu-team-card, .asu-testimonial-card, .asu-spain-help-card, .asu-collab-option-card, .asu-shop-step-card) :where(h1, h2, h3, h4, .elementor-heading-title) {
	hyphens: manual !important;
	letter-spacing: 0 !important;
	max-width: 100% !important;
	overflow-wrap: break-word !important;
	text-align: start !important;
	text-align-last: auto !important;
	word-break: normal !important;
	word-spacing: normal !important;
}

.wp-site-blocks .elementor > .e-con.e-parent.asu-dark-band > .elementor-widget-heading.asu-section-kicker-title .elementor-heading-title,
body.elementor-page .elementor > .e-con.e-parent.asu-dark-band > .elementor-widget-heading.asu-section-kicker-title .elementor-heading-title,
.wp-site-blocks .elementor > .e-con.e-parent.asu-bg-green > .elementor-widget-heading.asu-section-kicker-title .elementor-heading-title,
body.elementor-page .elementor > .e-con.e-parent.asu-bg-green > .elementor-widget-heading.asu-section-kicker-title .elementor-heading-title {
	color: var(--asu-sun, #ffcc00) !important;
	opacity: 1 !important;
}

body:not(.home).elementor-page .wp-site-blocks main > .entry-content > .elementor > .e-con.e-parent:first-child:not(.asu-home-hero--photo),
body:not(.home).elementor-page .wp-site-blocks main .elementor > .e-con.e-parent:first-child:not(.asu-home-hero--photo),
body:not(.home) .wp-site-blocks main > .entry-content > .elementor > .e-con.e-parent:first-child:not(.asu-home-hero--photo) {
	padding-top: max(var(--asu-section-y-tight, 3rem), clamp(7.25rem, 8vw, 8.75rem)) !important;
}

@media (max-width: 899px) {
	body:not(.home).elementor-page .wp-site-blocks main > .entry-content > .elementor > .e-con.e-parent:first-child:not(.asu-home-hero--photo),
	body:not(.home).elementor-page .wp-site-blocks main .elementor > .e-con.e-parent:first-child:not(.asu-home-hero--photo),
	body:not(.home) .wp-site-blocks main > .entry-content > .elementor > .e-con.e-parent:first-child:not(.asu-home-hero--photo) {
		padding-top: clamp(10.75rem, 34vw, 12.5rem) !important;
	}
}

@media (max-width: 899px) {
	.wp-site-blocks main :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band, .asu-dark-band, .asu-copy-justify) :where(.elementor-widget-text-editor p, p.wp-block-paragraph, p.asu-lead, .wp-block-list li, li),
	body.elementor-page .elementor :where(.asu-section, .asu-page-section, .asu-section-narrow, .asu-band, .asu-dark-band, .asu-copy-justify) :where(.elementor-widget-text-editor p, p.wp-block-paragraph, p.asu-lead, .wp-block-list li, li) {
		text-align: start !important;
		text-align-last: auto !important;
		text-justify: auto !important;
		word-spacing: normal !important;
	}

	body.single-product .wp-block-woocommerce-product-collection.alignwide,
	body.single-product .wc-block-components-notices.alignwide {
		max-width: 90vw !important;
		width: 90vw !important;
	}

	body.single-product .wp-block-woocommerce-product-collection .wc-block-product-template.is-flex-container {
		grid-template-columns: 1fr;
	}
}

@media (min-width: 600px) and (max-width: 899px) {
	body.woocommerce-cart main#wp--skip-link--target,
	body.woocommerce-checkout main#wp--skip-link--target {
		padding-top: calc(var(--asu-header-height) + 6rem) !important;
	}

	body.single-product .woocommerce div.product {
		display: block !important;
	}

	body.single-product .woocommerce div.product div.images,
	body.single-product .woocommerce div.product div.summary {
		float: none !important;
		margin-left: auto !important;
		margin-right: auto !important;
		max-width: min(92vw, 680px) !important;
		width: min(92vw, 680px) !important;
	}

	body.single-product .woocommerce div.product div.summary {
		margin-top: 1.6rem !important;
	}

	body.single-product main#wp--skip-link--target > .wp-block-columns.alignwide:has(.wp-block-woocommerce-product-image-gallery) {
		align-items: stretch !important;
		flex-direction: column !important;
	}

	body.single-product main#wp--skip-link--target > .wp-block-columns.alignwide:has(.wp-block-woocommerce-product-image-gallery) > .wp-block-column {
		flex-basis: auto !important;
		margin-left: auto !important;
		margin-right: auto !important;
		max-width: min(92vw, 680px) !important;
		width: min(92vw, 680px) !important;
	}

	body.single-product .wp-block-woocommerce-product-collection .wc-block-product-template.is-flex-container {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

/* Prompt-contract audit repair: Tororo context is a green band, so text must not sit white-on-white. */
body.page-id-20 .wp-site-blocks main .e-con.asu-tororo-context,
body.page-id-20.elementor-page .elementor .e-con.asu-tororo-context {
	background: var(--asu-forest, #0c6f48) !important;
	background-color: var(--asu-forest, #0c6f48) !important;
	color: var(--asu-white, #fff) !important;
}

body.page-id-20 .wp-site-blocks main .e-con.asu-tororo-context :where(.asu-section-kicker-title, .asu-section-kicker-title .elementor-heading-title),
body.page-id-20.elementor-page .elementor .e-con.asu-tororo-context :where(.asu-section-kicker-title, .asu-section-kicker-title .elementor-heading-title) {
	color: var(--asu-sun, #ffcc00) !important;
}

body.page-id-20 .wp-site-blocks main .e-con.asu-tororo-context :where(.elementor-widget-text-editor p, p.wp-block-paragraph):not(:where(.asu-card *, .asu-program-card *, .asu-help-card *)),
body.page-id-20.elementor-page .elementor .e-con.asu-tororo-context :where(.elementor-widget-text-editor p, p.wp-block-paragraph):not(:where(.asu-card *, .asu-program-card *, .asu-help-card *)) {
	color: rgba(255, 255, 255, 0.92) !important;
}

/* Product photos are square mockups; show the whole object instead of cropping the logo away. */
.asu-shop-product-card__image,
.asu-home-shop-card__image,
body.post-type-archive-product ul.products li.product a.woocommerce-LoopProduct-link,
body.woocommerce-shop ul.products li.product a.woocommerce-LoopProduct-link {
	background: linear-gradient(135deg, rgba(255, 250, 240, 0.98), rgba(242, 234, 210, 0.78)) !important;
}

.asu-shop-product-card__image img,
.asu-home-shop-card__image img,
body.post-type-archive-product ul.products li.product img,
body.woocommerce-shop ul.products li.product img {
	object-fit: contain !important;
	object-position: center center !important;
}

/* Production polish 2026-08-08: final prompt batch. */
body.home .asu-old-technical-hero .asu-lead,
body.home .asu-old-technical-hero .asu-lead p,
body.home .asu-hero-quote-centered,
body.home .asu-hero-quote-centered p {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: min(72vw, 880px) !important;
	text-align: center !important;
	text-align-last: center !important;
	white-space: normal;
}

body.home .asu-home-help-title .elementor-heading-title,
body.home .asu-section:has(.asu-home-help-grid) > .elementor-widget-heading .elementor-heading-title,
body.home .asu-section:has(.asu-home-help-grid) > .asu-section-kicker-title {
	color: var(--asu-sun) !important;
	text-align: center !important;
	text-align-last: center !important;
}

body.home .asu-section:has(.asu-home-help-grid) > .elementor-widget-heading,
body.home .asu-section:has(.asu-home-help-grid) > .asu-section-kicker-title {
	align-self: center !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.home .asu-home-help-grid .elementor-button,
body.home .asu-home-help-grid .wp-block-button__link,
body.home .asu-home-help-grid .button {
	background: var(--asu-sun) !important;
	border-color: var(--asu-sun) !important;
	color: var(--asu-white) !important;
}

body.home .asu-home-help-grid .elementor-button *,
body.home .asu-home-help-grid .wp-block-button__link * {
	color: var(--asu-white) !important;
}

body.home .asu-home-help-grid .elementor-button:is(:hover, :focus-visible),
body.home .asu-home-help-grid .wp-block-button__link:is(:hover, :focus-visible) {
	background: var(--asu-forest) !important;
	border-color: var(--asu-forest) !important;
	color: var(--asu-white) !important;
	transform: translateY(-2px);
}

.asu-home-shop-section,
body.home .asu-home-shop-section {
	--asu-shop-fade-bg: #0c6f48;
	background: var(--asu-shop-fade-bg) !important;
	background-color: var(--asu-shop-fade-bg) !important;
}

.asu-home-shop-showcase::before {
	background: linear-gradient(90deg, var(--asu-shop-fade-bg, #0c6f48) 0%, rgba(12, 111, 72, 0.84) 26%, rgba(12, 111, 72, 0.42) 62%, rgba(12, 111, 72, 0) 100%) !important;
}

.asu-home-shop-showcase::after {
	background: linear-gradient(270deg, var(--asu-shop-fade-bg, #0c6f48) 0%, rgba(12, 111, 72, 0.84) 26%, rgba(12, 111, 72, 0.42) 62%, rgba(12, 111, 72, 0) 100%) !important;
}

.asu-team-split,
.asu-tororo-map-split,
.asu-story-intro-grid,
.asu-story-split,
.asu-story-work-grid,
.asu-story-learning-grid,
.asu-contact-compact-grid,
.asu-testimonial-feature {
	align-items: center !important;
	display: grid !important;
	gap: clamp(1.6rem, 3vw, 3rem);
	grid-template-columns: minmax(0, 1fr) minmax(280px, 0.82fr);
}

.asu-team-split--image-left,
.asu-testimonial-feature {
	align-items: start !important;
	grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1fr);
}

.asu-contact-compact-grid {
	align-items: start !important;
}

.asu-team-photo,
.asu-map-card,
.asu-story-photo-choice {
	border-radius: 22px;
	box-shadow: 0 22px 54px rgba(7, 92, 59, 0.18);
	overflow: hidden;
}

.asu-team-photo img,
.asu-map-card img,
.asu-story-photo-choice img {
	aspect-ratio: 4 / 3;
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.asu-map-card {
	background: var(--asu-paper);
	border: 1px solid rgba(12, 111, 72, 0.16);
	box-sizing: border-box;
	max-width: 100%;
	padding: clamp(0.7rem, 1.2vw, 1rem);
}

.asu-map-card img {
	max-width: 100%;
	object-fit: contain;
}

.asu-tororo-story-bridge {
	background: var(--asu-white) !important;
	background-image: none !important;
	color: var(--asu-forest);
}

.asu-tororo-story-bridge .elementor-heading-title,
.asu-tororo-story-bridge .asu-kicker,
.asu-tororo-story-bridge .asu-kicker p {
	color: var(--asu-forest) !important;
}

.asu-tororo-story-bridge p {
	color: var(--asu-forest) !important;
}

.asu-story-work-solid {
	background: var(--asu-forest) !important;
	background-image: none !important;
	color: var(--asu-white);
}

.asu-story-work-grid {
	align-items: center !important;
}

.asu-story-learning-grid .asu-text-card .asu-kicker,
.asu-story-learning-grid .asu-text-card .asu-kicker p {
	color: var(--asu-sun) !important;
	margin-bottom: 0.85rem !important;
	text-align: left !important;
	text-align-last: left !important;
}

.asu-quote-author,
.asu-quote-author p {
	color: var(--asu-white) !important;
}

.asu-testimonials-first-voices {
	background: var(--asu-forest) !important;
	background-color: var(--asu-forest) !important;
}

.asu-testimonials-first-voices > .e-con-inner,
.asu-testimonials-first-voices .alignwide {
	color: var(--asu-white);
}

.asu-testimonials-first-voices > .e-con-inner > .elementor-widget-heading .elementor-heading-title,
.asu-testimonials-first-voices .asu-kicker,
.asu-testimonials-first-voices .asu-kicker p {
	color: var(--asu-sun) !important;
}

@media (min-width: 900px) {
	.asu-testimonials-first-voices .asu-testimonials-grid {
		display: grid !important;
		grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important;
	}

	.asu-testimonial-photo-stack {
		display: grid !important;
		gap: 1rem;
		grid-template-columns: minmax(0, 1fr);
	}

	.asu-testimonial-photo-stack .asu-testimonial-extra-photo {
		grid-column: auto;
	}

	body.page-id-369 .asu-program-grid,
	body.page-id-371 .asu-program-grid,
	body.page-id-373 .asu-program-grid,
	body.page-id-375 .asu-program-grid {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	body.page-id-7 .asu-donate-specific-section--recurring .asu-donation-path-section__inner {
		align-items: start !important;
		display: grid !important;
		gap: clamp(1.25rem, 2vw, 2rem);
		grid-template-columns: minmax(0, 1fr) minmax(300px, 0.88fr);
	}

	body.page-id-7 .asu-donate-specific-section--recurring .asu-donation-path-section__inner > :where(.asu-kicker, .elementor-widget-heading) {
		grid-column: 1 / -1;
	}

	body.page-id-7 .asu-donate-specific-section--recurring .asu-donate-periodic-bank {
		grid-column: 2;
		grid-row: 3 / span 2;
	}

	body.page-id-7 .asu-donate-serendipity-options {
		display: grid !important;
		gap: clamp(1rem, 2vw, 1.5rem);
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 899px) {
	.asu-team-split,
	.asu-tororo-map-split,
	.asu-story-intro-grid,
	.asu-story-split,
	.asu-story-work-grid,
	.asu-story-learning-grid,
	.asu-contact-compact-grid,
	.asu-team-split--image-left,
	.asu-testimonial-feature {
		grid-template-columns: 1fr !important;
	}

	.asu-testimonial-photo-stack .asu-photo-frame:not(:first-child),
	.asu-testimonial-photo-stack .asu-testimonial-extra-photo {
		display: none !important;
	}
}

.asu-testimonial-modal[hidden],
.asu-testimonial-modal:not(.is-open) {
	display: none !important;
}

.asu-testimonial-modal {
	align-items: center;
	background: rgba(5, 39, 30, 0.72);
	display: flex;
	inset: 0;
	justify-content: center;
	padding: clamp(1rem, 4vw, 3rem);
	position: fixed;
	z-index: 99999;
}

.asu-testimonial-modal__panel {
	background: var(--asu-white);
	border: 1px solid rgba(12, 111, 72, 0.18);
	border-radius: 22px;
	box-shadow: 0 28px 80px rgba(5, 39, 30, 0.35);
	max-height: min(88vh, 820px);
	max-width: min(92vw, 780px);
	overflow: auto;
	padding: clamp(1.4rem, 3vw, 2.4rem);
	position: relative;
	width: 100%;
}

.asu-testimonial-modal__close {
	align-items: center;
	background: var(--asu-forest);
	border: 0;
	border-radius: 999px;
	color: var(--asu-white);
	cursor: pointer;
	display: inline-flex;
	font-size: 1rem;
	font-weight: 900;
	height: 42px;
	justify-content: center;
	position: absolute;
	right: 1rem;
	top: 1rem;
	width: 42px;
}

body.asu-testimonial-modal-open {
	overflow: hidden;
}

body.page-id-7 .asu-donate-specific-section .asu-donation-path-section__inner > .elementor-widget-heading {
	margin-bottom: clamp(0.45rem, 1vw, 0.8rem) !important;
}

body.page-id-7 .asu-donate-specific-section .asu-donation-path-section__inner > .asu-donate-projects-copy,
body.page-id-7 .asu-donate-specific-section .asu-donation-path-section__inner > .asu-sponsor-intro {
	margin-top: clamp(0.4rem, 0.8vw, 0.75rem) !important;
}

body.page-id-7.elementor-page .elementor .e-con.asu-donate-specific-section .e-con.asu-donation-path-section__inner,
body.page-id-7 .wp-site-blocks main .e-con.asu-donate-specific-section .e-con.asu-donation-path-section__inner {
	gap: clamp(0.8rem, 1.2vw, 1.2rem) !important;
}

body.page-id-7 .asu-sponsorship-quarter-title,
body.page-id-7 .asu-sponsorship-quarter-title p {
	color: var(--asu-sun) !important;
	font-family: var(--asu-display);
	font-size: clamp(1.5rem, 2.4vw, 2.1rem);
	line-height: 1;
	margin: 0 0 1rem !important;
	text-transform: uppercase;
}

body.page-id-7 .asu-donate-specific-section--serendipity .asu-donate-serendipity-actions {
	margin-top: clamp(1rem, 2vw, 1.5rem);
}

body.page-id-332 .asu-spain-help-shop,
body.page-id-347 .asu-shop-intro,
body.page-id-347 .asu-shop-catalog .asu-section-kicker-title,
body.page-id-347 .asu-shop-catalog .asu-lead,
body.page-id-347 .asu-shop-catalog > .e-con-inner > .elementor-widget-text-editor:not(:has(.woocommerce)) {
	display: none !important;
}

body.page-id-347 .asu-shop-catalog {
	background: var(--asu-white) !important;
	padding-top: clamp(7rem, 8vw, 8.8rem) !important;
}

.asu-contact-compact-grid .asu-repair-card-grid {
	display: grid !important;
	grid-template-columns: 1fr !important;
}

.asu-contact-compact-grid .asu-managed-form {
	margin: 0;
}

/* Production polish pass 2: specificity fixes from screenshot review. */
body.home .asu-home-shop-section,
body.home.elementor-page .elementor .e-con.asu-home-shop-section {
	--asu-shop-fade-bg: #0c6f48;
	background: var(--asu-shop-fade-bg) !important;
	background-color: var(--asu-shop-fade-bg) !important;
	background-image: none !important;
}

body.home .asu-home-shop-showcase::before {
	background: linear-gradient(90deg, rgba(12, 111, 72, 1) 0%, rgba(12, 111, 72, 0.76) 34%, rgba(12, 111, 72, 0.38) 68%, rgba(12, 111, 72, 0) 100%) !important;
}

body.home .asu-home-shop-showcase::after {
	background: linear-gradient(270deg, rgba(12, 111, 72, 1) 0%, rgba(12, 111, 72, 0.76) 34%, rgba(12, 111, 72, 0.38) 68%, rgba(12, 111, 72, 0) 100%) !important;
}

body.page-id-20.elementor-page .elementor .e-con.asu-bg-green:not(.asu-tororo-story-bridge),
body.page-id-20 .wp-site-blocks main .e-con.asu-bg-green:not(.asu-tororo-story-bridge) {
	background: var(--asu-forest, #0c6f48) !important;
	background-color: var(--asu-forest, #0c6f48) !important;
	color: var(--asu-white) !important;
}

body.page-id-20.elementor-page .elementor .e-con.asu-bg-green:not(.asu-tororo-story-bridge) :where(.elementor-heading-title, .asu-section-kicker-title),
body.page-id-20 .wp-site-blocks main .e-con.asu-bg-green:not(.asu-tororo-story-bridge) :where(.elementor-heading-title, .asu-section-kicker-title) {
	color: var(--asu-sun, #ffcc00) !important;
}

body.page-id-20.elementor-page .elementor .e-con.asu-bg-green:not(.asu-tororo-story-bridge) :where(.elementor-widget-text-editor, .elementor-widget-text-editor p, p):not(:where(.asu-card *, .asu-shop-step-card *)),
body.page-id-20 .wp-site-blocks main .e-con.asu-bg-green:not(.asu-tororo-story-bridge) :where(.elementor-widget-text-editor, .elementor-widget-text-editor p, p):not(:where(.asu-card *, .asu-shop-step-card *)) {
	color: rgba(255, 255, 255, 0.94) !important;
}

body.page-id-20.elementor-page .elementor .e-con.asu-tororo-story-bridge,
body.page-id-20 .wp-site-blocks main .e-con.asu-tororo-story-bridge {
	background: var(--asu-white, #ffffff) !important;
	background-color: var(--asu-white, #ffffff) !important;
	background-image: none !important;
	color: var(--asu-forest, #0c6f48) !important;
}

body.page-id-20.elementor-page .elementor .e-con.asu-tororo-story-bridge :where(.elementor-heading-title, .asu-section-kicker-title),
body.page-id-20 .wp-site-blocks main .e-con.asu-tororo-story-bridge :where(.elementor-heading-title, .asu-section-kicker-title) {
	color: var(--asu-forest, #0c6f48) !important;
}

body.page-id-20.elementor-page .elementor .e-con.asu-tororo-story-bridge :where(.elementor-widget-text-editor, .elementor-widget-text-editor p, p),
body.page-id-20 .wp-site-blocks main .e-con.asu-tororo-story-bridge :where(.elementor-widget-text-editor, .elementor-widget-text-editor p, p) {
	color: var(--asu-forest, #0c6f48) !important;
}

body.page-id-242.elementor-page .elementor .e-con.asu-story-work-solid,
body.page-id-242 .wp-site-blocks main .e-con.asu-story-work-solid,
body.page-id-244.elementor-page .elementor .e-con.asu-testimonials-first-voices,
body.page-id-244 .wp-site-blocks main .e-con.asu-testimonials-first-voices {
	background: var(--asu-forest, #0c6f48) !important;
	background-color: var(--asu-forest, #0c6f48) !important;
	background-image: none !important;
}

body.page-id-242.elementor-page .elementor .e-con.asu-home-bg-green .asu-story-card,
body.page-id-242 .wp-site-blocks main .e-con.asu-home-bg-green .asu-story-card {
	background: rgba(255, 255, 255, 0.96) !important;
	color: var(--asu-charcoal, #0a0a0a) !important;
}

body.page-id-242.elementor-page .elementor .e-con.asu-home-bg-green .asu-story-card :where(.elementor-heading-title, h3),
body.page-id-242 .wp-site-blocks main .e-con.asu-home-bg-green .asu-story-card :where(.elementor-heading-title, h3) {
	color: var(--asu-forest, #0c6f48) !important;
}

body.page-id-242.elementor-page .elementor .e-con.asu-home-bg-green .asu-story-card :where(.elementor-widget-text-editor, .elementor-widget-text-editor p, p),
body.page-id-242 .wp-site-blocks main .e-con.asu-home-bg-green .asu-story-card :where(.elementor-widget-text-editor, .elementor-widget-text-editor p, p) {
	color: var(--asu-charcoal, #0a0a0a) !important;
}

body.page-id-242.elementor-page .elementor .e-con.asu-quote-panel,
body.page-id-242 .wp-site-blocks main .e-con.asu-quote-panel {
	background: var(--asu-forest, #0c6f48) !important;
	background-image: none !important;
	color: var(--asu-white, #fff) !important;
}

body.page-id-242.elementor-page .elementor .e-con.asu-quote-panel :where(.elementor-heading-title, .asu-section-kicker-title),
body.page-id-242 .wp-site-blocks main .e-con.asu-quote-panel :where(.elementor-heading-title, .asu-section-kicker-title) {
	color: var(--asu-sun, #ffcc00) !important;
}

body.page-id-242.elementor-page .elementor .e-con.asu-quote-panel :where(.elementor-widget-text-editor, .elementor-widget-text-editor p, p),
body.page-id-242 .wp-site-blocks main .e-con.asu-quote-panel :where(.elementor-widget-text-editor, .elementor-widget-text-editor p, p) {
	color: rgba(255, 255, 255, 0.94) !important;
}

body.page-id-242.elementor-page .elementor .e-con.asu-quote-panel .asu-quote-author,
body.page-id-242.elementor-page .elementor .e-con.asu-quote-panel .asu-quote-author p,
body.page-id-242 .wp-site-blocks main .e-con.asu-quote-panel .asu-quote-author,
body.page-id-242 .wp-site-blocks main .e-con.asu-quote-panel .asu-quote-author p {
	color: var(--asu-white, #fff) !important;
}

@media (min-width: 900px) {
	body.page-id-7.elementor-page .elementor .e-con.asu-donate-serendipity-options,
	body.page-id-7 .wp-site-blocks main .e-con.asu-donate-serendipity-options {
		display: grid !important;
		gap: clamp(1rem, 2vw, 1.5rem) !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.page-id-7.elementor-page .elementor .e-con.asu-donate-serendipity-options > .e-con,
	body.page-id-7 .wp-site-blocks main .e-con.asu-donate-serendipity-options > .e-con {
		grid-column: auto !important;
		max-width: 100% !important;
		width: auto !important;
	}
}
