Hurricane Michael has landed on a Florida beach town like the "mother of all bombs", almost wiping it off the map, officials say.

The storm smashed into the state's north-west coast near Mexico Beach on Wednesday with 155mph (250km/h) winds.

The hurricane, one of the most powerful in US history, has killed 16 people, with fears the toll will rise.

Rescuers "still haven't got to some of the hardest-hit areas", emergency management officials say.

Mexico Beach is yet to report any fatalities, but rescuers working there have yet to carry out a thorough search of the devastated area.

Meanwhile, more than 1m homes remain without power in Florida, Alabama, Georgia, Virginia and the Carolinas.

Michael, which fell just 2mph short of a top-level category five, ripped apart entire neighbourhoods before moving out to sea by Friday morning.

The hurricane's shrieking winds and wall of water swept beachfront homes off their foundations, snapped boats in two and knocked over 30-tonne freight rail cars like toys.

One weeping resident of Mexico Beach pictured on CNN struggled to even find her street, let alone her home.

Tom Bailey, the town's former mayor, told the New York Times: "The mother of all bombs doesn't do any more damage than this."

Some 285 people in the community - population 1,000 - defied a mandatory evacuation order and stayed behind to ride out the storm.

An insurance firm, Karen Clark & Company, estimated Michael caused about $8bn (£6bn) in damage.

Flash flooding affected the big North Carolina cities of Charlotte and Raleigh and parts of Virginia. Police said there were five suspected tornados in Virginia.

But it was Florida's Panhandle that bore the brunt of the tempest. Thousands of military, police and rescue teams are converging on the area.

US Army personnel have been using heavy equipment to clear away fallen trees so rescuers can reach any trapped residents.

Federal Emergency Management Agency (Fema) crews are using dogs, drones and GPS in the search.

Flooding destroyed 1,000 homes in the small town of Port St Joe, not far from Mexico Beach.

The number of people in emergency shelters was expected to reach 20,000 across five states by Friday, said the American Red Cross.

The 16 known storm-related deaths so far are: Three in North Carolina, one in Georgia, seven in Florida and five in Virginia.

In North Carolina, one motorist was killed when a tree fell on his car, while two others died when their car crashed into a tree felled by heavy winds.

Eleven-year-old Sarah Radney, who was visiting her grandparents in Seminole County, Georgia, died when a metal carport near their home was lifted by powerful winds and slammed through their roof.

In Virginia, police said four of the deaths were due to drowning - including one man who drowned when his vehicle was caught in flash floods in Pittsylvania County.

The waters were too turbulent for rescuers to reach him, officials say.

Firefighter Lt Brad Clark died when a truck hit his fire engine on a rain-slicked road at the scene of a crash in Hanover County, Virginia, on Thursday night.