@font-face{font-family:"Archivo";src:url("../fonts/archivo-latin-500-normal.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Archivo";src:url("../fonts/archivo-latin-600-normal.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Archivo";src:url("../fonts/archivo-latin-700-normal.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("../fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("../fonts/ibm-plex-sans-latin-500-normal.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("../fonts/ibm-plex-sans-latin-600-normal.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Archivo";src:url("../fonts/archivo-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("../fonts/ibm-plex-sans-latin-700-normal.woff2") format("woff2");font-weight:700;font-display:swap}

/* CORRECCIONES DE ORIGEN · 2026-08-29 · aplican a las 9 marcas de Nivel 1
   1. .bz-nav a ganaba por especificidad a .bz-btn--tinta: el boton de conversion
      salia tinta sobre tinta (1:1). Corregido con :not(.bz-btn) y .bz-btn.bz-btn--X.
   2. a:hover pintaba tinta sobre fondos oscuros. Corregido con --bz-hover heredable.
   3. Se agrega .bz-saltar, requisito de navegacion por teclado que faltaba. */

/* BIZMIO · D10 Grupo 2 · componentes del sitio
   Ruta J · monograma 4d. Valores idénticos a entregables/tokens.json.
   Sin esquinas redondeadas, sin sombras, sin degradados.
   Las fuentes se incrustan en local: no hay llamadas externas. */

:root{
  --bz-hover:#12283C;
  --bz-papel:#F2EFE7;
  --bz-superficie:#E9E6DC;
  --bz-tinta:#12283C;
  --bz-tinta-2:#4C5764;
  --bz-laton:#7A4E17;
  --bz-ocre:#C9963F;
  --bz-hueso:#F2EFE7;
  --bz-hueso-2:#CFC8B8;
  --bz-borde:#8A8172;
  --bz-filete:#CBC3B2;

  --bz-sans:"IBM Plex Sans",system-ui,sans-serif;
  --bz-display:"Archivo",system-ui,sans-serif;
  --bz-mono:"IBM Plex Mono",ui-monospace,monospace;

  --bz-8:8px;  --bz-16:16px; --bz-24:24px; --bz-32:32px;
  --bz-48:48px; --bz-64:64px; --bz-96:96px; --bz-128:128px;

  --bz-ancho:1120px;
  --bz-margen:88px;
  --bz-canal:24px;
}

body{background:var(--bz-papel);color:var(--bz-tinta);font:400 17px/28px var(--bz-sans);margin:0}
a{color:var(--bz-laton)}
a:hover{color:var(--bz-hover)}
*{border-radius:0 !important;box-shadow:none !important}

/* Retícula */
.bz-contenedor{max-width:var(--bz-ancho);margin:0 auto;padding:0 var(--bz-margen)}
.bz-rejilla{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--bz-canal)}
.bz-seccion{padding-top:var(--bz-96)}
.bz-medida{max-width:74ch}
@media (max-width:900px){
  :root{--bz-margen:24px}
  .bz-seccion{padding-top:var(--bz-64)}
}

/* Tipografía */
.bz-display{font:600 61px/64px var(--bz-display);letter-spacing:-.02em}
.bz-h1{font:600 44px/48px var(--bz-display);letter-spacing:-.015em}
.bz-h2{font:600 33px/40px var(--bz-display);letter-spacing:-.01em}
.bz-h3{font:600 25px/32px var(--bz-display)}
.bz-h4{font:600 21px/28px var(--bz-sans)}
.bz-cuerpo-g{font:400 19px/32px var(--bz-sans)}
.bz-cuerpo{font:400 17px/28px var(--bz-sans)}
.bz-cuerpo-p{font:400 15px/24px var(--bz-sans)}
.bz-etiqueta{font:500 12px/16px var(--bz-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--bz-laton)}
.bz-pie{font:400 13px/20px var(--bz-sans);color:var(--bz-tinta-2)}
.bz-cifra{font:600 96px/96px var(--bz-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.bz-cifra-m{font:600 44px/48px var(--bz-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}

/* Botones · alto mínimo 52 px */
.bz-btn{display:inline-block;font:500 17px/24px var(--bz-sans);padding:14px 24px;text-decoration:none;border:0;cursor:pointer}
.bz-btn.bz-btn--tinta{background:var(--bz-tinta);color:var(--bz-hueso)}
.bz-btn.bz-btn--linea{background:transparent;color:var(--bz-tinta);border:1px solid var(--bz-tinta);padding:13px 23px}
.bz-btn.bz-btn--papel{background:var(--bz-papel);color:var(--bz-tinta)}
.bz-btn:focus-visible{outline:2px solid var(--bz-laton);outline-offset:2px}
.bz-enlace{font:500 17px/24px var(--bz-sans);color:var(--bz-laton);text-decoration:none;border-bottom:1px solid var(--bz-laton)}

/* Campos */
.bz-campo{display:flex;flex-direction:column;gap:6px}
.bz-campo > label{font:500 15px/20px var(--bz-sans);color:var(--bz-tinta)}
.bz-campo > input,.bz-campo > select,.bz-campo > textarea{
  border:1px solid var(--bz-borde);background:var(--bz-papel);color:var(--bz-tinta);
  font:400 17px/24px var(--bz-sans);padding:14px 16px;font-variant-numeric:tabular-nums}
.bz-campo > input:focus,.bz-campo > select:focus,.bz-campo > textarea:focus{
  outline:0;border:2px solid var(--bz-tinta);padding:13px 15px}
.bz-campo > .bz-ayuda{font:400 13px/20px var(--bz-sans);color:var(--bz-tinta-2)}

/* Tarjetas */
.bz-tarjeta{background:var(--bz-superficie);padding:var(--bz-32) 36px}
.bz-tarjeta--linea{background:var(--bz-papel);border:1px solid var(--bz-borde)}
.bz-tarjeta--tinta{background:var(--bz-tinta);color:var(--bz-hueso)}
.bz-tarjeta--tinta .bz-etiqueta{color:var(--bz-ocre)}
.bz-tarjeta--tinta .bz-pie{color:var(--bz-hueso-2)}

/* Tablas · sin líneas verticales */
.bz-tabla{width:100%;border-collapse:collapse;border:1px solid var(--bz-borde)}
.bz-tabla th{background:var(--bz-tinta);color:var(--bz-hueso);text-align:left;
  font:500 12px/16px var(--bz-sans);letter-spacing:.1em;text-transform:uppercase;padding:12px 16px}
.bz-tabla td{border-top:1px solid var(--bz-filete);padding:12px 16px;
  font:400 15px/24px var(--bz-sans);color:var(--bz-tinta-2)}
.bz-tabla td:first-child{color:var(--bz-tinta);font-weight:500}
.bz-tabla tbody tr:nth-child(even){background:var(--bz-superficie)}
.bz-tabla .bz-num{text-align:right;font-variant-numeric:tabular-nums}

/* Componente de dato: cifra, unidad, fuente al pie. Sin fuente no se publica. */
.bz-dato{background:var(--bz-superficie);border-top:6px solid var(--bz-tinta);padding:28px 32px;display:flex;flex-direction:column;gap:8px}
.bz-dato--externo{background:var(--bz-tinta);border-top-color:var(--bz-ocre);color:var(--bz-hueso)}
.bz-dato__cifra{font:600 96px/96px var(--bz-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.bz-dato__unidad{font:500 15px/20px var(--bz-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--bz-laton)}
.bz-dato--externo .bz-dato__unidad{color:var(--bz-ocre)}
.bz-dato__fuente{font:400 13px/20px var(--bz-sans);color:var(--bz-tinta-2)}
.bz-dato--externo .bz-dato__fuente{color:var(--bz-hueso-2)}

/* Antes y después */
.bz-ad{border:1px solid var(--bz-borde);background:var(--bz-superficie);padding:var(--bz-32) 36px}
.bz-ad__fila{display:flex;flex-wrap:wrap;gap:var(--bz-32);align-items:flex-end;margin-top:20px}
.bz-ad__col{flex:1 1 140px;min-width:0;display:flex;flex-direction:column;gap:10px}
.bz-ad__cifra{font:600 61px/64px var(--bz-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.bz-ad__antes .bz-ad__cifra{color:var(--bz-tinta-2)}
.bz-ad__barra{height:16px;background:var(--bz-filete);border:1px solid var(--bz-borde);display:flex}
.bz-ad__barra > span{display:block;height:100%}
.bz-ad__antes .bz-ad__barra > span{background:var(--bz-tinta-2)}
.bz-ad__despues .bz-ad__barra > span{background:var(--bz-tinta)}
.bz-ad__var{flex:0 0 auto;border-left:1px solid var(--bz-borde);padding-left:var(--bz-32);
  display:flex;flex-direction:column;gap:6px;color:var(--bz-laton)}

/* Método · cinco escalones. 1 y 4 con filete de 6 px; el 4 en ocre. */
.bz-metodo{background:var(--bz-tinta);padding:40px 44px;display:flex;flex-wrap:wrap}
.bz-paso{flex:1 1 150px;min-width:0;border-top:2px solid var(--bz-hueso-2);padding:20px 20px 0}
.bz-paso:first-child{padding-left:0}
.bz-paso:last-child{padding-right:0}
.bz-paso--ancla{border-top-width:6px;border-top-color:var(--bz-hueso)}
.bz-paso--cierre{border-top-width:6px;border-top-color:var(--bz-ocre)}
.bz-paso__num{font:500 12px/16px var(--bz-sans);letter-spacing:.12em;color:var(--bz-hueso-2)}
.bz-paso--ancla .bz-paso__num,.bz-paso--cierre .bz-paso__num{color:var(--bz-ocre)}
.bz-paso__nombre{font:600 21px/28px var(--bz-display);color:var(--bz-hueso);margin:8px 0 6px}
.bz-paso__nota{font:400 14px/20px var(--bz-sans);color:var(--bz-hueso-2)}
.bz-paso--cierre .bz-paso__nota{color:var(--bz-ocre)}

/* Marcas estructurales · no hay biblioteca de iconos */
.bz-marca-escalones{display:flex;align-items:flex-end;gap:4px;height:22px}
.bz-marca-escalones > i{display:block;width:8px;height:9px;background:var(--bz-tinta)}
.bz-marca-escalones > i:nth-child(1),.bz-marca-escalones > i:nth-child(4){height:22px}
.bz-marca-escalones > i:nth-child(4){background:var(--bz-laton)}
.bz-marca-medida{width:44px;height:22px;border:1px solid var(--bz-tinta);display:flex}
.bz-marca-medida > i{display:block;height:100%;background:var(--bz-tinta)}
.bz-marca-campo{width:44px;height:22px;border:1px solid var(--bz-borde);background:var(--bz-papel)}
.bz-marca-lomo{display:flex;align-items:center;gap:5px}
.bz-marca-lomo > i:first-child{display:block;width:8px;height:22px;background:var(--bz-tinta)}
.bz-marca-lomo > i:last-child{display:block;width:2px;height:22px;background:var(--bz-laton)}

/* Cabecera y pie */
.bz-cabecera{border-bottom:1px solid var(--bz-filete);padding:20px var(--bz-margen);
  display:flex;align-items:center;justify-content:space-between;gap:var(--bz-32);flex-wrap:wrap}
.bz-nav{display:flex;align-items:center;gap:var(--bz-32);flex-wrap:wrap}
.bz-nav a:not(.bz-btn){font:400 15px/24px var(--bz-sans);color:var(--bz-tinta);text-decoration:none}
.bz-nav a[aria-current]{font-weight:500;border-bottom:2px solid var(--bz-laton);padding-bottom:2px}
.bz-pie-sitio{background:var(--bz-tinta);color:var(--bz-hueso);padding:var(--bz-48) var(--bz-margen);
  display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}
.bz-pie-sitio a{color:var(--bz-hueso);text-decoration:none}
.bz-pie-sitio .bz-legal{font:400 15px/24px var(--bz-sans);color:var(--bz-hueso-2);max-width:46ch}

/* Imagen · marco de contexto, nunca escena con clientes */
.bz-imagen{border:1px solid var(--bz-borde);background:
  repeating-linear-gradient(135deg,#E3DFD2 0 6px,#EAE6DA 6px 12px);
  aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;padding:16px}
.bz-imagen span{font:400 12px/18px var(--bz-mono);color:var(--bz-tinta-2);text-align:center}


/* Reglas de contraste agregadas en la verificacion del 2026-08-29.
   Cierran tres combinaciones que el sistema podia producir sin declararlas. */
.bz-btn--laton{background:var(--bz-laton);color:var(--bz-papel)}
.bz-btn--laton .bz-pie,.bz-btn--laton small{color:var(--bz-papel)}
/* Sobre laton NO se usa --bz-hueso-2 (4.30:1). Sobre ocre solo --bz-tinta.
   El ocre NO se usa sobre --bz-papel ni sobre --bz-superficie. */


/* Contextos oscuros: redefinen el color de hover en vez de sobrescribir la regla.
   Cualquier componente oscuro que se cree despues hereda el comportamiento correcto. */
.bz-pie-sitio,.bz-tarjeta--tinta,.bz-paso--cierre,.bz-dato--externo{--bz-hover:#F2EFE7}

/* Enlace de salto al contenido. Requisito de navegacion por teclado. */
.bz-saltar{position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--bz-tinta);color:var(--bz-papel);
  font:500 15px/24px var(--bz-sans);padding:12px 20px;text-decoration:none}
.bz-saltar:focus{left:0}
.bz-saltar:focus-visible{outline:2px solid var(--bz-laton);outline-offset:2px}
