/* bloques/puntos — rejilla de puntos numerados o con marca */


.bl-pt-cuerpo.con-lateral { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(32px, 4.5vw, 64px); align-items: start; }
.bl-pt-cuerpo.lateral-izquierda .bl-pt-lateral { order: -1; }

.bl-pt-lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--bl-pt-cols, 3), minmax(0, 1fr)); gap: clamp(28px, 3vw, 40px) clamp(20px, 2.4vw, 32px); }

.bl-pt-item { display: flex; flex-direction: column; gap: 12px; }
.bl-pt--lineas .bl-pt-item { border-top: 1px solid currentColor; padding-top: 18px; }
.bl-pt--tarjetas { gap: 6px; }
.bl-pt--tarjetas .bl-pt-item { padding: clamp(22px, 2.4vw, 32px); background: var(--vk-crema-2, #efe9e1); }
.bl-tema-oscuro .bl-pt--tarjetas .bl-pt-item { background: var(--vk-oscuro-2, #2f2e2c); }

.bl-pt-num { font-family: var(--fuente-mono, ui-monospace, monospace); font-size: 12.5px; letter-spacing: .04em; color: var(--vk-texto-2, #5f5c58); }
.bl-tema-oscuro .bl-pt-num { color: rgba(255, 255, 255, .6); }
.bl-pt-check { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 6px; background: var(--vk-amarillo, #dfbe2d); color: var(--vk-oscuro, #262524); }
.bl-pt-check svg { width: 15px; height: 15px; }
.bl-pt--check { gap: 28px 32px; }
.bl-pt--check .bl-pt-item { flex-direction: row; align-items: flex-start; gap: 14px; border-top: 0; padding-top: 0; }
.bl-pt--check.bl-pt--tarjetas .bl-pt-item { padding: 22px; }
/* Marca encima del título: filete arriba, la marca (más grande) y debajo el
   título en negrita y el texto. */
.bl-pt--check_arriba .bl-pt-item { gap: 18px; }
.bl-pt--check_arriba.bl-pt--lineas .bl-pt-item { padding-top: 24px; border-top-color: var(--vk-linea, rgba(38, 37, 36, .14)); }
.bl-tema-oscuro .bl-pt--check_arriba.bl-pt--lineas .bl-pt-item { border-top-color: rgba(255, 255, 255, .18); }
.bl-pt--check_arriba .bl-pt-check { width: 36px; height: 36px; border-radius: 8px; }
.bl-pt--check_arriba .bl-pt-check svg { width: 16px; height: 16px; }
.bl-pt--check_arriba .bl-pt-titulo { font-weight: 700; }

/* Fondo en caja: la sección queda en beige y el color del tema va en una
   caja con las esquinas redondeadas dentro del ancho de la página. */
/* La caja ya trae su relleno: la sección, menos aire arriba y abajo. */
.bl-puntos.bl-pt--caja { background: var(--vk-crema, #f8f5f1); padding-block: clamp(12px, 2vw, 28px); }
.bl-pt-caja { padding: clamp(28px, 4.6vw, 64px) clamp(22px, 4.4vw, 56px); border-radius: 10px; background: var(--vk-crema-2, #efe9e1); }
.bl-pt--caja.bl-tema-oscuro .bl-pt-caja { background: var(--vk-oscuro, #262524); }

.bl-pt-contenido { display: flex; flex-direction: column; gap: 8px; }
.bl-pt-titulo { margin: 0; font-weight: 500; font-size: clamp(19px, 1.6vw, 22px); line-height: 1.25; }
.bl-pt-texto { margin: 0; font-size: 14px; line-height: 1.3; color: var(--vk-texto-2, #5f5c58); }
.bl-tema-oscuro .bl-pt-texto { color: rgba(255, 255, 255, .72); }
/* El texto de cada punto es richtext mini: párrafos con negrita y cursiva. */
.bl-pt-texto p { margin: 0 0 .6em; }
.bl-pt-texto > :last-child { margin-bottom: 0; }
.bl-pt-texto strong { color: var(--vk-texto, #262524); }
.bl-tema-oscuro .bl-pt-texto strong { color: #fff; }
.bl-pt-enlace { margin-top: 6px; align-self: flex-start; }

.bl-pt-lateral { display: flex; flex-direction: column; gap: 18px; }
.bl-pt-foto { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: rgba(38, 37, 36, .08); }
.bl-pt-foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bl-pt-nota { margin: 0; font-size: 17px; line-height: 1.55; }
.bl-pt-nota-destacada { margin: 0; padding-top: 14px; border-top: 1px solid var(--vk-linea, rgba(38,37,36,.14)); font-family: var(--fuente-mono, ui-monospace, monospace); font-size: 12.5px; letter-spacing: .04em; text-transform: uppercase; }
.bl-tema-oscuro .bl-pt-nota-destacada { border-color: rgba(255, 255, 255, .16); }

.bl-pt-pie { margin-top: clamp(28px, 3vw, 40px); font-size: 16px; }
.bl-pt-pie p { margin: 0; }
.bl-pt-pie a:not(.boton, .enlace-accion) { font-weight: 500; }

@media (max-width: 1000px) {
    .bl-pt-lista { grid-template-columns: repeat(min(var(--bl-pt-cols, 3), 2), minmax(0, 1fr)); }
}
@media (max-width: 860px) {
    .bl-pt-cuerpo.con-lateral { grid-template-columns: minmax(0, 1fr); }
    .bl-pt-cuerpo.lateral-izquierda .bl-pt-lateral { order: 0; }
}
@media (max-width: 600px) {
    .bl-pt-lista { grid-template-columns: minmax(0, 1fr); }
}

/* Texto largo bajo la cabecera (campo `cuerpo`). */
.bl-pt-texto-largo { max-width: 760px; margin: 0 0 clamp(32px, 4vw, 48px); font-size: 17px; line-height: 1.65; }
.bl-pt-texto-largo > :first-child { margin-top: 0; }
.bl-pt-texto-largo p { margin: 0 0 1em; }
.bl-pt-texto-largo ul, .bl-pt-texto-largo ol { margin: 0 0 1em; padding-left: 1.2em; }
.bl-pt-texto-largo a:not(.boton, .enlace-accion) { font-weight: 500; }
.bl-tema-oscuro .bl-pt-texto-largo { color: rgba(255, 255, 255, .86); }
