/* A shared, responsive footer rhythm for both companion apps. */
.brand-footer{background:#f7f5ea;color:#293f35;border-top:1px solid #d7dace;padding:44px 0 26px;font-size:13px;line-height:1.7;}
.brand-footer-dark{background:#263c31;color:#f6f5ed;border-color:#263c31;}
.brand-footer *{box-sizing:border-box;}
.brand-footer .footer-shell{max-width:1280px;margin:0 auto;width:calc(100% - 96px);padding:0;}
.brand-footer .footer-main{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,.8fr);gap:32px;padding-bottom:30px;}
.brand-footer a{color:inherit;text-decoration:none;}
.brand-footer a:hover{text-decoration:underline;text-underline-offset:5px;}
.brand-footer a:focus-visible{outline:2px solid currentColor;outline-offset:5px;}
.brand-footer .footer-brand{display:inline-flex;align-items:center;gap:12px;font-size:24px;font-weight:750;line-height:1.3;}
.brand-footer .footer-brand img{width:40px;height:40px;flex:none;border-radius:10px;}
.brand-footer .footer-tagline{margin:12px 0 4px;font-size:13px;line-height:1.7;opacity:.8;}
.brand-footer .footer-email{display:inline-flex;align-items:center;min-height:36px;font-size:13px;overflow-wrap:anywhere;}
.brand-footer .footer-group{display:flex;flex-direction:column;align-items:flex-start;gap:0;margin:0;min-width:0;}
.brand-footer .footer-group h2{font:600 12px/1.6 system-ui,sans-serif;letter-spacing:.06em;margin:0 0 10px;opacity:.65;}
.brand-footer .footer-group a{display:flex;align-items:center;min-height:36px;font-size:13px;line-height:1.6;}
.brand-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid #8d9a8e55;font-size:12px;}
.brand-footer .footer-languages{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px;margin:0;}
.brand-footer .footer-languages a{display:inline-flex;align-items:center;min-height:32px;font-size:12px;}
.brand-footer .footer-languages a[aria-current]{text-decoration:underline;text-underline-offset:6px;}
.brand-footer .footer-rights{margin:0;font-size:12px;line-height:1.7;opacity:.75;}
.brand-footer .footer-legal{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 28px;border-top:1px solid #8d9a8e33;padding-top:16px;}
.brand-footer .footer-trademark{font-size:11px;line-height:1.8;margin:0;max-width:40em;opacity:.65;}
.brand-footer .footer-filings{display:flex;align-items:center;flex-wrap:wrap;gap:4px 20px;}
.brand-footer .footer-filings a{display:inline-flex;align-items:center;gap:5px;min-height:28px;white-space:nowrap;font-size:11px;line-height:1.6;opacity:.8;}
.brand-footer .footer-filings img{width:14px;height:16px;flex:none;object-fit:contain;}
@media(max-width:760px){.brand-footer .footer-shell{width:calc(100% - 48px);}.brand-footer .footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 24px;}.brand-footer .footer-identity{grid-column:1/-1;}.brand-footer .footer-group a{min-height:40px;}.brand-footer .footer-bottom{flex-wrap:wrap;}.brand-footer .footer-legal{flex-direction:column;align-items:flex-start;gap:10px;}}
@media(max-width:420px){.brand-footer{padding:32px 0 22px;}.brand-footer .footer-shell{width:calc(100% - 40px);}.brand-footer .footer-main{gap:24px 18px;padding-bottom:22px;}.brand-footer .footer-languages{gap:4px 20px;}.brand-footer .footer-bottom{align-items:flex-start;flex-direction:column;gap:8px;}.brand-footer .footer-filings{flex-direction:column;align-items:flex-start;gap:2px;}}

@media(max-width:420px){.brand-footer .footer-group h2{min-height:3.2em;}}
