/* La Prensa – Bloques Policía y Nota luctuosa */
.lp-policia, .lp-obit {
	--lp-ink: #1a1a1a; --lp-muted: #5d636b; --lp-rule: #d9dbde;
	--lp-accent: #c41e3a; --lp-police: #16305c; --lp-police-soft: #eef2f8; --lp-paper: #ffffff;
	--lp-head: "Merriweather", Georgia, "Times New Roman", serif;
	--lp-ui: "Open Sans", -apple-system, "Segoe UI", Arial, sans-serif;
	color: var(--lp-ink);
}
.lp-policia a, .lp-obit a { color: inherit; text-decoration: none; }
.lp-policia h3 a:hover, .lp-obit h3 a:hover { color: var(--lp-accent); }

.lp-kicker { font-family: var(--lp-ui); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--lp-police); }
.lp-meta { font-family: var(--lp-ui); font-size: 12px; color: var(--lp-muted); }
.lp-media { display: block; overflow: hidden; }
.lp-img { display: block; width: 100%; aspect-ratio: 16 / 9; height: auto; object-fit: cover; max-width: 100%; transition: transform .3s ease; }
.lp-media:hover .lp-img { transform: scale(1.03); }
.lp-img--empty { background: repeating-linear-gradient(135deg, #dfe3e8 0 14px, #d3d8df 14px 28px); }

/* Policía */
.lp-policia { background: var(--lp-police-soft); border-top: 4px solid var(--lp-police); padding: 22px; }
.lp-policia__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 18px; }
.lp-policia__head h2 { margin: 0; display: flex; align-items: center; gap: 10px; font-family: var(--lp-ui); font-size: 16px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--lp-police); }
.lp-policia__head a { font-family: var(--lp-ui); font-size: 12px; color: var(--lp-muted); }
.lp-badge { display: inline-grid; place-items: center; width: 26px; height: 26px; border: 2px solid var(--lp-police); border-radius: 50%; font-size: 12px; }
.lp-today { display: inline-block; background: var(--lp-police); color: #fff; font-size: 10px; padding: 2px 7px; margin-right: 6px; }
.lp-policia__lead { display: grid; grid-template-columns: 1.1fr 1fr; gap: 22px; padding-bottom: 22px; border-bottom: 1px solid var(--lp-rule); }
.lp-policia__lead h3 { margin: 6px 0 10px; font-family: var(--lp-head); font-size: 24px; line-height: 1.2; font-weight: 800; }
.lp-policia__lead p { margin: 0 0 10px; color: var(--lp-muted); font-size: 15px; line-height: 1.55; }
.lp-policia__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; padding-top: 22px; }
.lp-policia__item { display: grid; gap: 8px; align-content: start; min-width: 0; }
.lp-policia__item h3 { margin: 0; font-family: var(--lp-head); font-size: 16px; line-height: 1.32; font-weight: 700; }

/* Nota luctuosa */
.lp-obit { border: 1px solid var(--lp-ink); padding: 4px; background: var(--lp-paper); }
.lp-obit__in { border: 1px solid var(--lp-ink); padding: 22px 20px; text-align: center; display: grid; gap: 10px; justify-items: center; }
.lp-obit__label { font-family: var(--lp-ui); font-size: 11px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; }
.lp-cross { width: 18px; height: 24px; position: relative; }
.lp-cross::before, .lp-cross::after { content: ""; position: absolute; background: var(--lp-ink); }
.lp-cross::before { left: 8px; top: 0; width: 2px; height: 24px; }
.lp-cross::after { left: 2px; top: 6px; width: 14px; height: 2px; }
.lp-obit__photo { width: 112px; height: 140px; background: #eef0f2; border: 1px solid var(--lp-rule); display: grid; place-items: center; overflow: hidden; font-family: var(--lp-head); font-size: 38px; color: var(--lp-muted); filter: grayscale(1); }
.lp-obit__photo img { width: 100%; height: 100%; object-fit: cover; }
.lp-obit h3 { margin: 0; font-family: var(--lp-head); font-size: 22px; line-height: 1.2; font-weight: 700; }
.lp-obit__role { margin: 0; font-family: var(--lp-head); font-style: italic; color: var(--lp-muted); font-size: 14px; }
.lp-obit__date { font-family: var(--lp-ui); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.lp-obit__body { margin: 0; font-family: var(--lp-head); font-size: 14px; line-height: 1.6; text-align: left; }
.lp-obit dl { margin: 0; width: 100%; text-align: left; font-family: var(--lp-ui); font-size: 12.5px; display: grid; gap: 8px; border-top: 1px solid var(--lp-rule); padding-top: 12px; }
.lp-obit dt { font-weight: 700; letter-spacing: .06em; text-transform: uppercase; font-size: 10.5px; color: var(--lp-muted); }
.lp-obit dd { margin: 0; }
.lp-obit__rip { margin: 4px 0 0; font-family: var(--lp-head); font-style: italic; font-size: 14px; }
.lp-empty { padding: 12px; border: 1px dashed #c3c7cc; font-size: 13px; }

@media (max-width: 767px) {
	.lp-policia { padding: 16px; }
	.lp-policia__lead { grid-template-columns: 1fr; }
	.lp-policia__grid { grid-template-columns: 1fr; }
	.lp-policia__item { grid-template-columns: 120px minmax(0, 1fr); column-gap: 12px; }
	.lp-policia__item .lp-media { grid-row: span 3; }
}

/* Botón flotante WhatsApp (solo móvil, centrado) */
.lp-wa { display: none; }
@media (max-width: 767px) {
	.lp-wa {
		position: fixed; z-index: 9999;
		left: calc(78px + env(safe-area-inset-left, 0px));
		right: calc(78px + env(safe-area-inset-right, 0px));
		margin-inline: auto; width: fit-content;
		bottom: calc(20px + env(safe-area-inset-bottom, 0px));
		display: inline-flex; align-items: center; justify-content: center; gap: 8px;
		white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
		padding: 10px 16px; border-radius: 10px;
		background: #25d366; color: #fff !important; text-decoration: none !important;
		font: 700 13.5px/1.1 "Open Sans", -apple-system, "Segoe UI", Arial, sans-serif;
		box-shadow: 0 6px 18px rgba(0, 0, 0, .25);
	}
	.lp-wa:active { transform: scale(.97); }
	.lp-wa:focus-visible { outline: 3px solid #128c7e; outline-offset: 3px; }
	body.single-post { padding-bottom: 72px; }
	.lp-wa svg { width: 20px; height: 20px; flex: none; }
}

/* Banners del patrocinador */
.lp-ad { margin: 24px 0; text-align: center; }
.lp-ad__label { display: block; margin-bottom: 6px; font: 600 10px/1 "Open Sans", Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #8a8f96; }
.lp-ad__items { display: grid; gap: 16px; justify-content: center; }
.lp-ad__item { display: block; }
.lp-ad__item img { display: block; width: 100%; height: auto; max-width: 100%; border-radius: 6px; }
.lp-ad--uno .lp-ad__items { grid-template-columns: minmax(0, 340px); }
.lp-ad--columna .lp-ad__items { grid-template-columns: minmax(0, 1fr); }
.lp-ad--fila .lp-ad__items { grid-template-columns: repeat(auto-fit, minmax(150px, 300px)); }
.lp-ad--fila .lp-ad__items { grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); }
.lp-ad--uno .lp-ad__items { grid-template-columns: minmax(0, 520px); }
@media (max-width: 767px) {
	.lp-ad--fila .lp-ad__items { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; justify-content: flex-start; padding-bottom: 6px; }
	.lp-ad--fila .lp-ad__item { flex: 0 0 82%; scroll-snap-align: start; }
}
