@font-face { font-family: 'Nunito'; src: url('/fonts/nunito-latin-wght-normal.woff2') format('woff2'); font-weight: 200 1000; font-display: swap; }
@font-face { font-family: 'Zilla Slab'; src: url('/fonts/zilla-slab-latin-500-normal.woff2') format('woff2'); font-weight: 500; font-display: swap; }
@font-face { font-family: 'Zilla Slab'; src: url('/fonts/zilla-slab-latin-600-normal.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Zilla Slab'; src: url('/fonts/zilla-slab-latin-700-normal.woff2') format('woff2'); font-weight: 700; font-display: swap; }

:root {
  --red: #D71920;
  --red-dark: #A8121A;
  --ink: #141414;
  --line: #E0E0DD;
  --line-soft: #E6E6E3;
  --muted: #5C5C5C;
  --faint: #6F6F6F;
  --slab: 'Zilla Slab', Georgia, serif;
  color-scheme: light;
}
*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: #FFFFFF;
  color: var(--ink);
  font-family: 'Nunito', system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
}
input, textarea, select, button { font-family: inherit; }
input::placeholder, textarea::placeholder { color: var(--faint); }
:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
.vh {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden;
  clip-path: inset(50%); border: 0; white-space: nowrap;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; }
}
