
:root{--navy:#1f2645;--blue:#315ea8;--blue2:#4175c3;--pale:#f4f7fb;--pale2:#eef3fa;--text:#40485d;--muted:#687086;--border:#e1e7f0;--accent:#b96f45;--accent-dark:#915232;--accent-soft:#fff5ee;--green:#2d6a45;--green-soft:#eaf6ef;--red:#9a3d34;--shadow:0 14px 40px rgba(31,38,69,.08);--radius:18px;--wrap:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--text);font-family:Arial,"Open Sans",sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}.wrap{width:min(calc(100% - 36px),var(--wrap));margin:auto}
.header{background:#fff;border-bottom:1px solid #e7ebf2;box-shadow:0 3px 16px rgba(31,38,69,.045);position:sticky;top:0;z-index:20}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{display:flex;align-items:center;gap:12px}.logo img{width:128px;height:auto}.badge{font-size:.78rem;font-weight:800;color:var(--blue);background:var(--pale2);padding:7px 10px;border-radius:999px}
.hero{padding:54px 0 40px;background:linear-gradient(135deg,#f7f9fc 0%,#e9eef8 100%)}.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.77rem;font-weight:800;color:var(--blue);margin:0 0 8px}.hero h1{font-family:Georgia,"Palanquin Dark",serif;font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;color:var(--navy);margin:0 0 14px}.hero p{font-size:1.04rem;line-height:1.72;max-width:900px;margin:0;color:#515a6d}.notice{margin-top:20px;padding:14px 16px;border:1px solid #ead6c8;background:var(--accent-soft);border-radius:12px;font-size:.9rem;line-height:1.55;color:#6d4936}
.main{padding:38px 0 72px}.app-grid{display:grid;grid-template-columns:270px minmax(0,1fr);gap:28px;align-items:start}.progress-card,.panel{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.progress-card{padding:20px;position:sticky;top:96px}.progress-card h3{color:var(--navy);margin:0 0 14px;font-size:1rem}.progress-bar{height:7px;background:#edf1f7;border-radius:999px;overflow:hidden;margin-bottom:16px}.progress-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--blue2));width:0;transition:width .25s ease}.steps{display:grid;gap:7px}.step-dot{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;color:var(--muted);font-weight:700;font-size:.88rem}.step-dot span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--pale2);color:var(--blue);font-size:.76rem}.step-dot.active{background:#eef3fb;color:var(--navy)}.step-dot.active span,.step-dot.done span{background:var(--blue);color:#fff}.step-dot.done{color:var(--navy)}
.panel{padding:30px}.panel h2{font-family:Georgia,"Palanquin Dark",serif;color:var(--navy);font-size:1.85rem;margin:0 0 8px}.panel .intro{color:var(--muted);line-height:1.6;margin:0 0 24px}.question{margin:0 0 24px}.question>label,.question>.label{display:block;font-weight:800;color:var(--navy);margin:0 0 10px}.help{display:block;margin-top:6px;font-size:.8rem;color:var(--muted);line-height:1.45}.options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.option{position:relative}.option input{position:absolute;opacity:0;pointer-events:none}.option label{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid #d7deea;border-radius:12px;background:#fff;cursor:pointer;line-height:1.38;min-height:48px;transition:.15s ease}.option label:before{content:"";width:17px;height:17px;border:2px solid #aeb9ca;border-radius:5px;flex:0 0 17px;margin-top:1px}.option input[type=radio]+label:before{border-radius:50%}.option input:checked+label{border-color:var(--blue);background:#f3f6fb;color:var(--navy);box-shadow:0 0 0 1px var(--blue) inset}.option input:checked+label:before{border-color:var(--blue);background:var(--blue);box-shadow:inset 0 0 0 3px #fff}.field{width:100%;padding:12px 13px;border:1px solid #cfd8e6;border-radius:9px;background:#fff;color:var(--text);min-height:46px}.field:focus{outline:2px solid rgba(49,94,168,.18);border-color:var(--blue)}textarea.field{min-height:116px;resize:vertical}.two-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.signal-box{display:none;margin-top:10px;padding:13px 14px;border-radius:12px;background:var(--pale);border:1px solid var(--border)}.signal-box.show{display:block}.signal-box strong{display:block;color:var(--navy);font-size:.86rem;margin-bottom:7px}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{display:inline-flex;padding:5px 8px;border-radius:999px;background:#fff;border:1px solid #d8e0ec;color:var(--blue);font-size:.75rem;font-weight:800}
.actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid var(--border)}.btn{border:0;border-radius:10px;padding:12px 20px;min-height:46px;font-weight:800;cursor:pointer;transition:.18s ease}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 6px 18px rgba(49,94,168,.18)}.btn-primary:hover{background:#284f90;transform:translateY(-1px)}.btn-secondary{background:#fff;color:var(--navy);border:1px solid #ccd5e4}.btn-accent{background:var(--accent);color:#fff}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.error{display:none;margin:0 0 18px;padding:12px 14px;border-radius:10px;background:#fff0ee;color:#8e332c;font-size:.9rem}.error.show{display:block}
.conditional{margin-top:18px;padding:18px;border:1px solid #e5d4c9;background:#fffaf6;border-radius:14px}.conditional h3{margin:0 0 10px;color:var(--navy);font-size:1rem}.conditional p{margin:0 0 14px;color:var(--muted);font-size:.88rem;line-height:1.55}
.result{display:none}.result.show{display:block}.result-head{padding:26px;border-radius:16px;background:linear-gradient(135deg,var(--navy),#2e3a67);color:#fff;margin-bottom:22px}.result-head .kicker{color:#dbe6ff}.result-head h2{color:#fff;margin:0 0 10px;font-family:Georgia,"Palanquin Dark",serif;font-size:1.95rem}.result-head p{margin:0;color:#eef2fb;line-height:1.65}.score-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.score{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:14px}.score strong{display:block;font-size:1.22rem;margin-bottom:3px}.score span{font-size:.79rem;color:#dce4f6}.detected{margin:0 0 22px;padding:16px 18px;border:1px solid #ead6c8;background:var(--accent-soft);border-radius:14px}.detected h3{margin:0 0 8px;color:var(--navy);font-size:1rem}.detected p{margin:0;color:#76513e;font-size:.88rem;line-height:1.5}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.result-card{border:1px solid var(--border);border-radius:14px;padding:20px;background:#fff}.result-card h3{margin:0 0 10px;color:var(--navy);font-size:1.05rem}.status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:.74rem;font-weight:800;margin-bottom:9px}.yes{background:var(--green-soft);color:var(--green)}.review{background:var(--accent-soft);color:var(--accent-dark)}.optional{background:#eef3fb;color:var(--blue)}.result-card p{margin:0;line-height:1.55;font-size:.9rem;color:#566074}.proposal{margin-top:22px;border:1px solid var(--border);border-radius:16px;overflow:hidden}.proposal-title{padding:17px 20px;background:var(--pale2);color:var(--navy);font-weight:800}.proposal-body{padding:22px}.proposal-body h3{color:var(--navy);margin:0 0 12px}.proposal-body ul{padding-left:20px;line-height:1.65}.price-box{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 20px;margin-top:18px;border-radius:13px;background:var(--accent-soft);border:1px solid #ead6c8}.price-box strong{display:block;color:var(--navy);font-size:1.18rem}.price-box span{font-size:.84rem;color:#79533f}.price{font-size:1.5rem;font-weight:900;color:var(--accent-dark);white-space:nowrap}.result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.client-note{margin-top:16px;padding:14px 16px;border:1px solid #ead6c8;background:var(--accent-soft);border-radius:12px;font-size:.82rem;color:#6f4e3b;line-height:1.55}.client-note strong{color:var(--navy)}
/* Documento PDF — estilo RGPD Málaga */
.pdf-doc{display:none;color:var(--text)}
.pdf-page{page-break-after:auto;break-after:auto}.pdf-page+.pdf-page{margin-top:18px}
.pdf-topbar{height:7px;border-radius:8px 8px 0 0;background:linear-gradient(90deg,var(--navy) 0 70%,var(--accent) 70%)}
.pdf-header{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding:18px 2px 14px;border-bottom:1px solid #dfe5ee}.pdf-header img{width:118px;height:auto}.pdf-meta{text-align:right;color:#697286;font-size:9.5px;line-height:1.5}
.pdf-title{margin:16px 0 16px;padding:18px 20px;border:1px solid #dfe6f0;border-radius:15px;background:linear-gradient(135deg,#f7f9fc 0%,#edf2f9 100%)}.pdf-title .eyebrow{color:var(--accent-dark);text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:8.5px}.pdf-title h1{margin:5px 0 6px;color:var(--navy);font-family:Georgia,serif;font-size:24px;line-height:1.15}.pdf-title p{margin:0;color:#586174;font-size:9.8px;line-height:1.5;max-width:660px}
.pdf-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:0 0 14px}.pdf-summary div{padding:12px 13px;border:1px solid #dfe5ee;border-top:3px solid var(--blue);border-radius:11px;background:#f8fafc}.pdf-summary div:nth-child(3){border-top-color:var(--accent);background:#fff9f4}.pdf-summary strong{display:block;color:var(--navy);font-size:11.5px;margin-bottom:3px}.pdf-summary span{font-size:8.6px;color:#737c8e;line-height:1.4}
.pdf-section{margin:0 0 13px;padding:14px 16px;border:1px solid #dfe5ee;border-radius:13px;background:#fff;break-inside:auto;page-break-inside:auto}.pdf-section h2{display:flex;align-items:center;gap:8px;margin:0 0 9px;color:var(--navy);font-family:Georgia,serif;font-size:15px}.pdf-section h2:before{content:"";width:5px;height:18px;border-radius:4px;background:var(--accent);flex:0 0 5px}.pdf-section p,.pdf-section li{font-size:9.2px;line-height:1.48;color:#515a6c}.pdf-section ul{margin:7px 0 0;padding-left:17px}.pdf-section--table{padding:0;border:0;background:transparent}.pdf-section--table h2{padding:0 2px}.pdf-table{width:100%;border-collapse:separate;border-spacing:0;font-size:8.35px;border:1px solid #dce3ed;border-radius:11px;overflow:hidden}.pdf-table th{background:var(--navy);color:#fff;text-align:left;padding:7px 8px}.pdf-table td{border-top:1px solid #e3e8f0;border-right:1px solid #e3e8f0;padding:7px 8px;vertical-align:top;line-height:1.38}.pdf-table td:last-child,.pdf-table th:last-child{border-right:0}.pdf-table tr:nth-child(even) td{background:#f8fafc}.pdf-table tr{break-inside:avoid;page-break-inside:avoid}
.pdf-price{margin-top:8px;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 16px;border:1px solid #e2c9b8;background:linear-gradient(135deg,#fff9f4,#fff3ea);border-radius:12px;break-inside:avoid;page-break-inside:avoid}.pdf-price .label{color:var(--navy);font-weight:800;font-size:10.5px}.pdf-price .sub{color:#76513e;font-size:8.5px;line-height:1.4;margin-top:3px;max-width:470px}.pdf-price .amount{font-size:18px;font-weight:900;color:var(--accent-dark);white-space:nowrap}
.pdf-note{margin-top:12px;padding:11px 13px;background:#f4f7fb;border:1px solid #dfe6f0;border-left:4px solid var(--blue);border-radius:10px;font-size:8.6px;line-height:1.45;color:#596275;break-inside:avoid;page-break-inside:avoid}.pdf-footer{margin-top:15px;padding-top:9px;border-top:1px solid #dfe5ee;display:flex;justify-content:space-between;gap:20px;color:#7a8394;font-size:7.7px}.pdf-sign{margin-top:13px;padding:13px 15px;background:var(--navy);border-radius:11px;color:#fff;break-inside:avoid;page-break-inside:avoid}.pdf-sign strong{display:block;font-size:10.5px}.pdf-sign span{display:block;margin-top:3px;color:#dce4f3;font-size:8.5px}

/* V6 PDF: conserva el diseño V3; logo solo en primera página y footer corporativo final */
.pdf-continuation{margin-top:14px}
.pdf-contactbar{margin-top:13px;padding:14px 16px 13px;background:var(--navy);border-radius:11px;color:#fff;break-inside:avoid;page-break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.pdf-contactgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.pdf-contactitem strong{display:block;margin-bottom:4px;color:#d9e2f4;font-size:7.7px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase}
.pdf-contactitem span{display:block;color:#fff;font-size:9.2px;line-height:1.4;word-break:break-word}
.pdf-contactnote{margin-top:10px;padding-top:9px;border-top:1px solid rgba(255,255,255,.18);color:#e2e8f5;font-size:8px;line-height:1.45}
@media(max-width:650px){.pdf-contactgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.app-grid{grid-template-columns:1fr}.progress-card{position:static}.steps{grid-template-columns:repeat(6,1fr)}.step-dot{display:block;text-align:center;padding:7px 3px;font-size:.66rem}.step-dot span{margin:0 auto 5px}.panel{padding:22px}.score-row{grid-template-columns:1fr}.result-grid{grid-template-columns:1fr}.header-inner{min-height:68px}.logo img{width:108px}.badge{display:none}}
@media(max-width:650px){.wrap{width:min(calc(100% - 24px),var(--wrap))}.hero{padding:36px 0 28px}.main{padding:26px 0 48px}.panel{padding:18px}.options,.two-fields{grid-template-columns:1fr}.actions{display:grid;grid-template-columns:1fr}.btn{width:100%}.steps{gap:3px}.step-dot{font-size:0}.step-dot span{margin-bottom:0}.price-box{display:block}.price{margin-top:12px}.result-actions{display:grid}.result-actions .btn{width:100%}}
@media print{
 @page{size:A4;margin:11mm 12mm 11mm}
 html,body{background:#fff!important}.header,.hero,.progress-card,.wizard,.result{display:none!important}.main{padding:0}.app-grid{display:block}.panel{box-shadow:none;border:0;padding:0}.pdf-doc{display:block!important}.pdf-page{display:block!important;page-break-after:auto!important;break-after:auto!important}.pdf-page+.pdf-page{margin-top:12px}.pdf-topbar,.pdf-table th,.pdf-sign,.pdf-summary div,.pdf-price,.pdf-title{-webkit-print-color-adjust:exact;print-color-adjust:exact}.pdf-header,.pdf-title,.pdf-summary,.pdf-price,.pdf-note,.pdf-sign{break-inside:avoid;page-break-inside:avoid}
}

/* Integración en RGPD Málaga V2 */
.rgpd-config-page .hero{padding:62px 0 46px}
.rgpd-config-page .hero h1{font-family:"Palanquin Dark",Georgia,serif}
.rgpd-config-page .panel h2,.rgpd-config-page .result-head h2{font-family:"Palanquin Dark",Georgia,serif}
.rgpd-config-page .main{background:#fff}
.rgpd-config-page .notice a{color:var(--blue);font-weight:800}
@media(max-width:650px){.rgpd-config-page .hero{padding:42px 0 30px}}
