About 3,000 demonstrators ignored scorching sun and heat Saturday to deliver a fiery, emotional rebuke to the Trump administration, massing on Logan Square to demand an end to the separation of migrant families and the jailing of their children.
The taste of salt was on every tongue — from sweat, from tears, from Gatorade chugged to ward off dehydration.
The frustration of a week of losses and setbacks for supporters of more generous immigration policies was palpable — as was a need to be heard, to make Philadelphia stand out amid hundreds of Day of Action demonstrations being held across the country.
"I grew up in the shadow of the Statue of Liberty in Brooklyn," said Nancy Cunningham, 71, of Center City, a member of the Granny Peace Brigade. "And I believe in what she stands for."
>>READ MORE: Philly's 'abolish ICE' protest — as it happened
Kandy Lippincott, 68, of Haddon Township, said she's been phoning government representatives and donating money to help immigrant causes.
"I don't know if it's doing any good," she said, "but I can be here."
A lone pro-Trump demonstrator, Howard Kaplan, 49, of Philadelphia, stood back from the crowd as he held up a big, red-white-and-blue sign that said, "God Bless Trump."
A man in a burgundy shirt approached Kaplan and tried to grab the sign out of his hands.
"You better be careful," the man warned Kaplan.
"You threatening me, man?" Kaplan asked.
The man walked away. Other pro-immigration demonstrators moved next to Kaplan. Police officers came close as well.
"This week has been a goofy, crazy week — I don't know that it will be a 'unique week,' " said Golnaz Fakhimi, an immigrant-rights attorney with the ACLU of Pennsylvania.
On Tuesday the Supreme Court handed Trump a huge victory, upholding his travel ban that targeted several Muslim-majority countries. On Wednesday, Justice Anthony Kennedy, key to affirming same-sex marriage and legal abortion, announced his retirement, offering Trump a chance to shape the court for decades.
That followed Attorney General Jeff Sessions' action last month, when he issued binding instruction to immigration judges that they could no longer grant asylum to most migrants who come here trying to escape domestic abuse or gang violence.
"The Supreme Court, we're in trouble. The American people are in trouble," said Anthony Novotny, 57, of Havertown, who carried a flag emblazoned, "Impeach Trump."
That wasn't the harshest sentiment of the day.
J.R. Raudabaugh, 55, of Philadelphia, held a fake bloody severed Trump head — a lifelike mask, painted red around the neck and face. He didn't think it extreme, even though comedian Kathy Griffin apologized for having been photographed with a similar prop.
Raudabaugh said the president does all sorts of terrible things but "Trump doesn't apologize."
The ACLU passed out paper fans. Others registered people to vote. Babies rode in pouches, doctors stood in lab coats, and seniors stepped cautiously over the uneven ground.
One man held a U.S. flag. Two others held a string of children's clothes.
They were Muslims, Christians, and atheists, the crowd mostly white but featuring strong Latin representation.
People initially lingered in the shade, but soon the growing numbers were pressed into open sun near the stage, set just east of the gold Aero Memorial, dedicated to aviators who died in World War I.
Long, loud chants of "Abolish ICE!" — a reference to U.S. Immigration and Customs Enforcement — echoed past tourists on their way to the Franklin Institute.
A person who gave her name as Sister Anita Revolution, 30, of West Philadelphia, held up what was perhaps the most Philadelphia sign at the rally: "The Only Good ICE Is Wudder Ice."
In cities across the nation, more than 700 "Families Belong Together" demonstrations were scheduled to take place Saturday.
The Philadelphia rally was titled "End Family Detention," centered on the Berks County lockup that holds mothers, fathers, and children awaiting asylum hearings or immigration court rulings. Some families have been held for more than a year.
Now immigration advocates worry that the Berks detention center — long vilified by critics as a "baby jail" that should be closed — may become the prototype for the Trump administration's promised expansion of beds and facilities in which to jail families.
"That is the model the Trump administration is trying to expand across the country," Miguel Andrade of the Juntos advocacy group told the crowd. "It's time to take that anger and do something!"
The Trump administration is calling for greater family detention, having abandoned its policy of separating migrant families at the southern border amid huge public outcry. Trump signed an executive order that he said would keep families together, although the government has been slow to reunite parents and children.
The trauma of those separations drove Anthony Nowak, 42, from his home in Pottstown to the rally. He brought his 7-year-old son, Gabriel.
"Anybody with kids should think this important," the father said. "What if it happened to them?"
As the rally wrapped up near 1 p.m., a speaker told the crowd that immigration protesters don't hate the police.
"Yes we do!" screamed about 15 people in the back, standing with the Workers World Party.
They chanted, "No good cops in a racist system!" trying to drown out the speaker, then joined about a hundred others, led by members of Refuse Fascism, on a march through the streets.
Arch Street was packed with cars when protesters snaked their way through. Some drivers beeped their horns in solidarity. Locals and tourists snapped photos as the marchers moved past the Reading Terminal Market, ending their journey outside the ICE office at Eighth and Cherry Streets.
There protesters taunted a line of police officers on bicycles, denounced ICE, and sang and danced in the street.