Work Text:
James Potter had barely stepped onto the Hogwarts Express when his eyes landed on Severus. There he was, standing stiffly near the entrance to a compartment, arms crossed over his chest, his expression composed into something carefully neutral. But James knew better. He saw the flicker of Severus’s dark eyes as they darted up at the sound of his footsteps, the twitch of his fingers against his sleeve—so small that no one else would have noticed, but James did. He always did.
Two months apart. Two months of letters that felt too impersonal, of restless nights staring at the ceiling, of missing Severus in a way that felt like an ache in his bones.
He wasn’t about to waste another bloody second.
Before Severus could react, James surged forward, grabbing him by the wrist. “What—?” Severus started, but James had already shoved him into the nearest empty compartment, sliding the door shut behind them.
The second they were alone, James yanked the blinds down, locking them into a world of their own before turning on Severus with a desperate sort of hunger.
“James—” Severus barely got the syllable out before James crashed into him, hands gripping his waist, lips colliding against his in a kiss that burned with all the longing of summer.
Severus made a muffled noise of protest—predictable, really—but James didn’t stop. He couldn’t. His fingers tangled into the fabric of Severus’s robes, pulling him in closer, breathing him in like he’d been starved of oxygen all this time.
Severus stiffened, caught off guard, but the moment James tilted his head and deepened the kiss, something in him gave way. His hands, sharp and spindly, clutched at James’s shoulders, nails digging in just enough to send a thrill up James’s spine.
“Two months,” James muttered against his lips, pressing another kiss to the corner of Severus’s mouth, then his jaw, then lower, nipping at the pale column of his throat. “Two fucking months, do you know how miserable I was?”
Severus exhaled sharply, his breath hitching when James bit down just enough to leave a mark. “I can imagine,” he said dryly, though his voice was slightly uneven.
James grinned, running his nose along Severus’s jaw. “You missed me,” he said smugly.
Severus scoffed, attempting to sound unimpressed, but James felt the way his fingers tightened in his robes, pulling him impossibly closer. “Hardly,” he muttered.
“I’ll take that as yes.”
Severus sighed, long-suffering, but he didn’t let go. Instead, his hands slid up to cup James’s face, his thumbs brushing along his cheekbones, his touch deliberate. “I did,” he admitted, so soft James might have imagined it if not for the way his heart lurched in his chest.
James grinned against Severus’s lips before kissing him again, slow and deep, letting himself drown in it. “Good,” he whispered between kisses. “Because I plan on making up for every second we lost.”
James couldn’t get enough. His hands were everywhere—gripping Severus’s hips, sliding up his back, tugging at his robes with a greedy sort of desperation—pulling him in until Severus was practically straddling his lap. Severus made a noise of protest, something halfway between exasperation and resignation, but he didn’t stop James, which was all the permission James needed.
“James,” Severus warned, his voice low and edged with irritation, though the way his hands twitched against James’s shoulders suggested otherwise.
James ignored him entirely, nosing along Severus’s jaw, pressing open-mouthed kisses down the column of his throat, drinking in the way Severus sucked in a sharp breath despite himself. “Merlin, I missed you,” James groaned between kisses, voice muffled against Severus’s skin. “This summer was hell. Absolute, unforgivable torture. You have no idea.”
Severus arched a brow, unimpressed even as James kissed a particularly sensitive spot just beneath his ear. “Oh, I think I do,” he deadpanned.
James pulled back just enough to smirk at him, hands tightening possessively around his waist. “No, no, you don’t,” he said dramatically. “Do you know what I had, Severus? What I suffered through?” He clutched at Severus’s robes like a man recounting war stories. “Only my hand. For two months. Two bloody months!” He let his head drop back against the seat, groaning in despair. “The worst experience of my life. Wouldn’t wish it on anyone—not even Mulciber.”
Severus exhaled sharply through his nose, fixing James with an unimpressed stare. “You are such a Gryffindor,” he said, voice dry. “Overdramatic and loud.”
James grinned, undeterred, his grip firm as he pulled Severus impossibly closer. “Oh, but it gets worse,” he said, lowering his voice like he was about to share some grave, devastating secret. “I can’t even look at Playwizard anymore.”
Severus blinked, his expression shifting into something caught between confusion and horror. “…What?”
James let out a theatrical groan, tilting his head back as though recounting a personal tragedy. “I tried, Sev,” he lamented, shaking his head. “I really did. Opened it up, flipped to the good pages, all ready to have a nice time—”
“Potter,” Severus interrupted, already regretting engaging in this conversation.
James steamrolled on, eyes wide with faux devastation. “—and all I could think was ugh, none of them are as good as my boyfriend, my hot, brilliant, infuriating boyfriend.” He nuzzled into Severus’s neck again, lips curling against his skin. “Sev, I’m ruined. Completely, utterly ruined for anyone else.”
Severus let out the longest, most put-upon sigh James had ever heard, but he wasn’t fooling anyone—not with the way his fingers curled a little tighter in James’s robes, not with the telltale pink creeping up the pale skin of his neck.
“That,” Severus said stiffly, with all the dignity he could muster while still very much straddling James’s lap, “is the most ridiculous thing I have ever heard.”
James grinned up at him, utterly shameless. “Yeah?” he murmured, trailing his hands up Severus’s sides, “Buy you’re here still sitting on my lap.”
Severus’s eyes narrowed. “Purely out of convenience,” he said, tone as dry as ever.
James hummed, pressing a slow, deliberate kiss to his jaw. “Sure, love. Whatever you say.”
James’s breathing was uneven, his hands restless as they slid up Severus’s sides, fingers curling into the fabric of his robes as if he could anchor himself there. His heart was hammering, his head spinning, and the way Severus was pressed against him—legs bracketing his hips, dark eyes watching him with that sharp, unreadable intensity—made something coil tight and desperate inside him.
“Sev,” James rasped, his mouth trailing along Severus’s jaw, nipping at the skin just below his ear. “I can’t wait. I need you. Now.”
Severus inhaled sharply, his fingers digging into James’s shoulders. “We’re on the train,” he hissed, though he didn’t make any real effort to move away.
James grinned against his throat, his grip tightening around Severus’s waist. “So?” he murmured, teeth grazing over Severus’s pulse point. “Door’s locked. Blinds are down. No one’s coming in.”
Severus stiffened, his jaw clenched like he was fighting to keep control, but James knew him too well. Knew that despite the icy front, despite the glare that was no doubt meant to look menacing, Severus’s hands were still clinging to him. Knew that his body was far too still, that telltale sign of restraint James had spent years learning how to break.
James leaned up, brushing his nose against Severus’s in a maddeningly soft touch, a contrast to the firm grip he still had on him. “I missed you,” he whispered, eyes dark with want. “Missed this. Missed you.”
Severus’s lips parted slightly, his breath shaky. “You’re impatient and spoiled,” he muttered.
James smirked. “And yet, you’re still sitting here, love.” His hands slid lower, voice dropping to something rougher, needier. “Still on my lap. Still letting me touch you.”
Severus swallowed, his fingers tightening in James’s robes. “You’re going to be the death of me,” he murmured, almost resigned.
James grinned, tilting his head up until their lips were barely touching. “Then what a way to go,” he whispered before closing the distance, capturing Severus’s mouth in a kiss that burned with every second of separation they’d endured.
James had Severus right where he wanted him—skin flushed, breath heavy, his body pliant beneath James’s as their tangled limbs pressed into the train seat. Their robes had been discarded in a frenzy, and James had managed to strip Severus out of all his clothes. James was hovering over Severus, his lips trailing a path down his neck, his hands mapping out every inch of exposed pale skin.
“Merlin, I missed you,” James groaned against Severus’s collarbone, voice thick with want. “I’m never letting us be apart that long again.”
Severus made a noise that was somewhere between a scoff and a breathy exhale. “You say that every year,” he muttered, though it lacked any real bite. His fingers were curled into James’s hair, tugging just enough to make James groan against his skin.
James grinned, pressing a teasing bite just below Severus’s ear. “Yeah? Well next year you’re coming home with me.” His hands slid lower, his body pressing more insistently against Severus’s, and he could feel the way Severus’s breath hitched in response. This—this was what he had been starving for all summer, and there was no way in hell he was stopping now.
Or so he thought.
Because just as he was about to properly lose himself in Severus, the door to the compartment slammed open with a sharp bang, and James barely had time to react before a voice, flat and unimpressed, cut through the heavy tension.
“Really, Potter?”
James froze.
Severus, on the other hand, reacted like a man struck by lightning, shoving James off him so fast that James nearly went sprawling onto the floor. With a frantic movement, Severus yanked his robe off the floor, hands scrambling for whatever dignity he could salvage, while James, shirtless still somewhat dazed, turned to face their intruder.
A prefect stood in the doorway, arms crossed, expression the very picture of unimpressed authority.
James blinked. “Ah.” He cleared his throat, pushing his hair back like that would somehow make this whole situation less catastrophic. “Hey there, mate.”
The prefect arched a brow. “You do realize this is a shared train, don’t you?”
James, still half in a daze, looked down at himself—bare chest, belt undone—and then at Severus, who looked murderous, his glare promising James, I will end you for this humiliation.
James turned back to the prefect, grinning, utterly shameless. “So, uh… did you need the compartment, or…?”
The prefect pinched the bridge of his nose. “Just… for the love of Merlin, wait till you’re in your dorm next time.” He turned on his heel and stalked off, muttering something about disrespect for school property.
The moment he was gone, James turned to Severus with a helpless, crooked smile. “So… rain check?”
Severus, still glowering, snatched his robe off the floor and threw it at James’s face. “Get dressed, before I decide I’d rather be single.”
James caught the robe just before it smacked him in the face, letting out a dramatic huff as he flopped back against the seat, arms spread wide in defeat. “Curse the day a background character ruins our baby-making,” he lamented, staring at the ceiling like he had just suffered the greatest injustice of his life.
Severus, still furiously buttoning his shirt, froze mid-movement, his glare sharpening. “Excuse me?”
James turned his head toward him, expression petulant, lips still pushed into a dramatic pout. “You heard me,” he groaned, tossing his head back again. “We were so close, Sev. So close. And then that guy—” he gestured vaguely toward the door, “—comes in with his self-righteous prefect nonsense, and just like that, our future children? Gone. Vanished. Erased from existence.”
Severus, having reached the absolute end of his patience, shoved James’s shirt into his lap with an irritated scowl. “Put your clothes on, Potter, before another background character walks in and files an incident report.”
James grinned up at him, utterly undeterred. “Aw, c’mon, love, don’t be like that,” he cooed, reaching out to tug Severus back toward him. “We can always try again later—”
Severus slapped his hand away, snatching the rest of his clothes off the floor as he leveled James with a murderous glare. “Get dressed, you ridiculous imbecile, before I hex you and whatever remains of your so-called future offspring.”
James snorted, finally starting to fasten his belt again. “Y’know, love, your threats would be a lot scarier if you weren’t still all flustered from me ravishing you.”
Severus’s scowl deepened, his face an impressive shade of red. “I hate you.”
James smirked. “And yet, you still let me get you half-naked on a moving train.”
Severus, muttering darkly under his breath, turned toward the window and pointedly ignored him as James, cheerfully straightened his clothes and began plotting exactly when and where he was going to get Severus Snape alone again.
