/* El Campo — tokens de marca. Importar antes que cualquier otro CSS. */

/* Fuentes alojadas en la propia web (no se cargan desde Google: evita enviar
   la IP del visitante a terceros). Las fuentes están en /fonts/ (ruta relativa ../fonts/).
   Licencia SIL OFL 1.1: ver fonts/OFL-*.txt. */

/* Gloock 400 — latin-ext */
@font-face {
  font-family: 'Gloock';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/gloock-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Gloock 400 — latin */
@font-face {
  font-family: 'Gloock';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/gloock-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;
}
/* Libre Caslon Text 400 — latin-ext */
@font-face {
  font-family: 'Libre Caslon Text';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/caslon-400-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Libre Caslon Text 400 — latin */
@font-face {
  font-family: 'Libre Caslon Text';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/caslon-400-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;
}
/* Libre Caslon Text 400 itálica — latin-ext */
@font-face {
  font-family: 'Libre Caslon Text';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/caslon-400i-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Libre Caslon Text 400 itálica — latin */
@font-face {
  font-family: 'Libre Caslon Text';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/caslon-400i-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;
}
/* Libre Caslon Text 700 — latin-ext */
@font-face {
  font-family: 'Libre Caslon Text';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/caslon-700-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Libre Caslon Text 700 — latin */
@font-face {
  font-family: 'Libre Caslon Text';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/caslon-700-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;
}

:root {
  /* Paleta */
  --ec-carbon: #1E1D1A;   /* principal oscuro: fondos, texto */
  --ec-oliva:  #5A5D2F;   /* acento: fondos de sección, enlaces, botones */
  --ec-salvia: #8E8F66;   /* acento claro: solo sobre carbón u oliva */
  --ec-piedra: #D9CDB4;   /* bordes, separadores, fondos de tarjeta */
  --ec-crema:  #F2EADA;   /* principal claro: fondo de página */
  --ec-gris:   #5C5850;   /* texto secundario sobre crema o piedra */

  /* Tipografía serif (decisión del usuario, 2026-10-23): Gloock para titulares,
     Libre Caslon Text para todo lo demás. */
  --ec-font-display: 'Gloock', 'Libre Caslon Text', Georgia, serif;
  --ec-font-text: 'Libre Caslon Text', Georgia, 'Times New Roman', serif;

  /* Escala tipográfica (1.25) */
  --ec-size-xs: 1rem;     /* mínimo de la marca: nada por debajo de 16 px */
  --ec-size-s:  1rem;
  --ec-size-m:  1.25rem;
  --ec-size-l:  1.953rem;
  --ec-size-xl: 3.052rem;
  --ec-size-xxl: 4.768rem;

  /* Ritmo */
  --ec-space: 1.5rem;
  --ec-radius: 8px;
  --ec-measure: 68ch;
}

body {
  background: var(--ec-crema);
  color: var(--ec-carbon);
  font-family: var(--ec-font-text);
  font-size: var(--ec-size-m);
  line-height: 1.6;
}

h1, h2, h3 {
  font-family: var(--ec-font-display);
  font-weight: 400;      /* Gloock solo tiene un peso */
  line-height: 1.1;
  letter-spacing: 0.01em;
}

h1 { font-size: var(--ec-size-xxl); }
h2 { font-size: var(--ec-size-xl); }
h3 { font-size: var(--ec-size-l); }

p { max-width: var(--ec-measure); }

a { color: var(--ec-oliva); text-underline-offset: 0.2em; }

/* Sección oscura: invierte la paleta */
.ec-dark {
  background: var(--ec-carbon);
  color: var(--ec-crema);
}
.ec-dark a { color: var(--ec-salvia); }
