.footer-credentials { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: clamp(32px, 5vw, 72px); margin: 0; scroll-margin-top: 90px; }
.footer-credentials .credential-logo { position: relative; display: block; flex: 0 0 auto; padding: 0; background: transparent; }
.footer-credentials img { display: block; width: 100%; height: auto; }
.footer-credentials .credential-logo--cor { width: calc(54px * 97 / 65); }
.footer-credentials .credential-logo--mhba { width: calc(54px * 478 / 138); }
.footer-credentials .credential-logo--cfaa { width: calc(54px * 450 / 102); max-width: 100%; }
/* Use the original alpha mask to reverse lettering without redrawing the marks. */
.credential-logo--mhba::after,
.credential-logo--cfaa::before,
.credential-logo--cfaa::after { content: ""; position: absolute; inset: 0; background: #fff; pointer-events: none; mask-size: 100% 100%; mask-repeat: no-repeat; }
.credential-logo--mhba::after { mask-image: url("../images/credentials/mhba.png"); clip-path: inset(0 0 0 36%); }
.credential-logo--cfaa::before,
.credential-logo--cfaa::after { mask-image: url("../images/credentials/cfaa-acai.png"); }
.credential-logo--cfaa::before { clip-path: inset(0 0 74% 32%); }
.credential-logo--cfaa::after { clip-path: inset(75% 0 0 26%); }
.footer-credentials .credential-logo:hover { opacity: .85; }

.footer-affiliations-row { margin-top: 40px; padding-block: 30px; border-top: 1px solid rgba(255,255,255,.16); }
.site-footer .footer-affiliations-row + .footer-note { margin-top: 0; }
@media (max-width: 640px) {
  .footer-affiliations-row { margin-top: 28px; padding-block: 26px; }
}



/* Optical sizing: COR needs extra scale beside the wider association marks. */
.footer-credentials .credential-logo--cor img { transform: scale(1.2); transform-origin: center; }

/* Six credentials: readable marks with generous tap targets at every width. */
.footer-credentials { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 28px; }
.footer-credentials .credential-logo { width: 100%; max-width: 200px; min-height: 72px; justify-self: center; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.footer-credentials img { max-height: 54px; object-fit: contain; }
.footer-credentials .credential-logo--cor { max-width: 81px; }
.footer-credentials .credential-logo--canasa { max-width: 176px; }
/* Keep the source SVG intact; reverse its lettering for the dark footer. */
.credential-logo--canasa::after { content: ""; position: absolute; inset: auto 0; aspect-ratio: 238 / 73; background: #fff; mask: url("../images/credentials/canasa.svg") center / 100% 100% no-repeat; clip-path: inset(0 0 0 32%); pointer-events: none; }
.footer-credentials .credential-logo--cedia img { max-height: 72px; }
.footer-credentials .credential-logo--bbb img { height: 48px; width: auto; }
.credential-logo--bbb span { color: #fff; font-size: 11px; line-height: 1.5; text-align: center; margin-top: 5px; }
/* Balance the upper-heavy lettering against the other credential marks. */
.credential-logo--cedia img,
.credential-logo--bbb img,
.credential-logo--bbb span { transform: translateY(7px); }
.footer-credentials .credential-logo:focus-visible { outline: 2px solid #ffe500; outline-offset: 6px; }
@media (max-width: 1100px) { .footer-credentials { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 32px; } }
@media (max-width: 640px) { .footer-credentials { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; } }

.credential-logo--mhba::after, .credential-logo--cfaa::before, .credential-logo--cfaa::after { inset: auto 0; height: auto; aspect-ratio: 478 / 138; }
.credential-logo--cfaa::before, .credential-logo--cfaa::after { aspect-ratio: 450 / 102; }
