/* Force strict layout alignment centering across all element layers */
.site-main,
#primary,
#content,
.site-content,
.elementor-section,
.elementor-container,
.e-con,
.e-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Ensure absolute full screen rows or nested elements fit perfectly aligned */
.elementor-section-stretched,
.elementor-section.elementor-section-height-full {
    max-width: 100% !important;
}

/* Force every column, inner wrapper, and widget content to align centered */
.elementor-column,
.elementor-column-wrap,
.elementor-widget-wrap,
.elementor-widget,
.elementor-widget-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Ensure text edits and headings inherit perfect centering */
.elementor-widget-heading,
.elementor-widget-text-editor,
.elementor-widget-image,
.elementor-widget-button {
    text-align: center !important;
    justify-content: center !important;
    align-content: center !important;
}

.elementor-heading-title,
.elementor-text-editor * {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
