/* Tamalpais Strategies — font loading. Templates link this before tokens use it. */
@font-face { font-family: 'Source Serif 4'; font-weight: 400; font-style: normal;
  src: url('source-serif/SourceSerif4-Regular.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Source Serif 4'; font-weight: 400; font-style: italic;
  src: url('source-serif/SourceSerif4-It.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Source Serif 4'; font-weight: 600; font-style: normal;
  src: url('source-serif/SourceSerif4-Semibold.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Source Serif 4'; font-weight: 600; font-style: italic;
  src: url('source-serif/SourceSerif4-SemiboldIt.woff2') format('woff2'); font-display: swap; }

/* Berkeley Mono — self-hosted webfonts (US Graphics webfont license, 2026-07).
   local() first: installed desktop cuts win, woff2 downloads only when absent.
   IMPORTANT: because @font-face claims the family name, this set must stay
   COMPLETE — a partial set would shadow the installed family and synthesize
   faux weights/styles. Declare every face the system uses. */
@font-face { font-family: 'Berkeley Mono'; font-weight: 400; font-style: normal;
  src: local('Berkeley Mono Regular'), local('BerkeleyMono-Regular'), local('Berkeley Mono'),
       url('berkeley-mono/BerkeleyMono-Regular.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Berkeley Mono'; font-weight: 400; font-style: oblique;
  src: local('Berkeley Mono Oblique'), local('BerkeleyMono-Oblique'),
       url('berkeley-mono/BerkeleyMono-Oblique.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Berkeley Mono'; font-weight: 400; font-style: italic;
  src: local('Berkeley Mono Oblique'), local('BerkeleyMono-Oblique'),
       url('berkeley-mono/BerkeleyMono-Oblique.woff2') format('woff2'); font-display: swap; }
/* Wordmark weight 500 — true Medium cut (Master Fonts purchase, 2026-07). */
@font-face { font-family: 'Berkeley Mono'; font-weight: 500; font-style: normal;
  src: local('Berkeley Mono Medium'), local('BerkeleyMono-Medium'),
       url('berkeley-mono/BerkeleyMono-Medium.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Berkeley Mono'; font-weight: 500; font-style: oblique;
  src: local('Berkeley Mono Medium Oblique'), local('BerkeleyMono-MediumOblique'),
       url('berkeley-mono/BerkeleyMono-Medium-Oblique.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Berkeley Mono'; font-weight: 500; font-style: italic;
  src: local('Berkeley Mono Medium Oblique'), local('BerkeleyMono-MediumOblique'),
       url('berkeley-mono/BerkeleyMono-Medium-Oblique.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Berkeley Mono'; font-weight: 700; font-style: normal;
  src: local('Berkeley Mono Bold'), local('BerkeleyMono-Bold'),
       url('berkeley-mono/BerkeleyMono-Bold.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Berkeley Mono'; font-weight: 700; font-style: oblique;
  src: local('Berkeley Mono Bold Oblique'), local('BerkeleyMono-BoldOblique'),
       url('berkeley-mono/BerkeleyMono-Bold-Oblique.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Berkeley Mono'; font-weight: 700; font-style: italic;
  src: local('Berkeley Mono Bold Oblique'), local('BerkeleyMono-BoldOblique'),
       url('berkeley-mono/BerkeleyMono-Bold-Oblique.woff2') format('woff2'); font-display: swap; }

/* Windsor Pro — display face, self-hosted webfont (web license, 2026-07).
   The site uses this family at weight 700 only (hero h1, convergence h2).
   local() first: installed desktop cut wins; visitors download the webfont.
   Gloock (loaded per-page) remains the stack fallback. */
@font-face { font-family: 'Windsor Pro'; font-weight: 700; font-style: normal;
  src: local('Windsor Pro Bold'), local('WindsorPro-Bold'), local('Windsor Pro'),
       url('windsor/WindsorPro-Bold.woff2') format('woff2'),
       url('windsor/WindsorPro-Bold.woff') format('woff'); font-display: swap; }
