/* Journal — edições correntes
 *
 * Estas regras estavam repetidas, iguais, nas 15 páginas do grupo.
 * Passaram para aqui para deixarem de divergir sozinhas: mudar a tipografia
 * do Journal passa a ser um sítio em vez de 15.
 *
 * O que ficou no <style> de cada página é o que difere entre elas — não por
 * esquecimento, mas porque uniformizar mudaria o aspecto das páginas, e isso
 * é uma decisão de desenho.
 *
 * Gerado por scripts/extrair-css-journal.mjs. As alterações a mão sobrevivem
 * — o script não volta a correr sozinho.
 */

:root {
  --paper: #F5F3EE;
  --paper-warm: #EFEAE0;
  --ink: #1a1714;
  --ink-soft: #3a352e;
  --ink-muted: #6e6a62;
  --ink-fade: #adaa96;
  --ink-ghost: #d4cfc1;
  --rule: rgba(26,23,20,0.12);
  --rule-soft: rgba(26,23,20,0.06);
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans: 'Quattrocento Sans', sans-serif;
}

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

html { scrollbar-width: none; scroll-behavior: smooth; }

html::-webkit-scrollbar { display: none; }

.nav__right { display: flex; align-items: center; gap: 28px; }

.nav__links a:hover { color: var(--ink); }

.nav__links a.is-current { color: var(--ink); }

.lang-switcher a { color: var(--ink-fade); text-decoration: none; transition: color 0.3s; }

.lang-switcher a:hover { color: var(--ink); }

.lang-switcher .is-current { color: var(--ink); font-weight: 400; }

.lang-switcher__sep { font-size: 10px; opacity: 0.4; font-style: normal; }

@media (max-width: 720px) {
  .nav__links { display: none; }
  .lang-switcher { padding-left: 0; border-left: none; font-size: 12px; gap: 8px; }
}

.cover__ornament { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-family: var(--serif); font-style: italic; font-weight: 300; font-size: clamp(28rem, 60vw, 48rem); line-height: 0.85; color: var(--ink-ghost); opacity: 0.45; z-index: 1; pointer-events: none; user-select: none; letter-spacing: -0.05em; }

.cover__inner { position: relative; z-index: 2; max-width: 780px; text-align: center; }

.cover__byline { display: flex; gap: 32px; justify-content: center; font-family: var(--sans); font-size: 10px; letter-spacing: 0.35em; text-transform: uppercase; color: var(--ink-fade); margin-bottom: 56px; }

.cover__subtitle { font-family: var(--serif); font-style: italic; font-weight: 300; font-size: clamp(1.05rem, 1.5vw, 1.25rem); color: var(--ink-muted); margin-bottom: 28px; letter-spacing: 0.005em; }

.cover__title .fade { color: var(--ink-ghost); font-style: italic; }

.cover__written { font-family: var(--sans); font-size: 10px; letter-spacing: 0.35em; text-transform: uppercase; color: var(--ink-fade); margin-bottom: 20px; }

.cover__author { font-family: var(--serif); font-style: italic; font-weight: 400; font-size: 1.45rem; color: var(--ink); margin-bottom: 6px; }

.cover__role { font-family: var(--sans); font-size: 10px; letter-spacing: 0.32em; text-transform: uppercase; color: var(--ink-muted); }

@media (max-width: 720px) { .cover__byline { gap: 16px; flex-wrap: wrap; } }

.cover__inner > * { animation: rise 1.2s ease-out backwards; }

.cover__quarterly { animation-delay: 0.05s; }

.prose p { font-family: var(--sans); font-size: 0.93rem; line-height: 2.05; color: var(--ink-soft); margin-bottom: 1.6rem; text-align: justify; hyphens: auto; }

.prose p:last-child { margin-bottom: 0; }

.prose em { font-family: var(--serif); font-style: italic; font-weight: 400; font-size: 1.04em; }

.divider { width: 36px; height: 0.5px; background: var(--rule); margin: 5rem auto; }

.divider--dot { width: 4px; height: 4px; background: var(--ink-fade); border-radius: 50%; margin: 5rem auto; }

.back-to-journal { text-align: center; margin: 5rem 0 4rem; }

.back-to-journal a { display: inline-block; font-family: var(--sans); font-size: 10px; letter-spacing: 0.45em; text-transform: uppercase; color: var(--ink-muted); text-decoration: none; padding: 12px 24px; border: 0.5px solid var(--rule); transition: color 0.3s, border-color 0.3s; }

.back-to-journal a:hover { color: var(--ink); border-color: var(--ink); }
