/* Compact shared footer. Load after the existing facelift styles. */
html .p23-compact-footer.p23-e1-footer {
    padding: 28px 0 16px;
    color: #f5f5f5;
    background: #303030 url('/assets/facelift/orwal-footer.avif') center / cover;
    text-align: left;
    z-index: 0;
}
html .p23-compact-footer .p23-e1-footer-inner { font-size: 13px; line-height: 1.5; }
html .p23-compact-footer .p23-footer-grid {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr);
    gap: 32px;
}
html .p23-compact-footer .p23-footer-grid > * { min-width: 0; }
html .p23-compact-footer :is(h2,p) { margin: 0; }
html .p23-compact-footer h2 { margin-bottom: 12px; font-size: 18px; font-weight: 700; line-height: 1.4; }
html .p23-compact-footer a { overflow-wrap: anywhere; }
html .p23-compact-footer :is(a,button,select) { min-width: 44px; min-height: 44px; }
html .p23-compact-footer a { display: inline-flex; align-items: center; }
html .p23-compact-footer :is(a,button,select):focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
html .p23-compact-footer .p23-e1-help { margin: 0; padding: 0; border: 0; }
html .p23-compact-footer .p23-e1-help p { max-width: 30ch; margin-bottom: 12px; color: #e2e2e2; }
html .p23-compact-footer .p23-e1-help-actions { justify-content: flex-start; gap: 8px; }
html .p23-compact-footer .p23-e1-help-actions .p23-button { margin: 0; padding: 9px 12px; font-size: 13px; }
html .p23-compact-footer .p23-footer-contacts strong { display: block; color: #e2e2e2; font-size: 12px; }
html .p23-compact-footer .p23-footer-contacts p a { display: flex; width: fit-content; flex-wrap: wrap; column-gap: 5px; }
html .p23-compact-footer .p23-footer-office { margin-top: 4px; }
html .p23-compact-footer .p23-footer-contacts a span { color: #d5d5d5; }
html .p23-compact-footer .p23-footer-assistance a { font-size: 19px; font-weight: 700; }
html .p23-compact-footer .p23-footer-principles { font-size: 12px; }
html .p23-compact-footer .p23-e1-footer-socials { display: flex; justify-content: flex-start; gap: 4px; margin: 0 0 12px; flex-wrap: wrap; }
html .p23-compact-footer .p23-e1-footer-socials a { width: 44px; min-width: 44px; height: 44px; justify-content: center; font-size: 22px; }
html .p23-compact-footer .p23-bmc-button { max-width: 100%; padding: 9px 12px; text-align: center; font-size: 13px; }
html .p23-compact-footer .p23-footer-documents { display: flex; flex-wrap: wrap; gap: 0 20px; margin-top: 16px; border-top: 1px solid #777; padding-top: 8px; }
html .p23-compact-footer .p23-footer-service { display: flex; align-items: center; flex-wrap: wrap; gap: 0 20px; margin-top: 16px; padding-top: 12px; border-top: 1px solid #777; }
html .p23-compact-footer .p23-e1-footer-appearance { margin: 0; justify-content: flex-start; }
html .p23-compact-footer .p23-e1-theme { align-items: center; gap: 8px; }
html .p23-compact-footer .p23-e1-theme > span { font-size: 13px; }
html .p23-compact-footer .p23-e1-theme select { width: 150px; }
html .p23-compact-footer .p23-footer-service-links { display: flex; flex-wrap: wrap; align-items: center; gap: 0 16px; }
html .p23-compact-footer .p23-consent-settings { margin: 0; padding: 8px 0; font-size: 13px; }
html .p23-compact-footer .p23-footer-top { margin-left: auto; white-space: nowrap; }
html .p23-compact-footer .p23-footer-copy { display: flex; align-items: center; gap: 5px; font-size: 12px; }
@media (max-width: 980px) {
    html .p23-compact-footer .p23-footer-grid { gap: 20px; grid-template-columns: minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr); }
    html .p23-compact-footer .p23-footer-top { margin-left: 0; }
}
@media (max-width: 720px) {
    html .p23-compact-footer.p23-e1-footer { padding: 24px 0 16px; }
    html .p23-compact-footer .p23-footer-grid { grid-template-columns: minmax(0,1fr); gap: 20px; }
    html .p23-compact-footer .p23-footer-grid > * + * { border-top: 1px solid #777; padding-top: 20px; }
    html .p23-compact-footer h2 { margin-bottom: 8px; }
    html .p23-compact-footer .p23-e1-help p { max-width: none; }
    html .p23-compact-footer .p23-e1-footer-socials { gap: 2px; }
    html .p23-compact-footer .p23-footer-service { gap: 4px 16px; }
    html .p23-compact-footer .p23-footer-service-links { width: 100%; gap: 0 16px; }
    html .p23-compact-footer .p23-footer-copy { margin-left: auto; }
}
/* Page-specific prose styles must not enlarge the shared footer. */
html .p23-compact-footer .p23-footer-grid p { font-size: 14px; line-height: 1.55; margin: 0; }
html .p23-compact-footer .p23-e1-help p { margin-bottom: 12px; }
html .p23-compact-footer .p23-footer-office { margin-top: 4px; }
/* Reserve purchase-bar clearance only on pages that render a fixed shop bar. */
html .p23-e1-shop .p23-compact-footer.p23-e1-footer { padding-bottom: 16px; }
html .p23-e1-shop:has(.shop-cartbar,.shop-sticky-add) .p23-compact-footer.p23-e1-footer { padding-bottom: calc(104px + env(safe-area-inset-bottom)); }
