/**
 * PA v2 footer + Join the Movement - standalone.
 *
 * For templates that want the v2 footer WITHOUT the rest of the v2 design
 * system: the microsite templates (ftf, nznz, humanelement,
 * ourregenerativefuture, ...) which ship their own <head>, fonts and CSS.
 *
 * Why this exists rather than reusing assets/css/pa-v2.css:
 *   - pa-v2.css has ~270 selectors with no `.pa-v2` scope (Salient buttons,
 *     .h1-.h6, .campaign-grid-z, .advantages-grid ...). It is only safe because
 *     it is gated behind pa_v2_is_active(); loading it on a microsite would
 *     restyle that microsite.
 *   - The footer's !important compat rules were scoped to `html body.pa-v2`.
 *     Here they read `html body .pa-v2` - identical specificity (0,2,2) but
 *     satisfied by the wrapper <div class="pa-v2"> that footer-pa-v2-only.php
 *     emits, so no body class is required.
 *
 * Generated from the footer rules in pa-v2.css. Mirror any footer change made
 * there into this file.
 */

/* --- Fonts --- */
@font-face {
	font-family: "Plus Jakarta Sans";
	src: url("../fonts/Plus_Jakarta_Sans/PlusJakartaSans-VariableFont_wght.ttf") format("truetype");
	font-weight: 200 800;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Plus Jakarta Sans";
	src: url("../fonts/Plus_Jakarta_Sans/PlusJakartaSans-Italic-VariableFont_wght.ttf") format("truetype");
	font-weight: 200 800;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: Lato;
	src: url("../fonts/Lato/Lato-Light.ttf") format("truetype");
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: Lato;
	src: url("../fonts/Lato/Lato-Regular.ttf") format("truetype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: Lato;
	src: url("../fonts/Lato/Lato-Italic.ttf") format("truetype");
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: Lato;
	src: url("../fonts/Lato/Lato-Bold.ttf") format("truetype");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: Lato;
	src: url("../fonts/Lato/Lato-BoldItalic.ttf") format("truetype");
	font-weight: 700;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: Lato;
	src: url("../fonts/Lato/Lato-Black.ttf") format("truetype");
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: Lato;
	src: url("../fonts/Lato/Lato-BlackItalic.ttf") format("truetype");
	font-weight: 900;
	font-style: italic;
	font-display: swap;
}

/* --- Tokens (on the wrapper div) --- */
.pa-v2,
.pa-v2-html {
	/* Global palette (v2) */
	--pa-v2-navy: #1d2f6d;
	--pa-v2-green: #c0e5d9;
	--pa-v2-white: #ffffff;
	--pa-v2-text: var(--pa-v2-navy);
	--pa-v2-text-on-dark: var(--pa-v2-white);
	--pa-v2-grey: #6b7a90;
	--pa-v2-mega-bg: #f2f2f2;
	--pa-v2-radius: 5px;
	--pa-v2-header-h: 120px;
	--pa-v2-font-sans: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
	--pa-v2-font-lato: Lato, "Helvetica Neue", Helvetica, Arial, sans-serif;
	--pa-v2-max: 1240px;
	--pa-v2-header-inner-max: 1590px;
}

/* --- Footer --- */
.pa-v2-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.pa-v2__logo-img {
	display: block;
	height: auto;
	width: auto;
	max-height: 56px;
	max-width: min(260px, 42vw);
	object-fit: contain;
}

.pa-v2__footer-logo-wrap {
	margin-top: 8px;
}

.pa-v2__footer-logo {
	display: inline-flex;
	align-items: center;
	line-height: 0;
}

.pa-v2__footer-logo .pa-v2__logo-img {
	width: 80px;
	height: 80px;
	max-width: 80px;
	max-height: 80px;
	object-fit: contain;
}

.pa-v2__footer {
	font-family: var(--pa-v2-font-sans);
	background: var(--pa-v2-navy);
	color: rgba(255, 255, 255, 0.92);
	margin-top: auto;
}

.pa-v2__footer-shell {
	max-width: 1480px;
	margin: 0 auto;
	padding: 94px clamp(20px, 4vw, 40px) 64px;
	box-sizing: border-box;
}

.pa-v2__footer-main {
	--pa-v2-footer-gap: clamp(24px, 4vw, 48px);
	display: flex;
	flex-wrap: wrap;
	gap: var(--pa-v2-footer-gap);
	align-items: flex-start;
}

.pa-v2__footer-left {
	flex: 0 0 calc(35% - var(--pa-v2-footer-gap) / 2);
	min-width: 0;
}

.pa-v2__footer-right {
	flex: 0 0 calc(65% - var(--pa-v2-footer-gap) / 2);
	min-width: 0;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(20px, 2.5vw, 40px);
}

@media (min-width: 1024px) {
	.pa-v2__footer-main {
		--pa-v2-footer-gap: 150px;
	}
}

/*
 * Tagline is an <h4>. On full v2 pages its size comes from the global heading
 * scale (`.pa-v2 :is(h4,.h4) { font-size:28px; font-weight:600 }`, specificity
 * (0,2,0)) which beats this rule — that rule is NOT in this sheet, so the size
 * has to be stated explicitly here to match. Values taken from the computed
 * style of the live homepage footer.
 */
.pa-v2__footer-tagline {
	font-family: var(--pa-v2-font-sans);
	font-size: 28px;
	font-weight: 600;
	line-height: 1.1;
	margin: 0 0 20px;
	color: var(--pa-v2-text-on-dark);
}

.pa-v2__footer-tagline br {
	line-height: inherit;
}

.pa-v2__social {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 10px;
	list-style: none;
	list-style-type: none;
	margin: 0 0 28px;
	padding: 0;
}

.pa-v2__social li {
	display: flex;
	flex: 0 0 auto;
	width: auto;
	list-style: none;
	list-style-type: none;
}

.pa-v2__social-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--pa-v2-social-bg, var(--pa-v2-navy));
	color: var(--pa-v2-social-fg, var(--pa-v2-white));
	text-decoration: none;
	overflow: hidden;
	box-sizing: border-box;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.pa-v2__footer .pa-v2__social-link {
	--pa-v2-social-bg: var(--pa-v2-white);
	--pa-v2-social-fg: var(--pa-v2-navy);
}

.pa-v2__social-icon {
	display: block;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

.pa-v2__social-icon path {
	fill: currentColor;
}

.pa-v2__social-link:hover,
.pa-v2__social-link:focus-visible {
	opacity: 0.85;
	transform: scale(1.06);
	background: var(--pa-v2-social-bg, var(--pa-v2-navy)) !important;
	color: var(--pa-v2-social-fg, var(--pa-v2-white)) !important;
	text-decoration: none !important;
}

.pa-v2__footer-mark {
	font-family: var(--pa-v2-font-lato);
	font-size: clamp(48px, 8vw, 72px);
	font-weight: 400;
	color: rgba(255, 255, 255, 0.35);
	line-height: 1;
	margin-top: 8px;
}

.pa-v2__footer-heading.pa-v2__footer-heading--desk {
	font-family: var(--pa-v2-font-sans);
	font-size: 18px;
	font-weight: 600;
	font-style: normal;
	line-height: 1.1;
	letter-spacing: 0;
	margin: 0 0 15px;
	color: var(--pa-v2-text-on-dark);
}

.pa-v2__footer-accordion-trigger {
	display: none;
}

.pa-v2__footer-accordion-icon {
	display: block;
	width: 10px;
	height: 10px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	flex-shrink: 0;
	opacity: 0.85;
	transition: transform 0.25s ease;
}

.pa-v2__footer-col.is-open .pa-v2__footer-accordion-icon {
	transform: rotate(225deg);
	margin-top: 2px;
}

.pa-v2__footer-list {
	list-style: none;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.pa-v2__footer-list li {
	margin-bottom: 10px;
	list-style: none;
	list-style-type: none;
}

.pa-v2__footer-list a {
	display: inline-block;
	position: relative;
	font-family: var(--pa-v2-font-lato);
	color: rgba(255, 255, 255, 0.88);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.35;
	text-decoration: none;
	padding-bottom: 2px;
}

.pa-v2__footer-list a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	height: 2px;
	width: 100%;
	background-color: rgba(255, 255, 255, 0.9);
	transform: scaleX(0);
	transform-origin: left center;
	opacity: 0;
	transition:
		transform 0.3s ease,
		opacity 0.3s ease;
	pointer-events: none;
}

.pa-v2__footer-list a:hover::after,
.pa-v2__footer-list a:focus-visible::after {
	transform: scaleX(1);
	opacity: 1;
}

.pa-v2__footer-list a:hover,
.pa-v2__footer-list a:focus-visible {
	text-decoration: none;
	color: rgba(255, 255, 255, 0.95);
}

.pa-v2__footer-empty {
	margin: 0;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.45);
	line-height: 1.4;
}

.pa-v2__footer-bar {
	color: var(--pa-v2-green);
}

.pa-v2__footer-bar-shell {
	max-width: 1480px;
	margin: 0 auto;
	padding: 18px clamp(20px, 4vw, 40px);
	box-sizing: border-box;
	border-top: 1px solid rgba(192, 229, 217, 0.35);
}

.pa-v2__footer-bar-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px 24px;
	font-size: 13px;
	color: var(--pa-v2-green);
}

.pa-v2__footer-bar .pa-v2__footer-legal,
.pa-v2__footer-bar .pa-v2__footer-credit {
	color: var(--pa-v2-green);
}

.pa-v2__footer-legal {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.pa-v2__footer-legal a {
	color: inherit;
	text-decoration: none;
}

.pa-v2__footer-legal a:hover,
.pa-v2__footer-legal a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

.pa-v2__footer-sep {
	opacity: 0.65;
	margin: 0 2px;
	color: var(--pa-v2-green);
}

.pa-v2__footer-credit {
	margin: 0;
	color: var(--pa-v2-green);
}

.pa-v2__footer-credit a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

.pa-v2__footer-credit a:hover,
.pa-v2__footer-credit a:focus-visible {
	color: var(--pa-v2-green);
}

@media (max-width: 1024px) {
	.pa-v2__footer-main {
		flex-direction: column;
	}
	.pa-v2__footer-left,
	.pa-v2__footer-right {
		flex: 1 1 100%;
		width: 100%;
		max-width: 100%;
	}
	.pa-v2__footer-right {
		grid-template-columns: 1fr 1fr;
		gap: 32px 40px;
	}
}

@media (max-width: 1250px) {
	.pa-v2__footer-credit {
		padding-bottom: 0 !important;
	}
	.pa-v2__footer-accordion-panel {
		padding-top: 12px;
	}
	.pa-v2__footer-heading--desk {
		display: none;
	}
	.pa-v2__footer-accordion-trigger {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		width: 100%;
		margin: 0;
		padding: 14px 0;
		border: 0;
		border-radius: 0 !important;
		border-bottom: 1px solid rgba(192, 229, 217, 0.22);
		background: transparent;
		cursor: pointer;
		font-family: var(--pa-v2-font-sans);
		font-size: 18px;
		font-weight: 600;
		font-style: normal;
		line-height: 1.2;
		letter-spacing: 0;
		color: var(--pa-v2-text-on-dark);
		text-align: left;
	}
	.pa-v2__footer-accordion-trigger:focus-visible {
		outline: 2px solid var(--pa-v2-green);
		outline-offset: 2px;
	}
	.pa-v2__footer-col {
		min-width: 0;
	}
	.pa-v2__footer-right {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.pa-v2__footer-accordion-panel {
		padding-bottom: 8px;
	}
}

@media (min-width: 961px) {
	.pa-v2__footer-heading--mob {
		display: none !important;
	}
}

@media (max-width: 640px) {
	.pa-v2__footer-main {
		grid-template-columns: 1fr;
	}
	.pa-v2__footer-right {
		grid-template-columns: 1fr;
		gap: 18px;
	}
	.pa-v2__footer-shell {
		padding-top: 64px;
		padding-bottom: 48px;
	}
	.pa-v2__footer-bar-inner {
		flex-direction: column;
		align-items: flex-start;
	}
}

html body .pa-v2 .pa-v2__footer {
	font-family: var(--pa-v2-font-sans) !important;
}

html body .pa-v2 .pa-v2__footer-mark {
	font-family: var(--pa-v2-font-lato) !important;
}

html body .pa-v2 .pa-v2__footer-heading.pa-v2__footer-heading--desk,
html body .pa-v2 .pa-v2__footer .pa-v2__footer-accordion-trigger {
	font-family: var(--pa-v2-font-sans) !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.1 !important;
	border-radius: 0 !important;
}

html body .pa-v2 .pa-v2__footer-heading.pa-v2__footer-heading--desk {
	margin-bottom: 15px !important;
}

html body .pa-v2 .pa-v2__footer .pa-v2__footer-list,
html body .pa-v2 .pa-v2__footer .pa-v2__footer-list li {
	list-style: none !important;
	list-style-type: none !important;
}

html body .pa-v2 .pa-v2__footer .pa-v2__social,
html body .pa-v2 .pa-v2__footer .pa-v2__social li {
	list-style: none !important;
	list-style-type: none !important;
}

html body .pa-v2 .pa-v2__footer .pa-v2__social {
	gap: 10px !important;
}

html body .pa-v2 .pa-v2__footer .pa-v2__social-link {
	width: 36px !important;
	height: 36px !important;
}

html body .pa-v2 .pa-v2__footer-logo .pa-v2__logo-img {
	width: 80px !important;
	height: 80px !important;
	max-width: 80px !important;
	max-height: 80px !important;
}

html body .pa-v2 .pa-v2__footer .pa-v2__footer-tagline {
	margin-bottom: 32px;
}

html body .pa-v2 .pa-v2__footer .pa-v2__footer-tagline :is(em, strong) {
	font-family: inherit !important;
	font-size: inherit !important;
	line-height: inherit !important;
}

html body .pa-v2 .pa-v2__footer .pa-v2__footer-tagline strong {
	font-weight: 700 !important;
}

html body .pa-v2 .pa-v2__footer .pa-v2__footer-tagline em {
	font-style: italic !important;
	font-weight: inherit !important;
}

html body .pa-v2 .pa-v2__footer .pa-v2__footer-list a {
	display: inline-block !important;
	position: relative !important;
	font-family: var(--pa-v2-font-lato) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	text-decoration: none !important;
}

html body .pa-v2 .pa-v2__footer .pa-v2__footer-list li,
html body .pa-v2 .pa-v2__footer .pa-v2__footer-list li span,
html body .pa-v2 .pa-v2__footer .pa-v2__footer-list li i,
html body .pa-v2 .pa-v2__footer .pa-v2__footer-list li em {
	font-family: var(--pa-v2-font-lato) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
}

html body .pa-v2 .pa-v2__footer .pa-v2__footer-empty {
	font-size: 13px !important;
}

html body .pa-v2 .pa-v2__footer-bar,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-bar-inner,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-legal,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-legal a,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-legal span,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-sep,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-credit,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-credit a,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-credit span,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-credit p,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-credit i,
html body .pa-v2 .pa-v2__footer-bar .pa-v2__footer-credit em {
	font-size: 13px !important;
	color: var(--pa-v2-green) !important;
}

.pa-v2.pa-form-social .pa-form-social__social .pa-v2__social-link {
	width: 44px !important;
	height: 44px !important;
	--pa-v2-social-bg: var(--pa-v2-navy);
	--pa-v2-social-fg: var(--pa-v2-white);
}

.pa-v2.pa-form-social .pa-form-social__social .pa-v2__social-icon {
	width: 22px !important;
	height: 22px !important;
}

@media (max-width: 999px) {
	html body .pa-v2__social,
	html body .pa-form-social__social,
	html body .pa-v2 .wpb_column.centered-text .pa-v2__social,
	html body .pa-v2 .wpb_column.centered-text .pa-form-social__social,
	html body .pa-v2 .col.centered-text .pa-v2__social,
	html body .pa-v2 .col.centered-text .pa-form-social__social,
	html body .pa-v2 .wpb_wrapper .pa-v2__social,
	html body .pa-v2 .wpb_wrapper .pa-form-social__social {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		width: auto !important;
		max-width: 100% !important;
		text-align: center !important;
	}
	html body .pa-v2__social > li,
	html body .pa-form-social__social > li,
	html body .pa-v2 .wpb_wrapper .pa-v2__social > li,
	html body .pa-v2 .wpb_wrapper .pa-form-social__social > li {
		display: flex !important;
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		float: none !important;
		text-align: center !important;
	}
}


/* ============================================================
 * Join the Movement section.
 *
 * Extracted from pa-v2.css alongside the footer so the microsite templates can
 * render [pa_join_movement] before the footer. Selector parts that would leak
 * onto the microsite (.nectar-button, #ajax-content-wrap ..., .pa-v2 .button,
 * gform-theme) were stripped during extraction - only the .pa-join-movement /
 * .pa-section / .pa-v2__btn parts are carried over.
 * ============================================================ */

.pa-v2__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 12px 30px;
	font-family: var(--pa-v2-font-sans);
	font-weight: 700 !important;
	font-size: 16px !important;
	font-style: normal;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-decoration: none;
	border-radius: 5px;
	border: 2px solid transparent;
	box-sizing: border-box;
	cursor: pointer;
	transform: none !important;
	transition:
		background-color 0.15s ease,
		color 0.15s ease,
		border-color 0.15s ease;
}

.pa-v2__btn--blue-1,
.pa-v2__btn:not(.pa-v2__btn--green-1):not(.pa-v2__btn--white-1) {
	background-color: var(--pa-v2-navy);
	color: var(--pa-v2-white);
	border-color: var(--pa-v2-navy);
}

.pa-v2__btn--blue-1:hover,
.pa-v2__btn--blue-1:focus-visible,
.pa-v2__btn:not(.pa-v2__btn--green-1):not(.pa-v2__btn--white-1):hover,
.pa-v2__btn:not(.pa-v2__btn--green-1):not(.pa-v2__btn--white-1):focus-visible {
	background-color: var(--pa-v2-white) !important;
	color: var(--pa-v2-navy) !important;
	border: 2px solid var(--pa-v2-navy) !important;
}

.pa-v2__btn--green-1 {
	background-color: var(--pa-v2-green) !important;
	color: var(--pa-v2-navy) !important;
	border-color: var(--pa-v2-green) !important;
}

.pa-v2__btn--green-1:hover,
.pa-v2__btn--green-1:focus-visible {
	background-color: var(--pa-v2-white) !important;
	color: var(--pa-v2-navy) !important;
	border: 2px solid var(--pa-v2-green) !important;
}

.pa-v2__btn--white-1 {
	background-color: var(--pa-v2-white);
	color: var(--pa-v2-navy);
	border-color: var(--pa-v2-navy);
}

.pa-v2__btn--white-1:hover,
.pa-v2__btn--white-1:focus-visible {
	background-color: var(--pa-v2-white) !important;
	color: var(--pa-v2-navy) !important;
	border: 2px solid var(--pa-v2-green) !important;
}

.pa-v2__btn-arrow {
	font-weight: 700;
}

.pa-v2-surface--dark .entry-content :is(a):where(:not(.pa-v2__btn):not(.button):not(.wp-block-button__link):not(.wp-element-button)) {
	color: var(--pa-v2-text-on-dark);
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

@media (max-width: 1250px) {
	.pa-v2__btn {
		justify-content: center;
		width: 100%;
	}
}

html body .pa-v2 .pa-v2__btn {
	font-family: var(--pa-v2-font-sans) !important;
}

html body .pa-v2 .pa-v2__header .pa-v2__btn :is(span) {
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
}

html body .pa-v2 .pa-v2__main .entry-content .pa-section.pa-insights .pa-insights__grid .pa-article__title {
	margin: 0 0 14px !important;
}

html body .pa-v2 .pa-v2__main .entry-content .pa-section.pa-insights .pa-insights__grid .pa-article__title a {
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	letter-spacing: inherit !important;
}

html body .pa-v2 .pa-v2__main .entry-content .pa-section.pa-insights .pa-insights__grid .pa-article__title a:hover {
	text-decoration: none !important;
}

html body .pa-v2 .pa-v2__main .entry-content .pa-v2__btn {
	font-family: var(--pa-v2-font-sans) !important;
}

.pa-section {
	position: relative;
	padding: clamp(64px, 6vw, 96px) 0;
	box-sizing: border-box;
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.pa-section--bleed {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	width: 100vw;
}

.pa-section__inner {
	width: 100%;
	max-width: 1480px;
	margin: 0 auto;
	padding: 0 clamp(20px, 4vw, 40px);
	box-sizing: border-box;
}

.pa-advantages__ctas .pa-v2__btn {
	width: 100%;
	justify-content: center;
}

@media (max-width: 600px) {
	.pa-advantages__ctas .pa-v2__btn {
		width: 100%;
	}
}

.pa-latest-campaign__body .pa-v2__btn {
	align-self: flex-start;
}

.pa-join-movement {
	background: var(--pa-v2-mega-bg);
}

.pa-join-movement__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
	gap: clamp(20px, 3vw, 40px);
	align-items: center;
}

.pa-join-movement__copy h2,
.pa-join-movement__copy h3,
.pa-join-movement__heading {
	margin: 0 0 10px !important;
}

.pa-join-movement__copy p {
	margin: 0;
	font-size: 16px;
	line-height: 1.5;
	color: var(--pa-v2-text);
}

.pa-join-movement__form {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.pa-join-movement__field {
	flex: 1;
	min-width: 280px;
}

.pa-join-movement__field input {
	width: 100%;
	height: 45px;
	padding: 0 22px;
	border: 1px solid rgba(29, 47, 109, 0.22);
	border-radius: 999px;
	font-family: var(--pa-v2-font-lato);
	font-size: 16px;
	color: var(--pa-v2-text);
	background: var(--pa-v2-white);
	box-sizing: border-box;
}

.pa-join-movement__field input:focus-visible {
	outline: none;
	border-color: var(--pa-v2-navy);
}

.pa-join-movement__field input::placeholder {
	color: rgba(29, 47, 109, 0.45);
}

.pa-join-movement__form .pa-v2__btn {
	height: 45px;
}

html body .pa-v2 .pa-join-movement__gform * {
	box-sizing: border-box !important;
}

html body .pa-v2 .pa-join-movement__gform {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 16px !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	flex-direction: column !important;
}

html body .pa-v2 .pa-join-movement__gform .gform_wrapper,
html body .pa-v2 .pa-join-movement__gform .gform_wrapper.gravity-theme,
html body .pa-v2 .pa-join-movement__gform form {
	display: contents !important;
	margin: 0 !important;
	padding: 0 !important;
}

html body .pa-v2 .pa-join-movement__gform .gform_body,
html body .pa-v2 .pa-join-movement__gform .gform-body {
	margin: 0 !important;
	padding: 0 !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	width: 100% !important;
	max-width: none !important;
}

html body .pa-v2 .pa-join-movement__gform .gform_fields,
html body .pa-v2 .pa-join-movement__gform ul.gform_fields {
	display: block !important;
	grid-template-columns: none !important;
	grid-row-gap: 0 !important;
	grid-column-gap: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

html body .pa-v2 .pa-join-movement__gform .gfield {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: none !important;
	grid-column: 1 / -1 !important;
	list-style: none !important;
}

html body .pa-v2 .pa-join-movement__gform .gfield_label,
html body .pa-v2 .pa-join-movement__gform .gfield_description,
html body .pa-v2 .pa-join-movement__gform .gform_required_legend,
html body .pa-v2 .pa-join-movement__gform legend.gfield_label {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

html body .pa-v2 .pa-join-movement__gform .ginput_container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

html body .pa-v2 .pa-join-movement__gform input[type="email"],
html body .pa-v2 .pa-join-movement__gform input[type="text"] {
	width: 100% !important;
	height: 52px !important;
	padding: 0 22px !important;
	border: 1.5px solid var(--pa-v2-navy) !important;
	border-radius: 6px !important;
	font-family: var(--pa-v2-font-lato) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	color: var(--pa-v2-navy) !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
}

html body .pa-v2 .pa-join-movement__gform input[type="email"]:focus,
html body .pa-v2 .pa-join-movement__gform input[type="text"]:focus,
html body .pa-v2 .pa-join-movement__gform input[type="email"]:focus-visible,
html body .pa-v2 .pa-join-movement__gform input[type="text"]:focus-visible {
	border-color: var(--pa-v2-navy) !important;
	box-shadow: 0 0 0 1px var(--pa-v2-navy) !important;
	outline: none !important;
}

html body .pa-v2 .pa-join-movement__gform input::placeholder {
	color: rgba(29, 47, 109, 0.55) !important;
	opacity: 1 !important;
}

html body .pa-v2 .pa-join-movement__gform .gform_footer,
html body .pa-v2 .pa-join-movement__gform .gform-footer {
	margin: 0 !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: none !important;
	justify-content: flex-end !important;
}

html body .pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform input[type="submit"],
html body .pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform button[type="submit"],
html body .pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform .gform_button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 4px !important;
	height: auto !important;
	width: auto !important;
	min-width: 0 !important;
	padding: 12px 30px !important;
	background-color: var(--pa-v2-green) !important;
	color: var(--pa-v2-navy) !important;
	border: 2px solid var(--pa-v2-green) !important;
	border-radius: 5px !important;
	font-family: var(--pa-v2-font-sans) !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	box-shadow: none !important;
	cursor: pointer !important;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease !important;
}

html body .pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform input[type="submit"]:hover,
html body .pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform input[type="submit"]:focus-visible,
html body .pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform button[type="submit"]:hover,
html body .pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform button[type="submit"]:focus-visible,
html body .pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform .gform_button:hover,
html body .pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform .gform_button:focus-visible {
	background-color: var(--pa-v2-white) !important;
	color: var(--pa-v2-navy) !important;
	border: 2px solid var(--pa-v2-green) !important;
	transform: none !important;
	-webkit-transform: none !important;
	-ms-transform: none !important;
	box-shadow: none !important;
}

@media (max-width: 800px) {
	.pa-join-movement__row {
		grid-template-columns: minmax(0, 1fr);
	}
	.pa-join-movement__form,
	.pa-join-movement__gform {
		justify-content: flex-start;
	}
}

@media (max-width: 640px) {
	html body .pa-v2 .pa-join-movement__gform {
		gap: 0 !important;
	}
}

html body .pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform .gform_button:focus {
	outline: none !important;
}

/*
 * Heading is <h3 class="h3">. On full v2 pages its size comes from the global
 * heading scale (`.pa-v2 :is(h3,.h3) { font-size:35px; font-weight:600 }`),
 * which is deliberately NOT in this sheet. It must also beat
 * `html body h1..h6 { font-family: Spartan !important }` from the Customizer
 * sheet, which IS loaded on the microsites - hence !important here.
 * Values match the computed style of the live homepage join section.
 */
html body .pa-v2 .pa-join-movement__heading {
	font-family: var(--pa-v2-font-sans) !important;
	font-size: 35px !important;
	font-weight: 600 !important;
	line-height: 1.1 !important;
	color: var(--pa-v2-text) !important;
}

@media (max-width: 640px) {
	html body .pa-v2 .pa-join-movement__heading {
		font-size: 24px !important;
	}
}

div#gform_fields_5 {
    display: flex !important;
    width: 100%;
    gap: 20px !important;
}

div#field_5_1 {
    width: 70% !important;
}

div#field_submit {
    width: 30% !important;
}

input#input_5_1 {
    height: 44px !important;
    font-size: 16px !important;
}

@media (max-width: 640px) {
	div#gform_fields_5 {
		flex-direction: column;
	}
	div#field_5_1 {
		width: 100% !important;
	}
	.gform-theme--foundation #field_submit {
		width: 100% !important;
	}
	html body.pa-v2 .pa-join-movement__gform {
		gap: 0 !important;
	}
}

html body.pa-v2 section.pa-section.pa-join-movement .pa-section__inner .pa-join-movement__row .pa-join-movement__gform .gform_button:focus {
	outline: none !important;
}
