footer { padding:22px 0 16px; }
footer > .wrap { width:min(1120px,calc(100% - 36px)); }
footer .footer-row { min-height:34px; padding:0 0 20px; gap:12px; }
footer .logo { font-size:21px; line-height:1.2; gap:8px; }
footer .logo img { width:34px; height:34px; }
footer .back { display:inline-flex; align-items:center; gap:8px; color:#a10bc5; font-size:14px; font-weight:700; white-space:nowrap; }
footer .back span { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:11px; background:#f8eafa; }
footer p { border:0; padding:0; }
footer .footer-message { border-top:1px solid var(--line); padding-top:16px; }
footer .footer-message strong { display:block; color:var(--ink); font-size:18px; font-weight:750; line-height:1.5; }
footer .footer-message p { margin-top:5px; color:var(--muted); font-size:14px; line-height:1.6; }
footer .demo-notice { border:0; padding:16px 0 0; font-size:12px; line-height:1.5; }
/* Subtle outer divider above the brand row; inner divider stays below it. */
footer { border-top:1px solid rgba(20,35,55,.12); }
footer .footer-message { border-top:1px solid rgba(20,35,55,.12); }
