footer.bb-site-footer { box-sizing: border-box; width: 100%; max-width: none; margin: 0; padding: 2.5rem clamp(1.25rem, 5vw, 5rem) 1.5rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.75rem 2rem; align-items: center; background: #12352d; color: #fffdf8; text-align: left; }
.bb-site-footer .bb-footer-brand { display: flex; align-items: center; gap: .8rem; color: #fffdf8; text-decoration: none; }
.bb-site-footer .bb-footer-brand img { display: block; flex: 0 0 48px; width: 48px; height: 48px; object-fit: contain; background: #fffdf8; border-radius: .3rem; padding: 3px; box-sizing: border-box; }
.bb-site-footer .bb-footer-brand strong { display: block; color: #fffdf8; font-family: Georgia, serif; font-size: 1.25rem; line-height: 1.3; }
.bb-site-footer .bb-footer-brand small { display: block; color: #d0ddd7; font-size: .875rem; line-height: 1.5; letter-spacing: 0; }
.bb-site-footer .bb-footer-links { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; align-items: center; }
.bb-site-footer .bb-footer-links a { display: inline-block; padding: .5rem 0; font-size: 1rem; font-weight: 600; color: #fffdf8; text-decoration: underline; text-underline-offset: .3em; }
.bb-site-footer a:focus-visible { outline: 2px solid #fffdf8; outline-offset: 5px; }
.bb-site-footer .bb-footer-copyright { grid-column: 1 / -1; margin: 0; padding-top: 1rem; border-top: 1px solid #48625a; color: #d0ddd7; font-size: .875rem; font-weight: 400; line-height: 1.5; letter-spacing: 0; text-transform: none; }
.bb-research-note { margin: 1rem 1.5rem; font-size: .875rem; line-height: 1.5; color: #4f5e59; }
@media (max-width: 700px) { footer.bb-site-footer { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; } .bb-site-footer .bb-footer-links { justify-content: flex-start; } }
