/**
 * Checkerboard layout: Building More and Better Homes + Transforming Housing Systems
 * (climate-resilience style — #0099CC / #B9D43A tiles, grey gutters, square images).
 */

body.hfh-bmbh-elementor-front .hfh-bmbh-el-hero-intro,
body.hfh-ths-elementor-front .hfh-bmbh-el-hero-intro {
	text-align: center;
	max-width: 52rem;
	margin-left: auto;
	margin-right: auto;
}

body.hfh-bmbh-elementor-front .hfh-bmbh-el-hero-intro p,
body.hfh-ths-elementor-front .hfh-bmbh-el-hero-intro p {
	text-align: center;
}

body.hfh-bmbh-elementor-front .hfh-bmbh-el-hero-intro blockquote,
body.hfh-ths-elementor-front .hfh-bmbh-el-hero-intro blockquote {
	margin: 1.25rem auto;
	max-width: 42rem;
	text-align: left;
	padding: 0.5rem 0 0.5rem 1rem;
	border-left: 4px solid #0099cc;
}

body.hfh-bmbh-elementor-front .hfh-bmbh-el-checker,
body.hfh-ths-elementor-front .hfh-bmbh-el-checker {
	background-color: #e8e8e8;
}

body.hfh-bmbh-elementor-front .hfh-bmbh-el-checker .elementor-widget-text-editor blockquote,
body.hfh-ths-elementor-front .hfh-bmbh-el-checker .elementor-widget-text-editor blockquote {
	margin: 1rem 0;
	padding: 0.5rem 0 0.5rem 1rem;
	border-left: 4px solid rgba(255, 255, 255, 0.85);
}

body.hfh-bmbh-elementor-front .hfh-bmbh-el-checker .elementor-widget-text-editor ul,
body.hfh-ths-elementor-front .hfh-bmbh-el-checker .elementor-widget-text-editor ul {
	padding-left: 1.25rem;
}

body.hfh-bmbh-elementor-front .hfh-bmbh-el-checker .elementor-widget-text-editor li::marker,
body.hfh-ths-elementor-front .hfh-bmbh-el-checker .elementor-widget-text-editor li::marker {
	color: rgba(255, 255, 255, 0.95);
}

body.hfh-bmbh-elementor-front .hfh-bmbh-el-checker .e-con-inner,
body.hfh-bmbh-elementor-front .hfh-bmbh-el-checker.e-con,
body.hfh-ths-elementor-front .hfh-bmbh-el-checker .e-con-inner,
body.hfh-ths-elementor-front .hfh-bmbh-el-checker.e-con {
	box-sizing: border-box;
}

/* Flex: image column must not collapse to 0 width */
body.hfh-bmbh-elementor-front .hfh-bmbh-el-checker .e-con-inner > .e-con,
body.hfh-bmbh-elementor-front .hfh-bmbh-el-checker .e-con-inner > .elementor-element,
body.hfh-ths-elementor-front .hfh-bmbh-el-checker .e-con-inner > .e-con,
body.hfh-ths-elementor-front .hfh-bmbh-el-checker .e-con-inner > .elementor-element {
	min-width: 0;
}

/* Square images — absolute fill inside aspect-ratio box */
body.hfh-bmbh-elementor-front .hfh-bmbh-el-square-img .elementor-widget-container,
body.hfh-ths-elementor-front .hfh-bmbh-el-square-img .elementor-widget-container {
	position: relative;
	aspect-ratio: 1 / 1;
	width: 100%;
	max-width: none;
	overflow: hidden;
	min-height: 12rem;
}

body.hfh-bmbh-elementor-front .hfh-bmbh-el-square-img .elementor-widget-container figure,
body.hfh-ths-elementor-front .hfh-bmbh-el-square-img .elementor-widget-container figure {
	margin: 0;
	height: 100%;
}

body.hfh-bmbh-elementor-front .hfh-bmbh-el-square-img .elementor-widget-container img,
body.hfh-ths-elementor-front .hfh-bmbh-el-square-img .elementor-widget-container img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

.hfh-bmbh-el-checker .hfh-bmbh-el-square-img .elementor-widget-container {
	position: relative;
	aspect-ratio: 1 / 1;
	width: 100%;
	max-width: none;
	overflow: hidden;
	min-height: 12rem;
}

.hfh-bmbh-el-checker .hfh-bmbh-el-square-img .elementor-widget-container figure {
	margin: 0;
	height: 100%;
}

.hfh-bmbh-el-checker .hfh-bmbh-el-square-img .elementor-widget-container img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

/* “Read more” and in-panel links — white on coloured tiles */
body.hfh-bmbh-elementor-front .hfh-bmbh-el-checker .elementor-widget-text-editor a,
body.hfh-ths-elementor-front .hfh-bmbh-el-checker .elementor-widget-text-editor a,
body.hfh-cp-elementor-front .hfh-bmbh-el-checker .elementor-widget-text-editor a {
	color: #ffffff !important;
	text-decoration: underline;
	font-weight: 700;
}

@media (max-width: 767px) {
	body.hfh-bmbh-elementor-front .hfh-bmbh-el-checker .e-con-inner,
	body.hfh-ths-elementor-front .hfh-bmbh-el-checker .e-con-inner {
		flex-direction: column !important;
	}

	body.hfh-bmbh-elementor-front .hfh-bmbh-el-square-img .elementor-widget-container,
	body.hfh-ths-elementor-front .hfh-bmbh-el-square-img .elementor-widget-container {
		max-width: 100%;
	}

	body.hfh-cp-elementor-front .hfh-bmbh-el-checker .e-con-inner {
		flex-direction: column !important;
	}

	body.hfh-cp-elementor-front .hfh-bmbh-el-square-img .elementor-widget-container {
		max-width: 100%;
	}
}
