Swiss voters have narrowly backed proposals to reintroduce immigration quotas with the European Union.
While neutral Switzerland is not a member of the EU, its immigration policy is based on free movement of people to and from the EU, as well as allowing in a restricted number of non-EU citizens.
The vote, which comes 12 years after an agreement with the EU on free movement of people came into force, could hurt an economy dependent on foreign professionals by increasing red-tape and jeopardising bilateral accords.
In a nail-biting vote, 50.3 percent backed the so-called "Stop mass immigration" initiative, which also won the required majority approval in more than half of Swiss cantons or regions, Swiss television said.
The outcome obliges the government to make the initiative, spearheaded by the right-wing Swiss People's Party (SVP), into law.
It reflects growing concern among the Swiss population that immigrants are eroding the nation's distinctive Alpine culture and contributing to rising rents, crowded transport and more crime.
Opponents of the move say it could exacerbate a shortage of skilled workers in Switzerland, the home of Roche, Novartis, UBS, Nestle and other multinationals filled with foreign professionals.
"Explanatory and constructive talks with the EU are needed urgently," the Swiss Banking Association tweeted after the result.