/* VLF Magic Circle Editorial 12.14.38
 * PwC-inspired footer / sidebar on stable 12.14.31 architecture.
 * CSS only: does not move DOM nodes, inject content or create links.
 * Four columns desktop, two tablet, one phone. All languages use the same styles.
 */
:root {
  --vlf-editorial-gray:#f2f3f5;
  --vlf-editorial-gray-deep:#e9ebee;
  --vlf-editorial-ink:#151619;
  --vlf-editorial-copy:#33363b;
  --vlf-editorial-rule:#202126;
  --vlf-editorial-bordeaux:#812642;
  --vlf-editorial-copper:#aa7b5b;
}
/* Solid uninterrupted backgrounds. The site content styles are deliberately excluded. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,.footer-main,.footer-widgets,.footer-sidebar,.footer-bottom,.ast-footer-wrap,.ast-builder-footer-grid-columns,.ast-small-footer,.site-info) {
  background:var(--vlf-editorial-gray)!important;
  background-image:none!important;
  color:var(--vlf-editorial-ink)!important;
  border-left:0!important;
  border-right:0!important;
  box-shadow:none!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) {
  border-top:1px solid #d7d9dc!important;
}
/* Sidebar's background is integrated with the footer directory, no individual cards. */
body:not(.wp-admin) :is(#secondary,#sidebar,.site-sidebar,.sidebar-primary,.widget-area,.elementor-widget-sidebar,.elementor-location-sidebar,.ast-sidebar-wrapper,.sidebar) {
  background:var(--vlf-editorial-gray)!important;
  background-image:none!important;
  color:var(--vlf-editorial-ink)!important;
  border:0!important;
  box-shadow:none!important;
}
/* Disable legacy pink tiles and vertical burgundy strokes at every known widget level. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,.footer-widgets,.footer-sidebar,.footer-main,#secondary,#sidebar,.site-sidebar,.sidebar-primary,.widget-area,.elementor-widget-sidebar,.elementor-location-sidebar,.ast-sidebar-wrapper,.sidebar) :is(.widget,.widget_block,.footer-widget,.elementor-widget-container) {
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-left:0!important;
  border-right:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  color:var(--vlf-editorial-ink)!important;
  padding:0!important;
}
/* Restore deliberate spacing between sidebar rubrics without boxing them. */
body:not(.wp-admin) :is(#secondary,#sidebar,.site-sidebar,.sidebar-primary,.elementor-widget-sidebar,.elementor-location-sidebar,.ast-sidebar-wrapper,.sidebar) :is(.widget,.widget_block) {
  margin-bottom:clamp(24px,3vw,42px)!important;
}
/* The four directory headings: black, compact, with a black horizontal rule above. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,.footer-widgets,.footer-sidebar,#secondary,#sidebar,.site-sidebar,.sidebar-primary,.widget-area,.elementor-widget-sidebar,.elementor-location-sidebar,.ast-sidebar-wrapper,.sidebar) :is(.widget-title,.wp-block-heading,.elementor-heading-title,h2,h3,h4) {
  color:var(--vlf-editorial-ink)!important;
  -webkit-text-fill-color:var(--vlf-editorial-ink)!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(17px,1.35vw,21px)!important;
  font-weight:700!important;
  line-height:1.26!important;
  letter-spacing:-.025em!important;
  text-transform:none!important;
  background:transparent!important;
  border-top:2px solid var(--vlf-editorial-rule)!important;
  padding-top:14px!important;
  margin:0 0 20px!important;
  min-width:0!important;
  overflow-wrap:anywhere;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,.footer-widgets,.footer-sidebar,#secondary,#sidebar,.site-sidebar,.sidebar-primary,.widget-area,.elementor-widget-sidebar,.elementor-location-sidebar,.ast-sidebar-wrapper,.sidebar) :is(.widget-title,.wp-block-heading,.elementor-heading-title,h2,h3,h4)::after {display:none!important;content:none!important}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,.footer-widgets,.footer-sidebar,#secondary,#sidebar,.site-sidebar,.sidebar-primary,.widget-area,.elementor-widget-sidebar,.elementor-location-sidebar,.ast-sidebar-wrapper,.sidebar) :is(p,li,span,small,em,strong,label) {
  color:var(--vlf-editorial-copy)!important;
  -webkit-text-fill-color:var(--vlf-editorial-copy)!important;
}
/* Black links everywhere in directory/sidebar; burgundy is a small interaction accent. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,.footer-widgets,.footer-sidebar,#secondary,#sidebar,.site-sidebar,.sidebar-primary,.widget-area,.elementor-widget-sidebar,.elementor-location-sidebar,.ast-sidebar-wrapper,.sidebar) a:not(.button):not(.wp-block-button__link):not(.elementor-button):not(.wp-element-button),
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,.footer-widgets,.footer-sidebar,#secondary,#sidebar,.site-sidebar,.sidebar-primary,.widget-area,.elementor-widget-sidebar,.elementor-location-sidebar,.ast-sidebar-wrapper,.sidebar) a:not(.button):not(.wp-block-button__link):not(.elementor-button):not(.wp-element-button):visited {
  color:#111214!important;
  -webkit-text-fill-color:#111214!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(13px,1vw,15px)!important;
  line-height:1.55!important;
  font-weight:450!important;
  text-decoration:none!important;
  overflow-wrap:anywhere;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,.footer-widgets,.footer-sidebar,#secondary,#sidebar,.site-sidebar,.sidebar-primary,.widget-area,.elementor-widget-sidebar,.elementor-location-sidebar,.ast-sidebar-wrapper,.sidebar) a:not(.button):not(.wp-block-button__link):not(.elementor-button):not(.wp-element-button):hover {
  color:#111214!important;
  -webkit-text-fill-color:#111214!important;
  text-decoration:underline!important;
  text-decoration-color:var(--vlf-editorial-bordeaux)!important;
  text-decoration-thickness:2px!important;
  text-underline-offset:4px!important;
}
/* The four already-existing footer directory groups, no rewriting their links. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar,.footer-widget-area,.footer-widget-wrapper,.footer-columns,.footer-grid,.ast-builder-footer-grid-columns,.ast-footer-widget-area) :is(.widget,.widget_block,.footer-widget) {
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
}
/* Only lay out a group when it visibly has at least four direct columns. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar,.footer-widget-area,.footer-widget-wrapper,.footer-columns,.footer-grid,.ast-builder-footer-grid-columns,.ast-footer-widget-area,.elementor-container,.e-con-inner,.row):has(> :nth-child(4):last-child),
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar) > :is(.container,.row,.footer-widget-wrapper):has(> :nth-child(4):last-child),
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar) > .container > .row:has(> :nth-child(4):last-child) {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(22px,3vw,46px)!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
}
/* Elementor and theme percentage-based columns must fill their grid tracks. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar,.footer-widget-area,.footer-widget-wrapper,.footer-columns,.footer-grid,.ast-builder-footer-grid-columns,.ast-footer-widget-area,.elementor-container,.e-con-inner,.row):has(> :nth-child(4):last-child) > *,
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar) > :is(.container,.row,.footer-widget-wrapper):has(> :nth-child(4):last-child) > *,
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar) > .container > .row:has(> :nth-child(4):last-child) > * {
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  flex:initial!important;
  margin-inline:0!important;
}

/* Respect navigation-width container on desktop where a footer container exists. */
body:not(.wp-admin) :is(.site-footer,#colophon) > :is(.container,.ast-container,.footer-container),
body:not(.wp-admin) .elementor-location-footer > .elementor > .elementor-section > .elementor-container {
  width:calc(100% - 48px)!important;
  max-width:1440px!important;
  min-width:0!important;
  margin-inline:auto!important;
}
/* Nav columns are clean lists, not vertically centered tiles. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,.footer-widgets,.footer-sidebar) :is(ul,.menu,.wp-block-list) {
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,.footer-widgets,.footer-sidebar) :is(li,.menu-item) {
  margin:0 0 9px!important;
  padding:0!important;
  line-height:1.55!important;
}
/* Secondary social and legal footer: separate, quiet horizontal bands. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-social,.social-links,.wp-block-social-links,.elementor-social-icons-wrapper,.ast-footer-social-1-wrap,.footer-bottom,.site-info,.footer-legal,.footer-copyright,.ast-small-footer,.ast-builder-layout-element[data-section*="footer-menu"]) {
  background:var(--vlf-editorial-gray)!important;
  background-image:none!important;
  border:0!important;
  border-top:1px solid #d3d5d9!important;
  box-shadow:none!important;
  padding-top:22px!important;
  padding-bottom:22px!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.wp-block-social-links,.elementor-social-icons-wrapper,.ast-footer-social-1-wrap) {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
}
/* Small branded accents only: not a block or vertical stripe. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(a,button,input):focus-visible,
body:not(.wp-admin) :is(#secondary,#sidebar,.site-sidebar,.sidebar-primary) :is(a,button,input):focus-visible {
  outline:2px solid var(--vlf-editorial-bordeaux)!important;
  outline-offset:3px!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer,#secondary,#sidebar,.site-sidebar,.sidebar-primary) :is(button,.button,a.button,input[type=submit],.wp-block-button__link,.elementor-button) {
  background:var(--vlf-editorial-bordeaux)!important;
  border:1px solid var(--vlf-editorial-bordeaux)!important;
  border-radius:0!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:none!important;
  font-weight:700!important;
}
/* No forced mobile horizontal scrolling, no DOM relocation. */
@media(max-width:1024px){
  body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar,.footer-widget-area,.footer-widget-wrapper,.footer-columns,.footer-grid,.ast-builder-footer-grid-columns,.ast-footer-widget-area,.elementor-container,.e-con-inner,.row):has(> :nth-child(4):last-child),
  body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar) > :is(.container,.row,.footer-widget-wrapper):has(> :nth-child(4):last-child),
  body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar) > .container > .row:has(> :nth-child(4):last-child) {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:30px 24px!important;
  }
}
@media(max-width:640px){
  body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar,.footer-widget-area,.footer-widget-wrapper,.footer-columns,.footer-grid,.ast-builder-footer-grid-columns,.ast-footer-widget-area,.elementor-container,.e-con-inner,.row):has(> :nth-child(4):last-child),
  body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar) > :is(.container,.row,.footer-widget-wrapper):has(> :nth-child(4):last-child),
  body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) :is(.footer-widgets,.footer-sidebar) > .container > .row:has(> :nth-child(4):last-child) {
    grid-template-columns:minmax(0,1fr)!important;
    gap:28px!important;
  }
  body:not(.wp-admin) :is(.site-footer,#colophon) > :is(.container,.ast-container,.footer-container) {
    width:calc(100% - 32px)!important;
  }
}

/* v12.14.41 — FOOTER SOCIAL, COPYRIGHT AND LEGAL NAV: SINGLE CSS LAYER
   This file is loaded after base theme/Elementor styles, without DOM mutation.
   Preserve existing sidebar directory, all URLs and all translations. */

/* Maintain consistent contrast in the actual footer. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) {
  color:#202126!important;
  background-color:#f2f3f5!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-social,.footer-socials,.social-links,.social-icons,.footer-social-links,.footer-social-icons,.wp-block-social-links,.elementor-social-icons-wrapper,.ast-footer-social-1-wrap,.social-menu) {
  background:transparent!important;
  box-shadow:none!important;
  opacity:1!important;
}
/* Footer social groups: independent, centred, touch-friendly items with explicit gaps. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-social,.footer-socials,.footer-social-links,.footer-social-icons,.social-links,.social-icons,.social-menu,.wp-block-social-links,.elementor-social-icons-wrapper,.ast-footer-social-1-wrap)
  :is(ul,.menu,.social-links,.social-icons,.social-menu),
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(ul.social-links,ul.social-icons,ul.social-menu,ul.wp-block-social-links,ul[id*="social"],.elementor-social-icons-wrapper,.footer-social-links,.footer-social-icons,.ast-footer-social-1-wrap) {
  display:flex!important;
  flex-flow:row wrap!important;
  justify-content:center!important;
  align-items:flex-start!important;
  column-gap:clamp(16px,2.4vw,32px)!important;
  row-gap:22px!important;
  max-width:100%!important;
  min-width:0!important;
  width:auto!important;
  padding:0!important;
  margin:0 auto!important;
  list-style:none!important;
  text-align:center!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-social,.footer-socials,.footer-social-links,.footer-social-icons,.social-links,.social-icons,.social-menu,.wp-block-social-links,.elementor-social-icons-wrapper,.ast-footer-social-1-wrap)
  :is(li,.menu-item,.wp-block-social-link,.elementor-grid-item),
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(ul.social-links,ul.social-icons,ul.social-menu,ul.wp-block-social-links,ul[id*="social"]) > li {
  display:block!important;
  flex:0 1 110px!important;
  width:110px!important;
  min-width:94px!important;
  max-width:124px!important;
  padding:0!important;
  margin:0!important;
  list-style:none!important;
  float:none!important;
  text-align:center!important;
}
/* Anchors themselves also have a width: works when the theme has no list elements. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-social,.footer-socials,.footer-social-links,.footer-social-icons,.social-links,.social-icons,.social-menu,.wp-block-social-links,.elementor-social-icons-wrapper,.ast-footer-social-1-wrap)
  a,
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  a:is([href*="facebook.com"],[href*="twitter.com"],[href*="x.com"],[href*="instagram.com"],[href*="linkedin.com"],[href*="youtube.com"],[href*="tiktok.com"]) {
  display:inline-flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  gap:10px!important;
  min-height:62px!important;
  min-width:94px!important;
  max-width:124px!important;
  width:110px!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:4px 7px!important;
  border:0!important;
  border-radius:0!important;
  text-align:center!important;
  font-size:11.5px!important;
  font-family:Arial,Helvetica,sans-serif!important;
  line-height:1.4!important;
  font-weight:600!important;
  letter-spacing:.04em!important;
  color:#252529!important;
  -webkit-text-fill-color:#252529!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  text-decoration:none!important;
  opacity:1!important;
  box-shadow:none!important;
  float:none!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-social,.footer-socials,.footer-social-links,.footer-social-icons,.social-links,.social-icons,.social-menu,.wp-block-social-links,.elementor-social-icons-wrapper,.ast-footer-social-1-wrap)
  a :is(span,.social-label,.social-title,.screen-reader-text),
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  a:is([href*="facebook.com"],[href*="twitter.com"],[href*="x.com"],[href*="instagram.com"],[href*="linkedin.com"],[href*="youtube.com"],[href*="tiktok.com"]) :is(span,.social-label,.social-title) {
  color:#252529!important;
  -webkit-text-fill-color:#252529!important;
  line-height:1.4!important;
  font-size:11.5px!important;
  text-align:center!important;
  opacity:1!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-social,.footer-socials,.footer-social-links,.footer-social-icons,.social-links,.social-icons,.social-menu,.wp-block-social-links,.elementor-social-icons-wrapper,.ast-footer-social-1-wrap)
  a :is(svg,i,.fa,.fab,.social-icon),
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  a:is([href*="facebook.com"],[href*="twitter.com"],[href*="x.com"],[href*="instagram.com"],[href*="linkedin.com"],[href*="youtube.com"],[href*="tiktok.com"]) :is(svg,i,.fa,.fab,.social-icon) {
  color:#812642!important;
  fill:currentColor!important;
  flex:0 0 auto!important;
  opacity:1!important;
}
/* Copyright is a standalone calm band. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-copyright,.copyright,.copyright-text,.site-info,.ast-footer-copyright,.footer-credits) {
  color:#3a3b40!important;
  -webkit-text-fill-color:#3a3b40!important;
  text-align:center!important;
  line-height:1.7!important;
  font-size:13px!important;
  font-weight:400!important;
  opacity:1!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-copyright,.copyright,.copyright-text,.site-info,.ast-footer-copyright,.footer-credits)
  :is(p,span,small,div):not(.screen-reader-text) {
  color:#3a3b40!important;
  -webkit-text-fill-color:#3a3b40!important;
  opacity:1!important;
}
/* Dedicated legal menu: relaxed PwC-like horizontal directory with true flex gaps. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-legal,.footer-legal-links,.footer-navigation,.footer-nav,.footer-nav-menu,.footer-bottom,.footer-menu,.footer-menu-wrap,.ast-footer-menu-wrap,.ast-builder-layout-element[data-section*="footer-menu"])
  :is(ul,.menu,.ast-footer-menu,.wp-block-navigation__container,.elementor-nav-menu),
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(ul.footer-menu,ul.ast-footer-menu,ul.footer-legal-menu,ul.footer-bottom-menu,ul[id*="menu-footer"],nav[aria-label*="footer" i] ul,nav[aria-label*="legal" i] ul) {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  column-gap:clamp(20px,3.2vw,48px)!important;
  row-gap:16px!important;
  padding:0!important;
  margin:0 auto!important;
  width:auto!important;
  max-width:min(100%,1160px)!important;
  list-style:none!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-legal,.footer-legal-links,.footer-navigation,.footer-nav,.footer-nav-menu,.footer-bottom,.footer-menu,.footer-menu-wrap,.ast-footer-menu-wrap,.ast-builder-layout-element[data-section*="footer-menu"])
  :is(li,.menu-item,.wp-block-navigation-item),
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(ul.footer-menu,ul.ast-footer-menu,ul.footer-legal-menu,ul.footer-bottom-menu,ul[id*="menu-footer"]) > li {
  margin:0!important;
  padding:0!important;
  width:auto!important;
  max-width:100%!important;
  flex:0 0 auto!important;
  float:none!important;
  list-style:none!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-legal,.footer-legal-links,.footer-navigation,.footer-nav,.footer-nav-menu,.footer-bottom,.footer-menu,.footer-menu-wrap,.ast-footer-menu-wrap,.ast-builder-layout-element[data-section*="footer-menu"])
  :is(nav,.menu,ul,.elementor-nav-menu) a:not(.elementor-icon):not(.wp-block-social-link-anchor),
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(ul.footer-menu,ul.ast-footer-menu,ul.footer-legal-menu,ul.footer-bottom-menu,ul[id*="menu-footer"]) a {
  display:inline-flex!important;
  width:auto!important;
  max-width:100%!important;
  min-height:40px!important;
  align-items:center!important;
  margin:0!important;
  padding:5px 0!important;
  font-size:13px!important;
  line-height:1.5!important;
  font-weight:500!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-decoration:none!important;
  color:#17181b!important;
  -webkit-text-fill-color:#17181b!important;
  opacity:1!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-legal,.footer-legal-links,.footer-navigation,.footer-nav,.footer-nav-menu,.footer-bottom,.footer-menu,.footer-menu-wrap,.ast-footer-menu-wrap,.ast-builder-layout-element[data-section*="footer-menu"])
  a:hover {text-decoration:underline!important;text-decoration-color:#812642!important;text-underline-offset:4px!important}
/* Handle themes with bare anchors inside an explicit legal wrapper. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-legal,.footer-legal-links,.footer-bottom-links) > a,
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-legal,.footer-legal-links,.footer-bottom-links) > p > a {
  display:inline-flex!important;
  margin:7px clamp(12px,1.8vw,24px)!important;
  padding:5px 0!important;
  font-size:13px!important;
  line-height:1.5!important;
  color:#17181b!important;
  -webkit-text-fill-color:#17181b!important;
  font-weight:500!important;
  text-decoration:none!important;
}
/* Footer should have genuine breathing room and readable navigation on all sizes. */
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-social,.footer-socials,.footer-social-links,.footer-social-icons) {
  padding-block:30px!important;
}
body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
  :is(.footer-legal,.footer-legal-links,.footer-navigation,.footer-nav,.footer-bottom-links,.footer-menu-wrap,.ast-footer-menu-wrap) {
  padding-block:20px!important;
}
@media(max-width:767px){
  body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
    :is(.footer-social,.footer-socials,.footer-social-links,.footer-social-icons,.social-links,.social-icons,.social-menu,.wp-block-social-links,.elementor-social-icons-wrapper,.ast-footer-social-1-wrap)
    :is(ul,.menu,.social-links,.social-icons,.social-menu),
  body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
    :is(ul.social-links,ul.social-icons,ul.social-menu,ul.wp-block-social-links,ul[id*="social"],.elementor-social-icons-wrapper,.footer-social-links,.footer-social-icons,.ast-footer-social-1-wrap) {
    column-gap:12px!important;
    row-gap:18px!important;
  }
  body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
    :is(.footer-legal,.footer-legal-links,.footer-navigation,.footer-nav,.footer-nav-menu,.footer-bottom,.footer-menu,.footer-menu-wrap,.ast-footer-menu-wrap,.ast-builder-layout-element[data-section*="footer-menu"])
    :is(ul,.menu,.ast-footer-menu,.wp-block-navigation__container,.elementor-nav-menu),
  body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer)
    :is(ul.footer-menu,ul.ast-footer-menu,ul.footer-legal-menu,ul.footer-bottom-menu,ul[id*="menu-footer"],nav[aria-label*="footer" i] ul,nav[aria-label*="legal" i] ul){
    justify-content:flex-start!important;
    column-gap:22px!important;
    row-gap:10px!important;
    padding-inline:18px!important;
  }
}
@media(prefers-reduced-motion:reduce){
 body:not(.wp-admin) :is(.site-footer,#colophon,.elementor-location-footer) a{transition:none!important}
}
