/**
 * Late-loaded hero overrides (beats Divi et-cache unified CSS).
 * Figma: Homepage Desktop / Hero Slider 3064:2751
 *
 * Content rail: Divi 80% / max 1080px (~1080 @1440). Interiors stay wider.
 * Arrows + pause sit in side gutters outside that rail (35px + 48px gap).
 * Keep stable 2-col grid so framed media does not jump between slides.
 */

body.et_pb_pagebuilder_layout .wsfd-hero .et_pb_row,
body.et_pb_pagebuilder_layout .wsfd-hero .et_pb_row_0 {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body .wsfd-hero.et_pb_section {
	position: relative !important;
	overflow: hidden !important;
	--wsfd-hero-rail-width: min(
		var(--wsfd-content-width, var(--content-width, 80%)),
		var(--wsfd-content-max-width, var(--content-max-width, 1080px))
	);
	--wsfd-hero-rail-inset: max(0px, calc((100% - var(--wsfd-hero-rail-width)) / 2));
	/*
	 * Figma Frame 18: [arrow 35] + gap 48 + content + gap 48 + [arrow 35]
	 * inside 64px page gutters. Keep content rail; pull controls outside it.
	 */
	--wsfd-hero-control-inset: max(
		var(--wsfd-page-gutter, 64px),
		calc(
			var(--wsfd-hero-rail-inset) - var(--wsfd-hero-arrow-gap, 48px) -
				var(--wsfd-hero-arrow-size, 35px)
		)
	);
	--wsfd-hero-image-height: 413px;
	/*
	 * Bottom padding of content row — controllers share this so bars = image bottom.
	 * Figma: gap 32 below content row + pause 35 + section pb 48 = 115.
	 */
	--wsfd-hero-pad-bottom: 115px;
}

body .wsfd-hero .et_pb_slider {
	position: relative !important;
	overflow: hidden !important;
	/* R6: lock slider shell height so slide changes cannot reflow the page */
	--wsfd-hero-shell-height: calc(
		var(--wsfd-hero-image-height, 413px) + 100px + var(--wsfd-hero-pad-bottom, 115px)
	);
	min-height: var(--wsfd-hero-shell-height) !important;
	height: var(--wsfd-hero-shell-height) !important;
}

body .wsfd-hero .et_pb_slides {
	min-height: 100% !important;
	height: 100% !important;
}

body .wsfd-hero .et_pb_slide {
	min-height: 100% !important;
	height: 100% !important;
}

/*
 * Do NOT force opacity/visibility/display on .et_pb_slide — Divi animates those
 * with jQuery. Fighting them (esp. :has() + !important) can leave
 * et_animation_running stuck and thrash the page.
 * Inactive slides: Divi’s own display:none / active class handles it.
 */
body .wsfd-hero .et_pb_slider.et_pb_preload,
body .wsfd-hero .et_pb_preload {
	/* Never leave Divi’s preloader gif spinning over the hero */
	background-image: none !important;
}

body .wsfd-hero .et_pb_slider.et_pb_preload:before,
body .wsfd-hero .et_pb_preload:before {
	display: none !important;
	content: none !important;
}

body .wsfd-hero .et_pb_slide .et_pb_container {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
}

body .wsfd-hero .et_pb_slider_container_inner {
	/*
	 * Stable 2-col grid (Figma Frame 17: fluid copy + fixed 500px media).
	 * DOM is image then copy — place explicitly so H1/copy length cannot
	 * shift the framed image (row-reverse flex packed from the right).
	 */
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) var(--wsfd-hero-image-width, 500px) !important;
	grid-template-rows: auto !important;
	align-items: start !important;
	justify-content: stretch !important;
	column-gap: var(--wsfd-hero-content-gap, 64px) !important;
	row-gap: 0 !important;
	width: var(--wsfd-content-width, var(--content-width, 80%)) !important;
	max-width: var(--wsfd-content-max-width, var(--content-max-width, 1080px)) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	/* border-box: min-height must include pt/pb or the image is clipped. */
	min-height: calc(
		var(--wsfd-hero-image-height, 413px) + 100px + var(--wsfd-hero-pad-bottom, 115px)
	) !important;
	padding: 100px 0 var(--wsfd-hero-pad-bottom, 115px) !important;
	box-sizing: border-box !important;
}

body .wsfd-hero .et_pb_slide_with_image .et_pb_slide_description {
	float: none !important;
	position: relative !important;
	display: flex !important;
	grid-column: 1 !important;
	grid-row: 1 !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	/* Copy stacked at top; spacer + absolute bars match image bottom. */
	justify-content: flex-start !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
	/* Match framed image height so spacer can pin bars optically. */
	min-height: var(--wsfd-hero-image-height, 413px) !important;
	box-sizing: border-box !important;
}

/* Figma / sheet R5: Dunbar Tall Bold 52 / 60 (weight 700) */
body .wsfd-hero .et_pb_slider .et_pb_slide .et_pb_slide_description .et_pb_slide_title,
body .wsfd-hero .et_pb_slider .et_pb_slide .et_pb_slide_description .et_pb_slide_title a,
body .wsfd-hero .et_pb_slider .et_pb_slide_0.et_pb_slide .et_pb_slide_description .et_pb_slide_title,
body .wsfd-hero .et_pb_slider .et_pb_slide_1.et_pb_slide .et_pb_slide_description .et_pb_slide_title,
body .wsfd-hero .et_pb_slider .et_pb_slide_2.et_pb_slide .et_pb_slide_description .et_pb_slide_title,
body .wsfd-hero .et_pb_slide_title,
body .wsfd-hero .et_pb_slide_title a {
	color: #d2b99a !important;
	font-family: 'Dunbar Tall', dunbar-tall, 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
	font-size: 52px !important;
	font-weight: 700 !important;
	line-height: 60px !important;
	letter-spacing: 0 !important;
}

body .wsfd-hero .et_pb_slide_title {
	/* Flush with top edge of framed image (no Divi default title offset). */
	margin: 0 0 12px !important;
	padding: 0 !important;
	/* Wrap inside left column only — never change media column geometry */
	max-width: 100%;
	overflow-wrap: break-word;
}

/* Spacer pushes optical bottom of left column; bars sit via absolute bottom. */
body .wsfd-hero .et_pb_slide_description .et_pb_button_wrapper {
	margin: 0 !important;
	margin-top: 0 !important;
	/* Keep CTA clear of progress bars (sheet: button covered on first slide) */
	margin-bottom: 24px !important;
	position: relative;
	z-index: 5;
}

body .wsfd-hero .et_pb_slide_description::after {
	content: '';
	display: block;
	flex: 1 1 auto;
	min-height: 0;
	width: 100%;
	pointer-events: none;
}

body .wsfd-hero .et_pb_slide_content,
body .wsfd-hero .et_pb_slide_content p {
	color: #ffffff !important;
	font-family: 'New Science Serif', new-science-serif, Georgia, 'Times New Roman', serif !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	line-height: 26px !important;
	margin: 0 !important;
}

body .wsfd-hero .et_pb_slide_content {
	margin: 0 0 32px !important;
	max-width: 100%;
}

body .wsfd-hero .et_pb_slide_image,
body .wsfd-hero .et_pb_media_alignment_center .et_pb_slide_image {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	display: block !important;
	grid-column: 2 !important;
	grid-row: 1 !important;
	justify-self: stretch !important;
	width: var(--wsfd-hero-image-width, 500px) !important;
	min-width: var(--wsfd-hero-image-width, 500px) !important;
	max-width: var(--wsfd-hero-image-width, 500px) !important;
	/* Kill Divi media_alignment_center negative marginTop (layout thrash). */
	margin: 0 !important;
	margin-top: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding: 0 !important;
	transform: none !important;
}

body .wsfd-hero .et_pb_slide_image img,
body .wsfd-hero .et_pb_slide_image img.active {
	display: block !important;
	width: var(--wsfd-hero-image-width, 500px) !important;
	max-width: 100% !important;
	height: var(--wsfd-hero-image-height, 413px) !important;
	max-height: var(--wsfd-hero-image-height, 413px) !important;
	object-fit: cover !important;
	border: 6px solid #d2b99a !important;
	border-radius: 32px !important;
	box-sizing: border-box !important;
}

body .wsfd-hero .et-pb-arrow-prev,
body .wsfd-hero .et-pb-arrow-next,
body .wsfd-hero button.et-pb-arrow-prev,
body .wsfd-hero button.et-pb-arrow-next {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: var(--wsfd-hero-arrow-size, 35px) !important;
	height: var(--wsfd-hero-arrow-size, 35px) !important;
	margin-top: 0 !important;
	padding: 0 !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	background: rgba(244, 235, 224, 0.2) !important;
	border: 1.5px solid rgba(244, 235, 224, 0.5) !important;
	border-radius: 30px !important;
	color: #ffffff !important;
	font-size: 0 !important;
	opacity: 1 !important;
	z-index: 5;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	transition: background-color 0.15s ease, border-color 0.15s ease;
}

/* Figma 3064:2408 / 3064:2428 — hover = Growth fill @75% + Protection icon (R8) */
body .wsfd-hero .et-pb-arrow-prev:hover,
body .wsfd-hero .et-pb-arrow-next:hover,
body .wsfd-hero .et-pb-arrow-prev:focus-visible,
body .wsfd-hero .et-pb-arrow-next:focus-visible {
	background: rgba(244, 235, 224, 0.75) !important;
	border-color: rgba(244, 235, 224, 0.5) !important;
	color: #371f1b !important;
}

body .wsfd-hero .et-pb-arrow-prev:hover:before,
body .wsfd-hero .et-pb-arrow-next:hover:before,
body .wsfd-hero .et-pb-arrow-prev:focus-visible:before,
body .wsfd-hero .et-pb-arrow-next:focus-visible:before {
	color: #371f1b !important;
}

body .wsfd-hero .et-pb-arrow-prev {
	left: var(--wsfd-hero-control-inset) !important;
}

body .wsfd-hero .et-pb-arrow-next {
	right: var(--wsfd-hero-control-inset) !important;
}

/* Progress bars (Figma 3064:2539): bottom aligns with framed image (= pad-bottom). */
body .wsfd-hero .et-pb-controllers {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 32px !important;
	position: absolute !important;
	bottom: var(--wsfd-hero-pad-bottom, 115px) !important;
	left: var(--wsfd-hero-rail-inset) !important;
	right: auto !important;
	width: calc(
		var(--wsfd-hero-rail-width) - var(--wsfd-hero-content-gap, 64px) -
			var(--wsfd-hero-image-width, 500px)
	) !important;
	height: 6px !important;
	text-align: left !important;
	z-index: 4;
}

/* No Growth rail — Figma bars sit directly on the dark topo photo. */
body .wsfd-hero .et-pb-controllers::before {
	content: none !important;
	display: none !important;
}

body .wsfd-hero .et-pb-controllers a,
body .wsfd-hero .et-pb-controllers button.wsfd-hero__dot,
body .wsfd-hero .et-pb-controllers button {
	position: relative;
	z-index: 1;
	flex: 1 1 0 !important;
	display: block !important;
	width: auto !important;
	min-width: 0 !important;
	height: 6px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	/* Inactive bark @ 25% (Figma stroke-opacity 0.25). */
	background-color: rgba(210, 185, 154, 0.25) !important;
	border-radius: 999px !important;
	opacity: 1 !important;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 0 !important;
	text-indent: -9999px;
	overflow: hidden;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}

body .wsfd-hero .et-pb-controllers a.et-pb-active-control,
body .wsfd-hero .et-pb-controllers a[aria-current='true'],
body .wsfd-hero .et-pb-controllers button.et-pb-active-control,
body .wsfd-hero .et-pb-controllers button[aria-current='true'],
body .wsfd-hero .et-pb-controllers .et-pb-active-control {
	height: 6px !important;
	/* Active bark full (Figma #D2B99A). */
	background-color: #d2b99a !important;
}

body .wsfd-hero .et-pb-controllers a:focus-visible,
body .wsfd-hero .et-pb-controllers button:focus-visible {
	outline: 2px solid #d2b99a;
	outline-offset: 3px;
}

/* ADA pause/play — under right arrow (Figma ADA Controls: right-aligned, pb 48, gap 32 below content) */
body .wsfd-hero .wsfd-hero__pause {
	position: absolute !important;
	right: var(--wsfd-hero-control-inset) !important;
	bottom: 48px !important;
	z-index: 6;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: var(--wsfd-hero-arrow-size, 35px);
	height: var(--wsfd-hero-arrow-size, 35px);
	padding: 0;
	margin: 0;
	border: 1.5px solid rgba(244, 235, 224, 0.5);
	border-radius: 30px;
	background: rgba(244, 235, 224, 0.2);
	color: #ffffff;
	cursor: pointer;
	transition: background-color 0.15s ease, border-color 0.15s ease;
}

body .wsfd-hero .wsfd-hero__pause:hover,
body .wsfd-hero .wsfd-hero__pause:focus-visible {
	background: rgba(244, 235, 224, 0.75);
	border-color: rgba(244, 235, 224, 0.5);
	color: #371f1b;
}

body .wsfd-hero .wsfd-hero__pause:hover .wsfd-hero__pause-icon--pause span,
body .wsfd-hero .wsfd-hero__pause:focus-visible .wsfd-hero__pause-icon--pause span {
	background: #371f1b;
}

body .wsfd-hero .wsfd-hero__pause:hover .wsfd-hero__pause-icon--play,
body .wsfd-hero .wsfd-hero__pause:focus-visible .wsfd-hero__pause-icon--play {
	border-left-color: #371f1b;
}

body .wsfd-hero .wsfd-hero__pause:focus-visible {
	outline: 2px solid #d2b99a;
	outline-offset: 3px;
}

body .wsfd-hero .wsfd-hero__pause-icon--pause {
	display: inline-flex;
	align-items: stretch;
	justify-content: center;
	gap: 4px;
	width: 10px;
	height: 12px;
}

body .wsfd-hero .wsfd-hero__pause-icon--pause span {
	display: block;
	flex: 1 1 auto;
	width: 3px;
	background: currentColor;
	border-radius: 1px;
}

body .wsfd-hero .wsfd-hero__pause-icon--play {
	display: none;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent currentColor;
}

body .wsfd-hero .wsfd-hero__pause.is-paused .wsfd-hero__pause-icon--pause {
	display: none;
}

body .wsfd-hero .wsfd-hero__pause.is-paused .wsfd-hero__pause-icon--play {
	display: block;
}

@media only screen and (max-width: 1200px) {
	body .wsfd-hero {
		--wsfd-hero-image-width: 420px;
		--wsfd-hero-content-gap: 40px;
		--wsfd-hero-image-height: 347px;
		--wsfd-hero-pad-bottom: 64px;
		--wsfd-hero-shell-height: calc(
			var(--wsfd-hero-image-height) + 88px + var(--wsfd-hero-pad-bottom)
		);
	}

	body .wsfd-hero .et_pb_slider {
		min-height: var(--wsfd-hero-shell-height) !important;
		height: var(--wsfd-hero-shell-height) !important;
	}

	body .wsfd-hero .et_pb_slider_container_inner {
		padding: 88px 0 var(--wsfd-hero-pad-bottom) !important;
		min-height: var(--wsfd-hero-shell-height) !important;
	}

	body .wsfd-hero .et_pb_slide_image img,
	body .wsfd-hero .et_pb_slide_image img.active {
		height: var(--wsfd-hero-image-height) !important;
	}
}

/*
 * Tablet + phone hero (Figma Homepage: Tablet 3077:3074 / Mobile 3088:2888)
 * bars full-rail, pause under bars on the LEFT (not under right arrow).
 */
@media only screen and (max-width: 980px) {
	body .wsfd-hero {
		--wsfd-page-gutter: 24px;
		--wsfd-content-width: calc(100% - 48px);
		--wsfd-content-max-width: 1080px;
		--wsfd-hero-rail-width: min(
			var(--wsfd-content-width),
			var(--wsfd-content-max-width)
		);
		--wsfd-hero-rail-inset: max(0px, calc((100% - var(--wsfd-hero-rail-width)) / 2));
		--wsfd-hero-content-inset: var(--wsfd-hero-rail-inset);
		--wsfd-hero-content-width: var(--wsfd-hero-rail-width);
		--wsfd-hero-image-width: 100%;
		--wsfd-hero-image-height: 250px;
		--wsfd-hero-content-gap: 24px;
		/*
		 * Compact control cluster under stacked content:
		 * content→bars 24 + bars 6 + bars→btns 8 + btns 35 + pb 24 = 97.
		 */
		--wsfd-hero-mobile-pb: 24px;
		--wsfd-hero-mobile-ctrl-gap: 8px;
		--wsfd-hero-mobile-content-gap: 24px;
		--wsfd-hero-mobile-pad-bottom: calc(
			var(--wsfd-hero-mobile-content-gap) + 6px + var(--wsfd-hero-mobile-ctrl-gap) +
				var(--wsfd-hero-arrow-size, 35px) + var(--wsfd-hero-mobile-pb)
		);
		--wsfd-hero-ctrl-cluster-width: calc(
			(3 * var(--wsfd-hero-arrow-size, 35px)) + 16px
		);
		--wsfd-hero-ctrl-cluster-start: calc(
			var(--wsfd-hero-rail-inset) +
				(var(--wsfd-hero-rail-width) - var(--wsfd-hero-ctrl-cluster-width)) / 2
		);
	}

	/* Stacked hero: allow natural height (R6 lock is desktop-only) */
	body .wsfd-hero .et_pb_slider,
	body .wsfd-hero .et_pb_slides,
	body .wsfd-hero .et_pb_slide {
		height: auto !important;
		min-height: 0 !important;
		overflow: visible !important;
	}

	body .wsfd-hero.et_pb_section {
		overflow: visible !important;
	}

	body .wsfd-hero .et_pb_slider_container_inner {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		grid-template-columns: none !important;
		gap: 24px !important;
		width: var(--wsfd-content-width) !important;
		max-width: var(--wsfd-content-max-width) !important;
		padding: 64px 0 var(--wsfd-hero-mobile-pad-bottom) !important;
		min-height: 0 !important;
	}

	/* Kill desktop image-height min on copy column (was ~347px void under CTA). */
	body .wsfd-hero .et_pb_slide_with_image .et_pb_slide_description {
		min-height: 0 !important;
	}

	body .wsfd-hero .et_pb_slide_description .et_pb_button_wrapper {
		margin-bottom: 0 !important;
	}

	body .wsfd-hero .et_pb_slide_with_image .et_pb_slide_description,
	body .wsfd-hero .et_pb_slide_image,
	body .wsfd-hero .et_pb_media_alignment_center .et_pb_slide_image {
		grid-column: auto !important;
		grid-row: auto !important;
	}

	body .wsfd-hero .et_pb_slide_description::after {
		display: none;
	}

	body .wsfd-hero .et_pb_slider .et_pb_slide .et_pb_slide_description .et_pb_slide_title,
	body .wsfd-hero .et_pb_slider .et_pb_slide .et_pb_slide_description .et_pb_slide_title a,
	body .wsfd-hero .et_pb_slider .et_pb_slide_0.et_pb_slide .et_pb_slide_description .et_pb_slide_title,
	body .wsfd-hero .et_pb_slider .et_pb_slide_1.et_pb_slide .et_pb_slide_description .et_pb_slide_title,
	body .wsfd-hero .et_pb_slider .et_pb_slide_2.et_pb_slide .et_pb_slide_description .et_pb_slide_title,
	body .wsfd-hero .et_pb_slide_title,
	body .wsfd-hero .et_pb_slide_title a {
		font-size: 40px !important;
		line-height: 44px !important;
		letter-spacing: 0 !important;
		max-width: none !important;
	}

	body .wsfd-hero .et_pb_slide_title {
		max-width: none !important;
	}

	body .wsfd-hero .et_pb_slide_content,
	body .wsfd-hero .et_pb_slide_content p {
		font-size: 20px !important;
		line-height: 24px !important;
		max-width: none !important;
	}

	body .wsfd-hero .et_pb_slide_content {
		max-width: none !important;
	}

	body .wsfd-hero .et_pb_slide_image {
		flex: 0 0 auto !important;
		width: 100% !important;
		max-width: none !important;
	}

	body .wsfd-hero .et_pb_slide_image img,
	body .wsfd-hero .et_pb_slide_image img.active {
		width: 100% !important;
		height: 250px !important;
		max-height: none !important;
	}

	/* Figma tablet/mobile: arrows + pause in one row under progress bars.
	 * Beat Divi CPT `.et-db #et-boc .et-l .et-pb-arrow-*{top:50%;margin-top:-24px}`. */
	body.et-db #et-boc .et-l .wsfd-hero .et-pb-arrow-prev,
	body.et-db #et-boc .et-l .wsfd-hero .et-pb-arrow-next,
	body.et-db #et-boc .et-l .wsfd-hero .et-pb-arrow-prev.wsfd-hero__arrow,
	body.et-db #et-boc .et-l .wsfd-hero .et-pb-arrow-next.wsfd-hero__arrow,
	body .wsfd-hero .et-pb-arrow-prev,
	body .wsfd-hero .et-pb-arrow-next {
		display: inline-flex !important;
		visibility: visible !important;
		position: absolute !important;
		top: auto !important;
		bottom: var(--wsfd-hero-mobile-pb) !important;
		transform: none !important;
		margin: 0 !important;
		margin-top: 0 !important;
		opacity: 1 !important;
		/* Stronger chip on topo so L/R read at 390px */
		background: rgba(244, 235, 224, 0.35) !important;
		border-color: rgba(244, 235, 224, 0.7) !important;
		z-index: 8;
	}

	body.et-db #et-boc .et-l .wsfd-hero .et-pb-arrow-prev,
	body.et-db #et-boc .et-l .wsfd-hero .et-pb-arrow-prev.wsfd-hero__arrow,
	body .wsfd-hero .et-pb-arrow-prev {
		left: var(--wsfd-hero-ctrl-cluster-start) !important;
		right: auto !important;
	}

	body.et-db #et-boc .et-l .wsfd-hero .et-pb-arrow-next,
	body.et-db #et-boc .et-l .wsfd-hero .et-pb-arrow-next.wsfd-hero__arrow,
	body .wsfd-hero .et-pb-arrow-next {
		left: calc(
			var(--wsfd-hero-ctrl-cluster-start) + (2 * var(--wsfd-hero-arrow-size, 35px)) + 16px
		) !important;
		right: auto !important;
	}

	body.et-db #et-boc .et-l .wsfd-hero .et-pb-controllers,
	body .wsfd-hero .et-pb-controllers {
		left: var(--wsfd-hero-rail-inset) !important;
		bottom: calc(
			var(--wsfd-hero-mobile-pb) + var(--wsfd-hero-arrow-size, 35px) +
				var(--wsfd-hero-mobile-ctrl-gap)
		) !important;
		width: var(--wsfd-hero-rail-width) !important;
	}

	/* left arrow | pause | right arrow — centered under bars */
	body.et-db #et-boc .et-l .wsfd-hero .wsfd-hero__pause,
	body .wsfd-hero .wsfd-hero__pause {
		left: calc(
			var(--wsfd-hero-ctrl-cluster-start) + var(--wsfd-hero-arrow-size, 35px) + 8px
		) !important;
		right: auto !important;
		bottom: var(--wsfd-hero-mobile-pb) !important;
		visibility: visible !important;
		opacity: 1 !important;
		background: rgba(244, 235, 224, 0.35) !important;
		border-color: rgba(244, 235, 224, 0.7) !important;
		z-index: 8;
	}
}

@media only screen and (max-width: 767px) {
	body .wsfd-hero {
		--wsfd-page-gutter: 24px;
		--wsfd-content-width: calc(100% - 48px);
		--wsfd-content-max-width: 1080px;
		--wsfd-hero-rail-width: min(
			var(--wsfd-content-width),
			var(--wsfd-content-max-width)
		);
		--wsfd-hero-rail-inset: max(0px, calc((100% - var(--wsfd-hero-rail-width)) / 2));
		--wsfd-hero-content-inset: var(--wsfd-hero-rail-inset);
		--wsfd-hero-content-width: var(--wsfd-hero-rail-width);
	}
}

/* Audience cards — same Divi content rail as hero (80% / max 1080) */
body #page-container .et_pb_section.wsfd-audience-cards {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body #page-container .et_pb_section.wsfd-audience-cards .et_pb_row {
	width: var(--wsfd-content-width, var(--content-width, 80%)) !important;
	max-width: var(--wsfd-content-max-width, var(--content-max-width, 1080px)) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Tablet cards: 24px side margins */
@media only screen and (max-width: 980px) {
	body #page-container .et_pb_section.wsfd-audience-cards {
		--wsfd-content-width: calc(100% - 48px);
		--wsfd-content-max-width: 1080px;
	}

	body #page-container .et_pb_section.wsfd-audience-cards .et_pb_row {
		flex-wrap: wrap !important;
		gap: 24px !important;
		row-gap: 24px !important;
	}

	body #page-container .et_pb_section.wsfd-audience-cards .et_pb_row > .et_pb_column {
		flex: 1 1 calc(50% - 12px) !important;
		width: calc(50% - 12px) !important;
		max-width: calc(50% - 12px) !important;
		margin: 0 !important;
	}
}

/* Phone cards: single column, 24px gutters (Figma Homepage: Mobile Frame 13) */
@media only screen and (max-width: 767px) {
	body #page-container .et_pb_section.wsfd-audience-cards {
		--wsfd-content-width: calc(100% - 48px);
		--wsfd-content-max-width: 1080px;
	}

	body #page-container .et_pb_section.wsfd-audience-cards .et_pb_row > .et_pb_column {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body #page-container .et_pb_section.wsfd-audience-cards .et_pb_module_header,
	body #page-container .et_pb_section.wsfd-audience-cards .et_pb_module_header a {
		font-size: 22px !important;
		line-height: 26px !important;
	}
}

/* Late-loaded: must include hover or green base beats style.css terracotta. */
body #page-container .et_pb_section.wsfd-audience-cards .et_pb_button,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_0,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_1,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_2 {
	background-color: #0f5624 !important;
	border: 2px solid #448843 !important;
	border-radius: 4px !important;
	color: #ffffff !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	padding: 6px 12px !important;
	display: inline-flex !important;
	align-items: center !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	white-space: normal !important;
	width: auto !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

body #page-container .et_pb_section.wsfd-audience-cards .et_pb_button:hover,
body #page-container .et_pb_section.wsfd-audience-cards .et_pb_button:focus-visible,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button:hover,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button:focus-visible,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_0:hover,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_0:focus-visible,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_1:hover,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_1:focus-visible,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_2:hover,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_2:focus-visible {
	background-color: #d1422a !important;
	border-color: #942c1b !important;
	color: #ffffff !important;
	padding: 6px 12px !important;
	display: inline-flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	white-space: normal !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

body #page-container .et_pb_section.wsfd-audience-cards .et_pb_button::after,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_0::after,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_1::after,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_2::after {
	content: none !important;
	display: none !important;
}

body #page-container .et_pb_section.wsfd-audience-cards .et_pb_button:hover::after,
body #page-container .et_pb_section.wsfd-audience-cards .et_pb_button:focus-visible::after,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_0:hover::after,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_0:focus-visible::after,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_1:hover::after,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_1:focus-visible::after,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_2:hover::after,
body #page-container .et_pb_section.wsfd-audience-cards a.et_pb_button_2:focus-visible::after {
	content: "" !important;
	display: inline-block !important;
	width: 16px !important;
	height: 16px !important;
	margin: 0 !important;
	float: none !important;
	flex: 0 0 16px !important;
	color: #54150a !important;
	background-color: #54150a !important;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='8' cy='8' r='7' stroke='%23000' stroke-width='1.5'/%3E%3Cpath d='M5.5 8h5M8 5.5L10.5 8 8 10.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='8' cy='8' r='7' stroke='%23000' stroke-width='1.5'/%3E%3Cpath d='M5.5 8h5M8 5.5L10.5 8 8 10.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	-webkit-mask-size: contain !important;
	mask-size: contain !important;
	-webkit-mask-repeat: no-repeat !important;
	mask-repeat: no-repeat !important;
	opacity: 1 !important;
	position: static !important;
	transform: none !important;
	font-size: 0 !important;
	line-height: 0 !important;
}
