/* Partifica · componentes que solo usan las páginas de contenido (guías, precio, quiénes somos, alternativa a Presto).
   Va después de partifica.css. Separado para que la portada no los descargue */
/* Paso a paso, con la captura del móvil al lado */
.pasos-zona{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:start;margin-top:32px}
.pasos{list-style:none;margin:0;padding:0;counter-reset:paso}
.pasos li{counter-increment:paso;border-top:2px solid var(--marino);padding:20px 0 28px}
.pasos li::before{content:"0" counter(paso);display:block;font-variant-numeric:tabular-nums;font-size:15px;font-weight:700;color:var(--accent)}
.pasos h3{margin:6px 0 8px;font-size:22px;letter-spacing:-.02em}
.pasos p{font-size:17px;line-height:1.6;color:var(--text-secondary)}
.pasos p+p{margin-top:10px}
.captura{position:sticky;top:96px;margin:0}
.captura img,.figura-movil img{width:100%;height:auto;border-radius:28px;border:6px solid #1B1E23;box-shadow:var(--shadow-md)}
.captura figcaption{margin-top:12px;font-size:14px;color:var(--text-secondary);text-align:center}

/* Lo que no hace, listas, precio */
.lista-no{margin:20px 0 0;padding:0;list-style:none;display:grid;gap:12px}
.lista-no li{font-size:18px;line-height:1.5;padding-left:22px;position:relative}
.lista-no li::before{content:"";position:absolute;left:0;top:.7em;width:10px;height:2px;background:var(--text)}
.lista-si{margin:20px 0 0;padding:0;list-style:none;display:grid;gap:12px}
.lista-si li{font-size:18px;line-height:1.5;padding-left:26px;position:relative}
.lista-si li::before{content:"✓";position:absolute;left:0;top:0;font-weight:700;color:var(--success)}
.precio-caja{margin-top:24px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:28px 32px}
.precio-caja p{font-size:18px;line-height:1.6}
.precio-caja p+p{margin-top:10px}
.precio-caja .boton-si{margin-top:22px}

/* ---------- Componentes de las páginas de contenido ---------- */
.texto{max-width:760px}
.texto p{font-size:18px;line-height:1.65;color:var(--text-secondary)}
.texto p+p,.texto p+ul,.texto ul+p{margin-top:14px}
.texto strong{color:var(--text)}
.texto h3{margin:30px 0 8px;font-size:22px;letter-spacing:-.02em}
.texto ul:not(.lista-si):not(.lista-no){margin:16px 0 0;padding-left:22px;font-size:18px;line-height:1.6;color:var(--text-secondary)}
.texto ul:not(.lista-si):not(.lista-no) li+li{margin-top:6px}
.capitulo-partidas{margin-top:28px;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface)}
.capitulo-partidas .cab{background:var(--bg-subtle);border-bottom:1px solid var(--border);padding:12px 24px;font-size:15px;font-weight:700;letter-spacing:-.01em}
.capitulo-partidas .cab span{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text-secondary)}
.partida{display:grid;grid-template-columns:minmax(0,230px) minmax(0,1fr);gap:28px;padding:20px 24px;border-top:1px solid var(--border)}
.cab+.partida{border-top:0}
.partida .nota-mano{font-family:var(--mano);font-size:21px;line-height:1.35;color:#23324A;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-md);padding:8px 12px;align-self:start}
.partida .redaccion{font-size:16px;line-height:1.6;color:var(--text-secondary)}
.partida .redaccion strong{color:var(--text)}
.partida .medida{display:inline-block;margin-top:6px;font-variant-numeric:tabular-nums;font-size:14px;font-weight:600;color:var(--text)}
.partida .sin-medida{display:inline-block;margin-top:6px;font-size:14px;color:var(--text-secondary)}
.tabla-caja{margin-top:24px;border:1px solid var(--border);border-radius:var(--radius-lg);overflow-x:auto;background:var(--surface)}
.tabla{width:100%;border-collapse:collapse;font-size:16px;line-height:1.5;min-width:560px}
.tabla th,.tabla td{text-align:left;vertical-align:top;padding:14px 18px;border-top:1px solid var(--border)}
.tabla thead th{border-top:0;background:var(--bg-subtle);color:var(--text);font-size:14px;font-weight:600}
.tabla tbody th{font-weight:600;color:var(--text);width:24%}
.tabla td{color:var(--text-secondary)}
/* La columna de Partifica (.ap) va primera y destacada */
.tabla td.ap{background:var(--selected);color:var(--text);font-weight:600}
.prompt{margin-top:18px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px 22px;font-size:17px;line-height:1.6;color:var(--text);white-space:pre-line}
.preguntas-lista{margin-top:20px;border-top:1px solid var(--border)}
.preguntas-lista details{border-bottom:1px solid var(--border)}
.preguntas-lista summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:12px 0;font-size:18px;font-weight:600}
.preguntas-lista summary::-webkit-details-marker{display:none}
.preguntas-lista summary::after{content:"+";font-size:22px;color:var(--text-secondary)}
.preguntas-lista details[open] summary::after{content:"−"}
.preguntas-lista details p{padding-bottom:18px;font-size:17px;line-height:1.6;color:var(--text-secondary);max-width:44em}
.datos-empresa{margin-top:16px;font-size:16px;line-height:1.7;color:var(--text-secondary)}
.envoltura.texto,.envoltura.estrecha{max-width:1180px}
.envoltura.texto>*,.envoltura.estrecha>*{max-width:760px}
.figura-movil,.figura{margin:28px 0 0}
.figura-movil img{max-width:280px}
.figura img{width:100%;height:auto;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-md)}
.figura-movil figcaption,.figura figcaption{margin-top:10px;font-size:14px;color:var(--text-secondary)}
.figura-movil+p,.figura+p{margin-top:20px}

@media (max-width:860px){
  .pasos-zona{grid-template-columns:minmax(0,1fr)}
  .captura{position:static;max-width:280px;margin:8px auto 0}
  .partida{grid-template-columns:minmax(0,1fr);gap:10px}
}
@media (max-width:640px){
  .pasos h3{font-size:20px}
  .pasos p{font-size:16px}
  .lista-no li{font-size:17px}
  .precio-caja{padding:20px}
  .precio-caja p{font-size:17px}
  .precio-caja .boton-si{width:100%}
  .texto p,.texto ul,.lista-si li{font-size:17px}
  .partida{padding:16px 18px}
  .tabla th,.tabla td{padding:12px 14px}
  /* En el móvil la tabla se convierte en tarjetas: nada se corta y no hay que deslizar de lado */
  .tabla-caja{overflow-x:visible}
  .tabla{min-width:0}
  .tabla thead{display:none}
  .tabla,.tabla tbody,.tabla tr,.tabla th,.tabla td{display:block;width:auto}
  .tabla tr{padding:16px 16px 14px;border-top:1px solid var(--border)}
  .tabla tbody tr:first-child{border-top:0}
  .tabla th,.tabla td{border-top:0;padding:0}
  .tabla tbody th{width:auto;font-size:17px;line-height:1.35;margin-bottom:10px}
  .tabla td{margin-top:8px;font-size:16px}
  .tabla td::before{content:attr(data-label);display:block;margin-bottom:2px;font-size:13px;font-weight:600;color:var(--text-secondary)}
  .tabla td.ap{padding:10px 12px;border-radius:var(--radius-md)}
}
