/* ==========================================================================
   GuíaLegal.info — listados (provincia, ciudad, especialidad, búsqueda, índice de especialidades)
   Complementa guialegal.css. Solo clases gl-*.
   ========================================================================== */

/* Cabecera */
.gl-cabecera-listado .gl-entradilla { max-width: 760px; }
.gl-cabecera-listado .gl-chips { margin-top: 18px; }
.gl-cabecera-pie { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; }
.gl-cabecera-pie .gl-recuento { margin-top: 14px; }
.gl-cabecera-pie .gl-enlace-flecha { margin-top: 14px; font-size: .92rem; }
.gl-botonera { margin-top: 20px; }
.gl-botonera-titulo { font: 700 .72rem var(--gl-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--gl-gris); margin: 0 0 8px; }

/* Columna principal */
.gl-listado-principal { min-width: 0; }
.gl-listado-titulo { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 16px; margin-bottom: 14px; }
.gl-listado-titulo h2 { font-size: 1.45rem; margin: 0; }
.gl-listado-titulo p { margin: 0; font-size: .86rem; color: var(--gl-gris); }

/* Filas */
.gl-fila-cuerpo { min-width: 0; }
.gl-fila-cuerpo h3 { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 0; }
.gl-fila-cuerpo h3 .gl-sello { position: relative; z-index: 1; }
.gl-ficha-meta span { overflow-wrap: anywhere; }
.gl-fila-materias { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 9px; }
.gl-etiqueta-mas { background: transparent; border: 1px dashed var(--gl-linea); color: var(--gl-gris); }
.gl-ficha-accion .gl-btn i { font-size: .85em; }
@media (max-width: 640px) {
    .gl-ficha-accion .gl-btn { padding: .4rem .8rem; }
}

/* Paginación */
.gl-paginacion { margin-top: 26px; }
.gl-paginacion .pagination { margin-bottom: 8px; }

/* Lateral */
.gl-caja-lista a span { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.gl-caja-pie { margin: 12px 0 0; font-size: .85rem; }
.gl-caja-oscura .gl-btn-claro { color: var(--gl-vino); }

/* Bloque descriptivo de la especialidad (texto de BD) */
.gl-descripcion-bd { background: #fff; border: 1px solid var(--gl-linea); border-radius: var(--gl-radio-g); padding: 26px 28px; margin-bottom: 28px; }
.gl-descripcion-bd > :last-child { margin-bottom: 0; }
@media (max-width: 640px) { .gl-descripcion-bd { padding: 20px; } }

/* Rejilla de provincias en el hub de especialidad */
.gl-zonas { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 8px; margin-bottom: 34px; }
.gl-zonas a { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 11px 14px; background: #fff; border: 1px solid var(--gl-linea); border-radius: var(--gl-radio); color: var(--gl-tinta); text-decoration: none; font-weight: 600; font-size: .93rem; }
.gl-zonas a:hover { border-color: var(--gl-vino); color: var(--gl-vino); }
.gl-zonas small { color: var(--gl-gris); font-weight: 500; font-variant-numeric: tabular-nums; }
@media (max-width: 640px) { .gl-zonas { grid-template-columns: 1fr 1fr; } }
.gl-subtitulo { font-size: 1.3rem; margin: 0 0 12px; }

/* Texto SEO */
.gl-texto-seo { max-width: 820px; }
.gl-texto-seo p { margin-bottom: 1rem; }
.gl-texto-seo ul { padding-left: 1.2rem; }
.gl-texto-seo li { margin-bottom: .4rem; }

/* Buscador de /buscar/ */
.gl-busqueda { display: grid; grid-template-columns: 1.2fr 1fr 1fr auto; gap: 12px; align-items: end; margin-top: 22px; background: var(--gl-papel); border: 1px solid var(--gl-linea); border-radius: var(--gl-radio-g); padding: 16px; }
.gl-busqueda label { font-weight: 600; font-size: .84rem; margin-bottom: 4px; display: block; color: var(--gl-tinta-suave); }
.gl-busqueda .form-control, .gl-busqueda .form-select { border-color: var(--gl-linea); border-radius: var(--gl-radio); padding: .65rem .85rem; }
.gl-busqueda .gl-btn { height: 46px; }
@media (max-width: 991px) { .gl-busqueda { grid-template-columns: 1fr 1fr; } .gl-busqueda > div:first-child { grid-column: 1 / -1; } .gl-busqueda .gl-btn { grid-column: 1 / -1; } }
@media (max-width: 575px) { .gl-busqueda { grid-template-columns: 1fr; } }
.gl-filtros-activos { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 14px; font-size: .88rem; color: var(--gl-gris); }

/* Índice de especialidades */
.gl-indice-materias { display: flex; flex-direction: column; gap: 40px; }
.gl-grupo-materias h2 { font-size: 1.5rem; margin-bottom: 4px; }
.gl-grupo-materias > p { color: var(--gl-tinta-suave); margin-bottom: 16px; max-width: 720px; }
.gl-materias-desc .gl-materia { gap: 6px; }
.gl-materias-desc .gl-materia p { font-size: .9rem; color: var(--gl-tinta-suave); margin: 0; line-height: 1.5; }
.gl-materias-desc .gl-materia span { margin-top: auto; padding-top: 6px; }
@media (max-width: 640px) { .gl-materias-desc { grid-template-columns: 1fr; } }
.gl-saltos { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }

/* Convivencia con la barra móvil y el chat */
@media (max-width: 991px) {
    body.gl-con-barra-movil .chatbot-widget { bottom: 84px !important; }
}
.gl-sello { font-family: var(--gl-sans); }
@media (max-width: 640px) {
    .gl-ficha-fila { align-items: start; }
}
@media (max-width: 991px) { .gl-solo-escritorio { display: none; } }
.gl-cabecera-listado h1.gl-h1-pegado { margin-top: 0; }
.gl-caja-texto { font-size: .9rem; margin-bottom: 8px; }
.gl-seccion-indice { padding-top: 40px; }
.gl-banda-indice { margin-top: 56px; }
