Premiership leaders Northampton Saints collected a losing bonus point as they suffered a Heineken Cup defeat at Castres for the second season running.
Paul Bonnefond grabbed an early try as the French side edged a scrappy first half in Toulouse.
Anthonie Claassen added another early in the second half while Saints' Brian Mujati was in the sin-bin.
George Pisi's try gave Northampton hope, but a Remi Tales drop-goal left them with too much to do.
Jim Mallinder's side, beaten 41-22 at Castres last season, had just five days to prepare for this Pool Four match, having started their European campaign with a 24-15 victory over Glasgow last Sunday.
They struggled to impose themselves, conceding a try inside the first eight minutes to opponents who had been given seven days to recover from their 41-17 defeat at Ulster.
Castres, unbeaten in front of their own supporters this season, went in front when Romain Martial collected a crossfield kick and fed Bonnefond to touch down in the corner.
Romain Teulet, who converted the try, then added a penalty awarded against Courtney Lawes to make it 10-0.
Castres could not maintain that early momentum, and two Stephen Myler penalties pulled the Saints back into contention.
The normally reliable Teulet, who was later substituted, surprisingly missed another penalty to the right of the posts, and Rory Kockott took over to slot one over from 45 metres.
Former Gloucester and Worcester winger Marcel Garvey was close to adding a second home try just before half-time from Claassen's pass, but Ken Pisi managed to force him into touch with a vital last-ditch tackle.
Saints suffered a blow in the early minutes of the second half when front row Mujati was sent to the sin bin for dragging a maul down, leaving them a man short in the scrum. Castres took advantage as South African Claassen powered over from close range for a second home try.
George Pisi, who scored two tries as Northampton came from 15 points down to beat Glasgow last Sunday, revived the visitors' hopes when he pounced on Ryan Lamb's speculative kick to steal the ball from Kockott and race clear for a try converted by Myler.
But fly-half Remi Tales kicked a drop-goal for Castres soon after the restart, and they secured the win despite Myler kicking a third penalty with eight minutes left to ensure a point for Saints.
VIEWS FROM THE DRESSING ROOM
Northampton Saints director of rugby Jim Mallinder told BBC Radio Northampton:
"It was tough. We didn't start the game particularly well and, being 10 points down, it's quite a lot to come back from.
"We got a lot of penalties against us and you concede field position. On a day like today, it's hard to get back up the field.
"We did get some go forward at times but our off-loading was poor.
"Castres have got a big squad and they do swap things around regularly. You'd much prefer to have seven days than five."
Castres Olympique: Romain Teulet; Romain Martial, Paul Bonnefond, Seremaia Bai, Marcel Garvey; Remi Tales, Rory Kockott; Hai Lazar, Brice Mach, Anton Peikrishvili, Joe Tekori (capt), Christophe Samson, Jannie Bornman, Piula Faasalele, Antonie Claassen.
Replacements: Andreu for Teulet (52), Cabannes for Bai (66), Kirkpatrick for Tales (74), Forestier for Lazar (62), Rallier for Mach (68), Coetzee for Peikrishvili (53), Rolland for Tekori (59), Wannenburg for Faasalele (78).
Northampton: Stephen Myler; Ken Pisi, George Pisi, Dominic Waldouck, Vasily Artemyev; Ryan Lamb, Lee Dickson; Soane Tonga'uiha, Dylan Hartley (capt), Brian Mujati, Samu Manoa, Courtney Lawes, Phil Dowson, Tom Wood, Rhys Oakley.
Replacements: May for Waldouck (68), Roberts for Dickson (66), Waller for Tonga'uiha (68), Doran-Jones for Mujati (68), Sorenson for Manoa (66), van Velze for Oakley (62). Not Used: Haywood, Armstrong.
Sin Bin: Mujati (45).
Referee: Alain Rolland (Ireland)