“You’ve taught me a lot—mainly about what I don’t want to be.” I glance at Claire, who shifts uncomfortably beside him. “You taught me how easy it is to lose yourself trying to please someone who was never going to be satisfied.”

Kyle’s face darkens. “You don’t know what you’re—”

“I’m not finished.” My index finger rises, pointing directly at Kyle’s chest, not touching him, but close enough that he actually leans back. For once, I’m not the one shrinking away, making myself smaller to accommodate someone else’s ego. “Because I let you define me, I forgot how to love myself. I was so desperate for someone else to fill that space, I let others take the lead.”

Asher’s warmth radiates behind me. My chin tilts up. For once, I’m not borrowing someone else’s courage. And knowing he’s there makes it easier to own it.

“Maybe I’ll never be enough for you. Maybe I’ll never be enough for some people. But that won’t stop me. Not from doing what I love. Not from living the life I want. Not from loving the people who matter. I decide who I am.”

The gym is so quiet I can hear the hum of the air conditioning. Kyle’s face has gone from smug to stunned to furious.

“I know why you’re trying to tear my business down. Why you want to make me doubt myself.” I take a step back, finding Asher’s hand. His fingers intertwine with mine immediately, warm and steady against my palm. “But I’m not announcing it to everyone here because I refuse to be like you. Still, I suggest you stop your little sabotage game before it backfires.”

Asher turns to me, his eyes shining with something that makes my heart skip. Something that’s warmer, deeper.

Pride.

He leans forward and kisses my forehead, so gently, right in front of everyone. His lips linger for just a moment, warm against my skin, and I swear the time stops.

“That’s my girl.”

Heat floods my cheeks as I hear Mrs. Patterson’s delighted gasp from somewhere to my left. Harold from the coffee shop is elbowing Betty so hard she nearly topples over, both of them wearing identical “I-told-you-so” grins.

My brother still has his arm around Elaine’s waist, like he’s afraid she might launch herself at Kyle any minute. But surprisingly, Elaine seems almost comfortable there, grinning like she’s a proud parent watching her kid win the spelling bee. Conner catches my eye and gives me a subtle nod.

Claire tugs at Kyle’s sleeve, but he shakes her off. “You’re just—”

“Woof!”

Asher’s mom bustles through the door, holding a squirming Mochi in her arms. The puppy’s ears perk up as he spots me, then swivels his head toward Kyle. His little body goes rigid.

“I found this little troublemaker wanting to join the party here,” Margaret announces, oblivious to the tension. “I thought he might—”

Mochi erupts into a storm of high-pitched barking, lunging forward in Margaret’s arms. His tiny body vibrates with each yap, aimed directly at Kyle.

“What the—” Kyle steps back, his face twisted in disgust.

“Mochi!” I gasp, half-mortified, half-trying not to laugh. Our rescue puppy might be small enough to fit in a purse, but apparently, he’s got the protective instincts of a Rottweiler. And the uncanny ability to detect jerks from twenty paces.

Margaret struggles to contain our furry little defender. “My goodness, he’s never done this before!”

“Dogs can sense character,” Betty calls out, earning a ripple of chuckles.

Mochi’s barking intensifies, his little paws paddling the air as he strains toward Kyle. Margaret’s grip slips, and in a blur of brown fur, Mochi leaps free. He lands on the floor with surprising grace before charging straight at Kyle and Claire.

I should feel sorry that my dog is causing a scene in the middle of Asher’s professional event, but honestly? There’s something deeply satisfying about watching my ex get barked at by a puppy who barely weighs ten pounds. I bite my lip to keep from smiling as Mochi continues his tiny, righteous tirade.

“Control that mutt!” Kyle demands, backing away. But Mochi has already set his sights on Claire, who’s tottering backward on her stilettos like she’s playing an impromptu game of Twister.

“Oh my goodness, it’s going to bite me!” Claire wails, clutching her designer purse to her chest like it’s a shield.

Margaret darts between guests, arms outstretched like she’s playing some geriatric version of tag. “I’m so sorry! He’s normally such a good boy!” Her silver curls bounce with each lunge as Mochi expertly dodges her grasp.

Betty, meanwhile, has abandoned all pretense of helping and is openly cackling from beside the punch bowl. “Run for your life, honey!” she calls to Claire, raising her glass in a mock toast.

The portrait stand wobbles dangerously as Harold tries to steady it with one hand while filming the chaos on his phone with the other. “This is going straight to the town newsletter!” he announces gleefully.

Mochi, drunk on freedom and justice, zigzags between startled guests who’ve formed an impromptu circle around the spectacle. Someone knocks into the refreshment table, sending napkins fluttering through the air like confetti.