CHAPTER TWENTY-NINE
ROWAN
The invitation showed up like it didn’t care if I answered.
Group chat. Someone’s name I barely remembered from practice staff.
“NYC welcome party. Tonight. Rooftop. Come through.”
Serena didn’t even hesitate.
“We’re going,” she said.
“I didn’t say yes.”
“You didn’t say no.”
That was her logic system.
And annoyingly, it worked.
By the time we got ready, the hotel room already felt different.
Not quieter.
Just charged.
Like something was about to happen and nobody had agreed on what it was yet.
Serena stood in front of the mirror adjusting her top. “This is going to be full chaos, by the way.”
“That’s the point of a party,” I said.
“No,” she replied. “This is the kind where people pretend it’s not chaos until it is.”
I didn’t answer that.
Because I already knew she was right.
My phone buzzed on the bed.
A message.
Mason.
you going
Short.
Like everything he did.
I stared at it longer than I meant to.
Typed:
why
Three dots.
Then:
just asking
I exhaled slightly through my nose.
That wasn’t just asking.
That was tracking.
I typed back:
yes
No extra words.
No explanation.
His reply came fast.
figured
And that should’ve ended it.
It didn’t.
MASON
I shouldn’t have asked.
That was the first thought.
Because I already knew the answer before I sent it.
Jace was lying on his bed across the room, scrolling.
“You’re going out?” he asked.
“Yeah.”
“To the party?”
“Yeah.”
He looked at me properly now.
“You hate parties.”
“I don’t hate them.”
“You absolutely hate them.”
I didn’t answer.
Because he was right.
I just didn’t want to stay in the room.
Not tonight.
Not with the way things had been sitting between me and Rowan without moving forward or backward.
That was worse than argument.
It was awareness.
Constant.
Jace threw a shirt at me. “Don’t look like you’re going to a funeral.”
“I’m not.”
“You look like you’re going to see someone you don’t want to see.”
That hit closer than it should’ve.
I didn’t respond.
I left anyway.
ROWAN
The rooftop was louder than expected.
Not just music.
People.
Movement.
Energy that didn’t belong to any one thing.
It felt like the city had been poured into one space and told to behave.
It wasn’t behaving.
Serena immediately disappeared into the crowd.
“Don’t lose me!” she called over her shoulder.
“I wasn’t planning to.”
I lost her in under a minute.
That was expected.
I stayed near the edge for a moment.
Just watching.
Not participating yet.
That was when I saw him.
Mason.
Not immediately close.
But visible.
Always visible in a way that didn’t make sense in crowds like this.
Jace was beside him, already laughing at something.
Niko nearby.
His group.
His space.
He hadn’t seen me yet.
Or maybe he had.
And just hadn’t reacted.
That second option stayed with me longer than it should’ve.
MASON
She was already there.
Of course she was.
Edge of the rooftop.
Not in the crowd.
Not outside it.
Somewhere in between like she always was when she didn’t want to commit to the space.
Serena was nowhere near her.
Caleb wasn’t here yet either.
That detail shouldn’t have mattered.
It did anyway.
Jace followed my gaze instantly.
“Oh,” he said. “There it is.”
“What.”
“You two are doing that thing again.”
“I’m not doing anything.”
“You’re both not doing anything in a very coordinated way.”
I didn’t answer.
Because Rowan looked up.
And for a second—
we saw each other clearly through everything else.
Then she looked away first.
That mattered more than I wanted it to.
ROWAN
I didn’t go toward him.
That was important.
I stayed where I was.
Because moving felt like admitting something I didn’t have a name for yet.
Serena reappeared briefly with two drinks.
“You look like you’re calculating something,” she said.
“I’m not.”
“You are.”
I took the drink.
Didn’t argue.
Because she wasn’t wrong.
Across the rooftop, Mason shifted slightly.
Not moving toward anyone.
Just repositioning.
Like he was aware of everything in the room at once.
That was starting to feel familiar.
Too familiar.
MASON
The party didn’t feel like noise anymore.
It felt like layers.
Crowd.
Music.
Movement.
And then her.
Always her.
Jace leaned closer. “You’re not even pretending.”
“I am pretending.”
“No you’re not.”
I didn’t argue.
Because Rowan started moving.
Not toward me.
But through the crowd.
Slow.
Not searching.
Just navigating.
And somehow that felt worse than if she had been looking for me.
Because it meant she didn’t need to.
ROWAN
I didn’t mean to end up closer to him.
That was the truth.
Crowds just… shifted.
People moved.
Space changed.
And suddenly I was near the center instead of the edge.
Serena was somewhere behind me now.
Lost in the noise.
Mason was closer too.
Not directly.
But enough that I could feel the difference.
He wasn’t watching me.
But I could tell he was aware of my direction.
That was the problem with him.
He noticed before things happened.
Not after.
MASON
She moved again.
Closer this time.
Not intentional.
But not avoidable either.
That was the worst kind.
Jace noticed immediately.
“You’re both insane,” he muttered.
“I didn’t do anything.”
“That’s exactly it.”
Rowan passed near the bar area.
Not stopping.
Just moving through.
And for half a second—
the space between us tightened without either of us choosing it.
Not contact.
Not even near contact.
Just proximity that felt like it had a decision behind it.
She didn’t look at me.
Not yet.
But I knew she knew I was there.
That was enough.
For now.