/**
 * Icon Box widget — Elementor overrides (MVV card layout).
 */
.elementor-widget-iconbox .beep-iconbox-single {
	width: 100%;
}

.elementor-widget-iconbox .beep-mvv-card {
	width: 100%;
	height: 100%;
	background-image: none;
}

.elementor-widget-iconbox .beep-mvv-icon {
	display: inline-flex;
}

.elementor-widget-iconbox .beep-mvv-icon i,
.elementor-widget-iconbox .beep-mvv-icon svg {
	color: inherit;
	fill: currentColor;
}

.elementor-widget-iconbox .beep-mvv-card h3,
.elementor-widget-iconbox .beep-mvv-card p {
	width: 100%;
}

@media (max-width: 767.98px) {
	.e-con:has(.e-con-inner > .e-grid > .elementor-widget-iconbox) {
		padding-top: 56px !important;
		padding-bottom: 56px !important;
	}

	.e-con-inner:has(> .elementor-widget-beep-heading + .e-grid > .elementor-widget-iconbox) {
		gap: 24px;
		padding-left: 16px;
		padding-right: 16px;
	}

	.e-con-inner:has(> .elementor-widget-beep-heading + .e-grid > .elementor-widget-iconbox)
		.elementor-widget-beep-heading
		.beep-section-sub {
		margin-bottom: 0;
		font-size: 15px;
		line-height: 1.65;
	}

	.e-grid:has(> .elementor-widget-iconbox) {
		grid-template-columns: minmax(0, 1fr) !important;
		grid-template-rows: none !important;
		grid-auto-rows: auto;
		gap: 20px !important;
	}

	.elementor-widget-iconbox .beep-mvv-card {
		padding: 28px 24px;
	}

	.elementor-widget-iconbox .beep-mvv-icon {
		width: 52px;
		height: 52px;
		font-size: 20px;
		margin-bottom: 16px;
	}

	.elementor-widget-iconbox .beep-mvv-card h3 {
		font-size: 1.05rem;
	}
}
