/* Mercan service highlights banner â€” v11 */

.mercan-service-banner-outer {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	background-color: #ffffff;
	padding: 1.5rem 0 1.75rem;
	margin-bottom: 0;
	box-sizing: border-box;
}

.mercan-service-banner-wrap {
	width: 100%;
	max-width: 1320px;
	margin: 0 auto;
	padding: 0 1rem;
	box-sizing: border-box;
}

.mercan-service-banner {
	width: 100%;
	background-color: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 1rem;
	box-shadow: 0 2px 16px rgba(15, 23, 42, 0.04);
	padding: 1.25rem 1rem;
	content-visibility: auto;
	contain: layout style paint;
	contain-intrinsic-size: auto 100px;
}

.mercan-service-banner-grid {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	width: 100%;
}

.mercan-service-banner-item {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.625rem;
	min-width: 0;
	width: 100%;
}

.mercan-service-banner-icon {
	flex-shrink: 0;
	width: 2.25rem;
	height: 2.25rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.mercan-service-banner-icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.mercan-service-banner-text {
	min-width: 0;
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.15rem;
	text-align: left;
}

.mercan-service-banner-title {
	font-weight: 700;
	font-size: 0.8125rem;
	line-height: 1.2;
	color: #00205b;
}

.mercan-service-banner-subtitle {
	font-size: 0.6875rem;
	line-height: 1.35;
	color: #64748b;
}


@media (min-width: 640px) {
	.mercan-service-banner-wrap {
		padding: 0 1.25rem;
	}

	.mercan-service-banner {
		padding: 1.5rem 1.25rem;
	}

	.mercan-service-banner-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: center;
		gap: 1.25rem 1.5rem;
	}
}

@media (min-width: 1024px) {
	.mercan-service-banner {
		padding: 1.5rem 1.5rem;
	}

	.mercan-service-banner-grid {
		display: grid;
		grid-template-columns: repeat(var(--mercan-item-count, 5), minmax(0, 1fr));
		align-items: center;
		gap: 0.75rem 1rem;
	}

	.mercan-service-banner-item {
		width: 100%;
		justify-content: flex-start;
	}
}

@media (min-width: 1280px) {
	.mercan-service-banner-wrap {
		padding: 0 1.5rem;
	}

	.mercan-service-banner {
		padding: 1.75rem 2rem;
	}

	.mercan-service-banner-grid {
		gap: 1rem 1.25rem;
	}

	.mercan-service-banner-item {
		gap: 0.75rem;
	}

	.mercan-service-banner-icon {
		width: 2.5rem;
		height: 2.5rem;
	}

	.mercan-service-banner-title {
		font-size: 0.875rem;
	}

	.mercan-service-banner-subtitle {
		font-size: 0.75rem;
	}
}