+ Extras fijos
+
+ Importes fijos que no escalan con los metros. El boletín eléctrico se aplica siempre; las
+ tuberías solo en pisos anteriores al año 2000 y la distribución al mover inodoro, ducha o
+ bañera.
+
+
+
+
{/* Catálogo por categoría */}
{CATEGORIAS.map((categoria) => {
const items = catalog.filter((c) => c.categoria === categoria);
diff --git a/mvp/b2c/src/app/solicitud/actions.ts b/mvp/b2c/src/app/solicitud/actions.ts
index aea15bb..a30854d 100644
--- a/mvp/b2c/src/app/solicitud/actions.ts
+++ b/mvp/b2c/src/app/solicitud/actions.ts
@@ -146,6 +146,8 @@ export async function guardarDetallesYFotos(leadId: string, formData: FormData):
const presupuestoTarget =
Number.isFinite(targetEuros) && targetEuros > 0 ? Math.round(targetEuros * 100) : null;
const estructural = formData.get('estructural') === 'on';
+ const anteriorA2000 = formData.get('anteriorA2000') === 'on';
+ const cambioDistribucion = formData.get('cambioDistribucion') === 'on';
let zonas = await parsearZonas(formData);
if (zonas.length === 0) {
@@ -191,6 +193,8 @@ export async function guardarDetallesYFotos(leadId: string, formData: FormData):
urgencia,
presupuestoTarget,
estructural,
+ anteriorA2000,
+ cambioDistribucion,
tasteText,
pipelineStage: 'fotos_subidas',
updatedAt: new Date(),
diff --git a/mvp/b2c/src/budget/compute.ts b/mvp/b2c/src/budget/compute.ts
index 756166f..7c1747e 100644
--- a/mvp/b2c/src/budget/compute.ts
+++ b/mvp/b2c/src/budget/compute.ts
@@ -8,11 +8,27 @@ import type {
CatalogItem,
PartidaKey,
PricingConfig,
+ TipoReforma,
} from './types';
const LICENCIA_MIN = 30000; // 300 €
const LICENCIA_MAX = 150000; // 1.500 €
+// Zonas húmedas: las únicas que llevan impermeabilización.
+const WET = new Set