/* Orys · web v3 «precisión cálida» · tokens (spec 2026-08-17 §4, ADR-0010).
   Solo custom properties. Naranja: único acento, nunca texto ni foco. */

@font-face {
  font-family: "Instrument Sans";
  src: url("../assets/fonts/instrument-sans-var.woff2") format("woff2");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Geist Mono";
  src: url("../assets/fonts/geist-mono-var.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  color-scheme: light;
  --hueso: #EFEDE6;
  --hueso-alto: #F7F5EF;
  --tinta: #141414;
  --tinta-suave: #3A3935;
  --gris: #6B665D;
  --hairline: #D6D1C4;
  --naranja: #F0785A; /* coral; el naranja internacional anterior era demasiado intenso (Elliot 27-08-2026) */
  --hueso-sobre-tinta: #EFEDE6;
  --gris-sobre-tinta: #A19B8F;
  --hairline-sobre-tinta: rgba(239, 237, 230, .18);
  --tinta-sobre-naranja: #141414;
  --hairline-sobre-naranja: rgba(20, 20, 20, .35);

  --font-sans: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "Geist Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;
  --fs-hero: clamp(3rem, 7vw, 6.5rem);
  --fs-display: clamp(2rem, 4.5vw, 3.75rem);
  --fs-title: clamp(1.35rem, 2.4vw, 1.9rem);
  --fs-lead: clamp(1.1rem, 1.5vw, 1.35rem);
  --fs-body: 1rem;
  --fs-label: 0.78rem;
  --fs-numeral: clamp(4rem, 10vw, 9rem);
  --track-display: -0.03em;
  --track-label: 0.08em;

  --contenedor: 1200px;
  --contenedor-portada: 1200px; /* era 1320: el titular arrancaba 60 px a la izquierda del resto (Elliot, 28-08-2026) */
  --gutter: clamp(1.25rem, 4vw, 2.5rem);
  --seccion: clamp(6rem, 12vw, 10rem);
  --nav-desprendido: clamp(16px, 2vw, 24px);

  --curva: cubic-bezier(.32, .72, 0, 1);
  --dur-entrada: 700ms;
  --dur-micro: 240ms;
  --escalon: 70ms;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --hueso: #141414;
  --hueso-alto: #1C1B19;
  --tinta: #EFEDE6;
  --tinta-suave: #D9D5CB;
  --gris: #A19B8F;
  --hairline: #2E2C28;
  /* Bloques invertidos en oscuro: la "tinta" es hueso claro, así que el bloque
     invertido pasa a ser hueso claro con texto tinta oscura. Se mantiene la
     inversión, no el hex. */
  --hueso-sobre-tinta: #141414;
  --gris-sobre-tinta: #6B665D;
  --hairline-sobre-tinta: rgba(20, 20, 20, .22);
}

/* Móvil (27-08-2026): ritmo vertical más denso. A 390 px la página medía 11.5k px
   (14 pantallas) con 96+96 px de aire por sección y numerales de 64 px; la sensación
   era de scroll sin fin. */
@media (max-width: 48rem) {
  :root { --seccion: 4rem; --fs-numeral: 2.5rem; }
}

/* Superficies invertidas: redefinen los tokens de texto en su ámbito. */
[data-fondo="tinta"] {
  --texto: var(--hueso-sobre-tinta);
  --texto-secundario: var(--gris-sobre-tinta);
  --regla: var(--hairline-sobre-tinta);
  --fondo: var(--tinta);
}
[data-fondo="naranja"] {
  --texto: var(--tinta-sobre-naranja);
  --texto-secundario: var(--tinta-sobre-naranja);
  --regla: var(--hairline-sobre-naranja);
  --fondo: var(--naranja);
}
