section[id] { scroll-margin-top: 100px; }
:focus-visible { outline: 2px solid var(--orange); outline-offset: 5px; }
.hero-copy, .hero-visual, .display-copy, .app-stack { min-width: 0; }
.dash-header { gap: 12px; flex-wrap: wrap; }
.modal { max-height: calc(100dvh - 40px); overflow-y: auto; }
.hero-card { height: 400px; }
@media (max-width: 1100px) and (min-width: 801px) {
  .hero { gap: 3vw; }
  .section-pad { padding-left: 5vw; padding-right: 5vw; }
  .display-content { grid-template-columns: 1fr; }
  .app-stack { display: none; }
}
@media (max-width: 800px) {
  .hero { overflow: clip; }
  .main-nav.is-open { display: flex; position: absolute; top: 70px; left: 0; right: 0; padding: 22px; background: var(--paper); flex-direction: column; gap: 22px; border-bottom: 1px solid var(--line); box-shadow: 0 12px 20px #18382e12; }
  .hero-card { height: 315px; }
  .hero-footnote { font-size: 9px; gap: 8px; }
  .hero-footnote .footnote-dash { width: 20px; }
  .display-top { flex-wrap: wrap; }
  .marquee { gap: 22px; width: max-content; padding: 0 22px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
  .reveal { opacity: 1; transform: none; }
}
