/* ============================================================
   Páginas de préstamos y financiamiento (prefijo .fin-)
   software-prestamos.php (PointSeller) y psfinance.php (PSFinance).
   Complementa css/landing.css y css/industria.css.
   ============================================================ */
.fin-hero--psf { background: linear-gradient(135deg, #142c44 0%, #1b3a5b 100%); }
.fin-badge-nuevo { display: inline-block; margin-left: .5rem; padding: .15rem .6rem; border-radius: 999px; background: #22c55e; color: #052e16; font-size: .72rem; font-weight: 700; letter-spacing: .03em; vertical-align: middle; }

/* Tarjetas de "qué puedes financiar" */
.fin-activos { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.25rem; }
.fin-activo { background: #fff; border: 1px solid var(--gray-200, #e5e7eb); border-radius: 16px; padding: 1.5rem; box-shadow: var(--shadow-sm, 0 1px 2px rgba(0,0,0,.05)); }
.fin-activo__icon { width: 52px; height: 52px; border-radius: 14px; display: flex; align-items: center; justify-content: center; font-size: 1.4rem; color: #fff; background: var(--gradient-primary, linear-gradient(135deg, #2563eb, #7c3aed)); margin-bottom: 1rem; }
.fin-activo h3 { font-size: 1.15rem; margin: 0 0 .5rem; color: var(--gray-900, #111827); }
.fin-activo p { margin: 0 0 .6rem; color: var(--gray-600, #4b5563); line-height: 1.6; font-size: .96rem; }
.fin-activo ul { margin: 0; padding-left: 1.1rem; color: var(--gray-700, #374151); font-size: .93rem; line-height: 1.6; }
.fin-activo a { color: var(--primary-dark, #1d4ed8); font-weight: 600; }

/* Pasos */
.fin-pasos { counter-reset: paso; list-style: none; padding: 0; margin: 0 auto; max-width: 860px; display: grid; gap: 1rem; }
.fin-pasos li { counter-increment: paso; position: relative; padding: 1.1rem 1.25rem 1.1rem 4rem; background: #fff; border: 1px solid var(--gray-200, #e5e7eb); border-radius: 14px; color: var(--gray-700, #374151); line-height: 1.6; }
.fin-pasos li::before { content: counter(paso); position: absolute; left: 1.1rem; top: 1rem; width: 2.2rem; height: 2.2rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--primary-100, #dbeafe); color: var(--primary-dark, #1d4ed8); font-weight: 800; }
.fin-pasos strong { color: var(--gray-900, #111827); }

/* Tablas (modalidades, comparativa) */
.fin-tabla-wrap { overflow-x: auto; max-width: 980px; margin: 0 auto; border: 1px solid var(--gray-200, #e5e7eb); border-radius: 14px; background: #fff; }
.fin-tabla { width: 100%; border-collapse: collapse; font-size: .95rem; min-width: 560px; }
.fin-tabla th, .fin-tabla td { text-align: left; padding: .85rem 1rem; border-bottom: 1px solid var(--gray-200, #e5e7eb); vertical-align: top; }
.fin-tabla th { background: var(--gray-50, #f9fafb); color: var(--gray-900, #111827); font-weight: 700; }
.fin-tabla tr:last-child td { border-bottom: 0; }
.fin-tabla td:first-child { font-weight: 600; color: var(--gray-900, #111827); }
.fin-tabla i.fa-check { color: var(--success, #10b981); }
.fin-tabla i.fa-minus { color: var(--gray-400, #9ca3af); }

/* Nota de transparencia */
.fin-nota { max-width: 860px; margin: 1.5rem auto 0; padding: 1rem 1.25rem; border-radius: 12px; background: #eff6ff; border: 1px solid #bfdbfe; color: #1e3a8a; font-size: .93rem; line-height: 1.6; }
.fin-nota a { color: #1d4ed8; font-weight: 600; }

/* Formulario: estado de error honesto */
.lp-form__err { display: none; margin-bottom: 1rem; padding: .75rem 1rem; border-radius: 10px; background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; font-size: .92rem; }
.lp-form__err.show { display: block; }
.lp-form__err a { color: #991b1b; font-weight: 700; }
