/* MGH Text Image (Blue) – stacked below 768px; side-by-side from 768px; fixed 696×696 image at 1280px+. */

.mgh-split {
	width: 100%;
	margin-top: 60px;
	background-color: #2c3a60;
}

.mgh-split.mgh-split--no-top-padding {
	margin-top: 0;
}

/* Light grey variant: light background, navy text, navy button */
.mgh-split--light-grey {
	background-color: #f2f2f2;
}

.mgh-split--light-grey .mgh-split__title,
.mgh-split--light-grey .mgh-split__description {
	color: #2c3a60;
}

.mgh-split--light-grey .mgh-split__email {
	color: #2c3a60;
}

.mgh-split--light-grey .mgh-split__email:hover {
	color: #7c859c;
}

.mgh-split__inner {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.mgh-split__media {
	width: 100%;
	flex-shrink: 0;
}

.mgh-split .mgh-split__img {
	display: block;
	width: 100%;
	aspect-ratio: 390 / 219;
	object-fit: cover;
	vertical-align: middle;
}

.mgh-split__content {
	padding: 60px 20px;
	min-width: 0;
}

.mgh-split__title {
	margin: 0 0 20px;
	line-height: 1.2;
	color: #fff;
}

/* Specificity beats Elementor per-page typography CSS (post-*.css). Token: mobile_heading_3 / heading_3. */
div.elementor-widget.elementor-widget-mgh_split .mgh-split .mgh-split__title {
	font-family: Poppins, sans-serif;
	font-size: 28px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0;
}

.mgh-split__description {
	margin: 0;
	line-height: 1.4;
	color: #fff;
}

.mgh-split__description + .mgh-split__email-wrap,
.mgh-split__description + .mgh-split__button-wrap {
	margin-top: 20px;
}

.mgh-split__email-wrap {
	margin: 0;
}

.mgh-split__email-wrap + .mgh-split__button-wrap {
	margin-top: 20px;
}

.mgh-split__email {
	color: #baa558;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	text-decoration: none;
}

.mgh-split__email:hover {
	text-decoration: underline;
	color: #baa558;
}

/* Gold button variant (on blue background) */
.mgh-split .mgh-button--gold {
	background-color: var(--mgh-gold);
	color: #fff;
}

.mgh-split a.mgh-button--gold:hover {
	background-color: var(--mgh-gold-hover);
	color: #fff;
}

/* Tablet + desktop row: 768px+. Image scales until 1280px, then locks to 696×696. */
@media (min-width: 768px) {
	.mgh-split__inner {
		flex-direction: row;
		align-items: stretch;
		gap: 40px;
	}

	/* Reversed: tablet/desktop only – text left, image right. Below 768px image is always first. */
	.mgh-split--reversed .mgh-split__inner {
		flex-direction: row-reverse;
	}

	.mgh-split__media {
		width: min(696px, 42%);
		flex-shrink: 0;
	}

	.mgh-split .mgh-split__img {
		width: 100%;
		height: auto;
		aspect-ratio: 1;
	}

	.mgh-split__content {
		flex: 1;
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: 40px 20px 40px 0;
	}

	.mgh-split--reversed .mgh-split__content {
		padding: 40px 0 40px 20px;
	}

	.mgh-split--reversed .mgh-split__inner {
		padding-right: 20px;
	}

	.mgh-split__email {
		font-size: 18px;
		font-weight: 600;
	}
}

/* Full desktop: 696×696 image, 80px gap, 50px content inset, 100px top spacing */
@media (min-width: 1280px) {
	.mgh-split {
		margin-top: 100px;
	}

	.mgh-split.mgh-split--no-top-padding {
		margin-top: 0;
	}

	.mgh-split__inner {
		gap: 80px;
	}

	.mgh-split__media {
		width: 696px;
	}

	.mgh-split .mgh-split__img {
		width: 696px;
		height: 696px;
		aspect-ratio: auto;
	}

	.mgh-split__content {
		padding: 50px 50px 50px 0;
	}

	.mgh-split--reversed .mgh-split__content {
		padding: 50px 0 50px 50px;
	}

	.mgh-split--reversed .mgh-split__inner {
		padding-right: 50px;
	}

	div.elementor-widget.elementor-widget-mgh_split .mgh-split .mgh-split__title {
		font-size: 34px;
	}
}
