/* Shared footer: the approved grouped layout, using existing site surfaces and gutters. */
body footer#site-footer.ao-site-footer{
 display:grid;grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,1fr));
 column-gap:clamp(32px,5vw,80px);row-gap:64px;
 margin-top:24px;padding:48px 0 40px;border:0;color:#0f0f0f;
}
body footer#site-footer.ao-site-footer:before{content:none!important}
.ao-site-footer .site-footer-brand p{margin:0}
.ao-site-footer .site-footer-brand .ao-footer-brand{font-size:20px;font-weight:600;line-height:1.3;gap:12px;min-height:44px;color:#0f0f0f}
.ao-site-footer .site-footer-brand .site-footer-tagline{margin-top:12px;font-size:16px;color:#0f0f0f}
.ao-site-footer .site-footer-brand .site-footer-purpose{max-width:34ch;margin-top:12px;font-size:14px;line-height:1.7;color:#55534f}
.ao-site-footer .site-footer-group{margin:0;padding:0;border:0;background:transparent}
.ao-site-footer .site-footer-group summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;gap:16px;margin:0;padding:0;list-style:none;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#0f0f0f;cursor:pointer}
.ao-site-footer .site-footer-group summary::-webkit-details-marker{display:none}
.ao-site-footer .site-footer-group summary:after{content:'+';font-size:18px;font-weight:400;letter-spacing:0}
.ao-site-footer .site-footer-group[open] summary:after{content:'−'}
.ao-site-footer .site-footer-links{display:flex;flex-direction:column;align-items:flex-start;margin-top:12px;gap:0}
.ao-site-footer .site-footer-links a{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:6px 0;color:#0f0f0f;font-size:15px;line-height:1.5;text-decoration:none}
.ao-site-footer .site-footer-links a[aria-current=page]{color:#d62828}
.ao-site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.ao-site-footer :is(a,summary):focus-visible{outline:2px solid #d62828;outline-offset:4px}
.ao-site-footer .site-footer-bottom{position:relative;grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 32px;padding-top:28px;color:#55534f;font-size:13px}
.ao-site-footer .site-footer-bottom:before{content:'';position:absolute;top:0;left:var(--ao-divider-inset,24px);right:var(--ao-divider-inset,24px);height:1px;background:#fff;pointer-events:none}
.ao-site-footer .site-footer-bottom a{display:inline-flex;align-items:center;min-height:44px;color:#55534f;text-decoration:none}
@media(min-width:701px){.ao-site-footer .site-footer-group summary{justify-content:flex-start}}
@media(max-width:700px){
 body footer#site-footer.ao-site-footer{grid-template-columns:minmax(0,1fr);row-gap:16px;padding-top:32px;padding-bottom:32px}
 .ao-site-footer .site-footer-brand{padding-bottom:20px}
 .ao-site-footer .site-footer-brand .ao-footer-brand{font-size:18px}
 .ao-site-footer .site-footer-group{position:relative;padding-top:8px}
 .ao-site-footer .site-footer-group:before{content:'';position:absolute;top:0;left:var(--ao-divider-inset,24px);right:var(--ao-divider-inset,24px);height:1px;background:#fff;pointer-events:none}
 .ao-site-footer .site-footer-links{margin-top:8px;padding-bottom:8px}
 .ao-site-footer .site-footer-bottom{margin-top:20px;padding-top:24px;font-size:12px;gap:0 20px}
}

body footer#site-footer.ao-site-footer{box-sizing:border-box;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;max-width:1360px;width:100%;margin-inline:auto;line-height:1.7}
body>footer#site-footer.ao-site-footer{width:calc(100% - 64px)}
.ao-site-footer .ao-footer-brand{display:flex;align-items:center}
.ao-site-footer .ao-footer-flag{width:30px;height:20px;flex:0 0 30px;object-fit:contain;border-radius:0}
.ao-site-footer :is(.ao-instagram-icon,.ao-linkedin-icon,.ao-x-icon){width:18px;height:18px;flex:0 0 18px}
@media(max-width:600px){body>footer#site-footer.ao-site-footer{width:calc(100% - 40px)}}
