/* Shared gradient footer and scrolling wordmark */
.site-footer{position:relative;isolation:isolate;overflow:visible;width:100vw;margin-left:calc(50% - 50vw);background:linear-gradient(125deg,#080808 0%,#242424 50%,#101010 100%);color:var(--color-dark-text);padding:4rem max(1.25rem,calc((100vw - var(--content))/2)) 0}
.footer-grid{display:grid;gap:2.5rem;padding-bottom:3rem}.footer-brand{display:flex;align-items:center;gap:.75rem;color:var(--color-dark-text);text-decoration:none}.footer-brand img{width:3.25rem;height:3.25rem;object-fit:contain}.footer-about p{max-width:27rem;margin-top:1rem;color:rgba(255,255,255,.72);font-size:1rem}
.footer-grid h2{margin-bottom:1rem;font:.78rem 'Open Sans',Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.site-footer ul{list-style:none;margin:0;padding:0;font:.9rem 'Open Sans',Arial,sans-serif;letter-spacing:0}.site-footer li{margin:.45rem 0;color:var(--color-border)}.site-footer a:hover{color:#fff}
.image-credit{display:block;width:100vw;max-width:none;box-sizing:border-box;margin:0 0 .35rem calc(-1 * max(1.25rem,calc((100vw - var(--content))/2)));padding:1.1rem max(1.25rem,calc((100vw - var(--content))/2));border-block:1px solid var(--color-border);text-align:left;line-height:1.6;overflow-wrap:anywhere;font:.78rem 'Open Sans',Arial,sans-serif;color:var(--color-border)}.image-credit a{color:#fff;text-underline-offset:.18em}
.footer-bottom{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;font:.8rem 'Open Sans',Arial,sans-serif;color:var(--color-border)}.footer-bottom p{margin:0}
.marquee{width:100vw;margin-inline:calc(-1 * max(1.25rem,calc((100vw - var(--content))/2)));overflow:hidden;padding:2.1rem 0 0;margin-top:2rem;white-space:nowrap;opacity:.06;color:#fff}.marquee-track{display:flex;width:max-content;animation:marquee 118s linear infinite}.marquee span{padding-right:.35em;font:clamp(8vw,11vw,14vw)/.95 Georgia,serif}@keyframes marquee{to{transform:translateX(-50%)}}
@media(min-width:48rem){.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2rem}}
@media(max-width:47.9375rem){.footer-bottom{flex-direction:column}}

/* Render every BKF mark element consistently in monochrome on the dark footer. */
.footer-brand img{filter:grayscale(1) invert(1)}


/* Footer mark uses its dedicated light-circle artwork; do not invert its lettering. */
.footer-brand img{filter:none}


/* "Ask an AI" links: open the standard question in a chat assistant.
   Brand marks are nominative use; each links to that provider's own service. */
.footer-ai{padding:0 0 2.25rem}
.footer-ai-links{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;margin:0;padding:0}
.footer-ai-links li{margin:0}
.footer-ai-links a{display:inline-flex;align-items:center;gap:.55rem;min-height:2.6rem;padding:.55rem 1.15rem;border:.0625rem solid rgba(255,255,255,.3);border-radius:var(--pill);font:.85rem 'Open Sans',Arial,sans-serif;color:var(--color-dark-text);text-decoration:none;transition:background var(--ease),border-color var(--ease),color var(--ease)}
.footer-ai-logo{width:1.05rem;height:1.05rem;flex:0 0 auto;fill:currentColor}
.footer-ai-links a:hover,.footer-ai-links a:focus-visible{background:var(--color-paper);border-color:var(--color-paper);color:#111}

/* Association name and column titles in the serif used for headings site-wide. */
.footer-brand span,.footer-grid h2{font-family:Georgia,serif}

/* Seal beside the AI buttons, right-aligned above the privacy link; transparent, in the footer's text colour */
@media(min-width:48rem){.site-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:2rem}
.site-footer>*{grid-column:1/-1}.site-footer>.footer-ai{grid-column:1}
.site-footer>.footer-seal{grid-column:2;align-self:center;justify-self:end;margin-bottom:2.25rem}}
.footer-seal{display:grid;place-items:center;min-height:6.5rem;padding:0;border:0;background:none;color:var(--color-dark-text);font:inherit;text-align:left;text-decoration:none}
@media(max-width:47.9375rem){.footer-seal{margin:0 0 2.25rem}}
/* three designs, only the current one is displayed; a click stores the next one for the page it opens (main.js) */
.footer-seal .seal{display:none}
.footer-seal[data-seal="0"] .seal-plaque,.footer-seal[data-seal="1"] .seal-orbit,.footer-seal[data-seal="2"] .seal-round{display:inline-flex}
.seal-plaque{padding:.3em;border:.09em solid currentColor;border-radius:.55em;font-size:.94rem}
.seal-plaque-inner{display:flex;align-items:center;gap:.85em;padding:.65em 1.15em .65em .9em;border:.07em solid rgba(247,247,247,.45);border-radius:.35em}
.seal-plaque-mark{width:2.4em;height:2.4em;flex:none}
.seal-plaque-rule{width:1px;align-self:stretch;background:rgba(247,247,247,.35)}
.seal-text{display:flex;flex-direction:column}
.seal-top{font:400 1.45em/1 Georgia,serif;letter-spacing:-.01em}
.seal-sub{margin-top:.5em;font:600 .58em/1.2 'Open Sans',Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.seal-year{margin-top:.3em;font:600 .48em/1.2 'Open Sans',Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;opacity:.6}
.seal-orbit{flex-direction:column;align-items:center;font-size:.9rem}
.seal-orbit-label{margin-top:.15em;margin-right:-.18em;font:600 .6em/1.2 'Open Sans',Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.seal-orbit-top{position:relative;top:.85em;margin-top:0}
.seal-orbit-mark{width:8.6em;height:4.66em}
.seal-round-mark{width:5.4rem;height:5.4rem}
