/* Shared keyboard and disclosure behavior; page layouts remain in their own CSS. */
:focus-visible { outline: 3px solid #0d9488 !important; outline-offset: 4px; }
.logo { height: auto; }
.footer-logo, .official-footer-logo, footer img[alt="ExcelFull"] { width: auto; }
#mobile-menu:not(.open), #official-mobile-menu:not(.open) { visibility: hidden; }
.faq-content[aria-hidden="true"] { visibility: hidden; }
.exf-form-status { margin-top: 1rem; padding: .8rem 1rem; border-radius: .75rem; background: #fff; color: #881337; font-size: .95rem; line-height: 1.5; }
.exf-form-status:empty { display: none; }
.exf-form-status[data-success="true"] { color: #065f46; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
