.ac-footer { padding-block: 4rem; }
.ac-footer a:not(.bo-btn) { color: inherit; text-decoration: none; }
.ac-footer a:not(.bo-btn):hover { color: var(--ac-brand); }
.ac-footer a:focus-visible { outline: 2px solid var(--ac-brand); outline-offset: 4px; }
.ac-footer__top { display: flex; justify-content: space-between; align-items: center; gap: 2rem; margin-bottom: 2rem; }
.ac-footer .ac-logo { width: 10.3125rem; height: 3.8671875rem; }
.ac-footer__nav { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; justify-content: flex-end; }
.ac-footer__nav a { display: flex; align-items: center; min-height: 2.75rem; font-size: .875rem; }
.ac-footer__contact { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 2.5rem; background: var(--ac-band); }
.ac-footer__contact .ac-eyebrow { font-size: .6875rem; font-weight: 400; margin: 0 0 .75rem; }
.ac-footer__contact h2 { font-size: 1.5rem; line-height: 2rem; margin: 0; color: inherit; }
.ac-footer__visit { display: flex; align-items: center; justify-content: space-between; padding-block: 2rem; }
.ac-footer__hours { width: 20rem; max-width: 100%; }
.ac-footer__hours h3 { color: var(--ac-brand); font-size: 1.125rem; line-height: 1.5; font-weight: 500; margin: 0 0 .5rem; }
.ac-footer__hours dl { margin: 0; font-size: .9375rem; line-height: 1.5; }
.ac-footer__hours dl div { display: flex; justify-content: space-between; gap: 1rem; margin-top: .5rem; }
.ac-footer__hours dt { font-weight: 400; }.ac-footer__hours dd { font-weight: 500; margin: 0; }
.ac-footer__legal { border-top: 1px solid var(--ac-ink); padding-top: 2rem; display: flex; justify-content: space-between; gap: 1rem; color: #b0b0b0; font-size: .75rem; line-height: 1.5; }
.ac-footer__legal p { margin: 0; }
.ac-footer__mobile-label { display: none; }
@media (max-width: 991px) { .ac-footer__top { align-items: flex-start; flex-direction: column; }.ac-footer__nav { justify-content: flex-start; }.ac-footer__contact { align-items: flex-start; flex-direction: column; } }
@media (max-width: 575px) {
  .ac-footer { padding-block: 3rem; }
  .ac-footer__nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; gap: 0 .75rem; }
  .ac-footer__contact { padding: 1.5rem; gap: 1.5rem; }
  .ac-footer__contact h2 { font-size: 1.25rem; line-height: 1.75rem; }
  .ac-footer__contact .ac-actions { width: 100%; display: grid; grid-template-columns: 1fr; }
  .ac-footer__contact .bo-btn { justify-content: flex-start; }
  .ac-footer__mobile-label { display: inline; }.ac-footer__desktop-label { display: none; }
  .ac-footer__legal { flex-direction: column; }
}

