Such was the dominance displayed by the Pumas that they scored their bonus-point try after just 29 minutes when the left wing, Luwellyn Isbell went over in the corner.
The visitors scored six of their eight tries in the first half, beginning with flyhalf Roos, who went over in the second minute, converting the try himself.
Fourteen minutes later the Lions reduced the deficit to just two points when Selom Gavor scored in the corner with flyhalf Willie du Plessis missing the conversion.
The Pumas ignited the afterburners after the 20th minute as they ran in three tries in six minutes through inside centre Hennie Skorbinski, captain Corne Steenkamp and Isbell.
Renaldo Bothma rounded off an excellent first half for the visitors by scoring two tries in the space of two minutes just before the break, with Roos converting both, to head into the change rooms with a lead of 33 points.
The score at half-time could have been far worse had Roos had his kicking boots on as the flyhalf missed three conversions.
The home side rung the changes at half-time which brought immediate dividends as they scored three unanswered tries.
Openside flank, Stephan de Witt, scored the Lions' second try five minutes into the second stanza. Du Plessis missed the conversion but this did not dampen the home sides' fight.
Ruaan Lerm, playing off the back of the scrum, went over after 57 minutes to reduce the deficit to 21 points as Du Plessis converted.
The Lions continued their fightback with a try by their lock, Hugo Kloppers but once again Du Plessis was wide of the mark with the conversion. Du Plessis missed four conversions although the visitors missed a total of five kicks at goal themselves.
Scorers
Golden Lions
Tries: Selom Gavor, Stephan de Witt, Ruaan Lerm, Hugo Kloppers, Ruhan Nel
Conversion: Willie du Plessis
Tries: JC Roos, Hennie Skorbinski, Corne Steenkamp, Ruwellyn Isbell, Renaldo Botham (2), Lubabalo Mtyanda, Reynier van Rooyen
Conversions: Roos (4)