/* ==========================================================================
   Business Sales — Dual Panel — .bs-dual-panel
   Full-bleed image left, two content blocks + CTA right, --color-gray-mid bg.
   ========================================================================== */

.bs-dual-panel {
	background: var(--color-gray-mid);
	padding-top: var(--section-py-sm);
	padding-bottom: var(--section-py-sm);
}

/* Panel grid — stacked on mobile
   ========================================================================== */

.bs-dual-panel__panel {
	display: grid;
	grid-template-columns: 1fr;
}

/* Media — image bleeds to left viewport edge
   ========================================================================== */

.bs-dual-panel__media {
	overflow: hidden;
}

.bs-dual-panel__image {
	width: 100%;
	height: 320px;
	object-fit: cover;
	object-position: center;
	display: block;
	border-radius: 0 var(--radius-lg) var(--radius-lg) 0;
}

/* Content — two blocks + CTA
   ========================================================================== */

.bs-dual-panel__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--space-6);
	padding: var(--section-py-sm) var(--container-pad);
	max-width: 560px;
}

/* Individual content block
   ========================================================================== */

.bs-dual-panel__block {
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
}

.bs-dual-panel__block-heading {
	font-size: var(--size-lg);
	font-weight: var(--weight-bold);
	color: var(--color-text);
	line-height: calc( 32 / 24 );
	margin: 0;
}

.bs-dual-panel__block-body {
	font-size: var(--size-base);
	font-weight: var(--weight-regular);
	color: var(--color-text-muted);
	line-height: calc( 26 / 16 );
	margin: 0;
}

.bs-dual-panel__block-body strong,
.bs-dual-panel__block-body b {
	font-weight: var(--weight-bold);
	color: var(--color-text);
}

/* Desktop (≥ 992px)
   ========================================================================== */

@media ( min-width: 992px ) {

	.bs-dual-panel {
		padding-top: var(--section-py);
		padding-bottom: var(--section-py);
	}

	.bs-dual-panel__panel {
		grid-template-columns: 1fr 1fr;
		align-items: stretch;
	}

	.bs-dual-panel__image {
		width: 100%;
		height: 100%;
		min-height: 515px;
	}

	.bs-dual-panel__content {
		padding-block: var(--section-py);
		padding-left: var(--space-10);
		padding-right: max(
			var(--container-pad),
			calc( ( 100vw - var(--container-max) ) / 2 + var(--container-pad) )
		);
		justify-content: center;
		max-width: none;
	}

}
