html { scroll-behavior: smooth; }
body { margin: 0; }
.navbar-container { position: sticky; top: 0; z-index: 20; background: white; }
.site-dropdown { position: relative; }
.site-dropdown > summary { cursor: pointer; list-style: none; }
.site-dropdown > summary::-webkit-details-marker { display: none; }
.site-dropdown-menu { position: absolute; right: 0; top: 100%; z-index: 30; min-width: 16rem; width: max-content; max-width: min(28rem, 90vw); }
.site-dropdown-menu a { white-space: normal; }
.site-dropdown:not([open]) > .site-dropdown-menu { display: none; }
.skip-link { position: fixed; top: 0; left: 1rem; z-index: 100; background: white; padding: 1rem; transform: translateY(-120%); }
.skip-link:focus { transform: none; }
:focus-visible { outline: 3px solid #087f82; outline-offset: 4px; }
.page-content [data-aos] { opacity: 1 !important; transform: none !important; }
.page-content .logo-slider { display: flex; overflow-x: auto !important; height: auto !important; min-height: 100px; scroll-snap-type: x mandatory; }
.logo-slider > div { flex: 0 0 calc(20% - .5rem); scroll-snap-align: start; }
.logo-slider img { object-fit: contain; max-height: 100px; }
.image-dialog { position: fixed; inset: 0; padding: 2rem; border: 0; border-radius: .5rem; max-width: 95vw; max-height: 95vh; margin: auto; }
.image-dialog::backdrop { background: rgb(0 0 0 / .75); }
.image-dialog img { display: block; max-width: 85vw; max-height: 80vh; object-fit: contain; }
.image-dialog-close { position: absolute; right: .4rem; top: .1rem; border: 0; background: transparent; font-size: 2rem; line-height: 1; cursor: pointer; }
.navbar-toggler { min-width: 44px; min-height: 44px; }
.btn:active { transform: scale(.98); }
#main-content { min-height: 30vh; }
@media (max-width: 991px) {
  .site-dropdown-menu { position: static; width: 100%; max-width: 100%; }
  .logo-slider > div { flex-basis: calc(33.333% - .5rem); }
}
@media (max-width: 479px) {
  .logo-slider > div { flex-basis: calc(50% - .5rem); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .btn:active { transform: none; }
}
