/* SPDX-License-Identifier: AGPL-3.0-or-later WITH LicenseRef-Casca-output-exception */
/* SPDX-FileCopyrightText: 2026 💀 <skell@which.is> */
/* Casca portal, self-hosted typography
 *
 * Wires the four DESIGN.md typefaces (Departure Mono, Newsreader, DM Sans,
 * JetBrains Mono) as @font-face declarations against the woff2 files in
 * site/assets/fonts/. Loaded by every portal layout BEFORE the main bundle
 * so Casca's --casca-font-* fallback stacks resolve to the named faces.
 *
 * All four faces ship under SIL Open Font License 1.1 (suitable for
 * self-host, embedding, modification, and redistribution). Bytes per face
 * documented in docs/COMPATIBILITY.md.
 *
 * font-display: swap so the fallback stack paints first and the named face
 * swaps in once loaded; matches DESIGN.md's no-FOIT preference.
 */

@font-face {
  font-family: 'Departure Mono';
  src: url('../fonts/DepartureMono-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Newsreader';
  src: url('../fonts/Newsreader-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Newsreader';
  src: url('../fonts/Newsreader-Italic.woff2') format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'DM Sans';
  src: url('../fonts/DMSans-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'DM Sans';
  src: url('../fonts/DMSans-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'DM Sans';
  src: url('../fonts/DMSans-SemiBold.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'JetBrains Mono';
  src: url('../fonts/JetBrainsMono-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
