/* Document defaults. No component styling here — see components.css. */

/* Self-hosted (SIL Open Font License), not loaded from fonts.googleapis.com —
   avoids sending every visitor's IP to Google on page load. Both are
   variable fonts, one file covers the full weight range used on the site. */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('/fonts/archivo-latin-variable.woff2') format('woff2');
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url('/fonts/jetbrains-mono-latin-variable.woff2') format('woff2');
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--bone);
  color: var(--basalt);
  font-family: Archivo, sans-serif;
  font-size: var(--text-base);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, p, ul, ol { margin: 0; }

a { color: var(--basalt); text-decoration: none; }
a:hover { color: var(--brass); }

img, svg { max-width: 100%; }

input[type=range] { accent-color: var(--brass); width: 100%; height: 24px; }
input[type=range]::-webkit-slider-thumb { width: 24px; height: 24px; }
input[type=range]::-moz-range-thumb { width: 24px; height: 24px; border: none; }

.mono { font-family: 'JetBrains Mono', monospace; }
.link-accent { color: var(--brass-ink); }
