A 94th-minute Ross Callachan goal earned bottom side Hamilton Academical a surprise draw against Scottish Premiership leaders Rangers.
A Brian Easton own goal looked like it would give Rangers the points after visiting goalkeeper Allan McGregor had pulled off a string of saves.
Callachan, Bruce Anderson and Scott McMann were all thwarted in an uncomfortable 90 minutes for Rangers.
But with the last act of the game, Callachan scored from close range.
It means Rangers – who remain unbeaten in the league – now have a 21-point lead at the summit.
Hamilton stay bottom but have narrowed the gap on second-bottom Ross County to three points, and have two games in hand.
A whole league table and 56 points may have separated the two, but Hamilton gave as good as they got against the Premiership leaders.
Ianis Hagi and Joe Aribo put efforts wide from long distance for Rangers, and Connor Goldson had a looping header saved, but that was as close as Steven Gerrard’s side got in a lacklustre first half.
Instead, the best chances fell to the hosts. Anderson played a one-two with Marios Ogkmpoe and sliced a deflected shot just wide. Then McGregor had to be alert when Anderson – on loan from Aberdeen – robbed Filip Helander on the edge of the box.
James Tavernier put a free-kick over just before the break, and Ryan Kent hit the side netting just after it as Rangers tried to go up a gear.
But then McGregor had to make a huge double save to keep Hamilton out, denying McMann and Callachan’s efforts from inside the area.
Hamilton kept pushing, and Anderson drove a low shot at goal which McGregor again blocked.
Ryan Jack’s introduction helped Rangers get more of a foothold in midfield and Kent’s low drive through a ruck of bodies skimmed the far post.
But back came the home side. Callachan’s free-kick was pushed away by McGregor before Rangers broke the deadlock at the other end as Borna Barisic’s cross from the right bounced in off Easton.
It looked like it would be heartbreak for the relegation strugglers but, deep into injury time, McGregor clawed away an Anderson header and Callachan was first to the rebound to fire home.
Man of the match – Bruce Anderson
What did we learn?
With such a handsome lead at the top of the Premiership, Rangers can afford an off day. But four of their past seven games have been won by just a single goal, and they have dropped points in two.
Recently, they have begun to look more vulnerable and, while it probably won’t hurt their title bid, it may concern Gerrard with the Europa League tie with Royal Antwerp coming up.
Hamilton were nine minutes away from victory – before losing – in midweek but paid the price for missed chances. They were up for the battle with Rangers and their late goal earns what could be a crucial point before a difficult run of fixtures.
Three of their next four games are against top-six opposition, and their next four games are away from home, as they fight for survival.
What did they say?
Hamilton Academical head coach Brian Rice: “I’m proud, not just of the result but the manner of the play. I thought the boys were absolutely outstanding.
“The message was to start the game like we mean it. They showed belief in each other.”
Rangers manager Steven Gerrard: “I’m actually relieved to go away from this game with a point. We nearly won ugly, got a smash and grab, but we need to be better than that. We just weren’t at the races.
There’s so much for me to look through, and for me as well. Maybe I left too much quality and personality on the sidelines because we looked better when the subs came on.”
Hamilton travel to Livingston on Wednesday (18:00 GMT), while Rangers are next in action on Saturday when they host Kilmarnock (15:00).
- 14TraffordSubstituted forHughesat 72′minutes
- 34CallachanBooked at 1mins
- 5HelanderBooked at 76mins
- 15ZunguSubstituted forJackat 60′minutes
- 18KamaraSubstituted forDavisat 78′minutes
- 7HagiSubstituted forWrightat 78′minutes
- 11IttenSubstituted forRoofeat 66′minutes
Match ends, Hamilton Academical 1, Rangers 1.
Second Half ends, Hamilton Academical 1, Rangers 1.
Goal! Hamilton Academical 1, Rangers 1. Ross Callachan (Hamilton Academical) right footed shot from the right side of the six yard box to the bottom left corner.
Attempt saved. Bruce Anderson (Hamilton Academical) header from the centre of the box is saved in the bottom right corner. Assisted by Ronan Hughes with a cross.
Foul by James Tavernier (Rangers).
Scott McMann (Hamilton Academical) wins a free kick in the defensive half.
Attempt blocked. James Tavernier (Rangers) right footed shot from the centre of the box is blocked. Assisted by Scott Wright.
Attempt missed. Marios Ogkmpoe (Hamilton Academical) header from the centre of the box misses to the left. Assisted by Lee Hodson with a cross.
Foul by Joe Aribo (Rangers).
Bruce Anderson (Hamilton Academical) wins a free kick in the defensive half.
Attempt missed. Kemar Roofe (Rangers) right footed shot from the left side of the box misses to the right. Assisted by Steven Davis.
Scott Wright (Rangers) wins a free kick in the attacking half.
Foul by Hakeem Odoffin (Hamilton Academical).
Attempt blocked. Hakeem Odoffin (Hamilton Academical) right footed shot from the centre of the box is blocked. Assisted by Scott McMann.
Attempt missed. Kemar Roofe (Rangers) header from the centre of the box misses to the right. Assisted by Borna Barisic with a cross.
Kemar Roofe (Rangers) wins a free kick on the right wing.
Foul by Aaron Martin (Hamilton Academical).
Own Goal by Brian Easton, Hamilton Academical. Hamilton Academical 0, Rangers 1.
Attempt blocked. Ryan Jack (Rangers) right footed shot from outside the box is blocked. Assisted by Ryan Kent.
Attempt blocked. Joe Aribo (Rangers) header from the centre of the box is blocked. Assisted by Borna Barisic with a cross.