Hi @MelissaDa,
One pattern is to have a calculated custom parameter check a task for its own Work Category, and if it is blank, "move up" to check the parent(s) until a value is found, such as this:
IF(ISBLANK({DE:Work Category}),IF(ISBLANK(parent.{DE:Work Category}),...,parent.{DE:Work Category}),{DE:Work Category})
You can expand the ... part with as many parent.parent. (etc) cases as you think necessary.
The advantage/gotcha with this is that child Tasks need not match their parents.
Regards,
Doug