/* ─────────────────────────────────────────────────────────────
   Archivo · Mapa narrativo (recorrido de Registros)
   Estilos propios de la página /archivo. Tema oscuro acotado a
   .tema-archivo / .archivo-page para no afectar al resto del site.
   ───────────────────────────────────────────────────────────── */

@font-face {
  font-family: 'EB Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/eb-garamond-400.woff2') format('woff2');
}
@font-face {
  font-family: 'EB Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/eb-garamond-400-italic.woff2') format('woff2');
}

:root {
  --arch-fondo:   #0a0a0a;
  --arch-tinta:   #f0ece4;  /* blanco roto cálido */
  --arch-acento:  #9a8f7d;  /* serif/regla/línea */
  --arch-tenue:   #6b6256;
  --arch-borde:   rgba(154, 143, 125, 0.22);
}

/* ── Tema oscuro de la página ── */

.tema-archivo { background: var(--arch-fondo); }

.archivo-page {
  background: var(--arch-fondo);
  color: var(--arch-tinta);
  font-family: 'EB Garamond', Georgia, 'Times New Roman', serif;
}

/* Cabecera y pie adaptados al fondo negro (solo en esta página) */
.archivo-page header {
  background: var(--arch-fondo);
  border-bottom-color: var(--arch-borde);
}
.archivo-page .site-title   { color: var(--arch-tinta); }
.archivo-page .site-version { color: var(--arch-tenue); }
.archivo-page nav a         { color: var(--arch-acento); }
.archivo-page nav a:hover   { color: var(--arch-tinta); }
.archivo-page .nav-submenu {
  background: #141210;
  border-color: var(--arch-borde);
}
.archivo-page .nav-submenu li a       { color: var(--arch-acento); }
.archivo-page .nav-submenu li a:hover { color: var(--arch-tinta); }
.archivo-page .nav-toggle span        { background: var(--arch-acento); }

.archivo-page footer {
  border-top-color: var(--arch-borde);
  color: var(--arch-tenue);
}
.archivo-page .footer-ig,
.archivo-page .footer-privacidad { color: var(--arch-acento); }
.archivo-page .footer-ig:hover,
.archivo-page .footer-privacidad:hover { color: var(--arch-tinta); }
.archivo-page .footer-sep { color: #3a352d; }

/* ── Encabezado del archivo ── */

.archivo-main {
  max-width: 56rem;
}

.archivo-intro-bloque {
  text-align: center;
  margin-bottom: clamp(3rem, 10vh, 7rem);
}

.archivo-intro-bloque h1 {
  font-family: 'EB Garamond', Georgia, serif;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--arch-tinta);
}

.archivo-intro {
  color: var(--arch-acento);
  font-size: 1.05rem;
  font-style: italic;
  max-width: 32rem;
  margin: 1rem auto 0;
}

/* ── Recorrido: contenedor + línea SVG ── */

.archivo-recorrido {
  position: relative;
}

.archivo-linea {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
  overflow: visible;
}

.archivo-linea-path {
  fill: none;
  stroke: var(--arch-acento);
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.archivo-punto {
  fill: var(--arch-acento);
  opacity: 0;
  transition: opacity 0.5s ease;
}
.archivo-punto.visible { opacity: 1; }

/* ── Lista de registros ── */

.archivo-registros {
  position: relative;
  z-index: 1;
  list-style: none;
  margin: 0;
  padding: 0;
}

.archivo-registro {
  width: 44%;
  margin-top: clamp(4rem, 12vh, 9rem);
  margin-bottom: clamp(4rem, 12vh, 9rem);
}

.archivo-registro:first-child { margin-top: 0; }
.archivo-registro:last-child  { margin-bottom: 0; }

.archivo-registro--izq {
  margin-right: auto;
  text-align: left;
}
.archivo-registro--der {
  margin-left: auto;
  text-align: right;
}

.archivo-registro-rotulo {
  font-family: 'EB Garamond', Georgia, serif;
  font-size: 0.82rem;       /* ~14px */
  letter-spacing: 0.12em;
  color: var(--arch-acento);
  margin: 0;
}

.archivo-registro-regla {
  display: block;
  width: 30px;
  height: 1px;
  background: var(--arch-acento);
  margin: 0.6rem 0 1rem;
}
.archivo-registro--der .archivo-registro-regla {
  margin-left: auto;
}

.archivo-registro-texto {
  font-family: 'EB Garamond', Georgia, serif;
  font-size: clamp(1.18rem, 2.4vw, 1.35rem);  /* ~20–22px */
  line-height: 1.5;
  color: var(--arch-tinta);
  margin: 0;
}

/* ── Móvil: una columna centrada (prioridad de lectura) ── */

@media (max-width: 767px) {
  .archivo-registro,
  .archivo-registro--izq,
  .archivo-registro--der {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: clamp(3rem, 9vh, 5.5rem);
    margin-bottom: clamp(3rem, 9vh, 5.5rem);
    text-align: center;
  }

  .archivo-registro-regla,
  .archivo-registro--der .archivo-registro-regla {
    margin-left: auto;
    margin-right: auto;
  }
}

/* ── Accesibilidad: sin animación de dibujado ── */

@media (prefers-reduced-motion: reduce) {
  .archivo-linea-path { stroke-dashoffset: 0 !important; }
  .archivo-punto { opacity: 1; transition: none; }
}
