/* Native buttons keep the appearance of the original navigation controls. */
.menu-toggle,
.resources-toggle {
  appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  font: inherit;
  text-align: left;
}

.menu-toggle { padding: 0; }
.resources-toggle { padding: 48px 32px; }
.menu-toggle:focus-visible,
.resources-toggle:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
[hidden] { display: none !important; }

.resources-icon { transition: transform 200ms ease; }
.resources-toggle.is-open .resources-icon { transform: rotate(180deg); }
.menu-line-top,
.menu-line-middle,
.menu-line-bottom { transition: transform 200ms ease, opacity 200ms ease; }
.menu-toggle.is-open .menu-line-top { transform: translateY(8px) rotate(-45deg); }
.menu-toggle.is-open .menu-line-middle { transform: scaleX(0); }
.menu-toggle.is-open .menu-line-bottom { transform: translateY(-8px) rotate(45deg); }

@media (max-width: 991px) {
  .menu-toggle { display: block; }
  .navigation-menu { display: none; }
  .navigation-menu.is-open {
    display: block;
    width: 100%;
    top: 100%;
    left: 0;
    right: 0;
  }
  .resources-toggle { padding: 12px 32px 12px 0; width: 100%; }
}

/* Optional motion is CSS-only; no animation engine or scroll handler is needed. */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: 0s !important; animation-duration: 0s !important; }
}
