.services-subtitle {
	margin: 5px 0 10px 0;
	color: #7A7A7A;
	font-size: 1.2rem;
}

/* Force stacked layout on mobile for the services section */
@media (max-width: 768px) {
    /* Target the container holding the service image boxes */
    h2.elementor-heading-title:contains("Angebot") ~ .elementor-container,
    .elementor-heading-title:contains("Our Services") ~ .elementor-container,
    .e-con.e-parent:has(h2.elementor-heading-title:contains("Angebot")) > .e-con-inner,
    .e-con.e-parent:has(h2.elementor-heading-title:contains("Our Services")) > .e-con-inner {
        flex-direction: column !important;
        align-items: center !important;
    }
    
    /* Ensure each child container/widget takes full width */
    .e-con.e-parent:has(h2.elementor-heading-title:contains("Angebot")) > .e-con-inner > .e-con,
    .e-con.e-parent:has(h2.elementor-heading-title:contains("Angebot")) > .e-con-inner > .elementor-widget,
    .e-con.e-parent:has(h2.elementor-heading-title:contains("Our Services")) > .e-con-inner > .e-con,
    .e-con.e-parent:has(h2.elementor-heading-title:contains("Our Services")) > .e-con-inner > .elementor-widget {
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 20px !important;
    }

	.elementor-widget-image-box .elementor-image-box-content {
		padding: 10px;
	}
	
	.elementor-widget-image-box .elementor-image-box-title {
		font-size: 1.5rem;
		word-break: break-word;
	}
	
	.services-subtitle {
		font-size: 1rem;
	}
}