Anthony Stokes scored twice as Scottish Premier League leaders Celtic halted the Hearts title bandwagon in its tracks with a comfortable victory.
James Forrest's superb 16-yard drive put the home side in control after just seven minutes of an impressive display.
Stokes curled in a delightful free-kick eight minutes after the break.
The Irishman broke clear to score after 71 minutes and Paddy McCourt added a close-range finish to firmly end third-top Hearts' 11-match unbeaten run.
Celtic themselves have now stretched their own unbeaten run to 11 games and moved 10 points clear of the Edinburgh side.
Hearts had arrived on a high after Saturday's 1-0 win over reigning champions Rangers but now find themselves again five points adrift of the second-top side after failing to live up to their pre-match billing.
The talk before the game was how Celtic's defence would cope with just one fit centre-half, Thomas Rogne, available to face in-form visitors.
However, he and Charlie Mulgrew, normally a left-back, were hardly troubled throughout a match in which Celtic immediately established control, troubling the visitors with their pace and precision.
And Forrest, who returned to the side following suspension along with Joe Ledley, gave them the lead after a clever flick by striker Gary Hooper was picked up by Scott Brown.
The Celtic captain drove forward before releasing the winger on the left-hand side of the box.
Forest appeared to take Hearts goalkeeper Marian Kello by surprise when he lashed in an unstoppable shot from 16 yards.
The winger's joy turned to despair when he was forced off after 24 minutes with what looked like a hamstring injury, being replaced with Paddy McCourt, who had originally been dropped to the bench along with Niall McGinn.
Stokes (left) scored Celtic's second and third goals against Hearts
Hearts manager Jim Jefferies had started with the more combative Ian Black instead of Ruben Palazuelos, but the visitors were second best in midfield.
When they were at last seen as an attacking force, Stephen Elliott's cross-cum-shot flew dangerously across the face of goal, with Ryan Stevenson just failing to provide a scoring touch.
Good control from Stokes inside the Hearts penalty box set up Ledley to fire wide after a period of intense Celtic pressure.
By now, it was becoming an increasingly stormy affair, with Hearts' Rudi Skacel particularly testing referee Euan Norris's patience despite having already been booked.
The winger also squandered Hearts' best chance of the half on the break when he shot straight at goalkeeper Fraser Forster, while Ledley fired just wide at the other end.
Skacel was replaced with Palazuelos at half-time, manager Jefferies deciding it was better to take the Czech off before he was sent off.
Hearts came out for the second half hoping to replicate Saturday's performance, when they defeated Rangers despite the reigning champions having created a series of chances in the opening 45 minutes.
However, they immediately went close to going further behind when Hooper broke clear and goalkeeper Kello did well to block clear the striker's drive.
Celtic's second was not long in coming, with Stokes curling a free-kick past the goalkeeper from 25 yards.
With the match becoming increasingly heated, Hearts' Black and Marius Zaliukas, plus Celtic's Brown and Stokes, took the number of bookings to seven following a midfield melee.
Hearts were unable to turn that passion into creative football and they should have gone further behind when Hooper fired over from close range.
Stokes grabbed his second when Zaliukas failed to gather a Ledley through ball and, when Hooper stumbled, his strike partner was on hand to score.
McCourt completed the scoring after 80 minutes when Brown set up Stokes and the winger added the finish.
Live text and stats
Wednesday, 26 January 2011
03 Izaguirre yellow card
12 Wilson yellow card
08 Brown yellow card
33 Baram Kayal (Juarez 82)
10 Stokes yellow card
49 Forrest (McCourt 24)
88 Hooper (Murphy 86)
21 Ismael Bouzid
26 Zaliukas yellow card
08 Black yellow card (Obua 60)
12 Templeton (Suso Santana 60)
19 Skacel yellow card (Palazuelos 45+1)
07 Suso Santana,
Ref: NorrisAtt: 49,460
Attempts on target
Attempts off target
90:00+0:52 The ball is crossed by Emilio Izaguirre, Header from deep inside the penalty area by Efrain Juarez goes harmlessly over the
89:47 Free kick awarded for an unfair challenge on Emilio Izaguirre by Suso Santana. Charlie Mulgrew takes the direct free kick.
88:57 Centre by Mark Wilson, save made by Marian Kello.
86:05 Anthony Stokes is caught offside. Free kick taken by Marius Zaliukas.
85:16 Substitution Daryl Murphy joins the action as a substitute, replacing Gary Hooper.
84:10 Emilio Izaguirre sends in a cross, Header by Anthony Stokes from deep inside the penalty area misses to the right of the target.
83:53 Corner taken short by Mark Wilson.
83:26 The final whistle goes and the game is over.
81:21 Substitution Efrain Juarez joins the action as a substitute, replacing Beram Kayal.
80:50 The assistant referee signals for offside against Anthony Stokes. Ismael Bouzid takes the indirect free kick.
79:16 Assist by Scott Brown.
79:16 GOAL - Patrick McCourt:Celtic 4 - 0 Hearts Patrick McCourt gets on the score sheet with a goal from the edge of the penalty box to the bottom left corner of the goal.
Celtic 4-0 Hearts.
77:35 Suso Santana fouled by Joe Ledley, the ref awards a free kick. Marius Zaliukas takes the direct free kick.
76:35 Corner from the left by-line taken by Ryan Stevenson, clearance by Charlie Mulgrew.
Correction - 76:03 Corner taken by Ryan Stevenson, save by Fraser Forster.
76:03 Outswinging corner taken from the right by-line by Ryan Stevenson, Fraser Forster manages to make a clearance.
75:35 Unfair challenge on Suso Santana by Anthony Stokes results in a free kick. Direct free kick taken by Suso Santana.
70:41 Assist by Gary Hooper.
70:41 GOAL - Anthony Stokes:Celtic 3 - 0 Hearts Anthony Stokes finds the net with a goal from close range low into the middle of the goal. Celtic 3-0 Hearts.
70:01 The assistant referee flags for offside against Gary Hooper. Marian Kello takes the indirect free kick.
59:45 Substitution (Hearts) makes a substitution, with David Obua coming on for Ian Black.
59:45 Substitution David Templeton goes off and Suso Santana comes on.
59:31 Anthony Stokes is flagged offside by the assistant referee. Free kick taken by Ismael Bouzid.
59:31 Booking Ian Black shown a yellow card.
54:15 Booking Scott Brown booked for unsporting behaviour.
54:07 Booking Booking for Marius Zaliukas for unsporting behaviour.
54:07 Booking Anthony Stokes is shown a yellow card.
52:27 GOAL - Anthony Stokes:Celtic 2 - 0 Hearts Anthony Stokes scores a goal direct from the free kick from just outside the area to the top left corner of the goal. Celtic
Correction - 51:09 Emilio Izaguirre fouled by Ismael Bouzid, the ref awards a free kick.
51:09 Foul by Ismael Bouzid on Emilio Izaguirre, free kick awarded.
45:01 The referee starts the second half.
45:00+7:21 Mark Wilson concedes a free kick for a foul on Lee Wallace. Lee Wallace takes the direct free kick.
45:00+7:09 Foul by Beram Kayal on Ruben Palazuelos, free kick awarded. Free kick taken by Ian Black.
45:00+5:49 Emilio Izaguirre fouled by Ismael Bouzid, the ref awards a free kick.
45:00+3:04 Beram Kayal fouled by Stephen Elliott, the ref awards a free kick. Direct free kick taken by Scott Brown.
45:00+1:06 Gary Hooper has a drilled shot. Marian Kello makes a save.
45:00+1:02 The referee calls an end to the first half.
45:00+0:59 Substitution Rudolf Skacel goes off and Ruben Palazuelos comes on.
45:00+0:28 Anthony Stokes is ruled offside. Marius Zaliukas takes the indirect free kick.
43:22 Joe Ledley produces a drilled right-footed shot from deep inside the penalty box which goes wide of the right-hand upright.
42:41 Unfair challenge on Anthony Stokes by Lee Wallace results in a free kick. Mark Wilson restarts play with the free kick.
41:57 Free kick awarded for a foul by Emilio Izaguirre on Rudolf Skacel. Marius Zaliukas takes the free kick.
41:57 Booking Emilio Izaguirre booked.
40:54 Stephen Elliott gives away a free kick for an unfair challenge on Charlie Mulgrew. Charlie Mulgrew takes the free kick.
39:05 Inswinging corner taken by Rudolf Skacel, clearance by Joe Ledley.
38:26 Emilio Izaguirre concedes a free kick for a foul on Ian Black. Rudolf Skacel takes the direct free kick.
36:49 The ball is delivered by Lee Wallace.
35:08 Scott Brown fouled by Stephen Elliott, the ref awards a free kick. Thomas Rogne takes the free kick.
34:30 Anthony Stokes is ruled offside. Marius Zaliukas restarts play with the free kick.
33:02 Foul by Rudolf Skacel on Mark Wilson, free kick awarded. Free kick taken by Mark Wilson.
33:02 Booking Rudolf Skacel is booked.
31:34 Free kick awarded for an unfair challenge on Joe Ledley by Ian Black. Direct free kick taken by Charlie Mulgrew.
30:21 Free kick awarded for a foul by Thomas Rogne on Ryan Stevenson. Direct free kick taken by Marius Zaliukas.
28:58 Rudolf Skacel challenges Charlie Mulgrew unfairly and gives away a free kick. Free kick taken by Fraser Forster.
27:36 Rudolf Skacel concedes a free kick for a foul on Scott Brown. Direct free kick taken by Charlie Mulgrew.
25:49 Unfair challenge on Lee Wallace by Scott Brown results in a free kick. Lee Wallace restarts play with the free kick.
25:06 The assistant referee flags for offside against Stephen Elliott. Fraser Forster restarts play with the free kick.
23:39 Substitution Patrick McCourt replaces James Forrest.
23:00 The official flags Anthony Stokes offside. Direct free kick taken by Ismael Bouzid.
21:23 Gary Hooper challenges Marian Kello unfairly and gives away a free kick. Marian Kello restarts play with the free kick.
20:06 David Templeton fouled by Emilio Izaguirre, the ref awards a free kick. Free kick taken by Marius Zaliukas.
19:33 Foul by James Forrest on Eggert Jonsson, free kick awarded. Eggert Jonsson restarts play with the free kick.
17:35 The ball is delivered by Anthony Stokes, save by Marian Kello.
16:18 Scott Brown sends in a cross, clearance made by Marius Zaliukas.
15:15 The ball is sent over by Mark Wilson, Ismael Bouzid manages to make a clearance.
13:54 James Forrest is caught offside. Marian Kello restarts play with the free kick.
12:17 The offside flag is raised against Mark Wilson. Marian Kello restarts play with the free kick.
11:29 Mark Wilson crosses the ball.
10:19 Rudolf Skacel fouled by Mark Wilson, the ref awards a free kick. Marian Kello takes the direct free kick.
10:19 Booking Mark Wilson receives a yellow card for unsporting behaviour.
8:47 Inswinging corner taken by Charlie Mulgrew from the right by-line, save made by Marian Kello.
8:11 Free kick awarded for a foul by Rudolf Skacel on Scott Brown. Charlie Mulgrew restarts play with the free kick.
6:50 The assist for the goal came from Scott Brown.
6:50 GOAL - James Forrest:Celtic 1 - 0 Hearts James Forrest finds the back of the net with a goal from the edge of the penalty box to the top left corner of the goal. Celtic
5:02 Ismael Bouzid challenges Mark Wilson unfairly and gives away a free kick. Free kick taken by Charlie Mulgrew.
3:51 Scott Brown has shot on goal from just outside the area which goes wide of the right-hand upright.
2:53 Emilio Izaguirre challenges Ismael Bouzid unfairly and gives away a free kick. Free kick taken by Marian Kello.
2:39 Stephen Elliott gives away a free kick for an unfair challenge on Emilio Izaguirre. Emilio Izaguirre takes the free kick.
2:06 Corner taken by Charlie Mulgrew, save made by Marian Kello.
Correction - 0:00 The match begins.
0:00 The referee starts the match.
Live text and data provided by The Press Association.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.