Perhaps play with the ColorFunction option to the ContourPlots including an Opacity directive to allow the plot behind show through the one in front as in this (yes rather ugly, but it shows the approach):
cpl1 = ContourPlot[Cos[x] + Cos[y], {x, 0, 4 Pi}, {y, 0, 4 Pi},
ColorFunction -> (Directive[Opacity[.4], Hue[#]] &)]
cpl2 = ContourPlot[y Cos[x] + x Cos[y], {x, 0, 4 Pi}, {y, 0, 4 Pi},
ColorFunction -> (Directive[Opacity[.4], Hue[#]] &)]
Show[cpl1, cpl2]