/* Wspólna stopka ma własny zakres, niezależny od motywu i układu podstrony. */
.site-footer,
.site-footer * { box-sizing: border-box; }
.site-footer {
    width: 100%;
    margin: 0;
    padding: 0;
    color: #526561;
    background: #f2f5f4;
    border: 0;
    border-top: 1px solid #d8e2dd;
    font: 400 0.875rem/1.6 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    text-align: left;
}
.site-footer .site-footer-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    gap: 1.75rem 3rem;
    width: min(1180px, calc(100% - 4rem));
    margin: 0 auto;
    padding: 3rem 0 2rem;
}
.site-footer p { margin: 0; font-size: inherit; line-height: inherit; color: inherit; }
.site-footer a { color: #192e2c; text-decoration: none; overflow-wrap: anywhere; }
.site-footer a:hover { color: #0b7665; text-decoration: underline; }
.site-footer a:focus-visible { outline: 3px solid #0b7665; outline-offset: 3px; }
.site-footer .site-footer-brand {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    min-height: 2.75rem;
    margin-bottom: 0.5rem;
    font-size: 1.05rem;
    font-weight: 900;
}
.site-footer .site-footer-brand img { display: block; width: 36px; height: 36px; border-radius: 0.6rem; }
.site-footer .site-footer-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    gap: 0 1.25rem;
    min-width: 0;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
}
.site-footer .site-footer-links a,
.site-footer .site-footer-contact a { display: inline-flex; align-items: center; min-height: 2.75rem; padding: 0.25rem 0; }
.site-footer .site-footer-contact { min-width: 0; overflow-wrap: anywhere; }
.site-footer .site-footer-copyright { align-self: end; }
@media (max-width: 700px) {
    .site-footer .site-footer-inner { grid-template-columns: minmax(0, 1fr); width: calc(100% - 2rem); gap: 1.25rem; padding: 2rem 0; }
    .site-footer .site-footer-links { gap: 0 1rem; }
}
@media print { .site-footer { display: none; } }

/* Plansza zachowuje wymiary eksportu, a stopka pozostaje poza nią i w szerokości ekranu. */
.promo-page-with-footer { width: auto; height: auto; overflow: visible; }
.promo-page-with-footer > .promo-canvas-viewport { width: 100%; overflow-x: auto; }
