/* Content remains readable without JavaScript or IntersectionObserver. */
.reveal { opacity: 1 !important; transform: none !important; }
.nav-drawer { overflow-y: auto; }
.nav-drawer.open { justify-content: flex-start; padding: 1rem 0; }
.nav-drawer a { flex-shrink: 0; }
:focus-visible { outline: 3px solid #ffd966; outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
  #stars-canvas { display: none; }
}

/* Keep the portal link readable without crowding the desktop menu. */
.nav-links { align-items: center; }
.nav-links a { white-space: nowrap; }
.nav-links .lms-link, .nav-drawer .lms-link { color: var(--gold2, #ffd966); font-weight: 600; }
@media (max-width: 1200px) {
  .nav-links { display: none; }
  .nav-hamburger { display: flex; }
}
