The campus never prepared quietly.
Even when the mood was heavy, even when people were tired, even when the sky kept threatening rain, Campus 2 still knew how to build a stage. By morning, the main lawn had been transformed again. Booth frames rose like skeletons. Strings of lights were wrapped around poles. Colorful banners fluttered even when there was no wind, because students kept walking past them and disturbing the air.
Music rehearsals echoed from the far side of the field. Someone tested a microphone and it screeched sharply, making a group of freshmen shriek and laugh.
XH watched it all from the corridor window before class, feeling the strange disconnect between what people saw and what he carried inside.
From the outside, it looked like a festival was coming.
From the inside, it felt like something was ending.
His phone buzzed.
JP: TODAY WE TRAIN FOR FESTIVAL WAR. HEALTH TRACK MUST DOMINATE.TZ: It's a water festival, not a civil war.JP: Same thing. We just fight wet.
XH didn't reply.
NS had not typed anything since last night.
That alone told XH everything.
He turned away from the window and headed toward the lecture hall.
Kitty arrived early.
She always did, but today it felt intentional. She sat near the middle, notebook open, highlighter uncapped, posture calm. The kind of calm that made people assume she was unaffected.
XH knew better.
June arrived two minutes before class.
She did not look tired. She looked polished, like she had decided that if her heart was messy, her appearance would not be.
Cherry walked beside her, still smirking like she was waiting for fireworks.
June took her seat without looking at Kitty.
Kitty did not look at June.
That silence between them was new, and everyone could feel it.
Mr. Kim entered and began teaching, but half the room was watching the triangle like it was an extra lesson.
XH tried to focus.
He tried to write notes.
But his mind kept drifting back to last night.
Kitty's voice.
Honesty then.
June's voice.
I want clarity.
He felt like someone had placed a deadline on his chest.
After class, the health track students were called to an emergency meeting.
Not an academic meeting. Not a lecture.
A festival meeting.
JP was already clapping his hands together in excitement.
TZ groaned. "I can't believe we're doing this."
JP grinned. "You're going to love it."
NS walked quietly beside XH, eyes forward, expression controlled. He looked like he was present physically but somewhere else mentally.
XH wanted to ask if he was okay.
He didn't.
He was afraid of the answer.
The meeting took place in a classroom with windows facing the festival lawn. Students sat in messy clusters. Someone had brought snacks. Someone else had brought a portable speaker and was playing music too loud until a class rep threatened to throw it out the window.
The head of the student committee stood at the front.
"This year," she announced, "we're doing majors versus majors for the Water Festival competition."
A cheer rose.
She raised her hand. "Rules are simple. Points for booth performance, points for participation, points for games, points for team spirit."
JP shouted, "Health track wins automatically."
Someone from the back shouted, "Delusional."
The committee head sighed. "There will also be a major raffle. And the winning major gets priority for the next university sponsored event."
That last sentence made the room buzz.
Priority mattered.
Priority meant access.
Access meant networking, scholarships, deals.
XH felt his throat tighten.
A prize never stayed small.
The committee head continued. "Each major needs two captains. One male, one female. They'll organize teams, settle disputes, coordinate schedules."
Students began whispering.
Cherry's voice cut through sharply. "June should be female captain."
Jihye nodded enthusiastically. "June is perfect."
Kitty stayed quiet.
NC glanced at Kitty, then looked away.
June's posture stiffened slightly. She didn't smile, but XH could tell she liked the suggestion.
JP stood up dramatically. "XH should be male captain."
TZ shouted, "Why does this feel like a trap?"
JP grinned. "Because life is a trap, bro."
The committee head nodded. "Any objections?"
Silence.
Then someone from the back spoke.
Kitty's voice.
Calm. Clear.
"I object."
The room froze.
Even June turned slightly, eyes widening.
Kitty stood slowly, expression steady.
"I'm not objecting to XH being captain," Kitty said. "I'm objecting to June being captain."
Gasps and laughter mixed.
Cherry smirked like she was finally being fed.
June's jaw tightened. "Excuse me?"
Kitty's voice stayed even. "Captain position requires patience. It requires neutrality. It requires not letting pride turn into conflict."
June's eyes flashed. "Are you calling me prideful?"
Kitty met her gaze. "Yes."
The room went silent.
XH's chest tightened.
He wanted to stop it, but he couldn't. This was the confrontation arc beginning whether he liked it or not.
June stood slowly, controlled anger in her posture. "And you think you're neutral?"
Kitty smiled faintly. "No. But I'm honest about it."
Cherry's laugh was low. "This is better than class."
NC whispered, "Cherry, shut up."
June's voice sharpened. "You're doing this because you don't want me near him."
Kitty's eyes stayed calm, but something bright flickered in them. "And you want the captain role because you want to stand next to him publicly."
June's cheeks flushed.
The room erupted in whispers.
XH's throat tightened so hard he felt that subtle resistance in his chest again. He breathed slowly and forced it down.
The committee head looked horrified. "Okay, okay. We are not doing this like reality TV."
JP raised his hand. "But it is entertaining."
TZ slapped JP's arm. "Shut up."
The committee head cleared her throat. "We will vote. Two female candidates. June or Kitty."
The room buzzed again.
Kitty stayed standing.
June stayed standing.
They looked at each other like rivals, but something deeper lived beneath it.
They weren't rivals because of the festival.
They were rivals because of what they wanted.
The voting took place quickly.
Hands raised.
Counted.
Whispers.
Then the result.
"June," the committee head announced, "wins female captain."
Cheers broke out, especially from Cherry's side.
June exhaled slowly, satisfaction flickering in her eyes.
Kitty nodded once, expression unreadable, then sat down.
XH felt something twist.
Not jealousy.
Not anger.
Guilt.
Because he knew Kitty had stepped into that moment not to win, but to mark the truth.
After the meeting, students spilled out into the hallway.
June was surrounded immediately. Jihye hugged her. Cherry leaned close, whispering like she was feeding June confidence.
Kitty walked out quietly with NC.
XH followed, not chasing, not rushing, just moving toward her because he couldn't stand the distance.
Kitty noticed him beside her.
She didn't stop walking.
"You shouldn't," she said quietly.
XH swallowed. "I didn't want to let you walk away alone."
Kitty's smile was faint. "I'm always alone in this story."
The words hit hard.
XH's chest tightened again.
NC glanced at XH, then at Kitty, and quietly excused herself. "I'll see you later," she said, giving Kitty a look that said, don't fold.
Kitty and XH walked toward the stairwell.
The hallway was quieter here. Less eyes. Less noise.
Kitty spoke softly. "You know why I objected."
XH nodded. "Yes."
Kitty's voice stayed calm, but her eyes glimmered. "I didn't do it to humiliate her."
XH swallowed. "I know."
Kitty stopped walking.
XH stopped too.
Kitty turned toward him. "Then why does it feel like you're still standing in the middle like you're waiting for the wind to decide?"
XH's throat tightened.
He whispered, "Because I'm scared."
Kitty's eyes softened slightly. "Of hurting someone?"
XH nodded.
Kitty's voice lowered. "You're hurting both by delaying. You heard that already."
XH swallowed. "I'm trying to be brave."
Kitty stared at him for a long moment.
Then she said something that felt like a quiet threat, but wasn't.
It was a boundary.
"Bravery is not a feeling," Kitty whispered. "It's an action."
XH's chest tightened.
Kitty continued, "And if you keep choosing silence, then silence will choose for you."
Rain began again outside.
Soft at first.
XH glanced toward the window.
Kitty's gaze followed.
She laughed softly, bitter and amused. "Of course."
XH whispered, "Kitty…"
Kitty stepped back slightly. "Don't apologize. Not today."
XH's throat tightened. "What do you want?"
Kitty's eyes were bright now, controlled but close to breaking.
"I want you to stop letting other people write the story," Kitty said.
Then she turned and walked away before he could answer.
XH stood in the stairwell, listening to her footsteps fade.
Outside, the festival lawn glittered with wet light.
June's laughter echoed faintly from the hallway.
Kitty's silence echoed louder.
And the Water Festival, now officially beginning its final build, felt less like celebration.
More like a stage where everyone would be forced to reveal what they had been hiding.
