Work Text:
Simon “Ghost” Riley hated small talk.
He hated the way people filled silence with words just because they were uncomfortable sitting in it. He hated the clinking of pint glasses and forced laughter echoing in crowded pubs. And more than anything, he hated the way his coworkers looked at him – like if they stared long enough, they would figure him out.
The army had been simple, in its way. Orders, action, aftermath. Purpose in every breath, even when it burned. But civilian life? Civilian life was messy. Too many questions he didn’t want to answer. Too many smiles that seemed real but were fake. Too many eyes looking at him that made him want to put his mask back on.
He’d been out for a year now. Discharged with honours, file thick with recommendations and scars both visible and not. Graves & Co. Private Security Solutions had snapped him up fast – his kind of experience was good for business, and his reputation even better. Clients trusted a man who didn’t talk too much and who went by the name “Ghost”.
The problem wasn’t the job. The problem was everything else.
“Riley, you’re coming out with us on Friday, yeah?”
The question had come from Mike on a grey Wednesday afternoon. Mike was one of the supervisors Ghost occasionally worked with, a barrel-chested bloke who thought a laugh and a pint could solve anything.
Ghost hadn’t even looked up from his report. “Got plans.”
“Plans, huh?” Mike had grinned, leaning over the divider that separated Ghost’s desk from his coworker’s. “You always got plans, mate. What’s her name, then?”
And that had been it. The moment the lie was born.
He’d said it without thinking, just so Mike would shut up. A boyfriend. It slipped out so naturally that even Ghost himself was surprised. Granted, a boyfriend was a better cover than a girlfriend – less follow-up questions from blokes who’d want photos or gossip.
And it worked.
Perfectly.
For months, “the boyfriend” had been his invisible shield. His coworkers stopped asking him out for drinks because Ghost was always spending time with his “boyfriend”. The receptionist stopped trying to set him up with her cousin because he had a “boyfriend”. He was left in peace, blissfully so.
But peace was temporary. It always was.
The email came on a Monday morning, wrapped in glittery formatting and too many exclamation points:
Graves & Co. Annual Christmas Gala!
Join us for a night of fun, food, and festive cheer!
Attendance mandatory for all staff. Plus ones encouraged!
Ghost stared at it for a long time. “Mandatory” was the word that stuck. He hated mandatory social outings, had hated them since the military where the brass would occasionally organise something in another attempt to “boost moral”. It was mere coincidence that Ghost happened to fall ill every time one of those outings were being held.
Unfortunately, that excuse wouldn’t work for this.
He could already hear Mike now: “Finally bringing your mystery man, eh, Riley?”
He’d joked for months about Ghost’s elusive partner – the one with the weird work schedule, the reason he never stayed late, the reason he ducked out of company happy hours. People had built a whole mythos around the bloke, like some cryptid that kept Ghost from being completely unapproachable.
The worst part? They liked the idea. It made him seem human.
He leaned back in his chair and pinched the bridge of his nose. Christ, you’ve done it now.
He could fake a lot of things, but showing up alone to a “plus ones encouraged” event after months of lies? That would be suicide. Social suicide – something Ghost usually didn’t give a rat’s ass about – but in this place, that kind of talk spread fast. Rumours got twisted. Suddenly, the quiet guy became the liar. And that was something Ghost didn't need.
He exhaled slowly, staring at the company logo on his monitor, the blinking cursor waiting for him to get back to work.
He’d faced down worse situations than this. Actual fire, real bullets. But somehow, the thought of mingling with his colleagues in a tux, pretending to be normal while his imaginary boyfriend failed to appear – that was enough to make his pulse tick up.
Maybe he could say they broke up. But then there’d be pity. Invitations to cheer him up. More small talk.
No, the boyfriend had to exist. At least for one night.
Which meant he needed to find someone willing to pretend.
Someone he could trust not to make it weird, not to talk too much, not to ask questions about the things he didn’t want to share. But where in hell would he find someone like that?
~*~
A week later, Ghost sat in his flat long after dark, the glow of the television flickering across the unlit room. He wasn’t watching it – he just needed the noise. The hum of static voices, the clatter of dialogue. Something to fill the silence before his thoughts did.
It had been a long week filled with almost every coworker cornering him and asking if Ghost was going to bring “the boyfriend”. Mike hadn’t been able to shut up about it, and Trina the receptionist had squeezed his arm with a kind smile as she told him she was looking forward to meeting “the bloke who made Simon smile like that”.
If only there was a bloke like that, Ghost thought as he pulled out his phone, thumb hovering over his contacts. There weren’t many names there these days. One stood out – Gaz.
Kyle Garrick. Former SAS, sharp as a tack, and annoyingly charming. The sort of man people instantly liked. They kept in touch after their discharges, mostly with the occasional check-in or meme that made Ghost huff a laugh in spite of himself. If anyone could help him sort out this kind of mess quietly, it’d be him. Gaz had a level head and an easy smile that put people at ease. He could pull it off.
Ghost opened their text threat.
Ghost: Need a favour.
The reply came quicker than expected.
Gaz: No hello? What is it this time?
Ghost: I’ve got a mandatory company holiday party.
Gaz: And?
Ghost gritted his teeth as he typed.
Ghost: I might have been telling people I’ve got a boyfriend for the past year to get out of things and now they are expecting me to show up with him.
Gaz: you what????
Ghost: Long story. Need someone to play the part. Just for the night. You in?
For a solid minute, there was nothing. Then:
Gaz: You’re lucky I’m fond of you. But nah, can’t do it.
Ghost frowned.
Ghost: Thought you liked free food and open bars.
Gaz: I do. But my father-in-law’s the VP at Marakov Defence. Doesn’t that ring a bell?
Ghost groaned. It did. Marakov was one of Graves & Co.’s biggest clients – half their yearly contracts came through that partnership.
Gaz: So, yeah. He’ll be there. Probably with his wife. And Lisa who might drag me with her.
Ghost leaned back on his couch, rubbing at the bridge of his nose. Bloody brilliant.
Ghost: So if you show up as my boyfriend, we both look like complete twats.
Gaz: Bingo.
For a while, neither of them said anything. Ghost could practically hear gears in Gaz’s brain turning through the silence.
Gaz: I might know someone.
Ghost frowned. That was never a comforting sentence coming from Kyle Garrick.
Ghost: Who?
Gaz: Old school mate. John MacTavish. Goes by “Soap”.
Ghost stared at the name for a moment. Soap. The kind of nickname that screamed trouble.
Ghost: Soap?
Gaz: Aye. Mechanic. Good lad. Bit loud. Heart in the right place, though.
Ghost could already feel a headache forming.
Ghost: Don’t need “loud”. Need someone believable. Preferably quiet and subtle.
Gaz: Maybe you should have thought of that before you made up a boyfriend and got him invited to the holiday party.
Ghost sighed, fingers drumming against his knee. Gaz wasn’t wrong. He’d boxed himself into a corner with this lie, and now it was either go alone and let the rumour mill devour him – or bring a stranger and hope he didn’t make things worse.
Gaz: Look, he owes me a favour. I’ll talk to him. Come by the garage Thursday evening, we’ll sort it out.
Ghost stared at the message for a long while. Everything in him rebelled against the idea – meeting some random bloke, pretending they were together, playing house in front of his entire company. He could already see the disaster unfolding.
Still… he had no better option.
He typed his reply slowly.
Ghost: Fine.
Gaz: Knew you’d come around! I’ll try to make Soap behave. Can’t make any promises though.
Ghost pocketed the phone and sat back, exhaling through his teeth. He stared at the ceiling for a long moment, the sound of the TV still murmuring in the background.
A fake boyfriend named Soap. Bloody hell.
If there was a god of bad decisions, Ghost figured he’d just been blessed by them.
But he’d been through worse missions with worse odds. This was one night. He had to get through one night.
Then maybe, just maybe, he could go back to being the quiet guy no one questioned.
He turned off the TV and let the room fall into darkness.
Thursday couldn’t come fast enough.
~*~
The garage sat at the edge of town, all corrugated metal and fading paint, the kind of place that smelled like oil and hard work.
Ghost parked his truck out front and took a moment before getting out, fingers drumming against the steering wheel. He could already feel the tension building between his shoulders. He hated this kind of thing – introductions, talking, pretending, talking. He was better with plans, with logistics, with missions that had clean lines and no surprises.
This, however, was already a mess.
The minute he stepped inside, Gaz’s voice carried over the clatter of tools.
“Oi, there he is! The man of the hour!”
Ghost rolled his eyes. “Cut the dramatics, Garrick.”
Gaz grinned, wiping his hands on a rag. “Mate, you’re the one making up boyfriends. I’d say the dramatics are all yours.”
Before Ghost could reply, a sharp Scottish accent cut through the noise.
“Who’s this then? The poor sod I’m supposed to woo?”
Ghost turned.
The man leaning against the workbench couldn’t have looked less like what Ghost had imagined. He’d expected someone loud in the wrong ways – obnoxious, smug, maybe the kind of bloke who laughed too hard at his own jokes. Instead, Soap – and Ghost assumed that had to be him – had a grin that was equal parts genuine and dangerous. There was a spark in his blue eyes that said he found all of this deeply entertaining.
He was younger than Ghost expected. Tattooed forearms, grease-streaked shirt sleeves rolled up, a small silver ring glinting in one ear. His smile was easy, warm even, the kind that probably got him out of trouble more often than not.
Ghost’s first thought was that he looked alive. Too alive. The kind of person who filled a room without trying.
And Ghost hated that about him immediately.
Gaz clapped a hand on Ghost’s shoulder. “Ghost, meet Soap. Soap, Ghost.”
“Pleasure,” Soap said, extending a hand with that same lopsided grin.
Ghost stared at it for a moment before shaking it. Soap had a firm grip which Ghost appreciated.
“Right,” Ghost said, withdrawing his hand. “So Gaz told you about the situation.”
“Aye, that you’ve been pretendin’ to have a boyfriend for months an’ now need to make him real for one night.” Soap’s grin widened. “Gotta say, that’s one of the more creative excuses I’ve heard for avoidin’ after-work pints.”
Gaz snorted. “This is going to haunt you for a long time.”
Ghost gave them both a flat look. “I’m not looking for commentary. I just need it done.”
“Relax, big man,” Soap said, waving a hand. “I can play along. Done worse favours for less reward.”
“Reward?” Ghost asked, eying Gaz who suddenly seemed very interested in the floor.
“I’ve got a family thing next weekend. Gaz said you’d feed my cat.”
Gaz coughed into his fist, clearly trying not to laugh.
Ghost blinked. “You’re serious?”
Soap shrugged. “Angus is a good lad. Bit of an attitude, though. You’ll get along fine.”
Ghost stared at him for a long moment, wondering if he was being mocked. But Soap just looked amused, his eyes bright with mischief.
“This isn’t a joke,” Ghost said finally.
“Didn’t say it was,” Soap replied easily. “Just makin’ sure we’ve got the terms clear. You get your fake boyfriend, I get my cat fed. Win-win.”
Gaz leaned against the workbench, smirking like the devil himself. “Told you he was perfect for it.”
“Perfect?” Ghost muttered. “He talks too much.”
Soap shot him a grin. “That’s alright. You don’t talk enough. Balance.”
Ghost gave him a long, unimpressed stare. It didn’t seem to bother him in the slightest.
Gaz clapped his hands. “Alright, gentlemen, we’ve got a plan. Party’s next Friday. You two should probably figure out your story – how you met, that kind of thing. People will ask.”
“Right,” Soap said. “How about we met in a pub? Classic. You looked broody in the corner, I took pity on you.”
Gaz snorted. “That fits surprisingly good.”
Ghost pinched the bridge of his nose. “No. No pity stories.”
“Alright then,” Soap said, tapping his chin as if deep in thought. “We met online. Bloke like you? Too busy for real dates, aye? Swiped right on me by accident, fell in love instantly.”
Gaz wheezed. “That’s the one.”
“Both of you,” Ghost said flatly, “are insufferable.”
Soap only grinned wider. “You’ll get used to me, handsome.”
Ghost froze for a fraction of a second before glaring. “Don’t call me that.”
“Aye aye,” Soap said, clearly fighting back laughter. “You got a list of what I can call you, or should I improvise?”
“Jesus Christ,” Ghost muttered, already regretting ever getting hired at Graves & Co. None of this would be happening if Ghost had just retired like a normal person.
Gaz grinned, satisfied. “Look, you two will be fine. Soap cleans up well. Ghost, you scowl less once there’s whiskey. You’ll sell it easy.”
Ghost didn’t believe that for a second. But as he glanced at Soap – still smiling like this was the most fun he’d had all week – he realized he didn’t have a better option.
He exhaled slowly. “Fine.”
Soap gave him a mock salute. “Aye, Ghost. I’ll even wear somethin’ nice.”
Gaz beamed, clearly delighted with himself. “Brilliant.”
Ghost shot him a look that promised retribution. “You’re enjoying this far too much.”
Gaz shrugged. “Mate, this is the most entertainment I’ve had in months.”
Soap leaned against the workbench again, still grinning. “So, Ghost… should I text you? You know, to get our story straight? Figure out who’s the big spoon?”
“Don’t text me at all,” Ghost said through gritted teeth.
Soap’s grin softened into something that was almost kind. “Aye, alright. Ye’re no fun.”
But there was a flicker in his eyes – curiosity, maybe. Like he was already seeing through the cracks Ghost worked so hard to keep sealed.
And Ghost, for reasons he couldn’t quite name, didn’t like that one bit.
~*~
The week leading up to the gala unfolded in ways Ghost hadn’t expected.
He’d assumed once he agreed to this whole ridiculous plan that Soap would show up on Friday, smile for the crowd, and that would be that. A simple, one-night operation. No complications. No emotional investment.
Then Soap got his number.
He wasn’t sure how exactly – Gaz had probably handed it over without a second thought – but the first text came the very next morning.
Soap: Morning, sunshine. Just making sure you didn’t change your mind about Friday.
Ghost: Don’t call me that.
Soap: Aye aye, big man. You shot down all my suggestions, I have to call you something.
Soap: So what’s our story?
Ghost stared at the messages for a long time before replying.
Ghost: Keep it simple. Met through mutual friends. Been together a year.
Soap: Oooh! Anniversary soon. You getting me flowers or something?
Ghost: No.
Soap: That’s cold. Brutal even. No presents for our anniversary?
Ghost turned his phone off. He had work to do.
But Soap didn’t seem to believe in things like boundaries. By lunch, there was another text.
Soap: What’s your favourite food? Just in case someone asks.
Ghost: Steak.
Soap: Medium rare?
Ghost: Obviously.
Soap: Good. I would have dumped you if you said well-done.
Ghost sighed as he went back to his reports.
That night, another ping.
Soap: Coffee or tea?
Ghost: Coffee.
Soap: Same. Milk? Sugar?
Ghost: Black.
Soap: Figures.
Ghost: You’re keeping notes?
Soap: Aye. Want to be a convincing boyfriend, don’t I?
Ghost ignored that one. Or tried to.
By Wednesday, their texts had somehow drifted from cover stories to everything but the gala. Soap had an infuriating way of sneaking in real questions between the teasing ones.
Soap: How long were you in?
Ghost: Long enough.
Soap: That an answer or a challenge?
Ghost: Both.
A pause. Then:
Soap: Miss it?
Ghost stared at that one for a long time before replying.
Ghost: Some of it. Not all.
Soap: Aye. I get that.
That was the first time Soap didn’t follow up with a joke.
The next day, it started again – light, easy, the way Soap always seemed to be.
Soap: If I’m your boyfriend, do I get a pet name?
Ghost: No.
Soap: Not even one?
Ghost: No.
Soap: Fine. I’ll give you one.
Ghost: Don’t.
Soap: Too late. It’s Ghostie now.
Ghost: Absolutely not.
Soap: Ghostie <3
Ghost closed the chat app and set his phone face-down on his desk, jaw tight – but when it buzzed again, he still looked.
By Thursday, something had shifted.
The messages came slower now, less ridiculous, more personal. Soap told him about the garage – how he and Gaz had scraped enough money together after Gaz left the military and Soap was stuck working odd jobs, how they took in the jobs no one else wanted. How he enjoyed being his own boss, not having to answer to anyone but himself.
Ghost found himself replying more than he should have. About the firm. About how strange civilian work still felt after years of structure. About the quiet he’d never quite learned to live with.
Soap didn’t pry. Just listened, in his own way. Jokes when the tension crept in. Stories when Ghost didn’t know how to answer.
That night, another text blinked onto Ghost’s screen.
Soap: You ready for tomorrow, Ghostie?
Ghost: Stop calling me that.
Soap: Never.
Soap: Got the tux pressed, shoes shined, smile practised.
Ghost: Don’t need to overdo it. Just show up, play the part, and we’re done.
Soap: Right. Simple. Act like we’re madly in love for an entire night. Easy peasy.
Ghost huffed quietly, thumb hovering over the keyboard before replying.
Ghost: Try not to talk too much.
Soap: Try not to look at me like you hate me.
Ghost smiled faintly, despite himself.
Ghost: No promises.
Ghost: Go to sleep, Soap. Big day tomorrow.
Soap: Aye aye, Ghostie. Sweet dreams.
Ghost set his phone aside, but the corner of his mouth twitched before he could stop it.
He wouldn’t admit it out loud – not to Gaz, not to himself – but Soap was a lot harder to ignore than he’d planned.
And that was going to be a problem.
~*~
Ghost regretted agreeing to this the second he stepped out of the car outside the hotel where Graves & Co. had rented a ballroom for the night.
The place was lit up like a bloody Christmas card – fairy lights strung across the entrance, fake snow on the hedges, the muffled sound of laughter and music leaking out through the revolving doors. Everyone inside was probably already half-drunk and twice as cheerful.
He adjusted the collar of his black suit, hating how stiff it felt, how tight around the throat. The last time he’d worn anything close to a tux, it had involved a briefing and a target list. Not mistletoe and eggnog.
A low whistle came from behind him.
“Christ, look at ye,” Soap said, striding across the car park toward him.
Ghost turned. For a split second, he forgot what he’d meant to say. Soap had cleaned up almost too well. Crisp white shirt, fitted dark suit, hair actually tamed for once. He looked confident and easy in his skin, as if he’d been born to charm a room.
Then Ghost noticed the ties. The one around Soap’s neck. And the one in his hand.
Matching. Red and green with tiny snowflakes.
“No,” Ghost said immediately.
Soap grinned, brandishing the spare like a weapon. “Oh yes. We’re a couple tonight, remember? Gotta look the part.”
“I am not wearing that.”
“Ye are.” Soap stepped closer, the faint scent of his cologne cutting through the winter air – cedar, soap, and something warm underneath. “Hold still.”
“I swear to God-”
But Soap was already looping the fabric around his neck, tugging it snug with practiced ease. His fingers brushed Ghost’s throat, light, quick, but it made Ghost go still anyway.
“There,” Soap said, straightening the knot. “Perfect. Festive and terrifying – just like ye.”
Ghost grumbled something unintelligible, but Soap’s grin only widened.
“Relax, Ghostie. Nobody’s gonna question it.”
Inside, the ballroom was a blur of glitter and chatter – tables covered in white linen, twinkling lights hanging overhead, the air thick with expensive perfume and mulled wine.
Ghost hated it instantly.
Soap, however, looked right at home.
He’d barely stepped through the doors before he was shaking hands, laughing, charming everyone within reach. Trina from reception practically swooned. Mike clapped him on the back like they were old mates.
And Ghost, to his own surprise, didn’t have to say much of anything.
Soap carried the conversation effortlessly. When someone asked how they met, Soap launched into a ridiculous story about Ghost spilling coffee on him in a café and “makin’ it up to him ever since”.
At one point, Ghost’s boss, Mr. Graves himself, a tall man with an expensive watch and a talent for smiling too wide, wandered over.
“Riley! Good to see you out of hiding for once,” he said. “And this must be the famous boyfriend I’ve heard so much about.”
Soap stepped forward without missing a beat, extending a hand. “John MacTavish, sir. Pleasure.”
Graves shook it firmly, clearly impressed. “So you’re the reason we can never get this man to happy hour.”
Soap laughed. “Aye, guilty as charged. Keepin’ him to myself. He’s not exactly a social butterfly, eh?”
Ghost shot him a warning look, but Graves just chuckled.
“Well, whatever you’re doing, it’s working. I’ve never seen him look so… relaxed.”
Relax. That word again. Ghost wasn’t sure if it fit – but he supposed compared to his usual state of simmering discomfort, it was close enough.
As the night went on, Soap worked the room like a pro. He laughed at the right jokes, deflected nosy questions, and kept a hand on Ghost’s arm whenever someone came over – a casual touch, but steady. Grounding.
When coworkers ribbed him about “hogging Riley all year”, Soap didn’t even blink.
“Aye, he’s mine on the weekends and evenings,” he said easily, flashing that infuriating grin. “You already get him enough, I too need quality time.”
That earned laughs and nods all around. Ghost said nothing – but the back of his neck felt hot.
It felt nice, in a way. Soap protecting him, answering questions with ease. For once, Ghost didn’t have to make up excuses, didn’t have to deflect questions. He could just stand there, sip his whiskey, and let Soap fill the silence.
It was… strangely nice.
At one point, Soap leaned closer while they stood near the bar, voices and laughter swirling around them.
“Ye alright?” he asked quietly, eyes still on the crowd.
Ghost took a sip of his drink. “Fine.”
“Yer lyin’.”
Ghost gave him a sidelong look. “You’re observant.”
Soap chuckled softly. “Just makin’ sure ye don’t bolt on me.”
Ghost grunted. “Wouldn’t give you the satisfaction.”
“Good. ‘Cause I’m havin’ fun.”
Ghost didn’t respond, but his lips twitched – just enough that Soap noticed.
The night went by faster than Ghost expected.
Soap handled every conversation, every introduction, with effortless charm. He laughed easily, shook hands like a man who’d done it a thousand times, and every now and then, he’d rest a steady hand on Ghost – casual, grounding, never too much.
People believed it. The stories, the smiles, the touches, all part of the performance. It was seamless, and Ghost found himself watching Soap with quiet disbelief.
He’d expected the whole night to be torture. But instead, he barely had to say a word. He could just stand there, glass in hand, while Soap filled the silence with warmth and laughter and the kind of ease Ghost hadn’t known in years.
By the end of the evening, when the lights had softened and the crowd had thinned, Ghost stood near the doors with his drink, watching as Soap wrapped up one last conversation with Trina from reception. She was laughing at something he’d said, touching his arm like they were old friends.
Soap really was good at this. Too good.
When he finally rejoined Ghost, his tie was slightly askew and his cheeks faintly flushed from the whiskey and warmth of the room.
“Well,” he said with a grin, “I’d say that went pretty well, wouldn’t you?”
Ghost adjusted his cufflinks, eyes on the exit. “Didn’t expect it to.”
Soap bumped his shoulder lightly against Ghost’s, grinning wider. “Told ye. We make a good team.”
Ghost didn’t answer right away. He just nodded once, low and thoughtful.
Outside, the winter air was cold against his face as they stepped out of the ballroom together. Soap shoved his hands into his pockets, whistling under his breath, the faintest tune of something familiar.
Ghost didn’t tell him to stop.
He didn’t say much of anything at all – but for the first time in a long while, the quiet between him and someone else didn’t feel heavy.
It just felt… easy.
And that was strange enough on its own.
~*~
Ghost thought that after the gala, that would be the end of it. One night. One performance. Job done.
But by Sunday morning, his phone was already buzzing again.
Soap: Morning, Ghostie. Did you sleep well?
Ghost: Don’t call me that.
Soap: What, “morning”?
Ghost: You know what I mean.
Soap: Your grumpiness is part of your charm, you know. Anyway, I had fun on Friday. Think it’s safe to say we really sold it to your coworkers.
Ghost stared at that for a long moment before typing back a simple:
Ghost: You did all the talking.
Soap: Exactly. Perfect team.
Ghost didn’t know what to say to that, so he didn’t. But Soap kept texting, little things here and there – pictures from the garage, comments about the weather, the kind of casual chatter Ghost hadn’t realized he’d missed.
He told himself it was fine. Just polite follow-up. The fake boyfriend act was over, but Soap was still a decent bloke. Friendly. Too friendly, maybe, but harmless.
Then Thursday rolled around, and Soap messaged again.
Soap: You still free this weekend?
Ghost: Why?
Soap: I got a family thing all the way in Glasgow. You were going to feed Angus. Remember our deal?
Ghost blinked at the screen. Angus. The bloody cat.
He’d thought Soap was joking.
Ghost: You were serious about that?
Soap: Deadly. Boy needs his routine.
Ghost sighed.
Ghost: Text me your address.
Soap’s flat was exactly what Ghost expected: small, cluttered, and alive in a way that made him feel like an intruder just standing in the doorway.
“Right,” Soap said, handing him a folded sheet of paper. “Instructions. It’s simple, really.”
Ghost took it, scanning the neat scrawl.
- Feed Angus twice a day
- Stay for a bit after feeding.
- Don’t move the plant on the window ledge.
- Don’t let him near the biscuit tin.
- If he sits on you, accept it.
Ghost raised an eyebrow. “Stay after feeding?”
“Aye,” Soap said, entirely serious. “If ye leave too soon, he’ll sulk. Or puke in my shoes.”
Ghost grunted. “Sounds like a delight.”
Soap grinned. “He’s got standards. Ye’ll get on fine.”
Soap left early Friday morning, and by midafternoon, Ghost found himself standing in the middle of the flat, staring at a ginger cat glaring at him from the couch.
Angus blinked once. Then twice. Then meowed like Ghost had personally offended him.
“Right,” Ghost muttered, crouching down to open the tin of food Soap had labelled Dinner Friday. “Don’t start trouble, and we’ll get along fine.”
Angus yowled louder.
Ten minutes later, the food was untouched. The cat sat three feet away, staring him down.
“Not hungry?” Ghost asked dryly.
Silence.
Then Angus padded forward, sniffed the bowl, and began to eat – but only after Ghost sat down at the table nearby.
He frowned. “You serious? You need supervision to eat?”
Angus purred in response, tail flicking.
So Ghost stayed.
By Saturday, the two had developed a kind of understanding. Ghost showed up early in the morning, brewed a cup of black coffee in one of Soap’s chipped mugs, and sat at the table while Angus ate his breakfast like royalty.
When Angus finished, he’d hop onto the couch and curl up beside Ghost’s leg, purring low.
Ghost would grumble about “needy animals” while absently scratching behind his ear.
It wasn’t much, but it filled the silence in a way that didn’t grate. The flat was warm, lived-in – framed photos on the walls, oil-stained boots by the door, the faint scent of soap and motor oil clinging to everything.
And there was something about it that felt… steady.
Maybe it was the cat. Maybe it was the man who owned it.
Sunday night, Ghost sent a photo to Soap – Angus stretched across the couch, belly-up and smug.
Ghost: He’s still alive. Didn’t puke in your shoes.
Soap: Miraculous. Did he sit on you yet?
Ghost: Once.
Soap: You’ve been accepted. There’s no going back now.
Ghost rolled his eyes.
Ghost: Your cat’s needy.
Soap: He’s got that from me. Besides, he’s a good judge of character. If he likes you, you must not be all bad.
Ghost paused. Then typed, slowly:
Ghost: He’s tolerable.
Soap: That’s high praise coming from you, Ghostie. I’ll take it.
Ghost stared at the message longer than he meant to.
He didn’t know what to make of this – the easy way they’d slipped into conversation, the strange quiet comfort of the cat’s company, the lingering scent of Soap’s cologne on the couch cushions.
It was supposed to be simple. A one-night favour.
But somehow, against all logic, it didn’t feel so simple anymore.
~*~
Soap got back Monday evening.
Ghost knew because his phone buzzed around nine – a photo of Angus sprawled across Soap’s lap, the cat’s paw stretched up over Soap’s legs like he owned the man instead of the other way round.
Soap: Look who missed his dad. You didn’t spoil him too much, did you?
Ghost smirked faintly at the screen before replying.
Ghost: Fed him. Didn’t kill him. Job done.
Soap: Proper caretaker, you are. Thanks again.
Ghost didn’t answer that one. He just set his phone down and stared at it for a long moment, the faint ghost of a smile threatening to surface before he shook it off.
That was that. Job done. Soap was home, cat still alive, debt paid.
The texts slowed after that.
At first, Soap still messaged him every few days – a funny story from the garage, a photo of a jeep he was working on, or the occasional teasing question.
Soap: Tell me, Ghostie, are you always this grumpy, or do I just bring out your best side?
Ghost: Don’t flatter yourself.
Soap: You keep replying though. Just admit you like me texting you.
He did. But as the days went by, Soap’s texts trickled off.
Ghost told himself that was fine. Things were going back to normal.
Normal was quiet. Predictable. Controlled.
Normal was no more stupid emojis lighting up his screen when he was halfway through a report. No offhanded jokes that caught him off guard and actually made him huff out something dangerously close to a laugh.
Normal was his flat, empty and still, no cat staring him down over breakfast, no voice in his ear telling him to “lighten up, Ghostie”.
Normal was what he wanted.
…wasn’t it?
By the second week, he found himself opening his phone for no reason. Checking messages that weren’t there.
He’d scroll past Soap’s name in his contacts and tell himself he wasn’t hesitating. That he wasn’t thinking about typing How’s the cat? or Still wrecking engines for fun?
He wasn’t lonely. He just…
He just didn’t like loose ends. That was all.
He locked the screen again before he could think about it too much.
It was nothing. It had to be nothing.
Still, his life felt a little emptier than usual.
And for the first time in a long time, Ghost wasn’t sure if he liked that.
It didn’t matter. It was nothing.
~*~
The rain had started just after he left, thin and mean. The kind that slowly soaked through your coat before you even realized it. The engine of Ghost’s car gave up five minutes into an hour drive, sputtering once, twice, and then dying altogether with a low, terminal groan.
Ghost sat behind the wheel of his black sedan, the dashboard lights flickering like dying fireflies. Outside, the stretch of road was empty, slick with a thin sheen of late-winter rain. He tried the ignition again. Nothing but a cough, then stillness.
Ghost leaned back in the seat, exhaling through his teeth. “Bloody brilliant.”
He was an hour away from home, on his way back from a site check, the sky already bruising toward night. When he called the tow service, the voice on the other end was polite and apologetic.
“Earliest we can get someone to you, sir, is in about two hours.”
“Two hours?” Ghost repeated flatly.
“Yes, sir. We’re a bit short-staffed tonight.”
He hung up before he said something he’d regret. Two hours, stranded on the side of a dark A-road. Perfect.
Normally, he would call Gaz. But Gaz and Lisa had gone off for a getaway somewhere near York, the smug bastard. Probably sitting by a fire with a pint right now, phone off, feet up.
That left…
Ghost’s thumb hovered over the screen, eyes catching on one particular name: Soap.
He stared at it for a moment too long. Then, with a sigh that felt like surrender, he pressed ‘call’.
It rang twice before Soap answered, voice bright and full of life even through the speaker.
“Ghost! Been ages. What’s up?”
“My car’s dead,” Ghost said, keeping it short. “I’m stranded in the middle of nowhere. Tow truck’s gonna be two hours.”
“Oof. That’s brutal. Where ye at?”
Ghost rattled off his location after a moment of hesitation.
There was a pause, a clatter, then Soap again, cheerful as ever. “That’s only forty minutes from me! Sit tight, big man – I’ll be there before your engine cools.”
“Soap-”
But the line had already gone dead.
Rain started to fall harder before a battered green Jeep came rolling up, headlights cutting through the gloom. The vehicle pulled onto the road ahead of him, tires crunching on gravel. Soap climbed out, hood up, grin wide as ever despite the weather.
“Evenin’, Ghostie,” Soap said cheerfully, wiping his hands on his jeans as he approached. “Heard ye broke down without me. Did ye miss me that much?”
Ghost glared at him, but Soap didn’t seem phased in the slightest.
“Let’s see what’s wrong with her, aye?”
Soap ducked under the hood, flashlight in hand. Ghost watched as he poked around, sleeves rolled up, tattoos catching in the light. He was muttering under his breath – half to himself, half to the machine.
After a few minutes, Soap straightened with a sigh. “Ah, she’s done for the night. Looks like your alternator’s blown. Won’t start till it’s replaced.”
Ghost frowned. “Can you fix it?”
“Aye, but not here, and not tonight. I can tow ye back to the garage – I’ll take a proper look there.”
Ghost hesitated, glancing toward the dark horizon. The rain had turned steady, the kind that soaked through even the thickest jacket. He didn’t like being reliant on anyone, but sitting out here for hours wasn’t an option.
“Fine,” he said finally.
Soap’s grin widened. “That’s the spirit.”
They rigged the tow quickly. Soap’s Jeep was old but powerful, paint nicked and mud-splattered. Ghost climbed in his own car, following the line of the tow rope through the rain-smeared windshield. The drive was slow and bumpy, the rain drumming a steady rhythm against the roof.
Every few minutes, Soap’s brake lights would glow red ahead of him, and Ghost found the pattern oddly calming. Reliable. Predictable.
When they pulled up to the garage, the lot was quiet, the fluorescent lights casting pale halos across wet concrete. Soap parked, jumped out, and gestured for Ghost to follow.
“Let’s get her under cover.”
Together, they guided the car into one of the bays. Soap leaned under the hood again, flashlight between his teeth, muttering while Ghost stood nearby with his arms folded. After a while, Soap stepped back, wiping his hands on a rag.
“Yeah, definitely the alternator,” he confirmed. “Might need to order a new one. Could take a week, depending on stock.”
“A week,” Ghost repeated, unimpressed.
“Aye. Sorry, mate. I’ll rush the order if I can.”
Ghost rubbed the back of his neck. “Guess I’ll sort out a rental then.”
Soap shook his head. “Don’t bother. Take mine.”
Ghost blinked. “What?”
“Aye. I’ve got the bike, and I’m not goin’ anywhere that needs four wheels this week.”
“I’m not taking your car.”
“C’mon, Ghostie. Ye did me a solid with Angus, didn’t ye?”
“Not the same thing.”
“Sure it is. Cat, car – both stubborn creatures ye have to treat with patience.”
Ghost gave him a flat stare, but Soap only laughed, already fishing his keys out of his pocket.
“Don’t argue, big man. I insist.”
Ghost opened his mouth to refuse again, but the truth was, he didn’t have many options. Between the late hour and work in the early morning, sorting out transport would be a nightmare.
He sighed. “Fine.”
“Good,” Soap said, pressing the keys into his hand with a satisfied grin. “Don’t scratch her. She’s sentimental.”
“Didn’t plan to.”
Soap looked at him for a long moment, something softer in his eyes than his usual teasing gleam. “See? Told ye we make a good team, Ghostie.”
Ghost’s mouth twitched – not quite a smile, but close. “Don’t call me that.”
Soap’s grin followed him all the way to the door, bright and stubborn as ever.
Outside, the rain had slowed to a drizzle by the time he climbed into the Jeep. The cabin smelled faintly of Soap’s cologne – sharp and warm.
He gripped the steering wheel, feeling the weight of the night settle around him.
A week, Soap had said.
Ghost told himself it was just a car. Just another favour.
~*~
It was a quiet Sunday morning, the kind where the world outside his flat felt muted – just the soft hum of rain against the window and the low crackle of the radio. Ghost had been halfway through his first cup of coffee when the doorbell rang.
He frowned. No one ever rang his bell. Deliveries were left downstairs, Gaz was still out of town, and the few people who did know his address had the sense to text first.
He set the mug down, walked to the door, and opened it cautiously.
On the other side stood Soap, hood pulled up, cheeks flushed from the cold. In one hand, he held Ghost’s car keys. In the other, a cat carrier – inside, glaring up with familiar golden eyes, sat Angus.
“Morning, Ghostie,” Soap greeted with his signature cocky grin, though it was a little tighter around the edges this morning. “I’ve brought your car back – got your address from Gaz.”
Ghost stared at him, then at the cat. “And you decided to bring Angus along?”
Soap managed a sheepish half-smile. “Aye, well. About that.” He cleared his throat, glancing down at Angus. “Had a bit of an emergency come up. Family thing. Gotta head back to Scotland.”
Ghost’s eyes narrowed. “You’ve got to be joking.”
“Wish I was. Unfortunately, I can’t take the wee menace with me.” Soap looked down at the carrier in his hand. Angus hissed softly, then yawned. “He doesn’t travel well. Gets sick in the car and my sister’s place isn’t exactly… cat-friendly either.”
Soap’s voice was lighter than his expression – there was an edge there, something hurried and unsettled that Ghost couldn’t quite place. He might not know the man well, but Ghost was sure it wasn’t often that Soap looked… unsure.
Ghost sighed. “How long are we talking?”
“Couple of days,” Soap said quickly. “Maybe four or five, depending how things go.” He gave the carrier a small shake. Angus meowed in protest. “Can ye take him for a bit? Promise it won’t be too long.”
Ghost looked from the cat to Soap, then back again. The sensible part of him said no. He didn’t do houseguests – not people, not animals. But Soap was standing there looking tired, genuinely concerned, and Ghost found it harder than expected to tell him to sod off.
“You couldn’t ask one of your mechanics?”
“They’re all booked solid. And Gaz-”
“Is still in York,” Ghost finished flatly.
Soap nodded, looking sheepish. “Exactly. So that leaves… you.”
“Right,” Ghost muttered, voice dry. “Lucky me.”
Soap brightened, seizing on the sliver of non-refusal. “Think of it as payment. Ye borrowed my car, yeah? I’ll call it even.”
“That wasn’t in the rental agreement, MacTavish.”
“You should’ve read the fine print then.”
For a moment, they just stared at each other – Ghost unmoving in the doorway, Soap standing in the hall, Angus glaring between them like a silent judge.
Finally, Ghost sighed. “Fine.”
Soap’s grin snapped back into place, quick and brilliant. “Knew ye’d say yes. Ye’re a softie at heart, Ghostie.”
“Don’t call me that,” Ghost grumbled, but he reached out and took the carrier anyway. It was warm from Soap’s hand, and heavier than it looked. Angus made a grumpy little sound as Ghost carried him inside, like he’d been personally inconvenienced by the entire arrangement.
Soap followed, stamping the mud from his boots before stepping into the flat. Ghost set the carrier down near the couch and crouched beside it. Angus blinked up at him, unimpressed but calm.
“Hold on,” Soap said suddenly, turning to head back out. “Got his things in the car – food, treats, his daft wee toys. Be right back.”
Ghost nodded and watched as Soap jogged down the hall. It struck him then – Soap was returning his car. The man had gone out of his way to drive across the city just exchange their cars before heading north. That meant he had taken on a rush order to fix Ghost’s car as it had been only three days since it broke down.
A moment later, the sound of footsteps echoed again as Soap returned, arms full – a small bag of cat food, a folded blanket, and a toy mouse dangling from one finger.
“Here we go. All his essentials. He’ll whine the first night, but he’ll settle.” Soap crouched again to check the latch on the carrier, giving Angus a fond scratch through the gap. “Be good, aye? Don’t shred the man’s furniture.”
Angus gave him a pointed blink that could’ve meant anything.
Soap stood, brushing his hands off. “Thanks again, Ghost. I owe ye.”
Ghost shook his head. “Just deal with your family stuff.”
Soap hesitated, then smiled again, smaller this time. “I’ll call when I’m back.”
Ghost gave a small nod. “Right.”
And then he was gone, the door clicking shut behind him, leaving Ghost alone again – him and the faint sound of a cat pawing at the carrier.
He exhaled slowly, running a hand over his face. “What have I gotten myself into…”
Angus meowed once, sharp and demanding. Ghost looked down.
“Yeah,” he muttered. “I know. You’re hungry.”
He bent, unlatched the carrier door, and watched as Angus strutted out like he owned the place. Ghost sighed, rubbing a hand over his face.
“Just a few days,” he told himself. “Then back to normal.”
The cat ignored him, promptly hopping up onto the couch and curling into a neat orange ball, already half-asleep. Ghost stared for a long moment before lowering himself into the chair opposite the couch. He couldn’t quite shake the feeling that with Soap, nothing ever really stayed “normal” for long.
~*~
Late on the evening of the fourth day of Angus’ stay with Ghost, the doorbell rang. Ghost had been expecting it – Soap had texted that afternoon saying he was heading back home and would swing by to pick up Angus. Ghost was seated on the couch, the television murmuring low in the background. Angus lifted his head from the chair he had made himself at home in, tail flicking, ears pricked toward the door.
Ghost sighed, set down his mug, and went to answer it.
Soap stood on the other side and he looked wrecked.
The easy grin he usually wore was gone, replaced by faint shadows under his eyes, stubble rougher than usual along his jaw, and a tiredness that looked bone-deep. He gave Ghost a small, weary smile.
“Came to pick up the wee menace,” Soap said, voice rough around the edges.
Ghost stared at him for a beat, taking in the exhaustion in the man’s face, and replied gruffly, “You look like hell.” Then he stepped aside. “Get in.”
Soap blinked, caught off guard, but he didn’t argue. He stepped inside, boots scuffing lightly against the entryway floor.
Angus meowed loudly from the chair, jumping down and padding over immediately. Soap crouched to greet him, voice softening into a murmur as he scooped the cat up and pressed his face into the soft fur.
“Missed you too, wee bastard,” he said, and Angus purred in agreement.
“Sit,” Ghost said, nodding toward the couch. “You look like you’re about to fall over.”
Soap hesitated. “Didn’t mean to intrude. Just came to-”
“Sit,” Ghost repeated, sharper this time, a hint of command in his voice.
Soap blinked again, then sighed and dropped onto the couch with a soft grunt, Angus curling up beside him as if sensing how tired his owner was. Ghost crossed to the kitchen and came back a moment later with a glass of water. Soap took it, murmuring a thanks before draining half of it in one go. Ghost sat down in the armchair across from him.
They sat in silence for a bit, the only sounds the low hum of the TV and Angus’s steady purr.
Then Ghost asked, voice low, “Your mum doing alright?”
Soap’s eyes flicked up from the glass. He hesitated, thumb tracing the rim. “Aye,” he said finally. “Better now. Gave us all a scare, though.”
Ghost said nothing, just waited. He’d learned long ago that silence did more than questions ever could.
Soap huffed a laugh – tired, soft. “She fainted at work, ended up in hospital. Turns out it was her heart. They caught it in time, but… aye, that kind of thing shakes you, ye ken?” He ran a hand through his hair. “My da’s been trying to keep everything running, bless him, but he’s not built for housework. And my sister’s got the kids, so she’s been run ragged too.”
Ghost didn’t interrupt. There was a stiffness in Soap’s posture that Ghost recognized all too well – exhaustion mixed with something heavier, like something had been gnawing at him for the past few days.
“Been back and forth between hospital visits and keeping the house from fallin’ apart,” Soap continued, voice lowering. “Didn’t realize how knackered I was ‘til I sat down.”
“You look it,” Ghost said simply.
Soap gave a small laugh at that – a real one, this time – and leaned back, head resting against the back of the couch. “Cheers. Always knew you were the complimentin’ type.”
“Wouldn’t want to ruin my reputation.”
They fell into silence again. Soap’s shoulders had slumped, and his head tilted slightly back against the couch cushion. His eyes drifted closed, one hand absently resting on Angus, who had nestled himself comfortably against Soap’s leg.
Ghost should’ve told him to head home, get proper rest. But instead, he got up, grabbed the blanket folded over the back of the armchair, and draped it over Soap.
Soap stirred slightly, blinking one eye open. “You’re a real charmer, Ghostie. Wait until I tell your coworkers ye’ve got a heart under all that black.”
“Go to sleep, Soap.”
Soap’s grin softened. “Aye.”
Within minutes, his breathing evened out. Angus stayed put, purring quietly against him. Ghost sat back down, silent, watching the two of them for a moment – the way Soap’s head tilted slightly, the exhaustion melting off him now that he wasn’t holding himself upright. The two of them looked oddly at home on Ghost’s couch.
Ghost sat there for a moment longer than he meant to, then turned off the lights and went to bed.
By morning, the smell of coffee filled the flat. Soap stirred awake to find a steaming mug on the coffee table and Ghost sitting in the kitchen, already dressed for the day.
“Morning,” Soap mumbled, stretching with a groan.
“Morning.”
Soap blinked blearily, picking up the mug and sniffing. “You even made coffee. Christ, you’re spoilin’ me.”
“Don’t get used to it.”
They had a simple breakfast – toast, eggs, another cup of coffee. Soap looked more like himself now, some colour having returned to his face. Angus alternated between curling around his legs and weaving around Ghost’s chair, torn between loyalty and curiosity.
When Soap finally stood, carrying the empty dishes to the sink, he turned with a faint smile. “Thanks, Ghostie. For letting me crash. And for lookin’ after him.”
When it came time for Soap to leave, Ghost followed him to the door.
“Thanks again,” Soap said, setting Angus’s carrier down and adjusting the strap of his bag. “I guess I needed some proper rest after all.”
Ghost only nodded. “Drive safe.”
Soap gave him one last smile – softer this time, almost shy. “See you around, Ghostie.”
When the door shut, the flat felt wrong. Ghost stared at the closed door for a long while before sighing and rubbing a hand over his jaw.
It wasn’t until a few days later that he caught himself glancing toward the couch after work, half-expecting a small ginger blur to be waiting there. He didn’t say it out loud – he didn’t need to. But when he came home to the silence that used to feel like peace, it felt a little emptier now.
He missed the cat.
And, if he was being honest with himself – though he’d never admit it to anyone – he missed the cat’s owner, too.
~*~
The next few days after Soap had picked up Angus passed quietly, almost too quietly.
Ghost fell back into his routine – work, gym, late dinners, quiet nights. The flat was spotless again, no tufts of cat hair on the couch or the faint sound of claws clicking on the floor. It should’ve been comforting, familiar. Except that it wasn’t. The silence pressed on him now, heavy and persistent, like he’d gotten used to sharing the space with something alive.
Soap texted now and again – not often, but enough that Ghost’s phone lighting up didn’t feel so strange anymore. It started with small updates about Angus.
Soap: The wee menace is back to his usual mischief. Knocked a glass off the table this morning.
Ghost: He learned that from you.
Soap: Oi! I’m no menace! You take that back.
Ghost: If that makes you feel better.
Soap sent back a laughing emoji and then a picture of Angus perched on his shoulder, looking smug. Ghost stared at it longer than necessary, the corner of his mouth twitching before he set the phone face-down on his desk.
The texts began to stretch beyond the cat. Ghost found himself checking his phone more often, waiting for the buzz. Sometimes Soap would send photos of the garage, half-taken-apart engines, or the sandwich monstrosities he called lunch. Sometimes Ghost replied with dry comments that made Soap laugh through text.
It was easy in a way most people weren’t for Ghost.
Then, on a grey Thursday morning, Ghost got the email.
Graves & Co. New Year’s Celebration!
Join us as we ring in the new year!
Attendance strongly encouraged for all staff. Plus ones encouraged!
He stared at the screen, exhaling slowly. Another company event. Another round of small talk, handshakes, more questions about his personal life.
He almost deleted the email. But, as he passed the break room that afternoon, he overheard a few of his coworkers chatting about the event.
“Riley! Are you bringing John to the New Year’s party?” one of them called out. It was one of the guys from accounting Ghost only interacted with when necessary. “Your boyfriend was a legend at Christmas!”
Ghost paused mid-step, his jaw tightening. A few others turned to look expectantly, amused grins spreading across their faces.
“Yeah,” said another, “you’re not allowed to show up without him, Riley.”
Ghost’s stomach twisted in a way he couldn’t name. He gave a short shrug, trying to sound disinterested. “I’ll have to check if he’s available.”
He knew he could tell the truth. Say they’d broken up. Say it was casual. Say something.
But each version of that lie felt strange on his tongue.
Soap had only agreed to the charade once. He’d done him a favour – a big one – and Ghost wasn’t about to impose again. It was fine. He would figure something out.
He always did.
That night, Ghost sat on the couch, the TV murmuring in the background. He was halfway through scrolling mindlessly through his phone when Soap’s name popped up again.
Soap: Fixing a bloody nightmare of a transmission. How’s your thrilling security life, Ghostie?
Ghost: Same as ever. Reports, idiots, paperwork.
Soap: Don’t sound so chipper. Folk might start thinking you’re enjoying yourself.
Ghost: Got another work event coming up. New Year’s thing.
He paused after sending it, thumb hovering over the screen. He hadn’t meant to mention it – it had just slipped out. The kind of throwaway comment he’d only make to someone he was used to talking to.
Soap’s reply came fast.
Soap: You going?
Ghost: Have to. Basically mandatory.
Soap: Sounds like hell. Do you need your boyfriend to back you up?
Ghost stared at the message for a long moment. He could almost hear the teasing tone in Soap’s voice. He typed something, deleted it, tried again.
Ghost: Haven’t decided.
A minute passed. Then–
Soap: I’ll come.
Ghost blinked, rereading that line.
Ghost: What?
Soap: I’ll go with you. Had fun last time. You make a decent date, and we’re a good team. Might as well keep the legend alive.
Ghost stared at the message, his thumb frozen mid-scroll.
Had fun.
You make a decent date.
He read that part again, slowly. He shouldn’t feel anything about that – shouldn’t read into it. It was a simple favour. Soap was being friendly. Helpful.
Still, something in his chest felt unsettled.
Ghost: You don’t have to.
Soap: Aye, well… I wouldn’t mind. It was a laugh, honestly.
Soap: C’mon, Ghostie. You need a plus-one, and it’s not like I have plans other than hanging out with Angus and watching tellie.
Ghost huffed, staring at the screen longer than he wanted to admit.
He wanted to say no. He should say no. It wasn’t fair to ask Soap again, to drag him into another round of pretending. But there was that same quiet pull – that strange comfort Soap brought with him, the way he made it all look easy.
And maybe, just maybe, Ghost wanted an excuse to see him again.
He sighed and typed slowly.
Ghost: You’re serious about this?
Soap: Deadly.
Ghost: Fine. If you’re sure.
Soap: That’s the spirit, Ghostie. You can pick me up. I’ll pick out our ties.
Ghost: Don’t push it.
Soap: No promises.
Ghost shook his head, setting the phone down with a quiet exhale. The TV flickered across the room, forgotten.
He told himself it was just convenience – a repeat of what had already worked. Nothing more.
But when he caught himself wondering what stupid tie Soap would make them wear this time, or whether Angus would be curled up waiting for them when he dropped Soap off later that night, he didn’t have a good explanation for why he cared.
And he didn’t try to find one.
~*~
Ghost wasn’t nervous.
At least, that’s what he told himself as he stood in front of the mirror, adjusting the collar of his shirt for the third time. He told himself it was because he hated crowds. It was just another stupid work function, another night to get through.
And it certainly wasn’t the thought of seeing Soap again that had him checking his watch every five minutes.
The drive to Soap’s flat was quiet, the streets slick from an early evening drizzle. The whole city seemed to shimmer with the anticipation of the new year – fairy lights blinking from windows, groups of people already spilling into pubs, the occasional firework being set off early.
When he reached the building, he climbed the stairs and knocked. A muffled thump came from inside, followed by a meow. Then the door opened.
“Look who’s early,” Soap said with a grin, leaning casually against the frame.
Ghost was ready with some dry retort, but his words stopped when something soft brushed against his leg. He looked down to find Angus weaving around his boots, tail held high.
“Hey, menace,” Ghost murmured, crouching down. His voice softened instinctively as he scratched behind Angus’s ears. “Missed me, huh?”
The cat headbutted his knee in answer, rumbling deep in his chest.
When Ghost finally straightened, Soap was still standing in the doorway, watching them.
There was a softness in Soap’s expression that Ghost didn’t recognize. Something open, warm. Like he’d just walked in on a memory he wanted to keep. The kind of look that made Ghost’s chest feel a little too tight.
“You ready?” Ghost asked, straightening.
Soap blinked, the look disappearing behind a grin. “Almost. Wait ‘til ye see what I’ve got.”
He darted back into the flat and returned holding two ties — bright red with little gold fireworks embroidered all over them.
Ghost stared. “No.”
“Yes,” Soap said cheerfully.
“Not a chance.”
Soap held them both up. “Matching, see? Festive. Bit of sparkle for the season.”
“I’m not wearing that.”
“You are, actually.” Soap stepped close, looping the tie around Ghost’s neck before he could step back. “You wore the last one. Don’t ruin the tradition.”
“Tradition? It’s been one bloody party.”
Soap just grinned and reached up, fingers brushing Ghost’s collar as he tightened the knot. Ghost could feel the warmth of Soap’s hands through the fabric — deft, quick movements, close enough that he could smell the faint traces of Soap’s cologne mixed with soap and engine oil.
“There,” Soap said softly. “Perfect.”
Ghost swallowed, looking anywhere but at him. “You enjoy tormenting me.”
“Aye,” Soap said, grin widening, “but ye look good while sufferin’, Ghostie.”
The venue was one of the firm’s partners’ – a sleek hotel rooftop bar filled with soft lights and too many people in sequins and suits. Ghost hated it on principle. The noise, the laughter, the smell of too expensive champagne. Ghost tugged at the ridiculous tie as they walked in.
Soap, of course, fit right in.
From the moment they walked in, Soap was in his element. He greeted everyone like he’d known them for years, charming Ghost’s coworkers with that easy grin and effortless warmth. He remembered names from the Christmas gala, even asked after a few people’s families.
Ghost hung back at first, keeping his usual quiet distance. But Soap had a way of pulling him into conversations – a touch on his shoulder here, a teasing comment there, drawing him closer until the space between them became part of the act.
At least, that’s what Ghost told himself it was.
When one of his coworkers ribbed Soap about “hogging Riley” again, Soap just laughed and threw an arm around Ghost. “Can ye blame me? My man scrubs up well. I’m no’ lettin’ anyone steal him away.”
Ghost shot him a sidelong look but didn’t shrug him off. The weight of Soap’s arm was… grounding. Comfortable.
Soap’s hand lingered a little longer than necessary as he spoke to the group, occasionally giving a squeeze, or brushing his hand against Ghost’s back when they moved through the crowd. It was all subtle, natural – the kind of easy touch that looked effortless, practiced.
It was supposed to be for show.
But Ghost found himself hyperaware of every point of contact – the warmth of Soap’s palm through his shirt, the scent of Soap’s cologne when he leaned in to whisper a joke, the low rumble of his laughter near his ear.
He caught himself looking once – at the ridiculous gold fireworks on Soap’s tie, at the way his smile reached his eyes – and had to glance away before it gave him away. Ghost told himself it was part of the act, that it helped sell the illusion. That was the story he stuck to even though his pulse disagreed.
Later, they found themselves outside, away from the noise. Soap had insisted on grabbing them each a drink – Ghost’s was whisky, neat; Soap’s was something shimmering that he claimed was “for the aesthetic”.
Ghost leaned on the railing, watching the lights ripple across the water. Soap stood beside him, shoulders brushing lightly.
“Y’know,” Soap said after a moment, “I think we might actually be gettin’ good at this.”
“At pretending?” Ghost asked.
Soap smirked. “At bein’ a team.”
Ghost’s reply caught in his throat. The warmth in Soap’s tone was so effortless, so genuine, that it made something twist low in his chest.
“Maybe,” he said finally.
Soap turned toward him, smile softer now, more tentative. “I don’t mind bein’ your plus-one, Ghostie.”
Before Ghost could think of a response – before he could find something dry enough to mask the sudden, strange flutter of feeling – the countdown began inside.
Ten. Nine. Eight.
Soap glanced toward the sound, then back at Ghost. The lights from inside spilled across his face, catching in his hair, the reflection of the city glittering in his eyes.
Seven. Six.
Soap stepped a little closer, tilting his head slightly, lips parting like he was about to say something – or do something. His smile faltered, his eyes flicking from Ghost’s to his mouth.
Five. Four.
Ghost felt it – that moment stretching between them, the air suddenly too thick, too charged. His pulse hammered, logic slipping for one dizzying second.
Three. Two.
They both leaned in, just slightly. Close enough that Ghost could feel the brush of Soap’s breath, smell the faint trace of champagne and mint.
Then the balcony door burst open.
“Riley! There you are!” It was Mike, grinning wide, phone raised. “C’mon, photo time! You too, John!”
Soap pulled back with a soft laugh, rubbing the back of his neck, grin snapping back into place like armour. Ghost straightened immediately, forcing his face to stay neutral.
They posed – Soap with his usual grin, Ghost with his usual stoicism – as fireworks exploded over the city.
Afterward, Soap turned back toward him, smile still there but quieter now. “Happy New Year, Ghostie.”
“Yeah,” Ghost said, voice low. “You too.”
The rest of the night passed in a blur. More laughter, more noise, more pretending everything felt the same as before. But every time Soap’s hand brushed his – accidentally, maybe – Ghost’s chest tightened just a little more.
Later, when the party was wrapped up, Ghost drove Soap home. Neither spoke much. The radio filled the silence with low, tinny music.
When Ghost pulled up outside Soap’s building, Soap hesitated before getting out.
“Tonight was good,” he said, voice gentler than usual. “Thanks for lettin’ me tag along again.”
“Wasn’t so bad,” Ghost said.
Soap’s grin softened. “Aye. Ye make a good fake boyfriend.”
Ghost’s throat went tight. “You too.”
For a heartbeat, neither of them moved. Soap’s gaze dropped to Ghost’s mouth again – barely, but enough that Ghost noticed. The air between them felt charged, the faint hum of the car’s engine the only sound.
Then someone nearby shouted, “Happy New Year!” followed by a burst of fireworks overhead. The spell broke. Soap chuckled, rubbing the back of his neck.
“Guess that’s my cue,” he said, voice lower now. “See ye soon, Ghostie.”
Ghost nodded once. “Yeah.”
Soap lingered a second longer before climbing out, the door shutting with a soft thud. Ghost watched him walk toward the building until he disappeared inside. Only then did he exhale, gripping the steering wheel tighter than necessary.
The fireworks flared again above the city, red and gold reflected in the windshield – like the ties they’d worn.
Ghost sat there for a long time, the echo of almost still humming through his veins, before finally putting the car in gear and driving away into the quiet streets.
~*~
John “Soap” MacTavish had never been one for stillness. His mind ran like a motor that refused to idle, all restless hands and unfinished thoughts, but even by his standards, something was off.
It had been a week since the New Year’s party, and every time he thought back on it – on the ridiculous matching ties, on the way Ghost’s voice had gone soft when he spoke to Angus, on that near-kiss on the balcony – his stomach flipped over like a poorly tuned engine.
He screwed up.
Big time.
It wasn’t supposed to mean anything.
The whole thing had started as a stupid favour to Gaz – an old army mate of his needed someone to play a fake boyfriend and since Gaz couldn’t do it, Soap, being the charming idiot he was, agreed to do it because he’d thought it sounded like a laugh. Pretend to be dating a tall, mysterious ex-military man who could silence a room with a glance? Sure, why not?
Except now, whenever Soap closed his eyes, he saw that same man’s face – sharp in the low light, those unreadable brown eyes that softened when he wasn’t paying attention.
And Soap, against every bit of common sense he had, had fallen for him.
The garage was unusually quiet that morning. The smell of oil and metal hung heavy in the air, mingling with the sound of rain pattering against the tin roof. Soap was meant to be working on a client’s engine, but his mind was a thousand miles away. He’d been staring at the same set of bolts for ten minutes when Gaz’s voice cut through the quiet.
“You gonna tighten that, or are you waiting for divine intervention?”
Soap blinked, looking up from the open hood. He hadn’t even noticed the door open. Gaz strode in with his usual easy confidence, two takeaway coffees in hand and a raised brow that meant he was about to start poking holes in something Soap didn’t want poked.
“Sorry, mate. Just… zoned out.”
Gaz frowned and handed Soap one of the cups. Soap took it with a grunt of thanks, taking a sip and instantly burning his tongue. “Bloody hell, that’s hot.”
“Serves you right for zoning out. You’ve been off all week.” Gaz leaned against the workbench, crossing his arms.
Soap waved him off. “M’fine. Just tired.”
“Mm.” Gaz didn’t look convinced. “Your mum doing alright?”
That question drew a genuine smile from Soap. “Aye, better. She’s back home, giving Da grief again. Got the all-clear from the doctor.”
“Good to hear,” Gaz said, nodding. “I was just wondering, who watched the menace while you were up north? Thought you said he hates being alone.”
Soap blinked. “Angus?”
“Yeah, your furry overlord.”
“Oh. Ghost took ‘im.”
There was a pause. A long pause. Gaz’s brows shot up. “Ghost? As in Simon “Ghost” Riley Ghost?”
Soap froze mid-sip. “Er… aye. He – uh – helped out.”
Gaz’s mouth quirked into a knowing grin. “I didn’t know you two kept contact. Since when are you two on cat-sitting terms?”
“It’s not like that,” Soap said quickly, waving the cup as if it could erase the heat rising in his face. “Was just, y’know, after the gala, we kept in touch a bit. I needed someone reliable, and he’s – well, he’s good with animals.”
“Right,” Gaz said slowly, his grin widening. “Good with animals, huh?”
Soap turned back to the car, pretending to focus on the engine again. “That’s what I said.”
Gaz snorted. “You’re a terrible liar, Soap.”
“I’m not lyin’!”
There was another pause. It only lasted for a few seconds before Gaz asked: “Are you falling for him?”
Soap’s silence said everything.
Gaz let out a low whistle, shaking his head. “Christ. Didn’t think I’d live to see the day someone shut you up.”
Soap groaned. “He’s not… it’s complicated.”
Gaz raised an eyebrow. “Complicated, huh? That’s the word people use when they’ve caught feelings and don’t wanna admit it.”
“I haven’t caught anythin’. This isn’t the bloody plague,” Soap glared at him. “I didn’t mean for it to happen, alright? It wasn’t supposed to be like this, Gaz. It started as a favour. I thought it’d be a laugh.”
“And was it?”
“It was,” Soap said quietly. “At first. He’s funny, in that deadpan way. Doesn’t say much, but when he does…” He trailed off, realizing how much he was giving away, but Gaz just watched him with that patient, annoyingly perceptive expression.
“And the blond hair, the broad shoulders, and that accent don’t hurt, I’m guessing?”
Soap threw a rag at him. “Piss off.”
Gaz laughed, dodging easily. “Mate, you’re gone.”
Soap groaned, dragging both hands down his face. “Bloody hell, Gaz.”
“What now?”
“Now he’s…” Soap’s voice trailed off. He didn’t know how to describe it – how Ghost had slowly crept into the quiet corners of his day. The way he missed the deadpan jokes or the pictures of his latest “proper English breakfast” that looked like something out of a barracks kitchen, the faint humour hidden under all that stoicism. The way Ghost had looked at him under those fireworks – eyes dark and steady, like Soap was something special to be admired.
Soap swallowed hard. “Now I can’t bloody stop thinkin’ about him.”
Gaz’s grin softened a little. “That’s what it sounds like when you’ve got it bad, Soap.”
“Yeah,” Soap muttered, voice low. “Feels like it, too.”
He leaned back against the car, staring down at the oil-stained floor. “I thought it was just banter, ye know? A bit of fun. Hell, I even went out with him a second time to his company's New Year's party. But then he went and looked at me like that – like he was seein’ past all the shite. And I-” He stopped himself, running a hand through his hair. “Christ, I’m an idiot.”
Gaz chuckled, clapping him on the shoulder. “Aye. Maybe. But you’re an honest idiot.”
Soap glanced at him. “What am I supposed to do, then? Just tell him? ‘Oh, hey, Ghost, turns out I fancy you for real, no big deal’?”
“Might be worth a shot,” Gaz said, grinning.
“Gaz.”
“Alright, alright.” Gaz held up his hands, laughing. “Maybe not that blunt. But you could just admit you fancy him and see what happens. Worst case, you crash and burn spectacularly. Best case, he’s into you too, and I get to say I told you so at your wedding.”
Soap sighed, pressing his palms to his face. “You’re annoyin’ when you’re right.”
“I’m always right,” Gaz said smugly. “You’ve got to do something, Soap. You keep this up, you’ll end up avoiding him just to stop yourself from feeling. And you? You’re not built for quiet heartbreak.”
Soap picked up his wrench again, turning it absently in his hands, his thoughts still a tangled mess.
“Trust me when I tell you this,” Gaz continued, “Ghost’s not the type to fake something twice unless there is something there for him too. Now, back to work. If you’re gonna pine, at least do it while you fix cars.”
Soap muttered something Scottish and rude under his breath, earning another laugh from Gaz. He glanced down at the half-fixed engine, but his mind was elsewhere – on a pair of dark eyes, a voice rough and quiet saying, “You enjoy tormenting me.”
Soap sighed, pressing his palms against the cool metal.
He’d fallen for Ghost – against his better judgment, against every warning sign he’d ignored. And for the first time in his life, John MacTavish had no idea what to do next.
~*~
Ghost never used to text much. His phone had been purely functional – calls, work, nothing else. But lately, ever since he met Soap, he’d been using his phone for texting too. Ghost hadn’t realized how often he’d pull out his phone these days. He found himself checking for Soap’s name even when there was no alert. Found himself thinking of something and wanting to send it, just to see that little typing bubble pop up in response.
His morning routine had changed too. Wake up. Check his phone. More often than not, there’d be a message waiting from Soap.
Sometimes it was a meme, ridiculous and misspelled, that made him snort into his coffee. Sometimes it was a photo of Angus caught in some act of feline villainy. Other times, it was just a simple, “Morning, Ghostie. Don’t work too hard today.”
His evenings were the same. He’d get home from the office, peel off his jacket, and check his phone. There’d be another message from Soap. Always. Sometimes a joke – terrible ones, the kind that made Ghost pinch the bridge of his nose while he fought the twitch of a smile. Sometimes just a line about his day, a picture of Angus sprawled across the couch, or something utterly random like “Ever seen a marten steal a sandwich? Hilarious, you should have seen Gaz’s face.”
And Ghost always answered.
What started as courtesy – keeping in touch with the man who helped him out – had slowly turned into something else. The conversations had stretched out later into the night. Texts turned to voice notes. Phone calls when Soap had been “too lazy to type” or when Ghost was busy finishing up work.
Ghost told himself it didn’t mean anything. It was easy to believe that, right up until the moment Soap’s name lit up his screen and his pulse jumped like he’d been caught doing something he shouldn’t.
He was so screwed.
He knew it, even if he couldn’t say it aloud.
It hit him sometime after midnight, while he was sitting on his couch, phone in hand, scrolling through his messages with Soap.
He could trace the gradual shift – from polite updates about Angus, to conversations that bled into personal territory. Music. Films. Childhood stories. Inside jokes. Soap had a way of slipping under Ghost’s guard, asking just enough to make him open up without realizing he was doing it.
Ghost had never met anyone who could do that.
He leaned back, staring at the ceiling, that heavy, unfamiliar ache sitting low in his chest. He’d spent years being careful, keeping things simple, predictable. But predictable and simple were not words that Soap seemed to know.
It would’ve been easier if the man wasn’t so… earnest. So open. So maddeningly charming in that effortless, chaotic way. Ghost had told himself it was all just for the act – two blokes pretending for the sake of a story that had gotten out of hand. But even now, weeks later, Soap still texted. Still checked in. Still made him laugh.
And Ghost didn’t know what to do with that.
~*~
It seemed fitting that Gaz would be the one who knocked him out of his own thoughts.
Ghost ran into Gaz by accident at a coffee shop, of all places – Ghost waiting for a black coffee, Gaz grabbing something iced with too much sugar.
“Bloody hell,” Gaz said with a grin, clapping a hand on his shoulder. “Didn’t expect to see you out in the wild, mate.”
Ghost huffed a quiet laugh. “Needed caffeine. Been a long week.”
Gaz looked him over with a smirk. “You say that every week.”
“Doesn’t make it less true.”
“Fair.” Gaz took his cup and nodded toward the door. “We should catch up proper. It’s been a while.”
Ghost nodded as he accepted his coffee from the barista. “Alright. Pick a time and place.”
They met a few days later at a quiet pub tucked off the high street – warm lighting, scuffed tables, and the faint hum of conversation filling the air. Gaz was already at the bar when Ghost walked in, grinning wide when he spotted him.
“Good to see you again, Ghost,” Gaz said, clapping him on the shoulder. “Didn’t think you’d actually show up.”
Ghost snorted and settled onto the stool beside him. “You could say I’m a changed man these days.”
That made Gaz snort and he motioned to the bartender heading in their direction. “Two pints. On me.”
The pints arrived, and for a while, they fell into easy chatter – Gaz telling stories about his recent getaway to York, about Lisa dragging him through every Christmas market and antique shop within a ten-mile radius. Ghost listened, the corners of his mouth twitching up at Gaz’s exaggerated groaning.
“Was nice, though,” Gaz admitted finally. “Bit of quiet. Lisa needed it. Think I did too.”
Ghost nodded. “You both work too much.”
“Says the man who answers emails at two in the morning,” Gaz shot back, smirking.
Ghost didn’t argue that.
They continued to talk – work, life, the usual small talk. Ghost wasn’t much for conversation, but Gaz was good at keeping things moving without forcing it. Somewhere between rounds, the topic shifted naturally.
“So,” Gaz said casually, sipping his beer, “heard from Soap you two have been in touch.”
Ghost froze mid-sip. “Aye. We- uh. We’ve texted.”
Gaz hummed, casual but too casual. “Mm. He also mentioned you went to a New Year’s party together?”
Ghost paused. “Yeah. He went with me.”
“Really?” Gaz asked, playing it up just enough to almost sound convincing. “Didn’t think he’d do something like that again.”
“He did,” Ghost said, then after a pause, “Actually, I didn’t even ask. He offered.”
Gaz’s lips curved. “Huh.”
Ghost narrowed his eyes. “Do you know something?”
“Me? Nah,” Gaz said, all innocence. “Just surprised. Didn’t realize you two hit it off like that.”
Ghost frowned. “Don’t act like you didn’t already know.”
Gaz chuckled into his drink. “You’re not wrong. Soap said he had fun.”
Ghost shifted in his seat, unsure what to say. Fun wasn’t the word he’d have chosen for that night. Not after realizing halfway through that standing next to Soap – watching him laugh, talk, charm everyone in the room – felt dangerously right.
Gaz must’ve caught the flicker of something on his face because he leaned in, elbow braced on the bar. “You liked having him there, didn’t you?”
Ghost’s brows drew together. “He did well. Made it easier.”
There was a flicker of amusement in Gaz’s eyes that Ghost didn’t miss. “Easier?”
“He talks enough for both of us,” Ghost muttered, taking a sip of his drink. “People like him. Means I can stand there, drink, and not have to do the social bit.”
Ghost stared into his pint, watching the bubbles rise and pop. “He’s… easy to be around,” he admitted quietly. “Doesn’t ask too many questions. Doesn’t expect me to talk all the time.”
Gaz’s expression flickered – the kind of knowing look that made Ghost regret speaking. “Didn’t think I’d ever see you willingly talk about someone with more than two sentences, let alone smile while doing it.”
“I’m not-”
“You are,” Gaz said, cutting him off, amusement clear. “You’ve got that look of someone who’s trying real hard to pretend he doesn’t care when he clearly does.”
Ghost sighed. “It’s complicated.”
Gaz leaned back, crossing his arms. “That’s what Soap said.”
Ghost’s head snapped up. “Soap said that?”
“Mm-hm. Practically the same words.”
They sat in silence for a moment, Gaz letting the words hang there.
Ghost finally spoke, voice quieter. “Did he… say anything else?”
Gaz smiled, small and knowing. “Just that he likes talking to you.”
Ghost looked away, jaw tightening just slightly, but there was the faintest tug at the corner of his mouth.
Gaz caught it instantly. “You like talking to him too, don’t you?”
Ghost huffed, taking another drink to avoid answering. “He’s tolerable.”
Gaz laughed. “Mate, you just called John MacTavish tolerable. That’s practically a declaration of love coming from you.”
“Knock it off,” Ghost muttered, but there was no bite to it.
“Didn’t think I’d ever see the day,” Gaz said, half-teasing, half-genuine. “The great Ghost, smitten.”
Ghost didn’t reply. Instead, he thought of Soap’s texts that morning – one about how Angus had stolen his toast again, followed by a picture of the cat sprawled like a king across his kitchen counter.
“See! You’re thinking about him right now!” Gaz’s grin only grew.
“Gaz.”
“Alright, alright,” Gaz said, laughing. “I’ll shut up. Just… don’t overthink it, yeah?
Ghost glanced sideways. “What?”
“Whatever’s going on with you and Soap. Just… let it be what it is. Maybe stop fighting it and see where it goes.”
Ghost stared into his drink, letting the words settle. He could still picture Soap’s grin, hear his laugh, feel the way he’d adjusted Ghost’s tie that night like it was the most natural thing in the world.
“Yeah,” he said finally, almost to himself. “Maybe.”
Gaz smiled knowingly. “I’ll drink to that.”
Ghost raised his glass, but as they clinked pints, his mind was already miles away – on a certain Scotsman with too much charm, too much warmth, and maybe, just maybe, the key to breaking through the walls Ghost had spent years building.
When Ghost got home later, the flat was quiet and dark. He tossed his keys down, leaned against the counter – and before he could stop himself, he pulled out his phone. There was a message waiting from Soap.
Soap: How were drinks with Gaz?
Ghost: Good.
Soap replied within minutes.
Soap: Just “good”?
Ghost’s fingers hovered above the keyboard as he debated on what to answer.
Ghost: Apparently he knows we’ve been in contact.
Soap: Aye?
Ghost: He said you’re trouble.
Soap: Well, he’s not wrong.
Ghost’s lips twitched, just barely. He hesitated, thumb hovering over the screen, then typed before he could overthink it.
Ghost: I don't mind.
A pause. Then –
Soap: Careful, Ghostie. Sounds like you’re growing fond of me.
Ghost didn’t reply right away. He just stared at the words, a warmth creeping through his chest before he set the phone down.
Gaz had hit the nail clean on the head. Ghost was smitten. Utterly and stupidly smitten.
~*~
The trouble with silence was that it left too much space for thinking.
Ghost had never minded quiet before. He’d built his life around it – the steady, predictable rhythm of work, home, sleep. No attachments, no complications, no mess. After the military, he’d promised himself he would never get tangled in anyone’s life again.
And yet…
This thing with Soap was different. He couldn’t shut it down, no matter how hard he tried. He found himself reaching for his phone at odd hours, waiting for the familiar vibration.
It always started the same way: a stupid joke, or a photo of Angus doing something absurd.
Soap: He’s figured out how to open doors now. I fear for my safety.
Ghost: He’ll take over the world next.
Soap: You say that like it’s a bad thing.
Ghost would stare at the message longer than he needed to, thumb hovering before he typed something back. Every time, without fail.
He kept trying to convince himself it didn’t mean anything – it was just friendship, banter, habit. But there was a difference between what he told himself and what he felt when Soap’s name lit up his screen. That flutter of something quiet but insistent in his chest.
It wasn’t supposed to be like this.
He’d always thought feelings came loud – like explosions, like chaos. But this… this was worse.
It crept in quietly, filling the cracks before he realized they were there.
He found himself wanting to text first. Caught himself scrolling through photos Soap had sent – a sandwich captioned “Lunch of champions” or a greasy post-work selfie from the garage with a grin that reached his eyes.
The man had a knack for getting under his skin. For turning even the quietest moments into something that felt alive.
And now, Ghost couldn’t unsee it – the way Soap’s laugh felt like sunlight on the cold edges of his world. The way that last look outside Soap’s flat on New Year’s still haunted him, the almost-kiss that lingered like a bruise.
He leaned back in his chair, rubbing a hand over his face, muttering under his breath. “I’m a bloody idiot.”
Because Gaz had seen it immediately. Hell, anyone with eyes probably could. The stoic, antisocial ex-soldier caught flat-footed by the loud, charming Scot with the smile that could disarm him faster than any weapon.
He didn’t know what to do with that kind of truth.
A few days passed like that – Ghost fighting himself, convincing himself to leave it alone. Soap deserved someone easier. Someone who wasn’t a mess of boundaries and silences. Someone who didn’t freeze up the second things got personal.
So Ghost tried to make it stop. Tried to keep his phone out of reach, to occupy himself with work, to not think about it.
That lasted less than a day.
The next evening, his phone buzzed.
Soap: Do you reckon Angus misses you? He’s been sitting by the door all day like he’s expecting company.
Ghost stared at it for a long moment before sighing.
Ghost: Probably waiting for someone to feed him again. You spoil him.
Soap: I spoil everyone. Part of my charm.
Ghost: Debatable.
Soap: Just admit you want me to spoil you too.
Ghost froze, thumb hovering over the keyboard. He could hear Soap’s teasing voice even through text, that lilt that made everything sound lighter.
He should’ve ignored it. He knew he should’ve. But instead, his fingers moved on their own.
Ghost: Didn’t say that.
Soap: Didn’t deny it either.
Ghost let out a low groan, pinching the bridge of his nose. The man was impossible.
But even as he muttered curses under his breath, there was a faint smile tugging at his mouth.
This wasn’t part of the plan. Ghost didn’t do things like this. Didn’t let people in. And yet here he was, talking to Soap every night, thinking about him in the quiet moments, catching himself looking for any excuse to hear from him again.
Later that night, Ghost found himself standing at his window, the city lights spilling through the glass, his reflection faint and ghostlike in the dark.
He could see his own face – unreadable, as always – but his phone was still in his hand, Soap’s latest message open.
Soap: For what it’s worth, I’m glad Gaz roped me into this mess. Would never have met you otherwise.
Ghost’s heart gave a small, traitorous thud.
He didn’t reply. Couldn’t. Not right away.
Instead, he turned off the screen and stood there a while, trying to steady the ache in his chest – that strange, restless feeling of wanting something he couldn’t quite reach.
He’d spent his whole life running from things that could hurt him. But somehow, a loudmouthed Scotsman with a crooked grin had slipped past every defence he’d ever built.
And Ghost, for the life of him, didn’t know how to stop it.
When his phone buzzed again, he didn’t hesitate.
He picked it up. He answered.
And as the soft glow of the screen lit up his flat, he realized – maybe he didn’t really want to stop it after all.
~*~
When Soap texted him on Tuesday morning, Ghost was halfway through a dull security report and a lukewarm cup of coffee.
Soap: I got a question for you.
Ghost: If this is about the possibility of Angus learning to drive, I’m busy.
Soap: Ha! No, it’s a serious question.
Soap: Gaz and I have this dinner on Friday. It’s with someone we’re hoping to land as a supplier for the garage. It’s at some fancy place down town.
Ghost: Congratulations. What does that have to do with me?
Soap: Gaz is bringing Lisa and I don’t feel like looking like a spare tyre. So, do you want to be my plus-one?
Ghost stared at the words for a long moment, feeling the faint thud of his heart against his ribs.
Of all the things Soap could be texting him about, this wasn’t what Ghost was expecting. It had been a while since the New Year’s party, and though he and Soap still texted near daily, they hadn’t seen each other face to face again. Part of him had wanted to – the part that remembered how Soap’s smile had lingered in his head for days after. But he’d also been trying to manage the mess of feelings that had crept up since then, and distance helped. Somewhat.
Now Soap was asking him to step back into the same story that started it all.
Ghost: Are you sure you want me there?
Soap: Of course, Ghostie! I like having you around. We’re a good team, remember?
Ghost hesitated on what to answer, but before he could, there was another message from Soap:
Soap: Pretty please?
Ghost stared at the message for a long moment before typing, Fine, and sending it off.
Soap’s reply came almost instantly.
Soap: Brilliant! Knew I could count on you <3
Ghost stared at the heart longer than he would ever admit.
Friday came too quickly and not quick enough in Ghost’s opinion.
He had been telling himself it was just another favour, another night of pretending – but his heart didn’t seem to want to believe it. He’d spent far too long thinking about what to wear, then cursing himself for thinking it. When he finally settled on a simple all-black suit, he felt ridiculous for how long it had taken him to decide.
Ghost had agreed to pick Soap up again as Soap had the habit of running late. The streetlights had just started to glow, their pale-yellow light catching in the drizzle slicking the pavement.
When Soap stepped out of the building, every coherent thought in Ghost’s mind vanished.
Soap looked good. Almost too good.
Ghost had seen Soap in a suit two times before, but he didn’t seem to ever get used to the sight. Soap was wearing a dark blue suit that brought out his blue eyes. His hair was styled, his grin was bright as ever, and his tie – a deep navy scattered with tiny gold gears – was slightly crooked.
“Evenin’, Ghostie,” Soap greeted, sliding into the passenger seat. Only then did Ghost notice the tie in his hand, identical to the one Soap was wearing.
“You’ve got to be joking,” Ghost muttered.
“Matching ties are tradition now,” Soap said, smirking. “Wouldn’t want to ruin our image, would you?”
“You’re insufferable.”
“Aye,” Soap said cheerfully, “but you like that about me.”
He leaned over before Ghost could protest, deftly looping the fabric around his neck, his fingers brushing Ghost’s throat as he worked. Ghost froze. The air between them shifted – warm, electric. Soap’s knuckles grazed his jaw as he tightened the knot, and for a heartbeat, Ghost thought the world had gone silent except for the sound of his pulse.
When Soap moved back, his grin softened. “There. Perfect.”
Ghost swallowed, eyes flicking away. “I’m starting to think you enjoy this too much.”
“Oh, I definitely do.”
The restaurant was one of those places with dim lighting and expensive cutlery. Gaz and Lisa were already there when they arrived. When the two saw Ghost and Soap approaching the table, two matching grins grew on their faces. Ghost didn’t like that one bit.
“Simon!” Lisa greeted brightly, standing to hug him. “It’s so good to see you again! Gaz said you might come along.”
Ghost shot Gaz a look. Gaz only smiled innocently as Ghost awkwardly returned the hug. “Evening, Lisa.”
Lisa stepped back with a grin, taking in both men. “And look at you! Don’t the two of you clean up nicely.”
“Cheers,” Soap said, leaning in to greet her with a quick kiss on the cheek. “How’ve ye been?”
“Good,” Lisa said as they said down. Their waiter brought over the wine list for them to check out before they were joined by the supplier.
The evening unfolded more smoothly than Ghost had expected. The potential supplier, a middle-aged man with a calm voice and sharp eyes, seemed impressed by the garage’s reputation and was very willing to do business.
Ghost didn’t say much, but that didn’t matter. He didn’t need to. Soap, as always, filled the space with his warmth and quick wit, weaving jokes with effortless precision. Every now and then, he’d glance at Ghost for a wink or a shared smirk when someone said something particularly dull.
It was… nice. Too nice, maybe.
Lisa was all gracious warmth, effortlessly balancing Gaz’s dry humour. Ghost found himself relaxing in their company, enjoying the food and ambiance of the restaurant more than he expected.
At one point, while the others were busy with the dessert menu, Lisa leaned toward him with a gentle smile. “You know, you’re good for him.”
Ghost blinked. “What?”
“John,” she said, nodding toward Soap, who was currently arguing good-naturedly with Gaz about whether they needed another bottle of wine. “He’s… lighter when you’re around.”
Ghost didn’t know what to say to that.
When Soap caught his eye across the table, grin wide, laughter creasing the corners of his eyes – Ghost looked away.
After dinner, the supplier left with the promise of getting in touch to get the contract they’d agreed on signed. They watched as the man headed to the valet to get his car before they said their own goodbyes as Gaz and Lisa headed to their car, Lisa waving as they went.
Soap lingered by Ghost’s truck. “Thanks for coming,” he said, softer now, the easy humour from dinner replaced by something quieter. “Couldn’t’ve done that without ye.”
“You could’ve,” Ghost replied. “You're better at this than you think you are.”
Soap huffed a laugh. “Maybe. But I didn’t want to.”
Ghost looked at him again, like he had done so many times during the night. The way Soap’s tie was loosened slightly, his hair mussed from the wind, the faint flush still on his cheeks. The small, genuine smile that was for no one but Ghost.
“You’re the best company I’ve had in a while,” Soap said, his smile faltering for half a second before returning.
Something in Ghost’s chest tightened – a quiet ache that felt suspiciously like wanting. He didn’t know what to say, so he didn’t say anything. Just unlocked the car.
“C’mon,” he said roughly, clearing his throat. “Let’s get you home.”
As Soap slid into the passenger seat, tie glinting faintly in the streetlights, Ghost caught their reflection in the window – two men side by side, dressed too well for what they were pretending to be.
And for the first time, Ghost knew he wasn’t pretending at all.
~*~
The drive back to Soap’s flat was quiet, but not in a bad way. The kind of quiet that filled up every inch of space, thick and humming with unspoken things. Streetlights washed the car in pale gold and shadow as they drove through familiar streets.
Ghost gripped the steering wheel tighter than necessary, jaw set, eyes fixed on the road ahead. Soap sat in the passenger seat, one elbow propped against the window as he watched the city blur past.
Ghost glanced at him, catching the way the light caught Soap’s mohawk. They had done this before – a quiet drive back after a night of pretending to be something they weren’t. Except, Ghost thought grimly, that wasn’t true anymore. Pretending had turned into something else, something messier. At least, it had for him.
He tried to focus on the road, but his chest felt too tight, his thoughts too loud. Everything about this – about Soap – had gotten under his skin. Every look, every laugh, every stupid joke. Every time Soap touched him without thinking, Ghost’s body remembered it hours later.
He shouldn’t have let himself get used to having Soap.
But he had.
And now it was too bloody late.
When Ghost parked in front of Soap’s flat, neither of them moved.
Soap turned to him, mouth curving into that small smile that had been haunting Ghost’s thoughts for weeks. “You want to come in for a minute? Got decent whisky in the cabinet.”
Ghost hesitated. He knew if he went in, he wouldn’t want to leave. Not now. Maybe not ever.
“Best not,” he said finally. “Early start tomorrow.”
Soap nodded, but his gaze lingered. “Right.”
He didn’t move to get out. Instead, Soap leaned back in his seat, exhaling slowly. “Y’know, these nights with you… they’re never what I expect.”
Ghost frowned faintly. “What’s that supposed to mean?”
Soap gave a small shrug, looking down at his hands. “I dunno. Just- I used to hate these kinda dinners. All that talkin’ and smilin’ for people that don’t really matter. But with you-” he hesitated, glancing up, voice softening, “I don’t mind it so much anymore.”
The words landed between them like a quiet confession, too gentle to shatter the air but too sharp to ignore.
Ghost’s breath caught. He turned to look at Soap – the tired curve of his smile, the faint nervousness behind it, the way his hand fidgeted with the edge of his tie.
“Soap…” Ghost began, but his voice came out lower than he meant, rougher, more choked up.
Soap met his gaze. “What?”
Ghost hesitated. He could lie, could deflect like he always did – but something in Soap’s expression, open and unguarded, made it impossible.
“I keep trying not to-” he stopped, jaw tightening. “Trying not to think about this. About you.”
Soap’s breath hitched, eyes flicking between Ghost’s. “And how’s that goin’ for ye?”
Ghost’s lips twitched in something that wasn’t quite a smile. “Terribly.”
That earned a laugh – small, almost disbelieving – and then the silence came again, softer this time, like they both knew what came next but neither dared to move first.
Soap’s voice broke it, low and careful. “Ye could stop tryin’, y’know.”
Ghost’s pulse jumped. “Could I?”
Soap’s hand lifted, hesitated midair, then cupped Ghost’s cheek – a feather-light touch, testing the waters. “Aye,” he murmured. “Ye could. I wouldn’t mind you thinkin’ about me.”
Then Soap leaned in, just a little, and Ghost stopped thinking completely. It wasn’t a dramatic kiss. There was no sudden rush of movement, no sharp inhale. Just a slow, inevitable shift – Soap leaning in, Ghost meeting him halfway. Their lips brushed, like both were afraid to push too far and break it.
Soap drew back first, just enough to look at him. His voice was barely a whisper. “Been wantin’ to do that for a while.”
Ghost exhaled shakily, opened his eyes to look Soap in the eye. “Yeah,” he said quietly. “Me too.”
They stayed like that for a long moment – the engine ticking softly, the world outside moving on – before Soap finally smiled, a slow, crooked grin that made Ghost’s chest flutter.
“Still don’t want to come in?”
Ghost’s pulse jumped. He looked at Soap, really looked – at the glow of the streetlight illuminating his face, at the curve of his smile, at the faint pink on his cheeks from the kiss they’d shared. He’d spent months building walls, layering quiet and distance between himself and the world, and somehow Soap had slipped through every single one of them without even trying.
Ghost swallowed hard. His throat felt tight. “Yeah,” he said finally. “I’ll come in.”
Soap’s grin was slow, soft, almost smug. “Aye? I knew ye couldn’t resist me.”
“Don’t make me change my mind,” Ghost muttered, turning off the ignition.
“Wouldn’t dare.”
They got out of the car and jogged through the light drizzle to Soap’s flat. The smell of rain and pavement followed them inside, mixing with the faint scent of soap and motor oil that Ghost had grown to associate with Soap. Angus was sprawled in the armchair in the corner, tail flicking lazily, but lifted his head the moment they came in.
Ghost toed off his boots and stood awkwardly near the door. “You sure about this?”
Soap turned back to him, eyes bright even in the low light. “I’ve never been more sure of anything, Ghostie.” He stepped closer, the distance between them shrinking until Ghost could feel his breath against his skin. “Unless ye’d rather keep pretendin’ we don’t both want this.”
Ghost gave a quiet huff, somewhere between a sigh and a laugh. “Pretending stopped working a while ago.”
Soap’s hand came up, curling around the edge of Ghost’s jaw, thumb brushing against the faint stubble there. “Good,” he murmured, and then he was kissing him again.
This kiss wasn’t hesitant. It was everything the first hadn’t been – hungry, certain, weeks of tension and restraint giving way all at once. Ghost’s hand found Soap’s waist, drawing him closer, the other sliding up into his hair. Soap’s hand slid to the back of Ghost’s neck, tugging him closer, until there was no space left between them. Soap tasted like whiskey and rain, sharp and warm and real.
Soap bit Ghost’s lower lip and Ghost retaliated by pulling at Soap’s mohawk. Soap made a sound – something between a laugh and a groan – before Ghost pulled him in closer.
When they finally broke apart, both of them were breathing hard, the space between their lips barely a breath.
“Been wantin’ to do this for weeks,” Soap panted.
Ghost’s voice was rough when he answered. “Could’ve fooled me.”
Soap’s smile turned wicked, his hand sliding up Ghost’s chest to undo another button. “Oh, you’ve no idea.”
“Show me, then.”
Soap’s eyes darkened, a flicker of surprise and warmth there before he leaned in again, kissing Ghost again.
By the time they made it to the couch, Ghost’s jacket was gone, forgotten somewhere near the door, and his dress shirt had the first four buttons undone. Soap wasn’t far behind, his tie hanging loose over his unbuttoned shirt. Ghost’s fingers caught the silk to pull him closer again.
Soap smiled against his mouth. “Told ye we make a good team.”
Ghost’s answer was another kiss – deeper, hungrier.
The night outside stretched on, rain pattering softly against the windows as the lights in the flat dimmed. Somewhere on the other side of the living room, Angus jumped down from the chair and disappeared into the bedroom, wisely leaving the humans to whatever they were tangled in.
And when Ghost finally stopped thinking, when he let himself give in completely, the world narrowed to warmth and breath and the faint, muffled sound of Soap’s laughter against his skin – the rest of the night a blur of heat and shadows and quiet laughter that faded into something softer.
Outside, the rain kept falling.
Inside, the world finally – finally – fell into place.
~*~
Three weeks later, the morning sky was a dull grey, the weather report of the day speculating either late snow or more rain. Inside Soap’s flat, it was warm and quiet in way that felt lived-in.
Ghost was seated on the couch, one arm stretched across the backrest, the other loosely holding the morning paper. He wasn’t really reading, too distracted. His gaze kept drifting to the kitchen, where Soap was moving about barefoot, hair sticking up at odd angles, still in an old shirt Ghost had left behind the other day.
“Ye keep starin’ at me like that, I’m gonna start chargin’ for it,” Soap called over his shoulder, his accent warm and thick with sleep.
Ghost grunted, pretending to return his attention to the paper. “Didn’t realise you minded me staring.”
“I don’t,” Soap answered, “I know ye’re just appreciatin’ the view.”
Ghost’s lips twitched. “You’re impossible.”
Soap padded over, two steaming mugs of coffee in hand, and set one down in front of Ghost before dropping onto the couch beside him. “Aye, but you like me that way.”
Ghost didn’t argue. He just looked at him – the way Soap leaned comfortably against his side, the faint scratch of stubble along his jaw, the ghost of a smile that always threatened to turn into a laugh. It still didn’t quite make sense to him, how easily this had settled into something that felt… right. Natural.
Soap took a sip of his coffee and sighed contentedly, leaning further into Ghost’s shoulder until Ghost finally relented and wrapped an arm around him. Soap fit there perfectly, his hand finding its way beneath the hem of Ghost’s hoodie, thumb tracing idle shapes against the scarred skin of his side. Ghost shivered.
“Gaz asked about us the other day,” Soap said suddenly, his voice casual. Ghost looked up from the paper in his hand and raised an eyebrow, “And what did you tell him?”
“Told him you finally stopped glarin’.”
Ghost rolled his eyes. “You make me sound like such a romantic.”
Soap grinned, “Aye, secretly you are very romantic, Ghostie.”
Ghost tried to fight the faint heat that crept into his ears. “Don’t push your luck.”
“Or what?”
Ghost leaned down, brushing his nose against Soap’s. “Or I stop feeding your bloody cat.”
Soap laughed, bright and easy, before tugging him down for a kiss, slow and warm and familiar. When they finally broke apart, Soap sighed contentedly and dropped his head back to Ghost’s shoulder. “Never thought I’d see the day the ‘great’ Ghost would be domesticated.”
Ghost gave a quiet grunt. “Wouldn’t call it that.”
“What would ye call it then?”
Before Ghost could answer, Angus hopped up onto the arm of the couch and wedged himself between them with a disgruntled meow.
Soap chuckled, reaching to scratch the cat behind the ear. “Jealous, are ye?”
Ghost smirked faintly. “He’s got good taste.”
The cat purred louder, curling up on Ghost’s lap like he had always belonged there. Ghost’s hand moved absently through Angus’ fur, and Soap watched him with something that looked dangerously close to awe.
“You didn’t answer my question,” Soap said after another sip of coffee.
Ghost looked at him – at the man tangled up in his arms, at the lazy smile, the soft eyes, the cat purring between them – and something in his chest eased in a way it hadn’t in years.
“Peace…” Ghost said after a long moment, “I would call it peace.”
Soap blinked up at him, grin softening into something warmer. “Peace, huh?”
“Don’t get used to me saying sentimental things,” Ghost warned, though there was no real bite to it.
Soap smirked, voice low and teasing. “Too late.”
They sat like that for a while – tangled limbs, quiet breaths, the hum of something new but steady between them.
At one point, Soap reached up and looped his fingers through Ghost’s, their hands resting over his heart. “Hey,” he murmured, thumb brushing slow circles against Ghost’s skin. “We’re a good team, yeah?”
Ghost looked down at their joined hands, then at Soap’s half-lidded eyes and the faint smile tugging at his lips.
“Yeah,” Ghost said softly. “We are.”
They stayed there like that – Soap’s head against Ghost’s shoulder, Angus purring, the morning light slipping through the curtains. It wasn’t loud or dramatic or full of grand declarations. It was simple. Steady.
Exactly the way Ghost liked it.
And for the first time in a long time, he didn’t feel alone in the quiet.
