/* Páginas de servicio: la señalética del blog + migas, guía de BTU, preguntas, relacionados y el índice. */
.migas { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin: 6px 0 14px; font-size: 14px; color: var(--tinta-suave); }
.migas a { color: var(--tinta-suave); text-underline-offset: 3px; }
.migas a:hover { color: var(--fuerte); }
.migas [aria-current] { color: var(--fuerte); font-weight: 600; }

.banda-est { color: #cfe0ff; }

.articulo-cierre--i { background: var(--marino); }

/* Guía de BTU dentro de una parada */
.guia-btu { margin-top: 18px; }
.guia-btu h3 { font: 800 15px/1.2 var(--cartel); text-transform: uppercase; letter-spacing: .04em; color: var(--fuerte); }
.guia-btu p { font-size: 15px; line-height: 1.5; }

/* Preguntas frecuentes */
.preguntas { display: grid; gap: 10px; }
.preguntas h2 { font: 900 italic clamp(1.4rem, 2.4vw, 1.9rem)/1.05 var(--cartel); text-transform: uppercase; margin-bottom: 6px; }
.pregunta { border: 1px solid var(--borde); border-radius: var(--radio); background: var(--suelo); }
.pregunta summary {
  list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px;
  min-height: 56px; padding: 14px 18px; font: 700 17px/1.35 var(--sans); color: var(--fuerte);
}
.pregunta summary::-webkit-details-marker { display: none; }
.pregunta summary::after { content: "+"; flex: none; font: 900 22px/1 var(--cartel); color: var(--azul-texto); transition: transform .32s var(--ease); }
.pregunta[open] summary::after { transform: rotate(45deg); }
.pregunta p { padding: 0 18px 18px; font-size: 17px; line-height: 1.6; color: var(--tinta); }
.pregunta summary:focus-visible { outline: 3px solid var(--azul); outline-offset: 2px; border-radius: var(--radio); }

/* Relacionados */
.rel-lista li { padding: 0; }
.rel-lista a {
  display: flex; align-items: center; gap: 12px; width: 100%; min-height: 52px; padding: 10px 0;
  font: 800 16px/1.25 var(--cartel); color: var(--fuerte); text-decoration: none;
}
.rel-lista a svg { margin-left: auto; flex: none; transition: transform .2s var(--ease); }
@media (hover: hover) { .rel-lista a:hover { color: var(--azul-texto); } .rel-lista a:hover svg { transform: translateX(4px); } }
.rel-chips { display: inline-flex; gap: 4px; flex: none; }
.rel-chips .ficha-linea { width: 22px; height: 22px; font-size: 12px; }
.rel-lectura a { color: var(--azul-texto); font-weight: 600; }

/* Índice /servicios */
.servicios-todos { max-width: 860px; }
.servicios-linea h2 { font: 900 italic clamp(1.3rem, 2.2vw, 1.7rem)/1.05 var(--cartel); text-transform: uppercase; margin-bottom: 12px; }
.servicios-linea ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.servicios-linea a {
  display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: 14px;
  padding: 14px 16px; border-radius: var(--radio); border: 1px solid var(--borde); background: var(--suelo);
  text-decoration: none; color: var(--tinta); transition: border-color .2s var(--ease), transform .2s var(--ease);
}
@media (hover: hover) { .servicios-linea a:hover { border-color: var(--azul); transform: translateY(-1px); } }
.sv-num { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; border: 6px solid var(--linea-h); background: var(--estacion); font: 900 16px/1 var(--cartel); color: var(--fuerte); }
.linea-i .sv-num { border-color: var(--linea-i); }
.sv-txt { display: grid; gap: 4px; }
.sv-txt b { font: 800 17px/1.2 var(--cartel); color: var(--fuerte); }
.sv-txt small { font-size: 14px; line-height: 1.4; color: var(--tinta-suave); }

@media (max-width: 600px) {
  .migas { padding: 0 6px; }
  .servicios-linea a { grid-template-columns: 38px minmax(0, 1fr); }
  .servicios-linea .rel-chips { display: none; }
  .sv-num { width: 38px; height: 38px; border-width: 5px; font-size: 14px; }
}

/* La línea de la ruta termina en la última parada (después vienen las preguntas, que no son paradas). */
.articulo-cuerpo .parada:not(:has(~ .parada))::before { display: none; }
