/* v2 Workflow — Cicle de vida real d'un pla de gestió forestal */ const V2_STEPS = [ { id: "01", phase: "REDACCIÓ", title: "Redacció del pla", copy: "Procés iteratiu entre l'enginyer i l'administració. Plantilla CPF i Word — ~1 any de feina.", chip: "~1 ANY", chipColor: "var(--v2-cyan)" }, { id: "02", phase: "VIGÈNCIA", title: "15-20 anys actius", copy: "Un cop aprovat, el pla viu entre 15 i 20 anys, amb actuacions planificades any per any.", chip: "15-20 ANYS", chipColor: "var(--v2-accent)" }, { id: "03", phase: "ACTUACIÓ", title: "Convocatòria anual SIDER", copy: "Cada any l'enginyer presenta memòria i pressupost a SIDER per a l'actuació anual.", chip: "CADA ANY", chipColor: "var(--v2-accent)" }, { id: "04", phase: "EXECUCIÓ", title: "Comprovació i cobrament", copy: "Tècnic del CPF verifica l'execució a camp. Un cop conforme, el propietari cobra la subvenció.", chip: "CPF · CAMP", chipColor: "var(--v2-amber)" }, ]; const V2WorkflowFlow = () => { const [progress, setProgress] = React.useState(0); const ref = React.useRef(null); React.useEffect(() => { const io = new IntersectionObserver((entries) => { for (const e of entries) { if (e.isIntersecting) { let p = 0; const tick = () => { p += 0.012; if (p > 1) p = 1; setProgress(p); if (p < 1) requestAnimationFrame(tick); }; tick(); io.disconnect(); } } }, { threshold: 0.25 }); if (ref.current) io.observe(ref.current); return () => io.disconnect(); }, []); return (
0 && progress < 1 ? 1 : 0 }} />
{V2_STEPS.map((s, i) => { const sp = Math.max(0, Math.min(1, progress * V2_STEPS.length - i)); const active = sp > 0.1; const done = sp >= 1; return (
{done ? ( ) : ( {s.id} )} {s.phase}
FASE {s.id} {s.chip}

{s.title}

{s.copy}

); })}
); }; const V2Workflow = () => (
Cicle de vida d'un pla

Un pla de gestió no és un projecte.
És una conversa de vint anys.

Redactar un IOF o un PTGMF és el primer any. Després vénen 15 a 20 anys d'actuacions planificades, convocatòries d'ajuts, comprovacions de camp i cobraments. ForestOS acompanya el pla des de la redacció fins a l'última subvenció cobrada.

); window.V2Workflow = V2Workflow;