As he recalls the events of July 14, 2016, Frederic Colombo's voice begins to crack. His eyes start to well up. He's remembering the day his city's heart was broken.
That was the day, on a picturesque summer evening in Nice on the French Riviera, a scene of joy and revelry turned into one of unimaginable horrors.
While much of the city was celebrating Bastille Day -- France's national holiday -- a terrorist climbed into a 19-tonne trick and began hurtling down the Promenade des Anglais, Nice's most famous and popular street.
"The attack was absolutely terrible," Nice resident Colombo tells CNN Sport. "It was like being hit in your very heart -- at home. It's like you've been hit in the heart of the city -- it was the heart of the city."
The images from that day -- the 86 victims, many of them children, lying motionless in the street -- are burned into the memories of those who witnessed the tragic event and everyone in the city.
But in the atrocity's aftermath, in the city's most difficult hour, its football club OGC Nice stood side-by-side with a beleaguered community.
"The club helped a lot after the attacks," says lifelong Nice supporter Colombo. "The club is very close to each citizen of Nice, they were close to the supporters.
"Seeing so many young children, women, men being run over by a truck was one of the saddest things we've ever experienced."
'Special moment'
Barely a month after the attack, the club began its Ligue 1 campaign with a home match against Rennes.
To honor those who lost their lives and to raise money for the victims' families, the players wore special shirts bearing the names of every victim in the shape of a heart.
Fans, both of the home and visiting team, were asked to dress in white, while a tribute was flashed onto the big screen in the 85th minute -- a tradition which continued throughout the season.
Sadly, however, the tribute now takes place in the 86th minute of every match after another of the victims died in hospital six weeks after the attack.
Colombo describes the occasion as a "special moment" for those in the stadium and for everyone associated with the city.
"First game of the season, the atmosphere was unreal," Colombo recalls with a proud, defiant smile. "35,000 people in the stadium in the memory of the victims.
"It was beyond football. It was more than just a football game. Just a month after the attack and we were still in shock. We hoped it would never happen and it did -- in Germany, France and in London.
"The die-hard supporters were screaming 'ISIS, ISIS f**k you.' It was a way for them to show the anger that they felt and to show the terrorists that we're not afraid. We dare to shout swear words at them that we're not afraid."
In total, the club raised $130,000 for the victims' charity after selling the commemorative shirts at auction.
OGC Nice president Jean-Pierre Rivère was a strong driving force behind the club's decision to try and help the city following the attack.
Nice is a small city and, with a population of less than 350,000, it was impossible for anyone not to feel affected by the tragedy.
"We all live in Nice," Rivere tells CNN. "We have all been impacted directly or indirectly and we cannot imagine that this could happen in a place like that at this moment, with children and women, it's terrible.
"When it happens to your home, the club is an integral part of the whole city. Everything that affects the city, affects the club and vice versa.
"There were physical victims but also victims in the head and in the heart. People saw images that they shouldn't have seen, including children."
Providing joy in the sadness
Nice won their opening-day clash against Rennes and they continued to win as the season went on.
By the end, Nice finished third -- behind only Paris Saint-Germanin and Monaco -- recording the club's best Ligue 1 finish since 1975-76 and also ensuring qualification for the Champions League qualifying stages.
Rivere believes his players found solidarity with the supporters and people of Nice on the pitch. He is proud that the club, in the city's darkest time, was able to offer a glimmer of hope.
"Football is short-lived," Rivere says. "It gave us great strength at our first match just a month after the event. There is a unity in the public because everyone was shocked by it.
"I think that during the whole year, we have been able to give smiles and joy to people and pride in our city."
After the attack a charity Promenade des Anges (Promenade of Angels) was set up to aid the victims and their families and the organization's Emilie Petitjean says the football club played an invaluable role over the last year.
"OGC Nice has brought a lot to our victims," she tells CNN. "Creating the heart for the early season game and by releasing balloons representing the 86 victims.
"The applause in every home game at the 86th minute brought us comfort and showed us an infallible support and a permanent thought for all our victims.
"The auction of these jerseys enabled our association to develop and take off in order to structure itself. Even those who were not necessarily a fan of football began to follow the club and its evolution in the championship!"
Anniversary
This Friday, on the first anniversary of the attack, the charity will be involved in a day of remembrance in its continuing support of the victims it works for as well as the city.
The day, Petitjean says, will start with an inter-religious service and end with a concert on the Promenade des Anglais, a minute's silence and the releasing of 86 bright balloons. French president Emmanuel Macron is expected to visit the city on the first anniversary of the attack.
Brazilian defender Dante signed for OGC Nice just a month after the attack.
Arriving when emotions were at their rawest and the images still etched deeply into the minds of Nice's citizens, he is painfully aware that the memories from that day will not fade for the city's population.
Dante became an integral part of the team that went on to finish third and hopes that the accomplishments of the club were able to give some joy to a mourning city.
"Football can play a small role because we're not going to bring back people that passed away," he says. "Despite the happiness we tried to give this season, it's difficult to forget everything.
"We can also help a little bit with the way we play on the field, bringing joy to supporters or bringing joy to people who lost their families. We've tried to bring more happiness to the city."
He may have only lived in Nice for a year, but in his short time at the club Dante has come to know the city and its community well.
"We can't erase what happened," he says. "But the city of Nice is more beautiful than this attack."