There have been mass marches, letter-writing campaigns, behind-the-scenes lobbying and social media onslaughts.

This time last year, Brexit appeared inevitable. But as a result of the People’s Vote campaign, not so anymore.

Labour MP Chuka Umunna deserves huge credit for bringing together a collection of pro-EU groups under one roof, co-ordinating a largely united campaign – with help from other organisations with the same aim.

Even the phrase "People’s Vote" has replaced any talk of a "second EU referendum" in a move that the SNP spin operation could only dream of. It is, and always will be, "indyref2", not "ScotRef", however hard Nicola Sturgeon tries.

A minor declaration of interest: I have helped provide occasional public relations services for some of the pro-EU campaigns, but at the heart of the battle is a huge operation run by dedicated staff and volunteers who are passionate about stopping Brexit.

With the official opposition party hopelessly divided on Brexit, it is the People’s Vote campaign which has provided the real opposition to Theresa May.

The campaign has shifted public opinion. Yesterday, a new opinion poll for Best for Britain revealed that a huge 65 per cent of voters support a final say on the Brexit deal, including – significantly – 52 per cent of those who voted Leave in 2016.

It’s a turning point in the fight. There is majority support for a People’s Vote outside Parliament, and MPs from all parties recognise this.

But it’s not the 65 million people in the UK who will decide if it happens or not – it’s the 650 MPs in the House of Commons.

After all the marches and all the campaigning, all that matters now as we enter the final straight is parliamentary arithmetic.

There have been those who have backed a People’s Vote from the start – some moderate Remainer Labour MPs; the Liberal Democrats; a handful of Tories.

In the early days the possibility of reaching a parliamentary majority was a distant dream. It’s been a marathon not a sprint, and slowly but surely the campaign has won the backing of more MPs.

On the Labour benches, support came from those who initially backed a Brexit with single market and customs union membership. When it became clear that this simply wasn’t going to happen, they swung behind a People’s Vote.

Jeremy Corbyn remains a eurosceptic who is content to facilitate Brexit, but even he has been forced to soften his view under pressure from Keir Starmer and others. The leadership would still prefer a General Election, but it is now party policy to support the option of a People’s Vote.

And that’s crucial – because there isn’t going to be a General Election.

It’s fanciful to think otherwise, because of the Fixed Term Parliament Act. Even if Theresa May’s deal is defeated in the Commons, the Tories won’t agree to an election.

Even if Theresa May is challenged as Tory leader, her MPs won’t agree to an election.

Even if Britain gets a new Prime Minister as a result of the Brexit impasse, the Tories won’t agree to an election.

Labour’s strategy is merely a campaigning tool.

Any deal that May brings forward will inevitably not meet the party’s six tests, and Labour MPs will vote against it. When it then becomes obvious there won’t be a General Election, Westminster insiders anticipate the party will swing behind a People’s Vote.

There are a small group of "Lexiteers" who continue to believe the EU is a capitalist cabal, and would vote against another referendum - but they are tiny in number.

For most Labour MPs, it is a three-stage process: reject the deal; fail to secure an election; support a People’s Vote.

SNP MPs were highly sceptical about a People’s Vote at first, save for a few supportive voices like Joanna Cherry. There were many in the group who feared the precedent it would set for any future independence referendum, which remains the priority for Nationalist MPs. Some, like Pete Wishart, still hold to that viewpoint.

But Nicola Sturgeon was persuaded to back a People’s Vote, and was subsequently hailed as a hero at the huge London march last month.

The assumption is that the 35 SNP MPs will still vote for a People’s Vote when the opportunity comes, save for perhaps the likes of Wishart and Angus MacNeil.

So with Nationalist support largely guaranteed, the main battleground is now for Tory votes.

When the Commons votes on the EU Withdrawal Agreement, normal practice dictates MPs will debate amendments before voting on a substantive motion.

An opposition amendment will be taken, as well as a cross-party one. It’s likely the cross-party one will include a People’s Vote and will be lodged by a backbench Tory MP.

This will be the crucial moment, when the parliamentary arithmetic comes into play.

For a People’s Vote to pass in the Commons, it is likely to need the support of around 25 Tory MPs.

There aren’t that many who publicly support it – yet. But the number is steadily growing.

Jo Johnson came on board last week when he quit as a minister and said the UK must "pause and reflect" before doing something "irrevocably stupid".

And there are more Tory MPs who privately back it, yet fear the reaction of their local Conservative Associations: as many as 20, according to one Westminster insider.

So there is every possibility the magic number will be reached.

And Theresa May knows this. That’s why there are reports of underhand tactics in play for a vote to be held on the substantive motion first, rendering any subsequent amendments irrelevant.

Depending on how the Speaker reacts, that could avoid parliament having its say on a People’s Vote.

The Prime Minister is still unlikely to get her deal through, not least because of the Northern Ireland problem. The DUP’s position is clear – there cannot be a different regulatory regime to the rest of the UK if the Irish backstop comes into force.

The stage is therefore set for yet more protracted negotiations as the clock counts down to March 31.

It will give Theresa May more time to hammer out a deal – or some kind of fudge. But, crucially, it will also give the People’s Vote campaign more time.

And when March comes around, the parliamentary arithmetic may very well be in their favour.