/**
 * Who we are (Elementor): full-bleed hero + image/text rows aligned to same height.
 */

body.hfh-wwa-elementor-front {
	--hfh-wwa-section-gray: #e2e2e2;
}

/* Highlighted Opportunity band: spacer above + content row + spacer below */
body.hfh-wwa-elementor-front .elementor-element-2dfdd40,
body.hfh-wwa-elementor-front .elementor-element-e069f67,
body.hfh-wwa-elementor-front .elementor-element-401b3d5 {
	background: var(--hfh-wwa-section-gray) !important;
	background-color: var(--hfh-wwa-section-gray) !important;
}

/* Highlighted Strategic Plan band: spacer above + content row */
body.hfh-wwa-elementor-front .elementor-element-69c64d1,
body.hfh-wwa-elementor-front .elementor-element-206bfb5 {
	background: var(--hfh-wwa-section-gray) !important;
	background-color: var(--hfh-wwa-section-gray) !important;
}

/* —— Hero: photo column height matches teal panel —— */
body.hfh-wwa-elementor-front .elementor > .e-con:first-child {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

body.hfh-wwa-elementor-front .hfh-wwa-hero {
	flex-direction: row !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-hero__visual,
body.hfh-wwa-elementor-front .hfh-wwa-hero__panel {
	align-self: stretch !important;
	box-sizing: border-box !important;
}

/* True 58 / 42 split on the row (horizontal) */
body.hfh-wwa-elementor-front .hfh-wwa-hero__visual {
	flex: 1 1 58% !important;
	width: auto !important;
	max-width: 58% !important;
	min-width: 0 !important;
	min-height: 280px;
	display: flex !important;
	flex-direction: column !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-hero__panel {
	flex: 1 1 42% !important;
	width: auto !important;
	max-width: 42% !important;
	min-width: 0 !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-hero__visual > .e-con-inner {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: column !important;
	min-height: 0;
	height: 100%;
}

body.hfh-wwa-elementor-front .hfh-wwa-hero__img.elementor-widget-image {
	flex: 1 1 auto !important;
	display: flex !important;
	flex-direction: column !important;
	margin-block: 0;
}

body.hfh-wwa-elementor-front .hfh-wwa-hero__img .elementor-widget-container {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: column !important;
	min-height: 0;
}

body.hfh-wwa-elementor-front .hfh-wwa-hero__img img {
	width: 100% !important;
	flex: 1 1 auto;
	min-height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
	border: none !important;
	box-shadow: none !important;
}

/* —— Zigzag bands: image block = same height as coloured text block —— */
body.hfh-wwa-elementor-front .hfh-wwa-band {
	flex-direction: row !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-band__text,
body.hfh-wwa-elementor-front .hfh-wwa-band__media {
	align-self: stretch !important;
	box-sizing: border-box !important;
	/* Equal horizontal halves; flex + gap from Elementor share space correctly */
	flex: 1 1 0% !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-band__media {
	display: flex !important;
	flex-direction: column !important;
	min-height: 0;
	overflow: hidden;
	background-color: transparent !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-band__media > .e-con-inner {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: column !important;
	min-height: 0;
	height: 100%;
}

body.hfh-wwa-elementor-front .hfh-wwa-band__img.elementor-widget-image {
	flex: 1 1 auto !important;
	display: flex !important;
	flex-direction: column !important;
	margin-block: 0;
}

body.hfh-wwa-elementor-front .hfh-wwa-band__img .elementor-widget-container {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: column !important;
	min-height: 0;
}

body.hfh-wwa-elementor-front .hfh-wwa-band__img img {
	width: 100% !important;
	height: 100% !important;
	min-height: 0;
	object-fit: cover;
	object-position: center center;
	display: block;
	border: none !important;
	box-shadow: none !important;
}

/* —— Strategic plan: 50/50 photo | blue panel, flush, full bleed —— */
body.hfh-wwa-elementor-front .hfh-wwa-plan-split {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	flex-direction: row !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-plan-split__visual,
body.hfh-wwa-elementor-front .hfh-wwa-plan-split__panel {
	flex: 1 1 0% !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	align-self: stretch !important;
	box-sizing: border-box !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-plan-split__visual {
	min-height: 320px;
	display: flex !important;
	flex-direction: column !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-plan-split__visual > .e-con-inner {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: column !important;
	min-height: 0;
	height: 100%;
}

body.hfh-wwa-elementor-front .hfh-wwa-plan-split__img.elementor-widget-image {
	flex: 1 1 auto !important;
	display: flex !important;
	flex-direction: column !important;
	margin-block: 0;
}

body.hfh-wwa-elementor-front .hfh-wwa-plan-split__img .elementor-widget-container {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: column !important;
	min-height: 0;
}

body.hfh-wwa-elementor-front .hfh-wwa-plan-split__img img {
	width: 100% !important;
	flex: 1 1 auto;
	min-height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
	border: none !important;
	box-shadow: none !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-plan-split__panel .elementor-heading-title {
	text-transform: lowercase;
}

body.hfh-wwa-elementor-front #page,
body.hfh-wwa-elementor-front .site-content {
	overflow-x: clip;
}

@media (min-width: 768px) {
	body.hfh-wwa-elementor-front .hfh-wwa-hero,
	body.hfh-wwa-elementor-front .hfh-wwa-band,
	body.hfh-wwa-elementor-front .hfh-wwa-plan-split {
		flex-wrap: nowrap !important;
	}
}

@media (max-width: 767px) {
	body.hfh-wwa-elementor-front .elementor > .e-con:first-child {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	body.hfh-wwa-elementor-front .hfh-wwa-hero__visual,
	body.hfh-wwa-elementor-front .hfh-wwa-hero__panel {
		flex: 1 1 100% !important;
		max-width: 100% !important;
	}

	body.hfh-wwa-elementor-front .hfh-wwa-band__text,
	body.hfh-wwa-elementor-front .hfh-wwa-band__media {
		flex: 1 1 100% !important;
		max-width: 100% !important;
	}

	body.hfh-wwa-elementor-front .hfh-wwa-plan-split {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	body.hfh-wwa-elementor-front .hfh-wwa-plan-split__visual,
	body.hfh-wwa-elementor-front .hfh-wwa-plan-split__panel {
		flex: 1 1 100% !important;
		max-width: 100% !important;
	}

	body.hfh-wwa-elementor-front .hfh-wwa-plan-split__img img {
		min-height: 240px;
		height: auto !important;
		max-height: 400px;
		flex: 0 1 auto;
	}

	body.hfh-wwa-elementor-front .hfh-wwa-hero__img img {
		min-height: 240px;
		height: auto !important;
		max-height: 380px;
		flex: 0 1 auto;
	}

	body.hfh-wwa-elementor-front .hfh-wwa-band__img img {
		height: auto !important;
		min-height: 220px;
		max-height: 360px;
		flex: 0 1 auto;
	}
}

/* —— Our values: colour squares + heading accent (matches HFH reference) —— */
body.hfh-wwa-elementor-front .hfh-wwa-values-heading .elementor-heading-title {
	text-transform: lowercase;
	font-weight: 700;
	color: #1a2e32;
	position: relative;
	padding-bottom: 0.65rem;
	margin: 0 0 1.5rem;
	line-height: 1.25;
	border-bottom: none;
}

body.hfh-wwa-elementor-front .hfh-wwa-values-heading .elementor-heading-title::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 2.75rem;
	height: 2px;
	background: #86badc;
}

body.hfh-wwa-elementor-front .hfh-wwa-values__grid {
	justify-content: center !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-values__grid > .e-con-inner {
	justify-content: center;
	flex-wrap: wrap;
}

body.hfh-wwa-elementor-front .hfh-wwa-values__tile {
	aspect-ratio: 1 / 1;
	box-sizing: border-box !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 0 !important;
}

body.hfh-wwa-elementor-front .hfh-wwa-values__tile .elementor-widget-heading .elementor-heading-title {
	color: #fff !important;
	text-transform: lowercase;
	text-align: center;
	font-size: clamp(1rem, 2vw, 1.2rem);
	line-height: 1.25;
}

body.hfh-wwa-elementor-front .hfh-wwa-values__tile .elementor-widget-text-editor,
body.hfh-wwa-elementor-front .hfh-wwa-values__tile .elementor-widget-text-editor p {
	color: #fff !important;
	text-align: center;
	text-transform: lowercase;
	font-size: clamp(0.82rem, 1.65vw, 0.95rem);
	line-height: 1.45;
}

@media (max-width: 767px) {
	body.hfh-wwa-elementor-front .hfh-wwa-values__tile {
		flex: 1 1 100% !important;
		max-width: 100% !important;
		width: 100% !important;
		aspect-ratio: auto;
		min-height: 200px;
	}
}

@media (min-width: 768px) and (max-width: 1023px) {
	body.hfh-wwa-elementor-front .hfh-wwa-values__grid .hfh-wwa-values__tile {
		flex: 1 1 calc(50% - 10px) !important;
		max-width: calc(50% - 10px) !important;
		width: calc(50% - 10px) !important;
	}
}

@media (min-width: 1024px) {
	body.hfh-wwa-elementor-front .hfh-wwa-values__grid .hfh-wwa-values__tile {
		flex: 1 1 calc(25% - 15px) !important;
		max-width: calc(25% - 15px) !important;
		width: calc(25% - 15px) !important;
		min-width: 160px;
	}
}

/* —— Legacy values row (grey tiles import): colour squares without re-import —— */
body.hfh-wwa-elementor-front .hfh-wwa-plan-split + .e-con > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title {
	text-transform: lowercase;
	font-weight: 700;
	color: #1a2e32 !important;
	position: relative;
	padding-bottom: 0.65rem;
	margin: 0 0 1.5rem;
	line-height: 1.25;
}

body.hfh-wwa-elementor-front .hfh-wwa-plan-split + .e-con > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 2.75rem;
	height: 2px;
	background: #86badc;
}

body.hfh-wwa-elementor-front
	.hfh-wwa-plan-split
	+ .e-con
	> .e-con-inner
	> .e-con:not(.hfh-wwa-values__grid)
	> .e-con-inner
	> .e-con:nth-child(1) {
	background-color: #b9d43a !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

body.hfh-wwa-elementor-front
	.hfh-wwa-plan-split
	+ .e-con
	> .e-con-inner
	> .e-con:not(.hfh-wwa-values__grid)
	> .e-con-inner
	> .e-con:nth-child(2) {
	background-color: #e87431 !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

body.hfh-wwa-elementor-front
	.hfh-wwa-plan-split
	+ .e-con
	> .e-con-inner
	> .e-con:not(.hfh-wwa-values__grid)
	> .e-con-inner
	> .e-con:nth-child(3) {
	background-color: #6db3db !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

body.hfh-wwa-elementor-front
	.hfh-wwa-plan-split
	+ .e-con
	> .e-con-inner
	> .e-con:not(.hfh-wwa-values__grid)
	> .e-con-inner
	> .e-con:nth-child(4) {
	background-color: #8f2f3b !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

body.hfh-wwa-elementor-front
	.hfh-wwa-plan-split
	+ .e-con
	> .e-con-inner
	> .e-con:not(.hfh-wwa-values__grid)
	> .e-con-inner
	> .e-con
	.elementor-widget-heading
	.elementor-heading-title {
	color: #fff !important;
	text-align: center;
	text-transform: lowercase;
}

body.hfh-wwa-elementor-front
	.hfh-wwa-plan-split
	+ .e-con
	> .e-con-inner
	> .e-con:not(.hfh-wwa-values__grid)
	> .e-con-inner
	> .e-con
	.elementor-widget-text-editor,
body.hfh-wwa-elementor-front
	.hfh-wwa-plan-split
	+ .e-con
	> .e-con-inner
	> .e-con:not(.hfh-wwa-values__grid)
	> .e-con-inner
	> .e-con
	.elementor-widget-text-editor
	p {
	color: #fff !important;
	text-align: center;
	text-transform: lowercase;
}

@media (min-width: 1024px) {
	body.hfh-wwa-elementor-front
		.hfh-wwa-plan-split
		+ .e-con
		> .e-con-inner
		> .e-con:not(.hfh-wwa-values__grid)
		> .e-con-inner
		> .e-con {
		aspect-ratio: 1 / 1;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		box-sizing: border-box !important;
	}
}

@media (max-width: 767px) {
	body.hfh-wwa-elementor-front
		.hfh-wwa-plan-split
		+ .e-con
		> .e-con-inner
		> .e-con:not(.hfh-wwa-values__grid)
		> .e-con-inner
		> .e-con {
		min-height: 200px;
	}
}
