Sligo Rovers handed Dundalk their second defeat on the spin as the Bit O’Red bounced back from recent indifferent form of their own to beat the champions at the Showgrounds.
Romeo Parkes sent Rovers on the way to their first league victory in four before Pat Hoban levelled the tie from the spot.
Sligo’s Bermudan centre half Dante Leverock settled this game before half-time when he popped up at the back post to help Liam Buckley’s charges toward their third league win of the season.
The less fancied Sligo hit the lead with just 27 seconds played.
Ronan Coughlan combined with full -back Lewis Banks on the left and his cross was perfect for Parkes as he coolly slotted past Gary Rogers.
Rovers should have doubled their advantage on 11 minutes.
Coughlan got in the way of an attempted clearance from the Dundalk rearguard as the ball rolled into the path of Daryl Fordyce. But the attacker lacked the composure required and could only cushion his effort wide of the post.
Parkes almost had his brace on 20 minutes but his low drive struck the bottom of the post with the Lilywhites stretched at the back.
Sligo’s busy start was brought to a sudden halt when Kyle McFadden handled the ball inside the area. Hoban clipping his subsequent penalty down the middle.
Rovers took the lead again before the break. Parkes flicking David Cawley’s corner towards the back post where Leverock was on hand to head past Rogers for his second goal of the year.
A disjointed Dundalk struggled to find a way past a solid Rovers, in a second half bereft of much in terms of goalmouth action.
Fordyce was denied by a superb save from Rogers, when the Meath native pushed the Rovers attacker’s looping header over the Dundalk crossbar mid-way through the second period.
John Mountney’s first time volley was simple for Beeney to hold on to as the champions pressed late on, but it was Rovers who held on for the three points.
Sligo Rovers: Mitchell Beeney; Johnny Dunleavy, Dante Leverock, John Mahon, Lewis Banks; Kyle Callan-McFadden; David Cawley, Jack Keaney (Niall Morahan 89); Daryl Fordyce; Ronan Coughlan; Romeo Parkes (Kris Twardek 73).
Dundalk: Gary Rogers; Sean Gannon, Brian Gartland (John Mountney HT), Daniel Cleary, Dane Massey; Daniel Kelly (George Kelly 62), Sean Murray (Joe McKee 68), Sean Hoare, Jamie McGrath, Michael Duffy; Patrick Hoban.
Referee: Rob Rogers.