:root {
  color-scheme: light;
  --paper: #fff;
  --ink: #102039;
  --muted: #536b84;
  --line: #d7e2ec;
  --sky: #bedbf5;
  --accent: #235e9a;
  --font-body: "Aptos", "Segoe UI", Arial, sans-serif;
  --font-display: "Arial", "Segoe UI", sans-serif;
}
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; color: var(--ink); background: var(--paper); font: 1rem/1.5 var(--font-body); }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
a { color: inherit; }
:focus-visible { outline: 3px solid #176dbb; outline-offset: 5px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; } }
