/* Urban Folk Footer A-57 / A-49. Uses the installed --uf-* Design System tokens.
   No palette, font file, icon library or global token definitions are duplicated. */
.elementor-location-footer:has(.uf-shared-footer)>.e-con{--content-width:100%;--padding-top:0;--padding-right:0;--padding-bottom:0;--padding-left:0;width:100%;max-width:none}
.elementor-location-footer:has(.uf-shared-footer)>.e-con>.e-con-inner{max-width:none;padding:0}
.elementor-location-footer:has(.uf-shared-footer) .elementor-widget-shortcode{width:100%}
.uf-shared-footer{container:uf-footer/inline-size;background:var(--uf-surface-subtle);border-top:var(--uf-stroke-1) solid var(--uf-border-default);color:var(--uf-text-default);font-family:var(--uf-font-sans);font-size:var(--uf-body-md-font-size, var(--uf-footer-body-md-font-size));line-height:var(--uf-body-md-line-height, var(--uf-footer-body-md-line-height));text-align:left;width:100%}
.uf-shared-footer *,.uf-shared-footer *::before,.uf-shared-footer *::after{box-sizing:border-box}
.uf-shared-footer .uf-footer__inner{max-width:var(--uf-container-max);margin:0 auto;padding:var(--uf-space-12) var(--uf-gutter-desktop) var(--uf-space-8);display:grid;gap:var(--uf-space-10)}
.uf-shared-footer .uf-footer__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,2fr);gap:var(--uf-space-8) var(--uf-space-6)}
.uf-shared-footer .uf-footer__group,.uf-shared-footer .uf-footer__social{display:grid;gap:var(--uf-space-3);align-content:start;min-width:0}
.uf-shared-footer .uf-footer__heading{margin:0;padding:0;color:var(--uf-text-default);font-family:var(--uf-font-sans);font-size:var(--uf-label-lg-font-size, var(--uf-footer-label-lg-font-size));font-weight:600;line-height:var(--uf-label-lg-line-height, var(--uf-footer-label-lg-line-height));letter-spacing:normal}
.uf-shared-footer .uf-footer__links{display:grid;gap:var(--uf-space-2);margin:0;padding:0;list-style:none}
.uf-shared-footer .uf-footer__links li,.uf-shared-footer .uf-footer__legal li{margin:0;padding:0;list-style:none}
.uf-shared-footer .uf-footer__links,.uf-shared-footer .uf-footer__legal,.uf-shared-footer .uf-footer__copyright{font-size:var(--uf-body-sm-font-size, var(--uf-footer-body-sm-font-size));line-height:var(--uf-body-sm-line-height, var(--uf-footer-body-sm-line-height));font-weight:400}
.uf-shared-footer .uf-footer__links a,.uf-shared-footer .uf-footer__links button,.uf-shared-footer .uf-footer__legal a{display:inline-flex;align-items:center;min-height:var(--uf-space-6);margin:0;padding:0;border:0;border-radius:var(--uf-radius-sm);background:none;color:var(--uf-text-default);font:inherit;text-align:left;text-decoration:none;box-shadow:none;cursor:pointer}
.uf-shared-footer .uf-footer__links button{min-height:var(--uf-control-sm)}
.uf-shared-footer .uf-footer__links a:hover,.uf-shared-footer .uf-footer__links button:hover,.uf-shared-footer .uf-footer__legal a:hover{text-decoration:underline;text-decoration-thickness:var(--uf-stroke-1);text-underline-offset:.2em}
.uf-shared-footer a:focus-visible,.uf-shared-footer button:focus-visible{outline:var(--uf-stroke-2) solid var(--uf-focus-ring);outline-offset:var(--uf-space-1)}
.uf-shared-footer .uf-footer__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--uf-space-4);padding-top:var(--uf-space-6);border-top:var(--uf-stroke-1) solid var(--uf-border-default)}
.uf-shared-footer .uf-footer__logo{display:inline-flex;align-items:center;min-height:var(--uf-control-md);border-radius:var(--uf-radius-sm)}
.uf-shared-footer .uf-footer__logo img{display:block;height:var(--uf-space-6);width:auto;max-width:100%}
.uf-shared-footer .uf-footer__legal-wrap,.uf-shared-footer .uf-footer__legal{display:flex;flex-wrap:wrap;align-items:center;gap:var(--uf-space-1) var(--uf-space-4);margin:0;padding:0;list-style:none;color:var(--uf-text-muted)}
.uf-shared-footer .uf-footer__legal a{color:var(--uf-text-muted)}
.uf-shared-footer [hidden]{display:none!important}
.uf-shared-footer .uf-footer__regions[popover]{position:fixed;inset:auto;margin:0;padding:var(--uf-space-4);min-width:calc(var(--uf-space-24)*2 + var(--uf-space-8));width:var(--uf-dialog-width-sm);max-width:calc(100vw - var(--uf-space-8));max-height:calc(100dvh - var(--uf-space-16));overflow:auto;border:var(--uf-stroke-1) solid var(--uf-border-default);border-radius:var(--uf-radius-lg);box-shadow:var(--uf-shadow-float);background:var(--uf-surface-card);color:var(--uf-text-default);font:inherit}
.uf-shared-footer .uf-footer__region-list{list-style:none;margin:0;padding:0}
.uf-shared-footer .uf-footer__region-list li{margin:0;padding:0;list-style:none}
.uf-shared-footer .uf-footer__region-label{display:block;margin-top:var(--uf-space-3);padding:var(--uf-space-2) var(--uf-space-3);color:var(--uf-text-muted);font-weight:600}
.uf-shared-footer .uf-footer__region-list a{display:flex;align-items:center;min-height:var(--uf-control-md);padding:var(--uf-space-2) var(--uf-space-3);color:var(--uf-text-default);border-radius:var(--uf-radius-md);text-decoration:none}
.uf-shared-footer .uf-footer__region-list a:hover{background:var(--uf-action-subtle-hover)}
/* A-57 component-specific container thresholds, from the canonical component CSS. */

@supports not selector(:popover-open){.uf-shared-footer .uf-footer__regions{display:none}}
@container uf-footer (max-width:879px){.uf-shared-footer .uf-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.uf-shared-footer .uf-footer__social{grid-column:1/-1}}
@container uf-footer (max-width:599px){.uf-shared-footer .uf-footer__inner{padding:var(--uf-space-10) var(--uf-gutter-mobile) var(--uf-space-6);gap:var(--uf-space-8)}.uf-shared-footer .uf-footer__grid{grid-template-columns:minmax(0,1fr);gap:var(--uf-space-8)}.uf-shared-footer .uf-footer__bottom{flex-direction:column;align-items:flex-start}}
