.maintenance-service-widget-2937 {
	font-family: inherit;
    position: relative;
    z-index: 1; /* For overlay stacking context */
}

/* Background overlay */
.maintenance-service-widget-2937::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none; /* Let clicks pass through to content */
    z-index: -1; /* Behind content */
}

/* Ensure content stays above overlay */
.ms-main-title-2937,
.ms-steps-container-2937 {
    position: relative;
    z-index: 2;
}

.ms-main-title-2937 {
	text-align: center;
	margin-bottom: 40px;
}

.ms-steps-container-2937 {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.ms-step-2937 {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	align-items: center;
}

.ms-step-2937.ms-reverse-2937 {
	flex-direction: row-reverse;
}

.ms-image-col-2937 {
	flex: 0 0 100%;
	max-width: 100%;
}

.ms-image-col-2937 img {
	width: 100%;
	height: auto;
	border-radius: 8px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
	display: block;
}

.ms-text-col-2937 {
	flex: 0 0 100%;
	max-width: 100%;
}

.ms-subheading-2937 {
	margin-top: 0;
	margin-bottom: 15px;
}

.ms-description-2937 {
	margin-bottom: 15px;
}

.ms-list-2937 {
	margin: 0 0 15px 0;
	padding-left: 0;
    list-style: none;
}

.ms-list-2937 li {
	margin-bottom: 8px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.ms-list-icon-2937 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 0.25em; /* Alignment tweak */
}

.ms-list-icon-2937 svg {
    fill: currentColor;
    width: 1em;
    height: 1em;
}

.ms-conclusion-2937 {
	margin-bottom: 0;
	font-style: italic;
	color: #666;
}

/* Tablet and Desktop */
@media (min-width: 768px) {
	.ms-image-col-2937 {
		flex: 0 0 35%;
		max-width: 35%;
	}

	.ms-text-col-2937 {
		flex: 0 0 calc(65% - 30px);
		max-width: calc(65% - 30px);
	}
}