/* Navegación: megamenú PPR, listado de guías (/ayuda/) y bloque de portada.
   Móvil primero; escritorio desde 992px (mismo corte que css/mmenu.css). */

/* ---------- Megamenú PPR ---------- */
#lc_nav-menu .mega-panel { padding: 0; margin: 0; list-style: none; box-sizing: border-box; }
#lc_nav-menu .mega-panel.sub-open {
	position: static; width: 100%; max-width: 100%; margin: 0; padding: 4px 0 12px;
	background: #f8f8f8; transform: none; opacity: 1; visibility: visible; height: auto;
}
#lc_nav-menu .mega-panel li { display: block; width: auto; margin: 0; padding: 0; float: none; list-style: none; }
#lc_nav-menu .mega-col { border-bottom: 1px solid #e3e7ec; }
#lc_nav-menu .mega-col-tit {
	display: flex; justify-content: space-between; align-items: center; width: 100%;
	padding: 12px 16px; background: none; border: 0; cursor: pointer; text-align: left;
	font: inherit; font-size: 17px; font-weight: 600; color: #1e3a56;
}
#lc_nav-menu .mega-col-tit::after {
	content: ""; width: 9px; height: 9px; flex: none; margin-left: 12px;
	border-right: 2px solid #017fe4; border-bottom: 2px solid #017fe4;
	transform: rotate(45deg); transition: transform .2s;
}
#lc_nav-menu .mega-col-tit[aria-expanded="true"]::after { transform: rotate(-135deg); }
#lc_nav-menu .mega-list { display: none; margin: 0; padding: 0 16px 10px; list-style: none; }
#lc_nav-menu .mega-col.abierta .mega-list { display: block; }
#lc_nav-menu .mega-panel a,
#lc_nav-menu .mega-panel a:visited {
	display: block; width: auto; margin: 0; padding: 9px 0; float: none;
	font-size: 16px; line-height: 1.3; color: #536d83; background: none; text-decoration: none;
	overflow-wrap: anywhere;
}
#lc_nav-menu .mega-panel a:hover,
#lc_nav-menu .mega-panel a:focus { color: #017fe4; text-decoration: underline; }
#lc_nav-menu .mega-pie a,
#lc_nav-menu .mega-pie a:visited { padding: 14px 16px 4px; font-weight: 600; color: #017fe4; }

@media (min-width: 992px) {
	#lc_nav-menu .mega-panel.sub-open {
		position: absolute; top: 100%; right: 0; left: auto; z-index: 120;
		width: 880px; max-width: calc(100vw - 32px);
		display: grid; grid-template-columns: 1fr 1fr 1.6fr; column-gap: 28px;
		padding: 22px 26px 16px; margin: 0;
		background: #fff; border: 1px solid #dee2e6 !important; border-radius: 6px;
		box-shadow: 0 12px 32px rgba(30, 58, 86, .14);
	}
	#lc_nav-menu .mega-col { border: 0; }
	#lc_nav-menu .mega-col-tit {
		padding: 0 0 8px; margin-bottom: 4px; cursor: default; pointer-events: none;
		font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: #8a97a6;
		border-bottom: 1px solid #e3e7ec;
	}
	#lc_nav-menu .mega-col-tit::after { display: none; }
	#lc_nav-menu .mega-list { display: block; padding: 0; }
	#lc_nav-menu .mega-col:nth-child(3) .mega-list { columns: 2; column-gap: 20px; }
	#lc_nav-menu .mega-list li { break-inside: avoid; }
	#lc_nav-menu .mega-panel a, #lc_nav-menu .mega-panel a:visited { padding: 6px 0; font-size: 15px; }
	#lc_nav-menu .mega-pie { grid-column: 1 / -1; border-top: 1px solid #e3e7ec; margin-top: 12px; }
	#lc_nav-menu .mega-pie a, #lc_nav-menu .mega-pie a:visited { padding: 12px 0 0; }
}

/* ---------- Tarjetas de guía ---------- */
.sg-grid { display: grid; grid-template-columns: 1fr; gap: 16px; margin: 0 0 24px; }
@media (min-width: 576px) { .sg-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 992px) { .sg-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; } }

.sg-card { min-width: 0; background: #fff; border: 1px solid #e3e7ec; border-radius: 8px; overflow: hidden; transition: box-shadow .2s; }
.sg-card:hover { box-shadow: 0 6px 20px rgba(30, 58, 86, .12); }
.sg-card-link, .sg-card-link:visited { display: flex; flex-direction: column; height: 100%; color: inherit; text-decoration: none; }
.sg-card-img { aspect-ratio: 16 / 9; background: #eef3f8; overflow: hidden; }
.sg-card-img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sg-card-body { padding: 14px 16px 16px; }
.sg-card-tit { margin: 0 0 6px; font-size: 18px; line-height: 1.3; color: #1e3a56; overflow-wrap: anywhere; }
.sg-card-link:hover .sg-card-tit { color: #017fe4; }
.sg-card-desc { margin: 0 0 8px; font-size: 15px; line-height: 1.45; color: #536d83; }
.sg-card-fecha { margin: 0; font-size: 13px; color: #8a97a6; }

.sg-sec-tit { margin: 24px 0 14px; font-size: 22px; }
.sg-pag-num { font-weight: 400; color: #8a97a6; font-size: .8em; }

/* Bloque destacado «Retiro y PPR»: tarjetas compactas */
.sg-destacados { margin-bottom: 8px; padding: 4px 0 4px; }
.sg-destacados .sg-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
@media (min-width: 768px) { .sg-destacados .sg-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.sg-destacados .sg-card { border-color: #cfe4f8; }
.sg-destacados .sg-card-tit { margin: 0; font-size: 16px; }
.sg-destacados .sg-card-body { padding: 10px 12px 12px; }

/* ---------- Chips de tema ---------- */
.sg-chips {
	display: flex; gap: 8px; margin: 18px 0 4px; padding: 2px 0 8px;
	overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: thin; max-width: 100%;
}
.sg-chips a, .sg-chips a:visited {
	flex: none; padding: 8px 14px; border: 1px solid #cfd8e2; border-radius: 999px;
	font-size: 15px; line-height: 1.2; color: #1e3a56; background: #fff; text-decoration: none; white-space: nowrap;
}
.sg-chips a:hover { border-color: #017fe4; color: #017fe4; }
.sg-chips a[aria-current="page"] { background: #017fe4; border-color: #017fe4; color: #fff; }

/* ---------- Paginación ---------- */
.sg-paginacion { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin: 8px 0 40px; }
.sg-paginacion .page-numbers {
	min-width: 40px; padding: 9px 12px; border: 1px solid #cfd8e2; border-radius: 6px;
	text-align: center; text-decoration: none; color: #1e3a56; background: #fff; box-sizing: border-box;
}
.sg-paginacion a.page-numbers:hover { border-color: #017fe4; color: #017fe4; }
.sg-paginacion .page-numbers.current { background: #017fe4; border-color: #017fe4; color: #fff; }
.sg-paginacion .page-numbers.dots { border: 0; min-width: 0; padding: 9px 2px; }

/* ---------- Portada: guías recientes ---------- */
.HPrecientes { padding: 32px 0 12px; }
.HPrecientes h2 { text-align: center; margin-bottom: 18px; }
.HPrecientes .sg-card-tit { font-size: 17px; }
.HPrecientes-ver { text-align: center; margin: 4px 0 8px; }
.HPrecientes-ver a, .HPrecientes-ver a:visited {
	display: inline-block; padding: 12px 22px; border-radius: 4px;
	background: #017fe4; color: #fff; text-decoration: none; font-weight: 600;
}
.HPrecientes-ver a:hover { background: #0169bd; }
