/* Fontes locais do Cresce Comigo.
 *
 * Nada de CDN nem @import do Google Fonts: o ambiente bloqueia a requisicao e o
 * navegador cai em fallback sem avisar. Os .woff2 ao lado deste arquivo sao a
 * unica origem das fontes.
 *
 * Baixadas do Google Fonts (fonts.gstatic.com) em 2026-08-14. Versao lida do
 * name table de cada arquivo, nao do /vN/ da URL:
 *
 *   Bricolage Grotesque  1.001  variavel, eixo wght 200-800
 *   Figtree              2.002  variavel, eixo wght 300-900
 *   JetBrains Mono       2.211  estatica, peso 400
 *
 * As duas variaveis cobrem a faixa inteira de peso num arquivo so, entao 600/700
 * (e 400/600/700) nao pedem download extra. O @font-face declara a faixa que o
 * projeto usa, e o navegador interpola dentro dela.
 *
 * Todas as tres sao SIL Open Font License 1.1 — o texto da licenca de cada uma
 * esta ao lado, em *.OFL.txt, e precisa continuar junto se os .woff2 forem
 * copiados para outro lugar.
 *
 * Cada familia tem dois arquivos, latin e latin-ext, separados por unicode-range:
 * o portugues cabe todo em latin (a, e, i, o, u, c, a, o), e o navegador so busca
 * o latin-ext se a pagina usar algum caractere daquela faixa.
 *
 * Uso: copie o bloco de cabecalho.html para o <head>. Ele traz o preload dos
 * tres arquivos latin antes deste CSS — sem isso o navegador so descobre a fonte
 * depois de baixar e parsear o CSS, e o swap mostra o fallback nesse intervalo.
 *
 * Se algum .woff2 for renomeado, o href do preload em cabecalho.html tem que
 * mudar junto. Os dois jeitos de errar o preload falham em silencio, sem quebrar
 * a pagina — a fonte continua aparecendo, so que devagar:
 *
 *   href errado       -> o preload da 404 e o CSS busca a fonte depois, do zero.
 *                        Perde-se o ganho todo; fica so um aviso no console.
 *   sem `crossorigin` -> o preload nao casa com a busca do @font-face, que e
 *                        sempre em modo CORS, e o arquivo vem duas vezes.
 *
 * Para conferir: abra uma pagina e rode
 *   performance.getEntriesByType('resource').filter(e => e.name.endsWith('.woff2'))
 * Tem que dar exatamente tres entradas, uma por arquivo latin, com
 * initiatorType 'link'. Quatro ou mais, ou initiatorType 'css', e sinal de erro.
 */

/* As pilhas --fonte-display, --fonte-corpo e --fonte-mono NAO ficam aqui.
 *
 * Elas moram em site/tokens.css, com o resto dos tokens, pela REGRA DE OURO do
 * brief: token de cor, fonte, raio e espaco em um arquivo so. Este arquivo faz
 * uma coisa — declara as @font-face que apontam para os .woff2 ao lado.
 *
 * Quem for estilizar usa sempre a variavel, nunca o nome da familia direto: e a
 * variavel que garante que o fallback de metrica parecida vem junto.
 * `font-family: 'Figtree'` sozinho cai no padrao do navegador, que costuma ser
 * Times — serifada, de metrica bem diferente, e a pagina reflui na troca.
 */

/* Bricolage Grotesque — latin-ext */
@font-face {
  font-family: 'Bricolage Grotesque';
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
  src: url('./bricolage-grotesque-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Bricolage Grotesque — latin */
@font-face {
  font-family: 'Bricolage Grotesque';
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
  src: url('./bricolage-grotesque-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Figtree — latin-ext */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('./figtree-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Figtree — latin */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('./figtree-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* JetBrains Mono — latin-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('./jetbrains-mono-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* JetBrains Mono — latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('./jetbrains-mono-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
