The music inside Westview High’s gymnasium was loud enough to shake the rafters.
Bass pulsed through the floor beneath Chloe Bennett’s heels, the rhythm vibrating up through her legs as colored lights swept across the crowd of students dancing under the basketball hoops. Glitter, laughter, the sharp pop of soda cans opening—everything about the annual Westview Fall Bash screamed celebration.
Chloe should have been having the best night of her life.
Instead, she stood near the bleachers, fingers tightening around the small velvet box hidden in the pocket of her dress.
The box was meant for Tristan.
Her heart fluttered just thinking about him.
Tristan Hale—Westview’s golden boy. Basketball captain. The guy every girl secretly crushed on but who, somehow, had chosen her.
She could still remember the first time he’d kissed her after a game, sweat-damp hair and breathless laughter under the stadium lights. He’d looked at her like she was the only person in the world.
Tonight was their one-year anniversary.
And Chloe had planned something special.
Her gaze swept across the gym again.
No Tristan.
She frowned.
He’d texted earlier saying he’d be here.
“Looking for Prince Charming?”
The teasing voice came from beside her.
Luna Garcia slid into view, her long dark hair falling over one shoulder, lips curved in a soft smile. Under the flashing lights she looked effortlessly beautiful—delicate features, big brown eyes, the kind of girl people trusted instantly.
Chloe relaxed a little.
“Have you seen Tristan?” she asked.
Luna tilted her head thoughtfully.
“I thought he was with you.”
Chloe shook her head.
“No. I haven’t seen him since the game ended.”
“Hmm.” Luna glanced toward the gym doors. “Maybe he stepped outside. The place is getting kind of hot.”
Chloe laughed faintly. “You’re probably right.”
Her best friend gave her a reassuring squeeze on the arm.
“If you find him, tell him he owes me a soda,” Luna said lightly before drifting back into the crowd.
Chloe watched her go, then glanced at the velvet box again.
Okay.
Maybe Tristan really had stepped out.
She slipped past the dancing crowd, weaving between groups of students until she reached the double doors at the back of the gym.
Cool night air washed over her as she stepped outside.
The sounds of the party faded instantly behind her, replaced by distant crickets and the rustling of leaves.
Westview High’s campus looked almost eerie at night.
The parking lot lights cast pale halos over rows of cars, while the wooded area behind the gym lay mostly in shadow.
Chloe pulled her phone from her clutch and texted Tristan.
Where are you?
Three dots didn’t appear.
She frowned again.
Then she noticed something.
Soft voices.
Coming from the small grove of trees behind the gym.
Her pulse quickened.
Maybe Tristan was out there with friends.
Clutching the velvet box tighter, Chloe stepped off the pavement and walked toward the trees.
The deeper she moved into the shadows, the clearer the voices became.
A male voice.
Low. Frustrated.
“…Luna, you said you wouldn’t bring this up tonight.”
Chloe stopped cold.
Her stomach dropped.
She knew that voice.
Tristan.
And the girl answering him—
“…Relax, Tristan. You’re acting like someone might hear you.”
Luna.
Chloe’s heart slammed against her ribs.
No.
No, that didn’t make sense.
She took another step forward, pushing past a low branch—
—and froze.
About twenty feet ahead, beneath the dim glow of a campus light, Tristan Hale had Luna Garcia pressed gently against the trunk of a tree.
His hands were on her waist.
Her arms were wrapped around his neck.
And they were kissing.
Not a quick mistake.
Not a confused moment.
A slow, deliberate kiss.
Chloe’s entire world seemed to tilt.
Her breath caught in her throat.
For a moment she couldn’t move.
Couldn’t think.
Couldn’t even blink.
Then something else registered.
The necklace around Luna’s throat.
A delicate silver chain.
With a tiny crescent-shaped pendant.
Chloe’s necklace.
The one Tristan had given her on her birthday.
Her fingers curled into fists.
The velvet box slipped from her grip, landing silently in the grass.
Every instinct screamed at her to storm forward—to rip Luna away from him, to demand answers, to scream.
But Chloe didn’t move.
Because something felt… wrong.
Tristan suddenly pulled back from the kiss.
His expression wasn’t dreamy.
It was tense.
“Luna,” he said sharply. “Stop.”
Luna looked amused.
“What? You weren’t complaining a second ago.”
“That’s not the point.”
Tristan ran a hand through his hair, pacing a few steps away from her.
“You said this would stay between us.”
“Oh, it is,” Luna replied lightly.
Then she reached into the pocket of her jacket.
And pulled out a photograph.
Even from where Chloe stood, hidden behind the trees, she could see that it was blurry.
But she could make out enough.
A rooftop.
A figure near the edge.
Another person grabbing their arm.
Tristan’s shoulders went rigid.
“Put that away,” he hissed.
Luna’s smile turned sharp.
“Why? Afraid someone might see?”
“Luna—”
“Relax,” she cut in, waving the photo slightly. “I’m just reminding you of our situation.”
Chloe’s mind spun.
Situation?
“What do you want from me?” Tristan demanded.
Luna stepped closer to him, lowering her voice.
“What I’ve always wanted.”
“And that is?”
“You.”
The word hung in the air.
Tristan looked like he’d been slapped.
“This isn’t funny,” he said.
“Oh, I’m not joking.” Luna’s voice softened, almost sweet. “You’re going to keep playing the perfect boyfriend to Chloe… while giving me what I want on the side.”
“That’s insane.”
“Is it?”
She held up the photograph again.
Tristan’s jaw tightened.
“You wouldn’t.”
“Try me.”
For a moment neither of them spoke.
The silence felt suffocating.
Then Tristan shoved his hands into his jacket pockets, shaking his head.
“You’re unbelievable.”
“Yet here you are.”
As he moved, something slipped from his pocket.