/* Fontes self-hosted (subset latin, woff2) — baixadas do Fontsource.
   O subset latin (U+0000-00FF) cobre TODOS os acentos do português.

   Todas as famílias estão sob a SIL Open Font License 1.1 e vivem em
   static/fonts/ — sem CDN em runtime, que é o que a Política §8 promete ao
   convidado.

   A ORDEM e os nomes seguem apps/builder/presets.py::FONT_GROUPS; declarar
   uma família aqui não custa download nenhum ao visitante (o navegador só
   busca o woff2 da família que a página realmente usa), então o acervo pode
   crescer sem pesar em quem só usa duas.

   tests/test_acervo_visual.py quebra se uma família do catálogo não tiver
   @font-face aqui, ou se um @font-face apontar para arquivo inexistente. */

/* ── Serifadas ─────────────────────────────────────────────────────────── */
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/playfair-display-latin-400.8a53e5ecdbff.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/playfair-display-latin-700.9401d0214a93.woff2") format("woff2");
}
@font-face {
  font-family: "Lora";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/lora-latin-400.5d5a586a9741.woff2") format("woff2");
}
@font-face {
  font-family: "Lora";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/lora-latin-700.9c4d5c38f969.woff2") format("woff2");
}
@font-face {
  font-family: "Cormorant Garamond";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/cormorant-garamond-latin-400.87d22046a89f.woff2") format("woff2");
}
@font-face {
  font-family: "Cormorant Garamond";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/cormorant-garamond-latin-700.7b927d350248.woff2") format("woff2");
}
@font-face {
  font-family: "EB Garamond";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/eb-garamond-latin-400.005abdc3a2d3.woff2") format("woff2");
}
@font-face {
  font-family: "EB Garamond";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/eb-garamond-latin-700.0621f078b040.woff2") format("woff2");
}
@font-face {
  font-family: "Libre Baskerville";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/libre-baskerville-latin-400.054afe25df5f.woff2") format("woff2");
}
@font-face {
  font-family: "Libre Baskerville";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/libre-baskerville-latin-700.60f20b9c60e0.woff2") format("woff2");
}
@font-face {
  font-family: "Bodoni Moda";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/bodoni-moda-latin-400.6693a7a70a63.woff2") format("woff2");
}
@font-face {
  font-family: "Bodoni Moda";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/bodoni-moda-latin-700.b50d6f9e37e0.woff2") format("woff2");
}
@font-face {
  font-family: "Marcellus";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/marcellus-latin-400.d8d78c8d074b.woff2") format("woff2");
}
@font-face {
  font-family: "Cinzel";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/cinzel-latin-400.63126eeda831.woff2") format("woff2");
}
@font-face {
  font-family: "Cinzel";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/cinzel-latin-700.82175d611596.woff2") format("woff2");
}

/* ── Sem serifa ─────────────────────────────────────────────────────────── */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/inter-latin-400.da03732a27e1.woff2") format("woff2");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/inter-latin-700.8ca0a5155296.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/montserrat-latin-400.e7198b2dcb57.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/montserrat-latin-700.1c0792ac34ef.woff2") format("woff2");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/lato-latin-400.e1b3b5908c9c.woff2") format("woff2");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/lato-latin-700.de69cf9e514d.woff2") format("woff2");
}
@font-face {
  font-family: "Raleway";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/raleway-latin-400.0356ccdd005f.woff2") format("woff2");
}
@font-face {
  font-family: "Raleway";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/raleway-latin-700.5f860de71c07.woff2") format("woff2");
}
@font-face {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/poppins-latin-400.9212f6f9860f.woff2") format("woff2");
}
@font-face {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/poppins-latin-700.25b0e113ca7c.woff2") format("woff2");
}
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/nunito-latin-400.54ef89211626.woff2") format("woff2");
}
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/nunito-latin-700.28a2cf182b19.woff2") format("woff2");
}
@font-face {
  font-family: "Josefin Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/josefin-sans-latin-400.ccd50708b487.woff2") format("woff2");
}
@font-face {
  font-family: "Josefin Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/josefin-sans-latin-700.2b7f36f92a92.woff2") format("woff2");
}
@font-face {
  font-family: "Oswald";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/oswald-latin-400.b2a5bf57bad8.woff2") format("woff2");
}
@font-face {
  font-family: "Oswald";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/oswald-latin-700.665f37b2d0e8.woff2") format("woff2");
}

/* ── Caligráficas e manuscritas ─────────────────────────────────────────────────────────── */
@font-face {
  font-family: "Great Vibes";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/great-vibes-latin-400.51c0e8c2cd33.woff2") format("woff2");
}
@font-face {
  /* Variável: um arquivo cobre os pesos 400–700. */
  font-family: "Dancing Script";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../fonts/dancing-script-latin-var.513b7c2b78b7.woff2") format("woff2");
}
@font-face {
  font-family: "Parisienne";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/parisienne-latin-400.b1cae3d43a21.woff2") format("woff2");
}
@font-face {
  font-family: "Sacramento";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/sacramento-latin-400.526cc0748a39.woff2") format("woff2");
}
@font-face {
  font-family: "Pinyon Script";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/pinyon-script-latin-400.6fbb000d02c9.woff2") format("woff2");
}
@font-face {
  font-family: "Alex Brush";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/alex-brush-latin-400.615e0b8ce13a.woff2") format("woff2");
}
@font-face {
  font-family: "Tangerine";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/tangerine-latin-400.b7e6355b20dd.woff2") format("woff2");
}
@font-face {
  font-family: "Tangerine";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/tangerine-latin-700.cb95dce3a3ce.woff2") format("woff2");
}
@font-face {
  font-family: "Caveat";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/caveat-latin-400.568bb37d0455.woff2") format("woff2");
}
@font-face {
  font-family: "Caveat";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/caveat-latin-700.9700119a3654.woff2") format("woff2");
}
@font-face {
  font-family: "Amatic SC";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/amatic-sc-latin-400.984f3d0bafc2.woff2") format("woff2");
}
@font-face {
  font-family: "Amatic SC";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/amatic-sc-latin-700.34b098090069.woff2") format("woff2");
}

/* ── Marcantes ─────────────────────────────────────────────────────────── */
@font-face {
  font-family: "Abril Fatface";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/abril-fatface-latin-400.87dbd6249876.woff2") format("woff2");
}
@font-face {
  font-family: "Yeseva One";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/yeseva-one-latin-400.63ff0f624ac3.woff2") format("woff2");
}
@font-face {
  font-family: "Special Elite";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/special-elite-latin-400.95d46c7f34ba.woff2") format("woff2");
}
@font-face {
  font-family: "Courier Prime";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/courier-prime-latin-400.3e919e4831db.woff2") format("woff2");
}
@font-face {
  font-family: "Courier Prime";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/courier-prime-latin-700.3313e74393da.woff2") format("woff2");
}
