/* The footer stays in document flow; free space belongs above it on short pages.
   All current recovered, native WordPress, journal and repair shells use these siblings. */
body:has(> .mps-site-footer) {
    display: flex;
    flex-direction: column;
    min-block-size: calc(100vh - var(--wp-admin--admin-bar--height, 0px));
    min-block-size: calc(100dvh - var(--wp-admin--admin-bar--height, 0px));
}
body:has(> .mps-site-footer) > :is(header, main, .elementor, .mps-site-footer) { flex-shrink: 0; }
body > .mps-site-footer { margin-block-start: auto; }
/* Content follows the approved two-row footer; Elementor holds every text/link. */
.mps-site-footer { background: #141c2d; color: #eee; }
.mps-footer-content { --widgets-spacing: 0; overflow-wrap: anywhere; text-align: start; }
.mps-footer-content p { margin: 0; }
.mps-footer-content .elementor-widget-text-editor { margin-block-end: 0; min-inline-size: 0; }
.mps-footer-content .mps-footer-copyright { line-height: 24px; }
.mps-footer-content .mps-footer-copyright p { line-height: 24px; }
.mps-footer-content .mps-footer-bottom { margin-block-start: 3px; }
.mps-footer-content .mps-footer-company { inline-size: auto; max-inline-size: 100%; flex: 0 1 auto; }
.mps-footer-content .mps-footer-documents {
    inline-size: auto; max-inline-size: 100%; flex: 0 1 auto; margin-inline-start: auto;
    border-inline-start: 1px solid #ffffff50; padding-inline-start: 14px;
    justify-content: flex-end;
}
.mps-footer-content.mps-footer-main .mps-footer-documents .elementor-widget-text-editor a {
    color: #eee; display: inline-block; padding-block: 2px; min-block-size: 24px;
    text-decoration: underline; text-decoration-color: #eee9; text-underline-offset: .2em;
}
.mps-footer-content.mps-footer-main .mps-footer-documents .elementor-widget-text-editor a:visited { color: #eee; }
.mps-footer-content.mps-footer-main .mps-footer-documents .elementor-widget-text-editor a:is(:hover,:focus-visible) { color: #fff; text-decoration-color: currentColor; }
.mps-footer-content a:focus-visible { outline: 2px solid #f8efb9; outline-offset: 3px; }
@media (max-width: 969px) {
    .mps-footer-content .mps-footer-documents {
        inline-size: 100%; border-inline-start: 0; border-block-start: 1px solid #ffffff30;
        padding-inline-start: 0; padding-block-start: 4px;
    }
}
@media (max-width: 779px) {
    .mps-footer-content { padding-block: 0; padding-inline: 14px; }
    .mps-footer-content > .e-con-inner { padding-block: 9px; }
}
