Chapter 17
SEVENTEEN
RIVER
I don’t even make it past my first sip of coffee before the walls start crumbling.
A ripple of whispers spreads across the open floor like the cold bite of a digital breeze. Nervous laughter. Awkward coughs. A flash of movement as someone slams their laptop closed a little too fast.
Then Tasha sprints down the hallway, eyes wide.
“River. You need to come with me.”
My stomach drops and I grab my pack of Misfit gum and pop a stick into my mouth like a security blanket.
I follow her through the bullpen, past a few coworkers who won’t meet my gaze, into the security conference room—where two of the senior engineers are already inside, along with Dan from PR and the lead from compliance.
There, on the projection screen, is me.
Naked.
Or at least, it’s supposed to be me.
The image is crudely photoshopped, just real enough to make your breath hitch. My face. My blue hair. My glasses. But the rest is manufactured—airbrushed skin, cartoonish curves, a suggestive pose I’ve never made in my life.
And across the bottom?
“Cathedral Welcomes You.”
Our new splash screen.
A scream builds in my chest, but I don’t let it out.
Instead, I sit. Slowly. Like if I move too fast, I’ll shatter.
“It was only up for twelve minutes,” Dan says. “Before we pulled the servers offline.”
“Too late,” mutters one of the engineers. “It hit Reddit. Already has its own thread.”
Tasha’s hand finds my shoulder.
“River, I—”
I stand. “I need to go.” I back away slowly. This is mortifying.
“River—”
“I need to leave.”
I don’t wait for approval. I grab my bag, eyes hot and throat tight, and I’m halfway down the elevator when someone calls my name.
“River—wait!”
Gage.
I don’t stop until I’m outside.
Then his hand is on my arm, gently pulling me to a halt, and his voice is low and frantic. “I just saw it. I’m so sorry. Are you okay?”
No.
No, I’m not.
But I look up at him, and something in his eyes—something unflinchingly steady—makes my chest squeeze.
“I can’t go home,” I whisper. I need to text Mask. I’m sure he’s already seen it, but for some reason, the way Gage looks at me makes me feel like there’s nowhere else I’d rather be.
Gage nods like he already expected that. “Come on.”
He doesn’t say where we’re going. He just drives, hand firm on the wheel, gaze flicking to me every few minutes as if he’s checking for signs of fracture.
I stay silent for the first twenty.
Then: “Everyone saw it, Gage.”
“I know.”
“My mother’s friends are on Reddit.”
“I know.”
“It was fake, but it doesn’t matter, because now every asshole who saw that splash screen thinks they know what I look like without clothes.”
His knuckles whiten on the steering wheel.
He doesn’t speak.
But somehow, it’s the silence that feels most protective.
We end up in a little corner coffee shop tucked under an overhang—one of those hole-in-the-wall places with just enough weird to be comforting. The Bean Flicker. There are board games on the tables and indie music overhead and mismatched mugs that don’t match the plates.
Gage orders for both of us. Doesn’t even ask.
Somehow, he knows I like lavender syrup.
We sit in a booth near the window, and I finally breathe.
“I feel like my skin is wrong,” I say.
Gage nods slowly. “Like you want to crawl out of it and find a new one?”
“Yes.”
He looks down at his mug. “You shouldn’t have to feel that way.”
My laugh is bitter. “Tell that to the trolls.”
We sit like that for a while. He doesn’t force me to talk. Doesn’t ask how I’m holding up. Just lets me exist, like he knows that’s all I can manage right now.
Eventually, I ask, “Do you think Mason did it?”
He flinches.
Then recovers.
“Maybe. He’d know how to access those files. But if he’s smart, he didn’t do it himself. He’d have used a proxy. Something messy to trace.”
“Right,” I mutter. “A perfect smear campaign and deniability all in one.”
I close my eyes.
And for the first time in a long time, I don’t feel like I’m going to cry. I just feel… tired.
Later, we go for a walk. Just two coworkers. Totally casual. Definitely not hiding from a humiliating PR meltdown of epic proportions.
He buys me a sandwich from a food truck.
Points out a dog with a mohawk.
Tells me a story about the time someone tripped a fire alarm during a demo day at his last job and flooded the entire server closet. I laugh—genuinely laugh—for the first time all day.
It’s weird.
He’s weird.
But being around Gage feels like a reprieve from all the noise. No expectations. No judgment. Just… space.
“Why are you being so nice to me?” I ask him later, when we’re sitting on a bench near the park and the sun’s starting to set.
He lifts a shoulder. “Because you deserve it.”
I turn toward him. “Even though I’ve been kind of… prickly?”
“Especially because of that,” he says with a small grin. “Prickly people are usually the ones worth knowing.”
I stare at him. Like really stare.
At the faint scar near his temple. The way his lashes catch the fading light. The quiet confidence in his voice that makes me feel steady, even when I’m falling apart.
He’s not who I expected him to be.
At work, he’s loud. Cocky. And honestly just there.
But here…
Here he’s something else.
“Can I tell you something weird?” I ask.
“Sure.”
“It’s about someone called Mask.”
His expression doesn’t change—but I swear there’s the smallest flicker in his eyes.
“I’ve been talking to him online. He found me through the Cathedral mess. He’s been helping me—like, seriously helping. Tracking the IPs, sniffing out the troll networks, blocking repeat offenders before they can get through.”
Gage’s voice is careful. “You trust him?”
This must sound so strange to him. “I… yeah. I do. I don’t know why, but I do.”
He nods once. “What does he want?”
“Nothing.” I shake my head. “That’s the crazy part. He won’t even let me see his face. He just shows up whenever I need help, then disappears again.”
Gage’s eyes land on mine. “I don’t know if this mask-guy is such a great idea, River. What if you can’t trust him?”
Interesting. Gage is definitely not Mask. He doesn’t trust him. I feel like I needed to prove it to myself.
Is this disappointment?
I glance down at my hands, fidgeting with the hem of my hoodie. “I, uh, I kissed him.”
Gage’s breath hitches.
Barely.
But I hear it.
I look up, eyes wide. “Sorry. That was probably TMI.”
“No,” he says quickly. “No, it’s fine.” He swallows.
“He said he wasn’t safe,” I whisper. “That I shouldn’t dream of him. But I do. I can’t stop. It’s like there’s something about him I already know. And I… I want to know who he is. Really.”
I glance at Gage.
He’s staring straight ahead.
And for one, flickering second, I could swear the look in his eyes is haunted.
Like he knows exactly what I’m talking about.