/* What Defines Us — Elementor layout helpers (fonts/colors live in Elementor) */

body.elementor-page-18 .hv-defines-eyebrow .elementor-heading-title {
	display: inline-flex;
	align-items: center;
	gap: 14px;
}

body.elementor-page-18 .hv-defines-eyebrow .elementor-heading-title::before {
	content: "";
	display: block;
	width: 36px;
	height: 1px;
	background: #c4a574;
}

body.elementor-page-18 .hv-defines-col-title .elementor-heading-title::after {
	content: "";
	display: block;
	width: 40px;
	height: 1px;
	margin-top: 10px;
	background: #c4a574;
}

/* Equal-height gallery — all 3 images same square height */
body.elementor-page-18 .hv-defines-gallery .elementor-column,
body.elementor-page-18 .hv-defines-gallery .hv-defines-shot {
	overflow: hidden;
	background: #ebe6df;
}

body.elementor-page-18 .hv-defines-gallery .elementor-widget-image,
body.elementor-page-18 .hv-defines-gallery .hv-defines-img {
	margin: 0 !important;
	width: 100% !important;
}

body.elementor-page-18 .hv-defines-gallery .elementor-widget-image .elementor-widget-container,
body.elementor-page-18 .hv-defines-gallery .hv-defines-img .elementor-widget-container {
	position: relative !important;
	width: 100% !important;
	height: 0 !important;
	padding-bottom: 100% !important; /* lock equal square height */
	overflow: hidden !important;
	background: #ebe6df;
	margin: 0 !important;
}

body.elementor-page-18 .hv-defines-gallery .elementor-image {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.elementor-page-18 .hv-defines-gallery .elementor-widget-image img,
body.elementor-page-18 .hv-defines-gallery .hv-defines-img img,
body.elementor-page-18 .hv-defines-gallery .elementor-image img,
body.elementor-page-18 .elementor-element-hvdimg1 img,
body.elementor-page-18 .elementor-element-hvdimg2 img,
body.elementor-page-18 .elementor-element-hvdimg3 img {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	object-fit: cover !important;
	object-position: center center !important;
	display: block !important;
	margin: 0 !important;
}

body.elementor-page-18 .hv-defines-item-text p {
	margin: 0;
}

/* Tight heading → description (kill Elementor 20px widget gap) */
body.elementor-page-18 .hv-defines-lists {
	--kit-widget-spacing: 0px;
	--widget-spacing: 0px;
}

body.elementor-page-18 .hv-defines-lists .elementor-widget:not(:last-child),
body.elementor-page-18 .hv-defines-lists .hv-defines-item-title,
body.elementor-page-18 .hv-defines-lists .hv-defines-item-text,
body.elementor-page-18 .hv-defines-lists .hv-defines-item-title.elementor-widget,
body.elementor-page-18 .hv-defines-lists .hv-defines-item-text.elementor-widget {
	margin-bottom: 0 !important;
	margin-block-end: 0 !important;
}

body.elementor-page-18 .hv-defines-lists .hv-defines-item-title > .elementor-widget-container {
	margin-bottom: 0 !important;
	margin-block-end: 0 !important;
	padding-bottom: 0 !important;
}

body.elementor-page-18 .hv-defines-lists .hv-defines-item-title .elementor-heading-title {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.25 !important;
	font-size: 16px !important;
}

body.elementor-page-18 .hv-defines-lists .hv-defines-item-text > .elementor-widget-container {
	margin-top: 2px !important;
	margin-bottom: 0 !important;
	margin-block-end: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

body.elementor-page-18 .hv-defines-lists .hv-defines-item-text p {
	margin: 0 !important;
	line-height: 1.55 !important;
	font-size: 14px !important;
}

/* Small space before the next heading only */
body.elementor-page-18 .hv-defines-lists .hv-defines-item-text + .hv-defines-item-title > .elementor-widget-container {
	margin-top: 16px !important;
}

@media (max-width: 767px) {
	body.elementor-page-18 .hv-defines-col--principles {
		border-left-width: 0 !important;
		border-top: 1px solid rgba(5, 31, 52, 0.14) !important;
		padding-left: 0 !important;
		padding-top: 28px !important;
		margin-top: 8px !important;
	}

	body.elementor-page-18 .hv-defines-gallery .elementor-column {
		width: 100% !important;
		margin-bottom: 10px;
	}
}
