#!/usr/bin/env python3
"""Generate Propuesta-RRHH-Aloja.pdf via Chrome headless.
Cliente: Aloja Experience · Madrid
Producto: Valírica RRHH · €5.25/empleado/mes
"""
import base64, os, subprocess, sys

WORKDIR = os.path.dirname(os.path.abspath(__file__))

with open(os.path.join(WORKDIR, "Dev-Valirica-Logo-Light-Clean.svg"), "rb") as f:
    LOGO = "data:image/svg+xml;base64," + base64.b64encode(f.read()).decode()

CSS = """
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&family=Poppins:wght@300;400;500;600;700&display=swap');

@page { size: A4 portrait; margin: 0; }

*, *::before, *::after {
  margin: 0; padding: 0; box-sizing: border-box;
  -webkit-print-color-adjust: exact !important;
  print-color-adjust: exact !important;
}

:root {
  --navy: #012133;
  --cyan: #12d6e0;
  --paper: #F7F9FB;
  --line: #E5EAEE;
  --muted: #5A6B78;
  --soft-navy: #1a3548;
}

html, body { font-family: "Playfair Display", Georgia, serif; font-size: 10.5pt; color: var(--navy); background: #fff; }

/* ── PAGES ─────────────────────────────────────────── */

.page-cover {
  width: 210mm; height: 297mm;
  background: linear-gradient(145deg, #012133 0%, #01283f 50%, #013d5a 100%);
  color: white; position: relative; overflow: hidden;
  padding: 28mm 22mm; page-break-after: always;
}

.page {
  width: 210mm; min-height: 297mm;
  padding: 22mm 20mm 30mm 20mm;
  page-break-after: always; position: relative; background: white;
}

.cta-page {
  width: 210mm; min-height: 297mm;
  background: linear-gradient(145deg, #012133 0%, #01283f 50%, #013d5a 100%);
  color: white; padding: 32mm 25mm 28mm 25mm;
  page-break-after: always; position: relative; overflow: hidden;
}

.back-cover {
  width: 210mm; height: 297mm; background: var(--navy);
  color: white; padding: 32mm 25mm; position: relative;
  overflow: hidden; page-break-after: auto;
}

/* ── GLOWS ─────────────────────────────────────────── */

.bg-glow { position: absolute; border-radius: 50%; pointer-events: none; z-index: 0; }
.g1 { top:-50mm; right:-50mm; width:210mm; height:210mm;
      background: radial-gradient(circle, rgba(18,214,224,.20) 0%, transparent 68%); }
.g2 { bottom:-80mm; left:-60mm; width:190mm; height:190mm;
      background: radial-gradient(circle, rgba(18,214,224,.11) 0%, transparent 68%); }
.g3 { top:-55mm; right:-55mm; width:220mm; height:220mm;
      background: radial-gradient(circle, rgba(18,214,224,.20) 0%, transparent 68%); }
.g4 { bottom:-100mm; left:-50mm; width:260mm; height:260mm;
      background: radial-gradient(circle, rgba(18,214,224,.13) 0%, transparent 68%); }

/* ── COVER ─────────────────────────────────────────── */

.cover-logo { width: 36mm; display: block; position: relative; z-index: 2; }

.cover-client {
  font-family: "Poppins", sans-serif; font-size: 7.5pt; letter-spacing: .32em;
  color: rgba(255,255,255,.55); text-transform: uppercase; margin-top: 48mm;
  font-weight: 400; position: relative; z-index: 2;
}

.cover-tag {
  font-family: "Poppins", sans-serif; font-size: 8.5pt; letter-spacing: .22em;
  color: var(--cyan); text-transform: uppercase; margin-top: 4mm;
  font-weight: 600; position: relative; z-index: 2;
}

.cover-title {
  font-family: "Playfair Display", Georgia, serif; font-size: 36pt;
  line-height: 1.1; font-weight: 700; margin-top: 10mm; letter-spacing: -.015em;
  position: relative; z-index: 2; color: white;
}

.cover-title .accent { color: var(--cyan); font-style: italic; font-weight: 600; }

.cover-pills {
  display: flex; flex-wrap: wrap; gap: 2.5mm; margin-top: 8mm; position: relative; z-index: 2;
}

.cp {
  font-family: "Poppins", sans-serif; font-size: 6pt; letter-spacing: .14em;
  text-transform: uppercase; font-weight: 600;
  padding: 1.5mm 3.5mm; border-radius: 100px;
  border: 1px solid rgba(18,214,224,.38); color: rgba(18,214,224,.75);
}

.cover-bottom {
  position: absolute; bottom: 26mm; left: 22mm; right: 22mm;
  display: flex; justify-content: space-between; align-items: flex-end; z-index: 2;
}

.cover-meta {
  font-family: "Poppins", sans-serif; font-size: 7.5pt; letter-spacing: .15em;
  color: rgba(255,255,255,.45); text-transform: uppercase;
}

.cover-edition {
  font-family: "Playfair Display", serif; font-size: 26pt; font-weight: 400;
  color: var(--cyan); line-height: 1;
}

.cover-line { width: 16mm; height: 2px; background: var(--cyan); margin: 4mm 0; }

/* ── FOOTER ─────────────────────────────────────────── */

.pf {
  position: absolute; bottom: 11mm; left: 20mm; right: 20mm;
  display: flex; justify-content: space-between; align-items: center;
  padding-top: 3mm; border-top: 1px solid var(--line);
}
.pf-text { font-family:"Poppins",sans-serif; font-size:6.5pt; letter-spacing:.14em; color:var(--muted); text-transform:uppercase; }
.pf-num  { font-family:"Poppins",sans-serif; font-size:8pt; font-weight:600; color:var(--navy); }

/* ── SECTION LABELS ──────────────────────────────────── */

.sn {
  font-family:"Poppins",sans-serif; font-size:8pt; letter-spacing:.28em;
  color:var(--cyan); text-transform:uppercase; font-weight:600;
  margin-bottom:7mm; display:flex; align-items:center; gap:3mm;
}
.sn::before { content:""; display:inline-block; width:11mm; height:1.5px; background:var(--cyan); flex-shrink:0; }

.st { font-family:"Playfair Display",Georgia,serif; font-size:28pt; font-weight:700; line-height:1.1; letter-spacing:-.018em; color:var(--navy); margin-bottom:5mm; }
.st em { color:var(--cyan); font-style:italic; font-weight:600; }

.sl { font-family:"Playfair Display",Georgia,serif; font-size:11.5pt; font-weight:400; line-height:1.6; color:var(--muted); max-width:148mm; margin-bottom:7mm; }

h2 { font-family:"Playfair Display",serif; font-size:16pt; font-weight:700; color:var(--navy); margin:7mm 0 3mm 0; letter-spacing:-.01em; line-height:1.2; }
p { font-family:"Playfair Display",Georgia,serif; font-size:10.5pt; line-height:1.65; color:var(--soft-navy); margin-bottom:3.5mm; }

/* ── CARTA (P02) ──────────────────────────────────── */

.carta { padding-top: 32mm; }
.carta-saludo { font-family:"Poppins",sans-serif; font-size:8pt; letter-spacing:.22em; text-transform:uppercase; color:var(--cyan); font-weight:600; margin-bottom:7mm; }
.carta-quote { font-family:"Playfair Display",serif; font-size:24pt; font-weight:700; line-height:1.18; color:var(--navy); letter-spacing:-.02em; max-width:162mm; margin-bottom:14mm; }
.carta-quote em { color:var(--cyan); font-style:italic; }
.carta-rule { width:18mm; height:2px; background:var(--cyan); margin-bottom:9mm; }
.carta-body { font-family:"Playfair Display",serif; font-size:11.5pt; line-height:1.72; color:var(--soft-navy); max-width:152mm; margin-bottom:4mm; }
.carta-firma { font-family:"Poppins",sans-serif; font-size:7.5pt; letter-spacing:.18em; text-transform:uppercase; color:var(--muted); margin-top:13mm; }

/* ── PROBLEM GRID (P03) ──────────────────────────── */

.problem-grid { display:grid; grid-template-columns:1fr 1fr; gap:5mm; margin-top:6mm; }

.problem-card { padding:5.5mm 6mm; background:var(--paper); border-radius:4mm; border-left:3.5px solid var(--cyan); }
.pc-law { font-family:"Poppins",sans-serif; font-size:6.5pt; letter-spacing:.20em; text-transform:uppercase; color:var(--cyan); font-weight:700; margin-bottom:2mm; }
.pc-title { font-family:"Playfair Display",serif; font-size:12.5pt; font-weight:700; color:var(--navy); margin-bottom:2mm; line-height:1.2; }
.pc-body { font-family:"Poppins",sans-serif; font-size:8pt; color:var(--muted); line-height:1.55; margin:0; }

/* ── MODULE GRID (P04) ──────────────────────────── */

.mod-intro { display:grid; grid-template-columns:1fr 1fr 1fr; gap:4mm; margin-top:6mm; }

.mod-card { background:var(--paper); border-radius:4mm; padding:5.5mm; border-top:3px solid var(--line); }
.mod-card.core { border-top:3px solid var(--cyan); background:linear-gradient(160deg,#fff,#f0fcfd); }
.mod-num { font-family:"Poppins",sans-serif; font-size:6.5pt; letter-spacing:.22em; text-transform:uppercase; color:var(--muted); font-weight:700; margin-bottom:2mm; }
.mod-card.core .mod-num { color:var(--cyan); }
.mod-name { font-family:"Playfair Display",serif; font-size:10.5pt; font-weight:700; color:var(--navy); margin-bottom:2mm; line-height:1.2; }
.mod-desc { font-family:"Poppins",sans-serif; font-size:7.5pt; color:var(--muted); line-height:1.45; margin:0; }

.mod-cta { margin-top:5mm; background:var(--navy); border-radius:4mm; padding:4.5mm 6mm; display:flex; align-items:center; justify-content:space-between; }
.mod-cta-text { font-family:"Poppins",sans-serif; font-size:8.5pt; color:rgba(255,255,255,.85); }
.mod-cta-text strong { color:var(--cyan); }
.mod-cta-badge { font-family:"Poppins",sans-serif; font-size:6.5pt; letter-spacing:.16em; text-transform:uppercase; color:var(--navy); font-weight:700; background:var(--cyan); padding:1.5mm 3.5mm; border-radius:100px; white-space:nowrap; }

/* ── COMPLIANCE (P05) ──────────────────────────── */

.compliance-grid { display:grid; grid-template-columns:1fr 1fr; gap:6mm; margin-top:6mm; }

.cc { border-radius:4mm; overflow:hidden; }
.cc-head { background:var(--navy); padding:5mm 6mm; }
.cc-tag { font-family:"Poppins",sans-serif; font-size:6.5pt; letter-spacing:.20em; text-transform:uppercase; color:var(--cyan); font-weight:700; margin-bottom:2mm; }
.cc-law { font-family:"Playfair Display",serif; font-size:14pt; font-weight:700; color:white; line-height:1.15; }
.cc-sub { font-family:"Poppins",sans-serif; font-size:7.5pt; color:rgba(255,255,255,.55); margin-top:1.5mm; line-height:1.4; }

.cc-body { background:var(--paper); padding:5mm 6mm; }
.cc-row { display:flex; align-items:flex-start; gap:2.5mm; padding:2mm 0; border-bottom:1px solid var(--line); }
.cc-row:last-child { border-bottom:none; }
.cc-row-icon { color:var(--cyan); font-size:9pt; flex-shrink:0; margin-top:.2mm; }
.cc-row-text { font-family:"Poppins",sans-serif; font-size:7.5pt; color:var(--soft-navy); line-height:1.5; }
.cc-row-text strong { color:var(--navy); }

.cc-fine { background:linear-gradient(135deg,#012133,#013d5a); border-radius:3mm; padding:3.5mm 5mm; margin-top:3.5mm; }
.cc-fine-label { font-family:"Poppins",sans-serif; font-size:6pt; letter-spacing:.16em; text-transform:uppercase; color:rgba(18,214,224,.75); font-weight:600; margin-bottom:1.5mm; }
.cc-fine-amount { font-family:"Playfair Display",serif; font-size:13pt; font-weight:700; color:white; line-height:1.2; }

.compliance-resolved { margin-top:6mm; padding:5mm 6mm; background:linear-gradient(135deg,#012133,#013d5a); border-radius:4mm; display:flex; align-items:center; gap:5mm; }
.cr-badge { font-family:"Poppins",sans-serif; font-size:6.5pt; letter-spacing:.16em; text-transform:uppercase; color:var(--cyan); font-weight:700; background:rgba(18,214,224,.15); border:1px solid rgba(18,214,224,.4); padding:1.5mm 3.5mm; border-radius:100px; white-space:nowrap; }
.cr-text { font-family:"Poppins",sans-serif; font-size:8.5pt; color:rgba(255,255,255,.85); line-height:1.5; }
.cr-text strong { color:white; }

/* ── INTELIGENCIA CULTURAL (P06) ──────────────────── */

.intel-steps { display:grid; grid-template-columns:1fr 1fr 1fr; gap:4mm; margin-top:6mm; }
.is { background:var(--paper); border-radius:4mm; padding:5.5mm; position:relative; padding-top:13mm; }
.is-num { position:absolute; top:4.5mm; left:50%; transform:translateX(-50%); width:9mm; height:9mm; background:var(--cyan); color:var(--navy); border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:"Playfair Display",serif; font-size:10pt; font-weight:700; }
.is h5 { font-family:"Playfair Display",serif; font-size:10pt; font-weight:700; color:var(--navy); margin-bottom:2mm; text-align:center; line-height:1.2; }
.is p { font-family:"Poppins",sans-serif; font-size:7.5pt; color:var(--muted); text-align:center; line-height:1.45; margin:0; }

.intel-outcomes { display:grid; grid-template-columns:1fr 1fr; gap:4mm; margin-top:5mm; }
.io { background:var(--paper); border-radius:4mm; padding:5mm; border-left:3px solid var(--cyan); }
.io-tag { font-family:"Poppins",sans-serif; font-size:6.5pt; letter-spacing:.18em; text-transform:uppercase; color:var(--cyan); font-weight:700; margin-bottom:2mm; }
.io h4 { font-family:"Playfair Display",serif; font-size:10.5pt; font-weight:700; color:var(--navy); margin-bottom:1.5mm; line-height:1.2; }
.io p { font-family:"Poppins",sans-serif; font-size:7.5pt; color:var(--muted); line-height:1.45; margin:0; }

/* ── ALCANCE LIST (P07) ──────────────────────────── */

.alcance-list { margin-top:5mm; }
.alcance-item { display:grid; grid-template-columns:36mm 1fr; gap:5mm; padding:4mm 0; border-bottom:1px solid var(--line); page-break-inside:avoid; }
.alcance-item:last-child { border-bottom:none; }
.ai-label { font-family:"Poppins",sans-serif; font-size:7pt; letter-spacing:.16em; color:var(--cyan); text-transform:uppercase; font-weight:700; padding-top:1mm; line-height:1.4; }
.ai-content h4 { font-family:"Playfair Display",serif; font-size:11.5pt; font-weight:700; color:var(--navy); margin-bottom:1.5mm; }
.ai-content p  { font-family:"Poppins",sans-serif; font-size:8.5pt; line-height:1.5; color:var(--muted); margin:0; }

/* ── PRICING (P08) ──────────────────────────────── */

.pricing-hero { background:var(--navy); border-radius:5mm; padding:7mm 9mm; margin-bottom:5mm; display:flex; justify-content:space-between; align-items:center; }
.ph-price { font-family:"Playfair Display",serif; font-size:46pt; font-weight:700; color:white; line-height:1; }
.ph-price-cur { font-size:20pt; vertical-align:top; margin-right:1mm; color:var(--cyan); }
.ph-unit { font-family:"Poppins",sans-serif; font-size:8.5pt; color:rgba(255,255,255,.55); margin-top:2mm; line-height:1.65; }
.ph-right { border-left:1px solid rgba(255,255,255,.12); padding-left:8mm; text-align:right; }
.ph-right-tag { font-family:"Poppins",sans-serif; font-size:6.5pt; letter-spacing:.18em; text-transform:uppercase; color:var(--cyan); font-weight:700; margin-bottom:3mm; }
.ph-right ul { list-style:none; padding:0; margin:0; }
.ph-right ul li { font-family:"Poppins",sans-serif; font-size:8pt; color:rgba(255,255,255,.8); padding:1mm 0; display:flex; align-items:center; gap:2.5mm; justify-content:flex-end; line-height:1.4; }
.ph-right ul li::before { content:"✓"; color:var(--cyan); font-weight:700; flex-shrink:0; }

.pricing-scenarios { display:grid; grid-template-columns:1fr 1fr 1fr; gap:4mm; margin-bottom:5mm; }
.ps { background:var(--paper); border-radius:4mm; padding:5.5mm; text-align:center; border:1.5px solid var(--line); }
.ps.mid { border:2px solid var(--cyan); background:linear-gradient(160deg,#fff,#f0fcfd); position:relative; }
.ps-badge { position:absolute; top:-3mm; left:50%; transform:translateX(-50%); background:var(--cyan); color:var(--navy); font-family:"Poppins",sans-serif; font-size:5.5pt; font-weight:700; letter-spacing:.16em; text-transform:uppercase; padding:1mm 3.5mm; border-radius:100px; white-space:nowrap; }
.ps-emp { font-family:"Poppins",sans-serif; font-size:6.5pt; letter-spacing:.18em; text-transform:uppercase; color:var(--muted); font-weight:600; margin-bottom:2mm; }
.ps-monthly { font-family:"Playfair Display",serif; font-size:20pt; font-weight:700; color:var(--navy); line-height:1; margin-bottom:1.5mm; }
.ps-annual { font-family:"Poppins",sans-serif; font-size:8pt; color:var(--muted); margin:0; }

.pricing-note { padding:4mm 5.5mm; background:var(--paper); border-radius:3mm; border-left:3px solid var(--cyan); }
.pricing-note p { font-family:"Poppins",sans-serif; font-size:8.5pt; color:var(--muted); margin:0; line-height:1.6; }
.pricing-note p strong { color:var(--navy); }

/* ── ONBOARDING (P09) ──────────────────────────── */

.rs { display:grid; grid-template-columns:30mm 1fr; gap:5mm; padding:4mm 0; border-bottom:1px solid var(--line); page-break-inside:avoid; }
.rs:last-child { border-bottom:none; }
.rt { font-family:"Poppins",sans-serif; font-size:7.5pt; letter-spacing:.18em; color:var(--cyan); text-transform:uppercase; font-weight:700; padding-top:1mm; }
.rc h4 { font-family:"Playfair Display",serif; font-size:11.5pt; font-weight:700; color:var(--navy); margin-bottom:1mm; }
.rc p  { font-family:"Poppins",sans-serif; font-size:8.5pt; line-height:1.5; color:var(--muted); margin:0; }

/* ── CTA ──────────────────────────────────────────── */

.cta-tag { font-family:"Poppins",sans-serif; font-size:8pt; letter-spacing:.30em; color:var(--cyan); text-transform:uppercase; font-weight:600; margin-bottom:8mm; position:relative; z-index:2; display:flex; align-items:center; gap:3mm; }
.cta-tag::before { content:""; display:inline-block; width:11mm; height:1.5px; background:var(--cyan); }
.cta-title { font-family:"Playfair Display",serif; font-size:34pt; font-weight:700; line-height:1.08; letter-spacing:-.02em; color:white; max-width:142mm; margin-bottom:8mm; position:relative; z-index:2; }
.cta-title em { color:var(--cyan); font-style:italic; }
.cta-body { font-family:"Playfair Display",serif; font-size:11.5pt; line-height:1.65; color:rgba(255,255,255,.78); max-width:138mm; margin-bottom:11mm; position:relative; z-index:2; }
.cta-row { display:grid; grid-template-columns:1fr 1fr; gap:5mm; margin-bottom:11mm; position:relative; z-index:2; }
.cta-box { background:rgba(18,214,224,.07); border:1px solid rgba(18,214,224,.28); border-radius:4mm; padding:6mm 7mm; }
.cta-box-label { font-family:"Poppins",sans-serif; font-size:7pt; letter-spacing:.22em; text-transform:uppercase; color:var(--cyan); font-weight:600; margin-bottom:2.5mm; }
.cta-box-content { font-family:"Playfair Display",serif; font-size:14.5pt; font-weight:500; color:white; line-height:1.3; }
.sig { margin-top:13mm; padding-top:7mm; border-top:1px solid rgba(18,214,224,.22); position:relative; z-index:2; }
.sig-name { font-family:"Playfair Display",serif; font-style:italic; font-size:17pt; color:var(--cyan); margin-bottom:2mm; }
.sig-role { font-family:"Poppins",sans-serif; font-size:8pt; color:rgba(255,255,255,.65); letter-spacing:.05em; line-height:1.6; }

/* ── BACK COVER ───────────────────────────────────── */

.back-logo { width:32mm; display:block; margin-bottom:28mm; position:relative; z-index:2; }
.bq { font-family:"Playfair Display",serif; font-size:22pt; font-weight:700; line-height:1.22; letter-spacing:-.015em; color:white; max-width:150mm; position:relative; z-index:2; }
.bq em { color:var(--cyan); font-style:italic; }
.bd { width:16mm; height:2px; background:var(--cyan); margin:13mm 0; position:relative; z-index:2; }
.bm { position:absolute; bottom:24mm; left:25mm; right:25mm; display:grid; grid-template-columns:1fr 1fr; gap:8mm; z-index:2; }
.bm h5 { font-family:"Poppins",sans-serif; font-size:7pt; letter-spacing:.22em; text-transform:uppercase; color:var(--cyan); font-weight:600; margin-bottom:3mm; }
.bm p  { font-family:"Poppins",sans-serif; font-size:8.5pt; color:rgba(255,255,255,.80); line-height:1.65; margin:0; }

@media print {
  * { -webkit-print-color-adjust:exact !important; print-color-adjust:exact !important; }
}
"""

def footer(n, label="Valírica RRHH · Propuesta Aloja Experience"):
    return f"""
    <div class="pf">
      <span class="pf-text">{label}</span>
      <span class="pf-num">{n:02d}</span>
    </div>"""

HTML = f"""<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Valírica RRHH · Propuesta Aloja Experience</title>
<style>{CSS}</style>
</head>
<body>

<!-- ==================== P01 PORTADA ==================== -->
<div class="page-cover">
  <div class="bg-glow g1"></div>
  <div class="bg-glow g2"></div>
  <img class="cover-logo" src="{LOGO}" alt="Valírica">
  <div class="cover-client">Para el equipo de Aloja Experience · Madrid</div>
  <div class="cover-tag">Valírica RRHH · Plataforma de Gestión de Personas</div>
  <h1 class="cover-title">
    RRHH que cumple<br>
    la ley. Cultura que<br>
    puedes <span class="accent">medir en tiempo real</span>.
  </h1>
  <div class="cover-pills">
    <div class="cp">Registro de jornada · RDL 8/2019</div>
    <div class="cp">Canal de denuncias · Ley 2/2023</div>
    <div class="cp">Inteligencia cultural</div>
    <div class="cp">€5,25 + IVA / empleado / mes</div>
  </div>
  <div class="cover-bottom">
    <div>
      <div class="cover-meta">Valírica · Agile Development</div>
      <div class="cover-line"></div>
      <div class="cover-meta">valirica.com/rrhh</div>
    </div>
    <div class="cover-edition">&#39;26</div>
  </div>
</div>

<!-- ==================== P02 CARTA ==================== -->
<div class="page carta">
  <div class="carta-saludo">Para el equipo de Aloja Experience</div>
  <h2 class="carta-quote">
    Gestionar bien a las personas<br>
    no es una opción. Es la base<br>
    de <em>todo lo que construyen</em>.
  </h2>
  <div class="carta-rule"></div>
  <p class="carta-body">Detrás de cada experiencia que Aloja entrega a sus clientes hay un equipo trabajando con compromiso. Ese equipo merece tener el área de personas bien gestionada: no solo para cumplir con lo que exige la ley, sino para entender, retener y hacer crecer el talento que hace posible el negocio.</p>
  <p class="carta-body">El problema es que la mayoría de las pymes en España llegan a cierto punto de crecimiento y el área de RRHH sigue siendo un conjunto de procesos manuales, informales y completamente desconectados entre sí. Fichajes en papel, permisos por WhatsApp, conflictos que se detectan cuando ya han escalado.</p>
  <p class="carta-body">Valírica RRHH resuelve todo eso en una sola plataforma: cumplimiento legal automatizado, gestión del día a día del equipo y el motor de inteligencia cultural que te da visibilidad real del estado de tu organización antes de que los problemas lleguen a ti.</p>
  <div class="carta-firma">— El equipo de Valírica</div>
  {footer(2)}
</div>

<!-- ==================== P03 EL PROBLEMA ==================== -->
<div class="page">
  <div class="sn">01 · El problema</div>
  <h1 class="st">Cuatro riesgos que la mayoría<br>de pymes lleva sin <em>resolver</em>.</h1>
  <p class="sl">No por descuido —sino porque nunca hubo una herramienta que los resolviera todos a la vez, de forma simple y a un precio razonable.</p>
  <div class="problem-grid">
    <div class="problem-card">
      <div class="pc-law">Riesgo legal · RDL 8/2019</div>
      <h4 class="pc-title">Fichaje sin sistema oficial</h4>
      <p class="pc-body">El registro digital de jornada es obligatorio desde 2019 para todos los empleados. Sin sistema homologado, cada día trabajado sin registrar es exposición directa a multa de hasta €6.250 por inspector de trabajo.</p>
    </div>
    <div class="problem-card">
      <div class="pc-law">Obligación legal · Ley 2/2023</div>
      <h4 class="pc-title">Sin canal de denuncias activo</h4>
      <p class="pc-body">La Ley 2/2023 obliga a tener un canal de denuncias anónimo y confidencial. No implementarlo expone a la empresa a sanciones graves y elimina la vía formal para detectar riesgos internos antes de que escalen.</p>
    </div>
    <div class="problem-card">
      <div class="pc-law">Riesgo humano</div>
      <h4 class="pc-title">La cultura del equipo, invisible</h4>
      <p class="pc-body">Sin datos de clima en tiempo real, los problemas se detectan demasiado tarde: una baja médica por burnout, una renuncia sorpresa, un conflicto que lleva meses creciendo en silencio.</p>
    </div>
    <div class="problem-card">
      <div class="pc-law">Ineficiencia operativa</div>
      <h4 class="pc-title">Datos de RRHH fragmentados</h4>
      <p class="pc-body">Fichajes en papel, permisos por WhatsApp, proyectos en hojas de cálculo. Gestionar personas sin datos unificados y accionables es tomar decisiones importantes sin información real.</p>
    </div>
  </div>
  {footer(3)}
</div>

<!-- ==================== P04 LA PLATAFORMA ==================== -->
<div class="page">
  <div class="sn">02 · La solución</div>
  <h1 class="st">Una plataforma. Seis módulos.<br><em>Todo resuelto</em>.</h1>
  <p class="sl" style="margin-bottom:4mm;">Valírica RRHH centraliza en una sola pantalla todo lo que el área de personas de una pyme necesita: compliance legal, operaciones del día a día e inteligencia cultural en tiempo real.</p>

  <div class="mod-intro">
    <div class="mod-card core">
      <div class="mod-num">Compliance · 01</div>
      <div class="mod-name">Registro de jornada</div>
      <p class="mod-desc">Fichaje digital homologado. Cumplimiento total del RDL 8/2019 con registros inmutables, trazabilidad completa y acceso del trabajador a su historial.</p>
    </div>
    <div class="mod-card core">
      <div class="mod-num">Compliance · 02</div>
      <div class="mod-name">Canal de denuncias</div>
      <p class="mod-desc">Canal anónimo y confidencial según la Ley 2/2023. Flujo completo: acuse en 7 días, resolución en 3 meses, protección al denunciante.</p>
    </div>
    <div class="mod-card">
      <div class="mod-num">Operaciones · 03</div>
      <div class="mod-name">Proyectos y metas</div>
      <p class="mod-desc">Gestión de proyectos y objetivos en modo Kanban. Seguimiento de productividad y performance por equipo en tiempo real.</p>
    </div>
    <div class="mod-card">
      <div class="mod-num">Operaciones · 04</div>
      <div class="mod-name">Permisos y vacaciones</div>
      <p class="mod-desc">Solicitud, aprobación y trazabilidad de ausencias integradas con el registro de jornada. Fin al caos de WhatsApp y correos dispersos.</p>
    </div>
    <div class="mod-card core">
      <div class="mod-num">Inteligencia · 05</div>
      <div class="mod-name">Análisis individual</div>
      <p class="mod-desc">Perfil multidimensional de cada persona: motivación, estilo de conflicto, alineación cultural. Alertas tempranas antes de que el problema sea visible.</p>
    </div>
    <div class="mod-card core">
      <div class="mod-num">Inteligencia · 06</div>
      <div class="mod-name">Radar cultural</div>
      <p class="mod-desc">Mapa de alineación de la organización en tiempo real. Cultura proyectada vs. cultura real. Riesgos latentes y oportunidades ocultas en el equipo.</p>
    </div>
  </div>

  <div class="mod-cta">
    <div class="mod-cta-text">Todos los módulos incluidos desde el primer día. <strong>Nuevos módulos al lanzarse, sin coste adicional.</strong></div>
    <div class="mod-cta-badge">Todo incluido</div>
  </div>
  {footer(4)}
</div>

<!-- ==================== P05 COMPLIANCE ==================== -->
<div class="page">
  <div class="sn">03 · Cumplimiento legal</div>
  <h1 class="st">Dos obligaciones legales.<br><em>Resueltas desde el día 1</em>.</h1>
  <p class="sl" style="margin-bottom:4mm;">No es opcional. Es una obligación vigente que afecta a todas las empresas con trabajadores en España, independientemente de su tamaño.</p>

  <div class="compliance-grid">
    <div class="cc">
      <div class="cc-head">
        <div class="cc-tag">Obligatorio desde 2019</div>
        <div class="cc-law">Registro digital<br>de jornada</div>
        <div class="cc-sub">Real Decreto-ley 8/2019</div>
      </div>
      <div class="cc-body">
        <div class="cc-row">
          <div class="cc-row-icon">✓</div>
          <div class="cc-row-text"><strong>Registros inmutables</strong> con sello de tiempo — no editables ni eliminables, auditables en cualquier momento</div>
        </div>
        <div class="cc-row">
          <div class="cc-row-icon">✓</div>
          <div class="cc-row-text"><strong>Conservación 4 años</strong> del historial completo, disponible ante cualquier inspección de trabajo</div>
        </div>
        <div class="cc-row">
          <div class="cc-row-icon">✓</div>
          <div class="cc-row-text"><strong>Acceso del trabajador</strong> a su propio historial de jornada en tiempo real desde cualquier dispositivo</div>
        </div>
        <div class="cc-row">
          <div class="cc-row-icon">✓</div>
          <div class="cc-row-text"><strong>Geolocalización flexible</strong> — fichaje desde app móvil, web o hardware in situ</div>
        </div>
        <div class="cc-fine">
          <div>
            <div class="cc-fine-label">Multa por incumplimiento (LISOS)</div>
            <div class="cc-fine-amount">Hasta €6.250<br><span style="font-size:9pt;color:rgba(255,255,255,.65);font-family:'Poppins',sans-serif;">por infracción grave de registro</span></div>
          </div>
        </div>
      </div>
    </div>

    <div class="cc">
      <div class="cc-head">
        <div class="cc-tag">Obligatorio desde 2023</div>
        <div class="cc-law">Canal de denuncias<br>y quejas</div>
        <div class="cc-sub">Ley 2/2023 de protección al informante</div>
      </div>
      <div class="cc-body">
        <div class="cc-row">
          <div class="cc-row-icon">✓</div>
          <div class="cc-row-text"><strong>Anonimato garantizado</strong> para el denunciante desde el primer mensaje hasta el cierre del expediente</div>
        </div>
        <div class="cc-row">
          <div class="cc-row-icon">✓</div>
          <div class="cc-row-text"><strong>Acuse en 7 días hábiles</strong> y resolución en 3 meses (ampliable a 6), cumpliendo los plazos legales automáticamente</div>
        </div>
        <div class="cc-row">
          <div class="cc-row-icon">✓</div>
          <div class="cc-row-text"><strong>Protección frente a represalias</strong> — trazabilidad completa de cada acción para acreditar el cumplimiento</div>
        </div>
        <div class="cc-row">
          <div class="cc-row-icon">✓</div>
          <div class="cc-row-text"><strong>Cumplimiento RGPD y LOPD-GDD</strong> — datos cifrados, servidores en la UE, sin terceros no autorizados</div>
        </div>
        <div class="cc-fine">
          <div>
            <div class="cc-fine-label">Multa por no implementarlo</div>
            <div class="cc-fine-amount">Hasta €1.000.000<br><span style="font-size:9pt;color:rgba(255,255,255,.65);font-family:'Poppins',sans-serif;">+ responsabilidad personal de directivos</span></div>
          </div>
        </div>
      </div>
    </div>
  </div>

  <div class="compliance-resolved" style="margin-top:5mm;">
    <div class="cr-badge">Resuelto</div>
    <div class="cr-text">Ambos módulos están activos desde el primer día de uso. <strong>No requieren configuración técnica adicional ni integración externa.</strong> Se activan y ya cumplen la normativa vigente.</div>
  </div>
  {footer(5)}
</div>

<!-- ==================== P06 INTELIGENCIA CULTURAL ==================== -->
<div class="page">
  <div class="sn">04 · Inteligencia cultural</div>
  <h1 class="st">De encuestas anuales<br>a <em>datos en tiempo real</em>.</h1>
  <p class="sl" style="margin-bottom:4mm;">El motor de inteligencia cultural de Valírica no mide opiniones. Mide patrones de comportamiento real para que puedas actuar antes de que el problema sea visible.</p>

  <div class="intel-steps">
    <div class="is">
      <div class="is-num">1</div>
      <h5>Cultura proyectada</h5>
      <p>La empresa define su propósito, valores y la cultura que quiere construir. Es la referencia contra la que se mide todo lo demás.</p>
    </div>
    <div class="is">
      <div class="is-num">2</div>
      <h5>Perfiles del equipo</h5>
      <p>Cada persona completa un perfil multidimensional: Hofstede, Maslow, motivación intrínseca, estilo de conflicto y aprendizaje.</p>
    </div>
    <div class="is">
      <div class="is-num">3</div>
      <h5>Motor de análisis</h5>
      <p>La plataforma cruza comportamiento real con los perfiles y genera mapas de alineación, alertas y recomendaciones accionables.</p>
    </div>
  </div>

  <div class="intel-outcomes">
    <div class="io">
      <div class="io-tag">Alerta temprana</div>
      <h4>Detección de burnout</h4>
      <p>Identifica patrones de sobrecarga sostenida, caída de rendimiento y cambios en comunicación antes de que lleguen a una baja médica.</p>
    </div>
    <div class="io">
      <div class="io-tag">Retención de talento</div>
      <h4>Riesgo de fuga identificado</h4>
      <p>Detecta señales tempranas de desconexión: reducción de participación, bajo alineamiento cultural, patrones de distanciamiento progresivo.</p>
    </div>
    <div class="io">
      <div class="io-tag">Mapa cultural</div>
      <h4>Cultura real vs. cultura proyectada</h4>
      <p>Visualiza en tiempo real qué tan alineado está tu equipo con los valores y propósito que la empresa quiere construir. Por persona y por área.</p>
    </div>
    <div class="io">
      <div class="io-tag">Capital humano</div>
      <h4>Top performers y embajadores</h4>
      <p>Identifica quién lidera culturalmente, quién tiene potencial sin explotar y quién puede ser promotor de cambio dentro del equipo.</p>
    </div>
  </div>
  {footer(6)}
</div>

<!-- ==================== P07 TODOS LOS MÓDULOS ==================== -->
<div class="page">
  <div class="sn">05 · Alcance completo</div>
  <h1 class="st" style="font-size:24pt;">Todo lo que incluye<br><em>Valírica RRHH</em> desde el día 1.</h1>
  <p class="sl" style="margin-bottom:5mm;">Un único precio por empleado. Todos los módulos activos. Sin upgrades, sin planes escalonados.</p>

  <div class="alcance-list">
    <div class="alcance-item">
      <div class="ai-label">Fichaje Digital</div>
      <div class="ai-content">
        <h4>Registro de jornada · RDL 8/2019</h4>
        <p>Fichaje desde app móvil, web o hardware in situ. Registros inmutables con sello de tiempo, historial de 4 años, acceso del trabajador y exportación para inspecciones. Geolocalización y modalidad flexible.</p>
      </div>
    </div>
    <div class="alcance-item">
      <div class="ai-label">Canal Denuncias</div>
      <div class="ai-content">
        <h4>Canal de quejas y denuncias · Ley 2/2023</h4>
        <p>Canal anónimo y confidencial con flujo completo: acuse de recibo en 7 días, resolución en 3 meses, protección al denunciante y trazabilidad total del expediente. Cumple RGPD y LOPD-GDD.</p>
      </div>
    </div>
    <div class="alcance-item">
      <div class="ai-label">Proyectos y Metas</div>
      <div class="ai-content">
        <h4>Gestión de proyectos, objetivos y tareas</h4>
        <p>Tablero Kanban para seguimiento de proyectos, asignación de tareas y definición de metas. Performance por equipo y análisis de patrones de eficiencia en tiempo real.</p>
      </div>
    </div>
    <div class="alcance-item">
      <div class="ai-label">Permisos y Ausencias</div>
      <div class="ai-content">
        <h4>Gestión de vacaciones, bajas y permisos</h4>
        <p>Solicitud, aprobación y registro de ausencias integrado con el fichaje. Módulo documental para gestión de contratos, certificados y documentación laboral.</p>
      </div>
    </div>
    <div class="alcance-item">
      <div class="ai-label">Análisis Individual</div>
      <div class="ai-content">
        <h4>Perfil cultural y alertas tempranas por persona</h4>
        <p>Perfil multidimensional basado en Hofstede, Maslow, motivación intrínseca, estilo de conflicto y aprendizaje. Alertas automáticas de burnout, desconexión y riesgo de fuga.</p>
      </div>
    </div>
    <div class="alcance-item">
      <div class="ai-label">Radar Cultural</div>
      <div class="ai-content">
        <h4>Motor de inteligencia cultural organizacional (continuo)</h4>
        <p>Mapa de alineación cultural en tiempo real. Cultura proyectada vs. real. Identificación de top performers, embajadores culturales, fricciones de comunicación y riesgos latentes por equipo.</p>
      </div>
    </div>
  </div>

  <!-- PLAN DE ACCIÓN CALLOUT -->
  <div style="margin-top:5mm;background:linear-gradient(135deg,#012133 0%,#013d5a 100%);border-radius:4mm;padding:6mm 7mm;">
    <div style="display:flex;justify-content:space-between;align-items:flex-start;gap:6mm;">
      <div style="flex:1;">
        <div style="font-family:'Poppins',sans-serif;font-size:6.5pt;letter-spacing:.20em;text-transform:uppercase;color:var(--cyan);font-weight:700;margin-bottom:2.5mm;">Incluido al aceptar · Entrega personalizada</div>
        <div style="font-family:'Playfair Display',serif;font-size:14pt;font-weight:700;color:white;line-height:1.2;margin-bottom:2.5mm;">Plan de acción estratégico de cultura organizacional</div>
        <div style="font-family:'Poppins',sans-serif;font-size:8pt;color:rgba(255,255,255,.75);line-height:1.55;">Un análisis completo generado con la data real del equipo de Aloja Experience: diagnóstico de alineación cultural, ejes estratégicos priorizados, matriz de riesgos y recomendaciones accionables para empezar a gestionar la cultura desde el día uno.</div>
      </div>
      <div style="flex-shrink:0;display:flex;flex-direction:column;gap:2mm;min-width:44mm;">
        <div style="background:rgba(18,214,224,.12);border:1px solid rgba(18,214,224,.35);border-radius:3mm;padding:2.5mm 3.5mm;font-family:'Poppins',sans-serif;font-size:7pt;color:var(--cyan);font-weight:600;">&#10003; Diagnóstico cultural</div>
        <div style="background:rgba(18,214,224,.12);border:1px solid rgba(18,214,224,.35);border-radius:3mm;padding:2.5mm 3.5mm;font-family:'Poppins',sans-serif;font-size:7pt;color:var(--cyan);font-weight:600;">&#10003; 6 ejes estratégicos</div>
        <div style="background:rgba(18,214,224,.12);border:1px solid rgba(18,214,224,.35);border-radius:3mm;padding:2.5mm 3.5mm;font-family:'Poppins',sans-serif;font-size:7pt;color:var(--cyan);font-weight:600;">&#10003; Métricas de impacto</div>
        <div style="background:rgba(18,214,224,.12);border:1px solid rgba(18,214,224,.35);border-radius:3mm;padding:2.5mm 3.5mm;font-family:'Poppins',sans-serif;font-size:7pt;color:var(--cyan);font-weight:600;">&#10003; Matriz de riesgos</div>
        <div style="background:rgba(18,214,224,.12);border:1px solid rgba(18,214,224,.35);border-radius:3mm;padding:2.5mm 3.5mm;font-family:'Poppins',sans-serif;font-size:7pt;color:var(--cyan);font-weight:600;">&#10003; Plan de acción por equipo</div>
      </div>
    </div>
  </div>
  {footer(7)}
</div>

<!-- ==================== P08 PROPUESTA ECONÓMICA ==================== -->
<div class="page">
  <div class="sn">06 · Propuesta económica</div>
  <h1 class="st" style="font-size:22pt;margin-bottom:3mm;">Un precio simple.<br><em>Todo incluido. Sin sorpresas.</em></h1>
  <p style="font-family:'Poppins',sans-serif;font-size:9pt;color:var(--muted);margin-bottom:5mm;">El precio escala con tu plantilla real. Sin contratos mínimos ni tramos forzados.</p>

  <div class="pricing-hero">
    <div>
      <div class="ph-price"><span class="ph-price-cur">€</span>5,25</div>
      <div class="ph-unit">por empleado / mes · base (sin IVA)<br>
        <span style="color:rgba(255,255,255,.45);">IVA 21%: €1,10 / emp / mes</span><br>
        <span style="color:var(--cyan);font-weight:600;">Total con IVA: €6,35 / emp / mes</span>
      </div>
    </div>
    <div class="ph-right">
      <div class="ph-right-tag">Todo incluido</div>
      <ul>
        <li>Registro de jornada · RDL 8/2019</li>
        <li>Canal de denuncias · Ley 2/2023</li>
        <li>Proyectos, metas y tareas</li>
        <li>Permisos y ausencias</li>
        <li>Análisis individual con alertas</li>
        <li>Radar cultural en tiempo real</li>
        <li>Nuevos módulos al lanzarse, sin coste extra</li>
        <li>Plan de acción estratégico personalizado</li>
      </ul>
    </div>
  </div>

  <div class="pricing-note" style="margin-bottom:5mm;">
    <p><strong>Pagas exactamente por el número de personas en tu equipo.</strong> Sin mínimos, sin tramos, sin coste de alta. La factura mensual es simplemente: número de empleados activos × €6,35 (IVA incluido). Si el equipo crece, el precio escala. Si baja, también.</p>
  </div>

  <div style="display:grid;grid-template-columns:1fr 1fr;gap:5mm;margin-bottom:5mm;">
    <div style="background:var(--paper);border-radius:4mm;padding:5.5mm 6mm;border-top:3px solid var(--cyan);">
      <div style="font-family:'Poppins',sans-serif;font-size:6.5pt;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);font-weight:700;margin-bottom:2mm;">Precio base</div>
      <div style="font-family:'Playfair Display',serif;font-size:20pt;font-weight:700;color:var(--navy);line-height:1;margin-bottom:1.5mm;">€5,25<span style="font-size:10pt;"> /emp /mes</span></div>
      <div style="font-family:'Poppins',sans-serif;font-size:8pt;color:var(--muted);">Sin IVA · Base de cálculo</div>
    </div>
    <div style="background:var(--navy);border-radius:4mm;padding:5.5mm 6mm;">
      <div style="font-family:'Poppins',sans-serif;font-size:6.5pt;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);font-weight:700;margin-bottom:2mm;">Total con IVA (21%)</div>
      <div style="font-family:'Playfair Display',serif;font-size:20pt;font-weight:700;color:white;line-height:1;margin-bottom:1.5mm;">€6,35<span style="font-size:10pt;color:rgba(255,255,255,.6);"> /emp /mes</span></div>
      <div style="font-family:'Poppins',sans-serif;font-size:8pt;color:rgba(255,255,255,.6);">Lo que aparece en la factura</div>
    </div>
  </div>

  <div style="background:linear-gradient(135deg,#012133,#013d5a);border-radius:4mm;padding:5mm 7mm;margin-bottom:4mm;display:flex;align-items:center;gap:5mm;">
    <div style="font-family:'Playfair Display',serif;font-size:28pt;font-weight:700;color:var(--cyan);line-height:1;flex-shrink:0;">30</div>
    <div>
      <div style="font-family:'Poppins',sans-serif;font-size:8pt;font-weight:700;color:white;margin-bottom:1mm;">días de prueba gratuita · sin tarjeta de crédito</div>
      <div style="font-family:'Poppins',sans-serif;font-size:8pt;color:rgba(255,255,255,.7);line-height:1.5;">Acceso completo a todos los módulos desde el día 1. El primer pago se realiza al finalizar el período de prueba, el día 31.</div>
    </div>
  </div>

  <div class="pricing-note">
    <p>Sin coste de alta · Sin contrato de permanencia · Facturación mensual · <strong>Nuevos módulos incluidos sin coste adicional al lanzarse.</strong></p>
  </div>
  {footer(8)}
</div>

<!-- ==================== P09 ONBOARDING ==================== -->
<div class="page">
  <div class="sn">07 · Cómo arrancamos</div>
  <h1 class="st" style="font-size:26pt;">De hoy a operativo<br><em>en menos de una semana</em>.</h1>
  <p class="sl" style="margin-bottom:5mm;">Valírica RRHH no requiere implantación compleja. Es una plataforma SaaS lista para usar: configuramos juntos, invitamos al equipo y el primer día ya hay datos.</p>

  <div class="rs">
    <div class="rt">Día 0</div>
    <div class="rc"><h4>Demo y alineación (30 min · gratuita)</h4><p>Revisamos la plantilla de Aloja Experience, configuramos los módulos prioritarios y definimos el plan de onboarding del equipo.</p></div>
  </div>
  <div class="rs">
    <div class="rt">Día +1</div>
    <div class="rc"><h4>Alta y arranque de la prueba gratuita (30 días)</h4><p>Creamos el workspace de Aloja Experience con acceso completo a todos los módulos. El fichaje ya está activo y cumpliendo la normativa. <strong style="color:var(--navy);">Sin coste durante los primeros 30 días.</strong></p></div>
  </div>
  <div class="rs">
    <div class="rt">Semana 1</div>
    <div class="rc"><h4>Perfiles culturales y onboarding del equipo</h4><p>Cada persona del equipo completa su perfil multidimensional. La plataforma empieza a generar los primeros datos de alineación y cultura real vs. proyectada.</p></div>
  </div>
  <div class="rs">
    <div class="rt">Semana 2</div>
    <div class="rc"><h4>Entrega del plan de acción estratégico</h4><p>Con los primeros datos del equipo generamos y entregamos el <strong style="color:var(--navy);">análisis personalizado de cultura organizacional</strong>: diagnóstico de alineación, 6 ejes estratégicos priorizados, matriz de riesgos y plan de acción concreto para empezar a gestionar la cultura de Aloja con datos reales.</p></div>
  </div>
  <div class="rs">
    <div class="rt">Día 31</div>
    <div class="rc"><h4>Primer pago · inicio de la suscripción</h4><p>Al finalizar la prueba gratuita arranca la facturación mensual: €6,35 por empleado activo (IVA incluido). Sin sorpresas, sin cargos automáticos ocultos.</p></div>
  </div>
  <div class="rs">
    <div class="rt">Mes 2+</div>
    <div class="rc"><h4>Inteligencia cultural continua</h4><p>El motor de análisis funciona con datos reales del equipo: fichaje, proyectos, permisos y perfiles culturales. Las decisiones de personas dejan de basarse en intuición y pasan a basarse en datos.</p></div>
  </div>

  <div style="margin-top:6mm;padding:4.5mm 6mm;background:var(--paper);border-radius:3mm;border-left:3px solid var(--cyan);">
    <p style="font-family:'Poppins',sans-serif;font-size:8.5pt;color:var(--muted);margin:0;line-height:1.55;"><strong style="color:var(--navy);">Soporte incluido:</strong> Acompañamiento durante el onboarding, canal de soporte directo y acceso a documentación técnica. Sin tickets anónimos: una persona real de Valírica está disponible para el equipo de Aloja.</p>
  </div>
  {footer(9)}
</div>

<!-- ==================== P10 CTA ==================== -->
<div class="cta-page">
  <div class="bg-glow g3"></div>
  <div class="cta-tag">Próximo paso</div>
  <h1 class="cta-title">Agendemos una<br>demo de <em>30 minutos</em>.</h1>
  <p class="cta-body">En 30 minutos ves la plataforma en vivo, resolvemos todas las dudas y activamos tu prueba gratuita de 30 días —con acceso completo a todos los módulos. El primer pago solo se realiza el día 31.</p>
  <div class="cta-row">
    <div class="cta-box"><div class="cta-box-label">Email</div><div class="cta-box-content">juan@valirica.com</div></div>
    <div class="cta-box"><div class="cta-box-label">WhatsApp Business</div><div class="cta-box-content">+34 600 876 538</div></div>
  </div>
  <p class="cta-body" style="font-size:10.5pt;">¿Tienes dudas sobre algún módulo o la adecuación a la normativa? Escríbenos y te respondemos a la brevedad.</p>
  <div class="sig">
    <div class="sig-name">Juan</div>
    <div class="sig-role">Valírica · RRHH<br>juan@valirica.com · valirica.com/rrhh</div>
  </div>
</div>

<!-- ==================== P11 BACK COVER ==================== -->
<div class="back-cover">
  <div class="bg-glow g4"></div>
  <img class="back-logo" src="{LOGO}" alt="Valírica">
  <h2 class="bq">Detrás de cada buena<br>experiencia hay un equipo<br><em>visto, escuchado<br>y bien gestionado.</em></h2>
  <div class="bd"></div>
  <div class="bm">
    <div>
      <h5>Contacto</h5>
      <p>juan@valirica.com<br>valirica.com/rrhh<br>Madrid &middot; Bogotá &middot; Remoto</p>
    </div>
    <div>
      <h5>Documento</h5>
      <p>Valírica RRHH · Propuesta Aloja Experience<br>Madrid &middot; 2026 &middot; Confidencial<br>&copy; Valírica · Todos los derechos reservados</p>
    </div>
  </div>
</div>

</body>
</html>"""

out_html = os.path.join(WORKDIR, "propuesta-rrhh-aloja.html")
with open(out_html, "w", encoding="utf-8") as f:
    f.write(HTML)
print(f"HTML: {out_html}  ({len(HTML):,} bytes)")

CHROME = "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
out_pdf = os.path.join(WORKDIR, "Propuesta-RRHH-Aloja.pdf")

cmd = [
    CHROME, "--headless=new", "--disable-gpu", "--no-sandbox",
    "--disable-software-rasterizer", "--run-all-compositor-stages-before-draw",
    "--virtual-time-budget=8000",
    f"--print-to-pdf={out_pdf}",
    "--no-pdf-header-footer", "--print-to-pdf-no-header",
    f"file://{out_html}",
]

print("Running Chrome headless…")
r = subprocess.run(cmd, capture_output=True, text=True, timeout=60)
if r.returncode == 0:
    print(f"PDF: {out_pdf}  ({os.path.getsize(out_pdf):,} bytes)")
else:
    print("STDERR:", r.stderr[:2000])
    sys.exit(1)
