Powerful Hurricane Dorian whirled dangerously close to Charleston on Thursday, with 115 mph winds racing around its wide eye.
At times, it looked like Dorian's eye wall might cut into the Lowcountry, bringing the storm's worst winds ashore.
Then it tracked ever so slightly to the north.
But it still created a colossal mess.
At its height, the storm downed trees across the region and ripped power lines from the poles. Transformers exploded and homes and businesses went dark. Hundreds of thousands of people lost power.
It was yet another close call — after three straight years of close calls.
It was also a swirling reminder of our vulnerability and how a few miles, or even a few feet, can make all the difference.
100 miles from the eye
After decimating the Bahamas, Dorian had spun like a circular saw toward Florida's coast, at one point entering the books as the most powerful Atlantic hurricane in modern history.
But like Hurricane Matthew in 2016, Dorian churned 40 to 60 miles offshore, sparing Florida its wrath as it picked up speed toward Charleston.
By early Thursday, the diameter of its eye had expanded to 50 miles, as if dilated, and its winds held steady at 115 mph.
Under the cover of darkness, the storm's long curving bands arrived in waves, stripping leaves from trees and covering streets with small limbs.
Rising winds tore up awnings in downtown Charleston's Market area and transformers across the area exploded, lighting the sky an eerie blue. Heavy rain filled low spots downtown with a murky soup of fallen debris and trash.
At about 4 a.m., a terrible noise woke Melanie Warren and her husband Dax.
A neighbor's oak tree had crashed through the roof of their home on Chisholm Road on Johns Island, landing just 7 feet from their bed.
When Melanie opened her eyes, all she could see was dust and debris. Her husband screamed out her name.
“I don’t think I’d ever been afraid for my life before last night,” she said a few hours later.
She pointed out that had the tree fallen straight, it would have come down in the middle of their bed.
80 miles from the eye
The morning light revealed dark clouds the color of bruises. Rain bands pounded the area again and again. Trees bent under the weight of Dorian's winds and began to snap, taking power lines with them.
At midnight, only 6,000 customers had lost power.
By 7 a.m., that number was 160,000.
Sometime around then, Frank Peters and Cameron Holmes were sleeping in their two-story apartment on Rutledge Avenue downtown when they heard a loud thud.
They work several jobs, including ones with Charleston Pedicab, and had decided not to evacuate to help out however they could. After hearing the thud, they rushed downstairs and opened the door.
A massive rotting oak tree had crashed into their building, the apartment next door. They looked at the tree and then to their right: A second huge tree had fallen on a unit 20 yards away.
"The tree just missed my truck," Holmes said.
"We basically said, 'OK, the storm's here now,' " Peters added.
70 miles from the eye
Debbie Jaeger had made it through an anxious night watching the trees sway and dip around her home in West Ashley's Charlestowne Estates. And, by 9 a.m., she decided it was time to let her teacup poodle, Nikki, out for a few minutes.
Jaeger had calmed her nerves by watching birds take respite on her front porch, and Nikki had taken stuffed animals into the bedroom.
But about 10 minutes after they came back in, the winds picked up again, coming from the direction of the Ashley River. A tall oak in the front yard snapped about 30 feet up.
Jaeger watched it fall, avoiding her roof and narrowly missing power lines on Carterett Avenue.
Soon, another large tree was uprooted, dropping its canopy onto the front porch around the corner. She hadn’t been more frightened by a hurricane in years.
65 miles from the eye
As the storm grew closer, its inner band grew stronger. At about 10 a.m., a 73 mph gust shot through Charleston Harbor. Winds bent the tops of trees sideways.
In Union Heights, residents in the flood-prone neighborhood watched pools of water collect in the streets. Longtime resident Barbara Burgess lost her power around 10 a.m. Thursday morning, forcing her to listen to tunes from a portable radio. As the winds rose, she worried about the safety of utility workers.
Conditions deteriorated on the area's barrier islands.
Roger Rutledge, a Folly Beach resident of eight years, said he'd heard a few things hit his house over the evening. But "the wind was kicking" in the morning. A fallen tree was tangled in a power line by his house.
At one point, he checked on a friend’s condominium when something caught his eye: a white, powdery substance whipping around in the wind.
He wondered, could Dorian be dropping snow?
Instead, it was insulation blowing from a gaping hole in the siding of a neighboring building.
50 miles from the eye
By 11 a.m., the city of Charleston alone had closed 104 roads, some from flooding, others because of trees. The city's resilience officer, Mark Wilbert, reported 50 traffic light outages and 252 reports of tree, debris and property damage.
As noon approached, reports of high winds poured in to the National Weather Service: 66 mph on Sullivan's Island; 69 mph at Charleston International Airport; 59 mph in Mount Pleasant.
And 220,000 people had lost power across the Palmetto State.
45 miles from the eye
By noon the storm was as close as it would get to Charleston, and the winds whistled through the trees.
In Charleston's Market area, a downed power line sizzled in the street, throwing up sparks and blue smoke with every gust. A nearby transformer blew. Signs flew down Meeting Street and old trees in Hampton Park strained against the winds, not yet reaching their breaking point.
55 miles from the eye and increasing
As the afternoon wore on, the winds shifted direction, a sign that the storm was passing. Charleston had largely been spared.
Evidence of this could be found in the sea buoys off the coast: One on Fripp Island recorded winds more than 90 mph; another on Dewees Island registered 81 mph.
Hurricane Dorian left a mess of debris in its wake, but it wasn't a catastrophe.
It didn't pack the surge and rains that Hurricane Matthew had in 2016.
Or the 4-foot wall of water that Hurricane Irma sent through the area in 2017.
Or the unrelenting rain bombs that Hurricane Florence unleashed last year.
Instead, Hurricane Dorian left some storm-weary residents of the Lowcountry once again telling each other: "It could have been worse."
Sara Coello, Andrew Brown, Rickey Ciapha Dennis Jr., Gregory Yee and Mary Katherine Wildeman contributed to this report.