/* Tokens del sistema. La paleta sale de las tintas de altitud de un mapa: neutros de papel de mapa
   y una rampa de ocres que solo aparece en datos. Ningún color de partido. */
@font-face {
  font-family: "Source Sans 3";
  src: url("/fuentes/source-sans-3-latin-v5.woff2") format("woff2");
  font-weight: 200 900;
  font-style: normal;
  font-display: swap;
}

:root {
  color-scheme: light dark;

  --fondo: #f7f6f1;
  --superficie: #fdfcfa;
  --texto: #25211b;
  --texto-suave: #5a544d;
  --linea: #d4d0c8;
  --linea-fuerte: #79746b;
  --acento: #6a431d;
  --sobre-acento: #fbfaf7;

  --tinta-1: #f3ebd7;
  --tinta-2: #e9d3a9;
  --tinta-3: #d6ad6d;
  --tinta-4: #895522;
  --tinta-5: #47270f;
  --sobre-tinta-1: #25211b;
  --sobre-tinta-2: #25211b;
  --sobre-tinta-3: #25211b;
  --sobre-tinta-4: #fbfaf7;
  --sobre-tinta-5: #fbfaf7;

  --fuente: "Source Sans 3", "Segoe UI", "Helvetica Neue", Arial, sans-serif;

  --t-nota: 0.875rem;
  --t-base: 1.0625rem;
  --t-medio: 1.25rem;
  --t-titulo: 1.625rem;
  --t-cifra: 2.5rem;
  --t-portada: clamp(2rem, 1.45rem + 2.4vw, 3.25rem);

  --e-1: 0.25rem;
  --e-2: 0.5rem;
  --e-3: 0.75rem;
  --e-4: 1rem;
  --e-5: 1.5rem;
  --e-6: 2rem;
  --e-7: 3rem;
  --e-8: 4rem;

  --margen: 1rem;
  --ancho: 77.5rem;
  --medida: 65ch;

  --radio-casilla: 3px;
  --radio: 6px;
  --hueco-casilla: 3px;
  --objetivo: 2.75rem;
}

@media (min-width: 32.5em) {
  :root {
    --margen: 1.5rem;
  }
}

@media (prefers-color-scheme: dark) {
  :root {
    --fondo: #181612;
    --superficie: #23201b;
    --texto: #eae8e2;
    --texto-suave: #b4b1a9;
    --linea: #3e3a34;
    --linea-fuerte: #8b857c;
    --acento: #e6bd7c;
    --sobre-acento: #181612;

    --tinta-1: #312a21;
    --tinta-2: #4b3d2b;
    --tinta-3: #715534;
    --tinta-4: #caa468;
    --tinta-5: #edd8ae;
    --sobre-tinta-1: #eae8e2;
    --sobre-tinta-2: #eae8e2;
    --sobre-tinta-3: #eae8e2;
    --sobre-tinta-4: #181612;
    --sobre-tinta-5: #181612;
  }
}

/* Generado por scripts/build.mjs desde src/mapa.mjs */
.mapa { --columnas: 6; }
.pos-c { grid-area: 1 / 1; }
.pos-lu { grid-area: 1 / 2; }
.pos-o { grid-area: 1 / 3; }
.pos-s { grid-area: 1 / 4; }
.pos-bi { grid-area: 1 / 5; }
.pos-ss { grid-area: 1 / 6; }
.pos-po { grid-area: 2 / 1; }
.pos-ou { grid-area: 2 / 2; }
.pos-le { grid-area: 2 / 3; }
.pos-p { grid-area: 2 / 4; }
.pos-vi { grid-area: 2 / 5; }
.pos-na { grid-area: 2 / 6; }
.pos-za { grid-area: 3 / 1; }
.pos-va { grid-area: 3 / 2; }
.pos-bu { grid-area: 3 / 3; }
.pos-lo { grid-area: 3 / 4; }
.pos-hu { grid-area: 3 / 5; }
.pos-gi { grid-area: 3 / 6; }
.pos-sa { grid-area: 4 / 1; }
.pos-sg { grid-area: 4 / 2; }
.pos-so { grid-area: 4 / 3; }
.pos-z { grid-area: 4 / 4; }
.pos-l { grid-area: 4 / 5; }
.pos-b { grid-area: 4 / 6; }
.pos-av { grid-area: 5 / 1; }
.pos-m { grid-area: 5 / 2; }
.pos-gu { grid-area: 5 / 3; }
.pos-te { grid-area: 5 / 4; }
.pos-cs { grid-area: 5 / 5; }
.pos-t { grid-area: 5 / 6; }
.pos-cc { grid-area: 6 / 1; }
.pos-to { grid-area: 6 / 2; }
.pos-cu { grid-area: 6 / 3; }
.pos-ab { grid-area: 6 / 4; }
.pos-v { grid-area: 6 / 5; }
.pos-pm { grid-area: 6 / 6; }
.pos-ba { grid-area: 7 / 1; }
.pos-cr { grid-area: 7 / 2; }
.pos-j { grid-area: 7 / 3; }
.pos-mu { grid-area: 7 / 4; }
.pos-a { grid-area: 7 / 5; }
.pos-h { grid-area: 8 / 1; }
.pos-se { grid-area: 8 / 2; }
.pos-co { grid-area: 8 / 3; }
.pos-gr { grid-area: 8 / 4; }
.pos-al { grid-area: 8 / 5; }
.pos-ca { grid-area: 9 / 2; }
.pos-ma { grid-area: 9 / 3; }
.pos-ce { grid-area: 9 / 4; }
.pos-ml { grid-area: 9 / 5; }
.pos-tf { grid-area: 10 / 1; }
.pos-gc { grid-area: 10 / 2; }

@media (min-width: 32.5em) {
  .mapa { --columnas: 10; }
  .pos-c { grid-area: 1 / 1; }
  .pos-lu { grid-area: 1 / 2; }
  .pos-o { grid-area: 1 / 3; }
  .pos-s { grid-area: 1 / 4; }
  .pos-bi { grid-area: 1 / 5; }
  .pos-ss { grid-area: 1 / 6; }
  .pos-po { grid-area: 2 / 1; }
  .pos-ou { grid-area: 2 / 2; }
  .pos-le { grid-area: 2 / 3; }
  .pos-p { grid-area: 2 / 4; }
  .pos-bu { grid-area: 2 / 5; }
  .pos-vi { grid-area: 2 / 6; }
  .pos-na { grid-area: 2 / 7; }
  .pos-hu { grid-area: 2 / 8; }
  .pos-l { grid-area: 2 / 9; }
  .pos-gi { grid-area: 2 / 10; }
  .pos-za { grid-area: 3 / 3; }
  .pos-va { grid-area: 3 / 4; }
  .pos-sg { grid-area: 3 / 5; }
  .pos-lo { grid-area: 3 / 6; }
  .pos-so { grid-area: 3 / 7; }
  .pos-z { grid-area: 3 / 8; }
  .pos-t { grid-area: 3 / 9; }
  .pos-b { grid-area: 3 / 10; }
  .pos-sa { grid-area: 4 / 3; }
  .pos-av { grid-area: 4 / 4; }
  .pos-m { grid-area: 4 / 5; }
  .pos-gu { grid-area: 4 / 6; }
  .pos-cu { grid-area: 4 / 7; }
  .pos-te { grid-area: 4 / 8; }
  .pos-cs { grid-area: 4 / 9; }
  .pos-cc { grid-area: 5 / 4; }
  .pos-to { grid-area: 5 / 5; }
  .pos-cr { grid-area: 5 / 6; }
  .pos-ab { grid-area: 5 / 7; }
  .pos-v { grid-area: 5 / 8; }
  .pos-pm { grid-area: 5 / 10; }
  .pos-ba { grid-area: 6 / 4; }
  .pos-co { grid-area: 6 / 5; }
  .pos-j { grid-area: 6 / 6; }
  .pos-mu { grid-area: 6 / 7; }
  .pos-a { grid-area: 6 / 8; }
  .pos-h { grid-area: 7 / 3; }
  .pos-se { grid-area: 7 / 4; }
  .pos-ma { grid-area: 7 / 5; }
  .pos-gr { grid-area: 7 / 6; }
  .pos-al { grid-area: 7 / 7; }
  .pos-ca { grid-area: 8 / 4; }
  .pos-tf { grid-area: 9 / 1; }
  .pos-gc { grid-area: 9 / 2; }
  .pos-ce { grid-area: 9 / 4; }
  .pos-ml { grid-area: 9 / 6; }
}

/* Base */
*, *::before, *::after { box-sizing: border-box; }

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scrollbar-color: var(--linea-fuerte) var(--fondo);
  accent-color: var(--acento);
}

body {
  margin: 0;
  background: var(--fondo);
  color: var(--texto);
  font-family: var(--fuente);
  font-size: var(--t-base);
  line-height: 1.55;
  font-synthesis: none;
  overflow-wrap: break-word;
}

::selection { background: var(--acento); color: var(--sobre-acento); }

h1, h2 { margin: 0; line-height: 1.15; font-weight: 700; text-wrap: balance; }
h1 { font-size: var(--t-portada); letter-spacing: -0.012em; }
h2 { font-size: var(--t-titulo); letter-spacing: -0.006em; margin-block-end: var(--e-3); }
p { margin: 0 0 var(--e-3); text-wrap: pretty; }
ul, ol { margin: 0; padding: 0; list-style: none; }

a { color: var(--acento); text-underline-offset: 0.18em; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }
a:active { text-decoration-thickness: 3px; }

label[for], summary, select, input[type="radio"], input[type="checkbox"], input[type="range"] { cursor: pointer; }
:disabled { cursor: not-allowed; }

:focus-visible { outline: 3px solid var(--acento); outline-offset: 2px; border-radius: 2px; }
main:focus { outline: none; }

[hidden] { display: none !important; }

.fuera-de-vista {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.saltar {
  position: absolute;
  inset-inline-start: var(--margen);
  inset-block-start: -4rem;
  z-index: 2;
  padding: var(--e-3) var(--e-4);
  background: var(--superficie);
  border-radius: var(--radio);
}
.saltar:focus { inset-block-start: var(--e-2); }

/* Marco */
.contenedor {
  max-width: var(--ancho);
  margin-inline: auto;
  padding-inline: var(--margen);
}

.cabecera { border-block-end: 1px solid var(--linea); }
.cabecera__interior {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  column-gap: var(--e-4);
  max-width: var(--ancho);
  margin-inline: auto;
  padding-inline: var(--margen);
}

.marca {
  display: inline-flex;
  align-items: center;
  gap: var(--e-2);
  min-height: var(--objetivo);
  color: var(--texto);
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}
.marca__simbolo { color: var(--acento); flex: none; }
.marca__punto { fill: var(--fondo); }

/* En estrecho, tres por fila: se ven todos los enlaces y ninguno queda suelto. */
.nav { flex: 1 1 100%; }
.nav ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: var(--e-3); }
.nav a {
  display: flex;
  align-items: center;
  min-height: var(--objetivo);
  color: var(--texto);
  text-decoration: none;
  border-block-end: 3px solid transparent;
  border-block-start: 3px solid transparent;
}
.nav a:hover { border-block-end-color: var(--linea-fuerte); }
.nav a:active { border-block-end-color: var(--texto); }
.nav a[aria-current="page"] { font-weight: 700; border-block-end-color: var(--acento); }

main { display: block; }

.pie { margin-block-start: var(--e-8); border-block-start: 1px solid var(--linea); }
.pie__interior {
  max-width: var(--ancho);
  margin-inline: auto;
  padding: var(--e-5) var(--margen) var(--e-6);
  color: var(--texto-suave);
  font-size: var(--t-nota);
}
.pie p { max-width: var(--medida); }
.pie a { display: inline-block; padding-block: var(--e-3); margin-block: calc(var(--e-3) * -1); }

/* Texto */
.titular { padding-block: var(--e-5) var(--e-5); }
.entrada { max-width: var(--medida); margin-block-start: var(--e-3); font-size: var(--t-medio); line-height: 1.4; }
.medida { max-width: var(--medida); }
.nota { color: var(--texto-suave); font-size: var(--t-nota); line-height: 1.45; }
.nota a { display: inline-block; padding-block: var(--e-3); margin-block: calc(var(--e-3) * -1); }

/* Portada */
.primera {
  display: grid;
  gap: var(--e-6);
  padding-block: var(--e-5) var(--e-6);
}
.primera__texto, .primera__mapa { min-width: 0; }
.mapa-titulo { font-size: var(--t-medio); }

.datos { margin: var(--e-5) 0 0; }
.datos div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  column-gap: var(--e-4);
  padding-block: var(--e-2);
  border-block-start: 1px solid var(--linea);
}
.datos div:last-child { border-block-end: 1px solid var(--linea); }
.datos dt { color: var(--texto-suave); }
.datos dd { margin: 0; font-weight: 600; font-variant-numeric: tabular-nums; }

.dos-columnas {
  display: grid;
  gap: var(--e-6);
  padding-block-start: var(--e-6);
}
.dos-columnas > section { min-width: 0; }
.dos-columnas p { max-width: var(--medida); }

.secciones li + li { margin-block-start: var(--e-4); }
.secciones a {
  display: inline-flex;
  align-items: center;
  min-height: var(--objetivo);
  font-size: var(--t-medio);
  font-weight: 600;
}
.secciones p { margin: 0; max-width: var(--medida); }

/* Selector */
.selector label { display: block; margin-block-end: var(--e-1); font-weight: 600; }
.selector select {
  width: 100%;
  /* WebKit ignora el min-height de un select y lo deja en 23 px; `height` sí lo respeta. */
  height: 3rem;
  padding-inline: var(--e-3);
  background: var(--superficie);
  color: var(--texto);
  border: 1px solid var(--linea-fuerte);
  border-radius: var(--radio);
  font: inherit;
}
.selector__fila { display: flex; flex-wrap: wrap; gap: var(--e-2); }
.selector__fila select { flex: 1 1 11rem; width: auto; min-width: 0; }
.selector__aviso:empty { display: none; }
.selector__aviso { margin: var(--e-2) 0 0; font-weight: 600; }
.primera .selector { margin-block-start: var(--e-5); }

.boton {
  min-height: 3rem;
  padding: var(--e-2) var(--e-5);
  background: var(--acento);
  color: var(--sobre-acento);
  border: 1px solid var(--acento);
  border-radius: var(--radio);
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}
.boton:hover { background: var(--texto); border-color: var(--texto); color: var(--fondo); }
.boton:active { background: var(--texto); border-color: var(--texto); color: var(--fondo); outline: 2px solid var(--texto); outline-offset: 1px; }
.boton--secundario { min-height: var(--objetivo); padding-inline: var(--e-4); background: transparent; color: var(--acento); }

/* Mosaico de provincias */
.mapa {
  display: grid;
  grid-template-columns: repeat(var(--columnas), minmax(0, 1fr));
  grid-template-rows: repeat(10, 3rem) auto;
  gap: var(--hueco-casilla);
}
.mapa__casillas { display: contents; }

.casilla {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 0;
  padding: 0;
  border: 1px solid var(--linea-fuerte);
  border-radius: var(--radio-casilla);
  font: inherit;
  line-height: 1.05;
  text-decoration: none;
  cursor: pointer;
}
.casilla__sigla { font-size: var(--t-nota); font-weight: 600; }
.casilla__num { font-size: var(--t-medio); font-weight: 700; font-variant-numeric: tabular-nums; }
.casilla:hover { outline: 2px solid var(--texto); outline-offset: -2px; }
.casilla:active { outline: 3px solid var(--texto); outline-offset: -3px; }
.casilla:focus-visible { z-index: 1; outline: 3px solid var(--acento); outline-offset: 2px; border-radius: var(--radio-casilla); }

.casilla[aria-pressed="true"] {
  z-index: 1;
  outline: 3px solid var(--texto);
  outline-offset: 1px;
}
/* Vértice geodésico: la casilla elegida se marca también con forma, no solo con el contorno. */
.casilla[aria-pressed="true"]::after {
  content: "";
  position: absolute;
  inset-block-start: 3px;
  inset-inline-end: 3px;
  width: 0.625rem;
  height: 0.5625rem;
  background: currentColor;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.tinta-1 { background: var(--tinta-1); color: var(--sobre-tinta-1); }
.tinta-2 { background: var(--tinta-2); color: var(--sobre-tinta-2); }
.tinta-3 { background: var(--tinta-3); color: var(--sobre-tinta-3); }
.tinta-4 { background: var(--tinta-4); color: var(--sobre-tinta-4); }
.tinta-5 { background: var(--tinta-5); color: var(--sobre-tinta-5); }

/* Leyenda como cajetín de altitudes: bajo el mosaico en estrecho, en su hueco en ancho. */
.leyenda {
  grid-column: 1 / -1;
  grid-row: 11;
  align-self: start;
  max-width: 18rem;
  margin-block-start: var(--e-3);
  font-size: var(--t-nota);
  line-height: 1.2;
}
.leyenda__titulo {
  display: flex;
  justify-content: space-between;
  margin-block-end: var(--e-1);
  color: var(--texto-suave);
}
.leyenda li {
  display: grid;
  grid-template-columns: 1.5rem 1fr auto;
  align-items: center;
  column-gap: var(--e-2);
  min-height: 1.375rem;
  font-variant-numeric: tabular-nums;
}
.leyenda__tinta { height: 1rem; border: 1px solid var(--linea-fuerte); border-radius: 2px; }

/* Ficha */
.consulta { display: grid; gap: var(--e-5); }
.consulta__mapa, .consulta__ficha, .consulta__selector { min-width: 0; }
.consulta__ficha, .consulta { scroll-margin-block-start: var(--e-3); }
.consulta__selector { scroll-margin-block-start: var(--e-3); }

.ficha {
  padding: var(--e-4);
  background: var(--superficie);
  border: 1px solid var(--linea);
  border-radius: 8px;
}
.ficha h2 { margin-block-end: var(--e-3); }
.ficha h2:focus { outline: none; }
.ficha__vacia { margin: 0; color: var(--texto-suave); }
.ficha__cifras { display: flex; flex-wrap: wrap; column-gap: var(--e-6); row-gap: var(--e-2); margin-block-end: var(--e-3); }
.ficha__cifras p { margin: 0; display: flex; flex-direction: column; }
.ficha__cifra { font-size: var(--t-cifra); line-height: 1.05; font-weight: 700; font-variant-numeric: tabular-nums; }
.ficha__acciones { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-2); }
.ficha__aviso { margin: 0; font-weight: 600; flex-basis: 100%; }
.ficha__aviso:empty { display: none; }
.ficha__enlace { display: inline-flex; align-items: center; min-height: var(--objetivo); }

/* Escala gráfica de mapa, de 0 a 50 %, con la marca de la provincia y la de la barrera. */
.escala { margin: 0 0 var(--e-4); padding-inline: 0; }
.escala__marca, .escala__barrera { position: relative; height: 1.5rem; font-size: var(--t-nota); font-weight: 700; font-variant-numeric: tabular-nums; }
.escala__marca::before, .escala__barrera::before {
  content: attr(data-etiqueta);
  position: absolute;
  inset-inline-start: calc(var(--posicion, 0) * 1%);
  transform: translateX(calc(var(--posicion, 0) * -1%));
  white-space: nowrap;
}
.escala__marca::after {
  content: "";
  position: absolute;
  inset-block-end: -1px;
  inset-inline-start: calc(var(--posicion, 0) * 1%);
  width: 3px;
  height: 0.5rem;
  margin-inline-start: -1px;
  background: var(--texto);
}
.escala__barrera { height: 1.25rem; font-weight: 400; color: var(--texto-suave); }
.escala__barrera::before { inset-block-start: 0.375rem; }
.escala__barrera::after {
  content: "";
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: calc(var(--posicion, 0) * 1%);
  width: 1px;
  height: 0.375rem;
  background: var(--texto-suave);
}
.escala__barra {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  height: 0.5rem;
  border: 1px solid var(--texto);
}
.escala__barra span:nth-child(odd) { background: var(--texto); }
.escala__cotas {
  display: flex;
  justify-content: space-between;
  margin-block-start: var(--e-1);
  color: var(--texto-suave);
  font-size: var(--t-nota);
  font-variant-numeric: tabular-nums;
}
.escala figcaption { margin-block-start: var(--e-2); }

@media (prefers-reduced-motion: no-preference) {
  .escala__marca::before, .escala__marca::after { transition: inset-inline-start 200ms ease-out, transform 200ms ease-out; }
}

/* Tablas */
.tabla { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.tabla caption { text-align: start; color: var(--texto-suave); font-size: var(--t-nota); padding-block-end: var(--e-2); }
.tabla th, .tabla td { padding: var(--e-2) var(--e-2); border-block-end: 1px solid var(--linea); text-align: end; font-weight: 400; }
.tabla th:first-child { text-align: start; padding-inline-start: 0; }
.tabla td:last-child, .tabla th:last-child { padding-inline-end: 0; }
.tabla thead th { font-weight: 600; font-size: var(--t-nota); line-height: 1.2; vertical-align: bottom; border-block-end-color: var(--linea-fuerte); }

.tabla--lista { margin-block-start: var(--e-3); max-width: 46rem; }
.tabla--lista thead th { position: sticky; inset-block-start: 0; background: var(--fondo); }
.tabla--lista tbody th, .tabla--lista tbody td { padding-block: 0; height: var(--objetivo); }
.tabla--lista tbody th a { display: flex; align-items: center; gap: var(--e-2); min-height: var(--objetivo); padding-block: var(--e-1); line-height: 1.2; }
.sigla { flex: none; width: 1.75rem; color: var(--texto-suave); font-size: var(--t-nota); font-weight: 600; }
.fila--elegida th, .fila--elegida td, tr:target th, tr:target td { background: var(--tinta-1); color: var(--sobre-tinta-1); font-weight: 700; }
.fila--elegida a, tr:target a { color: inherit; }

.ejemplo .tabla { margin-block-end: var(--e-3); }
.ejemplo__gana { background: var(--tinta-2); color: var(--sobre-tinta-2); }
.ejemplo__gana strong { font-weight: 700; }
.ejemplo__orden { font-size: var(--t-nota); }
.ejemplo__fuera { text-align: start !important; color: var(--texto-suave); font-size: var(--t-nota); line-height: 1.3; }

#dhondt, #lista { scroll-margin-block-start: var(--e-3); }
#lista { padding-block-start: var(--e-7); }

/* Desde aquí, los seis enlaces caben en una fila. */
@media (min-width: 30em) {
  .nav { flex: none; }
  .nav ul { display: flex; flex-wrap: wrap; column-gap: var(--e-4); }
}

/* Con mapa de 10 columnas: la leyenda ocupa el hueco del sureste, como en un mapa. */
@media (min-width: 32.5em) {
  .mapa { grid-template-rows: repeat(9, 3.5rem); }
  .leyenda { grid-area: 7 / 8 / 10 / 11; margin: var(--e-4) 0 0 var(--e-3); max-width: none; }
  .casilla__num { font-size: 1.375rem; }
}

@media (min-width: 48em) {
  .dos-columnas { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--e-7); }
  .ficha { padding: var(--e-5); }
}

/* En escritorio, mapa y ficha conviven en la primera pantalla. */
@media (min-width: 64em) {
  .primera { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--e-7); padding-block-start: var(--e-6); }
  .consulta {
    grid-template-columns: minmax(0, 1fr) 24rem;
    grid-template-areas: "mapa selector" "mapa ficha";
    grid-template-rows: auto 1fr;
    column-gap: var(--e-6);
    row-gap: var(--e-4);
    align-items: start;
  }
  .consulta__mapa { grid-area: mapa; }
  .consulta__selector { grid-area: selector; }
  .consulta__ficha { grid-area: ficha; }
  .ficha__volver { display: none; }
}

@media print {
  .saltar, .nav, .selector, .ficha__acciones { display: none; }
}
