footer.public-footer { display:block; max-width:1360px; margin:0 auto; padding:64px 64px 30px; border-top:1px solid #dfe8f3; color:#193251; }
footer.public-footer .public-footer-grid { display:grid; grid-template-columns:minmax(150px,1.25fr) repeat(4,minmax(0,1fr)); gap:32px; margin:0; align-items:start; }
.public-footer-brand p { max-width:23ch; margin:18px 0 0; color:#64748b; }
.public-footer-grid > div:not(.public-footer-brand) { display:flex; flex-direction:column; align-items:flex-start; gap:10px; min-width:0; }
.public-footer-grid h2 { margin:0 0 7px; color:inherit; font-size:14px; font-weight:700; letter-spacing:0; }
.public-footer-grid a { font-size:14px; color:#526884; overflow-wrap:anywhere; }
.public-footer-grid a:hover { color:#1675f8; }
.public-footer-grid a:focus-visible { outline:3px solid #3f8bef; outline-offset:3px; border-radius:2px; }
footer.public-footer .public-footer-bottom { display:flex; justify-content:space-between; gap:16px; margin:52px 0 0; padding-top:20px; border-top:1px solid #e4ebf3; color:#71849b; font-size:12px; }
html[data-theme="dark"] footer.public-footer { color:#e0eafa; border-color:#30445c; }
html[data-theme="dark"] .public-footer-grid a, html[data-theme="dark"] .public-footer-brand p { color:#b5c5db; }
html[data-theme="dark"] .public-footer-grid a:hover { color:#83b8ff; }
html[data-theme="dark"] footer.public-footer .public-footer-bottom { border-color:#30445c; color:#a6bad2; }
@media (max-width:1000px) { footer.public-footer { padding:48px 28px 26px; } footer.public-footer .public-footer-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px 24px; } .public-footer-brand { grid-column:1 / -1; } .public-footer-brand p { max-width:none; } }
@media (max-width:700px) { footer.public-footer .public-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 20px; } }
@media (max-width:420px) { footer.public-footer { padding-inline:22px; } footer.public-footer .public-footer-bottom { flex-wrap:wrap; margin-top:36px; } }
