Work Text:
It was meant to be a joke. They were watching some stupid movie where the main character was on a quest to lose his virginity. So naturally, as any best friend of nearly a decade would, he turned to Dream and shot him a joke.
“So when are you going to lose your virginity?” Sapnap smirked, grabbing a handful of popcorn from the bowl situated in between them.
Dream’s face flushed red immediately, a hand coming up to run through his hair. It was Sapnap’s favorite habit belonging to the other man. His hair was always disheveled to some degree; it was cute.
“Well… I don’t know. Whenever it happens, it happens. I don’t really know how to do it at this point.” Dream mumbled. He pulled the blanket he was hidden under up to his chin in an attempt of self defense.
Wait, what?
“Wait, what?” No fucking way. There is no fucking way Dream is a virgin. Not with all of the shit he talks.
“Well, I mean I know how, I just haven’t found someone I would trust enough that would be willing to do that for me.” He was a bit louder now, mostly audible over the dialogue of the movie.
The room was washed in blue from the screen, the shadows of Dream’s cheekbones pronounced more than usual as Sapnap studied his face. He was looking for the joke, the “gotcha,” the thing that confirmed Dream was just fucking with him.
“You’re a virgin.” Okay, that wasn’t even a question. Sapnap knew he was probably not doing too well on the supportive best friend side of things right now. “I mean, you said you were, that’s fine. What about-”
“God, no. I don’t think I would’ve had sex with her if I were paid to,” Dream interrupted, clearly uninterested in talking about his ex.
“Alright. Fair enough.”
Sapnap tried to leave it alone. He didn’t need to interfere with his best friend’s sex life. The man could figure it out on his own.
But curiosity got the better of him.
Twenty minutes later, he caved. “So what would yours be?” It was too vague of a question.
“Mine?” Dream glanced over at him, an eyebrow raised in confusion.
“Well, like the movie, you know. If you could choose any person in the world to lose your virginity to, who would it be? Best case scenario, the one you think about late at night sort of shit. Anyone alive. Who?”
Dream immediately snapped his head back to face the TV. His cheeks darkened under the ever-changing lighting.
“Oh come on, it can’t be that bad. Tell me.” Sapnap pressed. He knew he shouldn’t, but there he was.
Dream’s mouth opened for a brief moment, a small sound coming out that Sapnap could assume was his answer.
“Speak up there, big guy.” He smiled as he set the popcorn bowl on the coffee table and shuffled himself onto the seat between them. It was warmer next to Dream. He was still curled up in his blanket, eyes still trained on the TV in fear. Sapnap leaned forward slightly, too close to Dream’s personal bubble considering the conversation they were having. But Dream had decided to be a pussy, and he wanted the answer to his question.
“You.”
For a single word, especially a word so common, the weight of it blanketed the pair, weighing them down to the couch. Neither of them moved, neither of them spoke. The movie continued to play and Dream refused to turn to face Sapnap.
“Let’s not talk about it.” Dream whispers slightly louder this time.
Sapnap simply nodded, shuffling back to his side of the couch and trying to focus on the movie again.
He didn’t focus on the movie. Sapnap couldn’t have told you a single plot point or character name past that moment.
In fact, Sapnap couldn’t have told you a single thing that happened for the next week if it didn’t have anything to do with Dream. The blond had overtaken his thoughts. It wasn’t the usual “has he ate or even drank a sip of water in the last 5 hours” sort of thoughts. It was “his best friend of nearly a decade suddenly became some sort of beautiful, uncorrupted angel of purity.”
Goddamn, did Sapnap want to ruin him.
Suddenly, everything the other man did was enough for Sapnap to excuse himself from the room, or push a pillow into his lap. He would intentionally brush against Dream while shuffling around the kitchen and the look that Sapnap could feel against the back of his head was sinful. Whenever he caught Dream staring at him just a moment too long, he would shoot back a flirty wink. It never failed to catch the other off guard. His cheeks would flush and his eyes would widen in shock. Sapnap ached to see that look as he wrapped his hand around the other’s dick for the first time.
Sapnap knew Dream was catching on. He was touching him more and more, becoming flirtier with each passing day. There was no way he hadn't noticed at this point, even with his ever-present innocence.
Sure enough Dream did notice. It may have taken two more weeks of incessant sexual innuendos but he got the message eventually.
Sapnap had been streaming for a few hours. Dream had taken up residence on the end of his bed about 40 minutes ago. It was different from most nights. He wasn’t next to him on the floor, he wasn’t chiming in. He was… pouting. Just scrolling through twitter and occasionally glaring at Sapnap when he turned around to face his bed.
It took every ounce of effort in Sapnap’s brain to not assume tonight was going to be the night.
He needed it to be the night.
He had done a good job holding off, he was proud of himself.
But he wanted to fuck Dream into next week.
After he ended stream and shut down his computer, he spun slowly around in his chair. Dream had discarded his phone onto his bed and was staring at him with the brattiest look Sapnap had ever seen the man produce.
“Can I help you?” Sapnap plastered a cheesy grin on his face. Dream’s eyes narrowed in frustration but he refused to say anything. Instead he just lifted his chin slightly like an indignant child. “Did I do something to you, Dream? You’re being awfully bratty.”
“You’re really going to make me do this?” Dream huffed, throwing himself backwards onto the bed so he was staring at the ceiling.
“Do what?” Sapnap couldn’t help but embrace the confidence that simmered in his chest at the sight of Dream in his bed, a soft flush of pink across his face.
“You know what. It’s been weeks. You were supposed to do something by now.” Dream’s hands were rubbing at his face, his words slightly muffled as he complained.
“What was I supposed to do by now?” Sapnap pushed himself up from his chair and stepped towards the bed. He was unable to take his eyes off of Dream. He looked ethereal with his hair spread out against his bedding and his hands tense with frustration.
“You were supposed to fuck me.” Dream whined as he let his arms drop to his sides in defeat. “I thought you were going to. I feel humiliated having to ask.”
There it was. He caved.Luckily, he caved just in time because Sapnap was so close to breaking.
“Aw, baby wants me to take his virginity?” Sapnap cooed, smugness dripping from his tone.
Dream let out a scoff as he rolled off the bed and stood. “That’s it, I’m leaving. This was stupid.” He took a few steps before Sapnap’s voice cut through the air.
“You really wanna walk out that door?” He had followed Dream to the door and was right behind him. His lips brushed softly at the nape of the taller man’s neck. “You can walk out if you want, Dream.” Sapnap raised his hands to rest on Dream’s hips, a few fingers threatening to slip under the hem of his shirt. “But, do you want to walk out?”
Dream’s head shook softly. It was as if he were vulnerable prey. His predator’s eyes locked on him, threatening to pounce at any moment. It was cute to Sapnap; the fear, the desperation he could already feel due to the proximity. He was going to corrupt his boy.
“If you don’t want to walk out, then what do you want to do?” Sapnap dropped his voice low enough to earn a hitch in Dream’s breathing. He slid his right hand off of its place on Dream’s hip and let it push under the hem of his shirt. Frigid fingers made light contact with overeager warmth as he trailed his hand over the smooth planes of Dream’s stomach.
“Want you to fuck me.” Dream mumbled, letting his head fall back as Sapnap’s lips moved to the side of his neck. He wasn’t kissing, just dragging along, occasionally letting a gentle press of his tongue through.
“Not quite, baby. Try again.” Sapnap had never gotten so hard so fast before. He would be embarrassed but Dream didn’t have anything to compare it to.
“Don’t wanna say it, 's embarrassing.” Dream was already putty in his hands as Sapnap’s fingers brushed over his nipples ever so lightly.
“Use your words or I won’t know what you want, Dream.” The power was intoxicating, the flush grazing Dream’s collarbones was better than alcohol.
“Want you to take my virginity.” Dream whispered into the air. Sapnap wasn’t going to press for him to be louder… yet.
Sapnap rewarded him with a gentle nip to his neck before pulling Dream backward by the hips and pushing him towards the bed. Without words, he pressed Dream’s shoulders down so he was seated on the bed in front of him.
It was better than Sapnap could have ever imagined. Dream’s eyes were already glossed over in lust. His hands were holding onto the side of Sapnap’s shirt for dear life. A quick glance down also confirmed Sapnap’s suspicion of Dream already being rock hard.
“I’m gonna make you feel good, but on one condition.” It came out like a threat but Dream was nodding adamantly.
“Whatever you want, yes. Please. Yes.” He rushed out.
“Calm down, baby.” Sapnap chuckled at the shameless neediness of his friend. “I want you to promise you’ll be loud for me. I want to hear everything. Every gasp…” Sapnap's hands came up to cup Dream’s cheeks, “every moan…” one of his hands moved to card through the ruffled blond hair he had been longing to tug at, “every scream.” He finished as he let his fingers curl against Dream’s scalp and pull.
Dream obeyed, though he wasn’t exactly prepared to stifle any sounds. A softly pained gasp filled the space between them, sending a shock of arousal down Sapnap’s spine. “Good boy.” Sapnap praised as he gave the man mercy and released his hold.
The persistent blush became a deep crimson as Dream huffed in embarrassment and fell back into the bed just as he had been earlier. Sapnap’s body was numb in anticipation. Dream’s chest was rising and falling with heavy breaths, eyes carving paths into Sapnap’s skin.
Sapnap was doing the same. They were looking at each other. Really looking at each other in a way they hadn’t allowed themselves before. It took everything for Sapnap not to throw himself on Dream and pull him into a kiss. That was a level of intimacy that Dream hadn’t requested. He didn’t want to push his luck.
“Take your shirt off.” Sapnap demanded. It was gentle but it wasn’t an option.
“What about you?” Dream questioned despite his hands pulling at the hem of his shirt. He arched his back and slid it over his head before laying flat again.
Sapnap smiled, foregoing an answer and instead letting his hands run up and down Dream’s thighs. It was as close to an out of body experience as possible, seeing his best friend of a decade laid out on his bed with an obvious tent in his sweats.
“Do you want this?” Sapnap asked softly. He knew Dream would never do anything he didn’t want to, but the pressure of this being Dream’s first time was building.
“More than anything. I- uh… I’ve been fingering myself a lot the last few weeks. Just so I was familiar with it if you wanted this to happen.” Dream was practically shaking as Sapnap’s hands reached his waist. His fingers dipped below the waistband of Dream’s sweatpants. The skin to skin contact caused all of the air to leave Dream’s lungs.
Sapnap began a slow tug, working on discarding Dream’s sweatpants and boxers at once. “You’ve been fingering yourself?” He smirked, the waistband now low enough to reveal a neatly kept patch of soft brown hair on Dream’s pelvis.
Sapnap gave into temptation and shoved Dream up the bed further. He yanked off the rest of the clothing, Dream’s dick springing out, flushed and dripping. The rest of his body wasn’t any better off. His blush was spreading from the tips of his ears. It trickled down his neck leaving trails of innocence wherever it traveled.
“Yeah, wanted this. Wanted you.” Dream mumbled, his arms coming up to cross over his face, shielding him from the embarrassment of knowing he was being watched.
Sapnap's hands rubbed small circles starting at Dream’s knees, kneading and pulling at softly toned muscles that twitched eagerly in response. “That’s cute, baby.” Sapnap smirked, continuing his path up the warmth of Dream’s skin.
“What’s cute?” Dream lifted his arms slightly to look at Sapnap with a soft frown of confusion. He was pouty and desperate and Sapnap only wanted more; more as in kissing, more as in making love to him. Things that Dream hadn’t asked for.
“That you were already a whore before you ever even got touched.”
“Sap!” Dream shouted as he dropped his arms back over his face. “You can’t say things like that!” He demanded, kicking his legs softly in an attempt to shake Sapnap’s hands off.
All Sapnap did in response was giggle before letting himself drop over Dream, his face hovering above where the other’s was shielded. It was a dangerous move, his resolve was slipping through his fingers by the second. “C’mon show me your pretty face.”
Dream huffed out a breath as he raised his arms above his head. With his face now revealed, Sapnap realized how much of a mistake it was to be this close to Dream. Their eyes met as Sapnap felt Dream’s knees bend to grant him more access. It felt filthy, Dream being undressed and spread out for him while he held himself above. The unspoken power was intoxicating. Sapnap let his hips meet Dream’s with a gentle roll to test the waters. Dream’s eyes fluttered shut at the friction of Sapnap’s clothed erection against his skin.
It was too close, too intimate. Sapnap could feel Dream’s breath on his lips as he started to roll his hips at a steady rhythm. “Oh, holy fuck,” Dream gasped, his eyes flying open at the sensation of Sapnap’s erection against his own. “God, that’s good.” He giggled out as he wrapped his arms around the younger man’s shoulders.
It made Sapnap’s heart drop in the best possible way. It was tempting, too tempting to just lean down and brush his lips against Dream’s. He made the mistake of letting his eyes drop down to Dream’s mouth. His lips were bitten red and slick with saliva, slightly parted with the heavy breaths that are hitching in his throat.
“Pandas…” Dream whispered so low that Sapnap wouldn’t have heard it if he wasn’t staring directly at the other man’s mouth. All movement stopped. What if Dream wanted to stop? What if he decided Sapnap isn’t who he wants to do this with?
“Yeah? What’s up?” Sapnap asked, just as softly as Dream had started the conversation.
“If, uh, if you would want to... would you...you know... would you kiss me?” It was a stuttering mess of a sentence and Sapnap had never found anything more endearing in his life.
Without responding, Sapnap let his weight fall against Dream’s chest, his mouth dropping closer and closer to the other’s until there was barely a space left between them. With the smallest tilt of his chin, Sapnap's lips met Dream’s. It was barely a kiss, just the gentle meeting in the middle, no biting teeth or intruding tongues. Just a soft press of lips followed by two deep exhales as they pulled apart. It sent shockwaves down Sapnap’s spine, having his best friend like this: underneath him, lifting long, bare legs to wrap around his waist and attempt to pull him impossibly closer.
Dream took a chance and used his newfound leverage to roll his hips up against Sapnap’s. It drew a low groan from the other man as he dropped forward once again, this time with much more intent. Their lips met again and Sapnap wasted no time making an absolute mess out of the man under him. He let himself explore Dream as thoroughly as he had been dreaming about for weeks. The kiss was messy, spit slipping from the corner of their mouths as Sapnap tugged at Dream’s bottom lip with his teeth and dragged the tip of his tongue along the roof of the other’s mouth.
Below him, Dream was shaking with need, choked back whimpers trying to escape through occupied lips and clawing hands searching for purchase anywhere he could reach. His hands were restless against Sapnap’s neck, fingertips pressing into his shoulder blades with desperation.
After a particularly rough thrust of Sapnap’s hips, Dream wrenched his mouth away for much needed air. Sapnap sat up, pulling his shirt over his head by the back of his collar and smirking down at his best friend.
“You are so fucking pretty.” He groaned. Large palms found their way over the pale skin of Dream’s torso. He was perfectly lean, no rigid dips signifying muscles, just long smooth lines that Sapnap was tempted to photograph and frame on his wall.
“Stop it.” Dream playfully grabbed at Sapnap’s hands, “I’m getting impatient.” Sapnap simply grinned down at the other man, letting his hands be forcefully dragged down to Dream’s hips. “Touch me. Please.”
Dream’s eyebrows were furrowed with desperation, lips pink and parted with need. It was enough for Sapnap to finally give in. He didn’t put his hands where Dream wanted him to, though. Instead, he shuffled down the bed, maintaining eye contact with the other as he dropped himself down on his forearms to suck bruises into the pale skin of Dream’s thighs.
He refused to let up, sometimes sparing Dream with just soft nips that’ll fade within a few minutes, but every couple inches he let himself be tempted to suck something dark and dirty into the other man’s flesh, purples blooming at the surface as he made his way up. His cheek was brushing Dream’s cock where it lay against his stomach.
It took a final push of courage for Sapnap to start pressing gentle, open-mouthed kisses along Dream’s length. A soft gasp filled the air as one of Dream’s hands came down to thread into Sapnap’s hair. “Oh- oh my god. That’s so good.” Dream sat up on his elbows so he could get a better view of what was happening.
Sapnap snorted softly as he pulled back. “I’m not even doing anything yet, big guy.”
Dream groaned in frustration as he let himself dramatically fall back against the bed yet again. It had quickly developed into his signature move of the evening. “Get on with it then. I’m going to be eighty by the time you get your dick in me.” He whined as he let his hips roll up slightly to chase after Sapnap’s mouth.
With an affectionate roll of his eyes, Sapnap started suckling lightly on the head of Dream’s cock. It fit so nicely between his lips as he pressed his tongue into the sensitive skin along the underside of the tip. Dream was already twitching restlessly against the mattress. His knees bent to plant his feet against the bed so he had better leverage to roll his hips into Sapnap’s mouth.
Something about the constant shifting and the soft grunts with every exhale was breaking down Sapnap’s last thread of self restraint. He wanted to focus on Dream; but the more of Dream he took into his mouth, the higher pitched the whines escaping the blond were getting.
Dream’s fingers were starting to twitch against Sapnap’s scalp, clearly wanting to pull, push, anything. It was cute that he was trying to be respectful, but Sapnap was intent on making Dream fall apart.
Spit was dripping from the corners of Sapnap’s mouth as he sped up his pace, no longer able to keep adequate suction. A slight tug to his hair signaled Dream’s weakening resolve as the tip of his cock nudged the back of Sapnap’s throat.
Sapnap shifted to free his right hand so he could stroke at the base of Dream’s dick. A slightly longer pull at his hair made his heart burn with an aching satisfaction. Once his hand seemed sufficiently coated in the slick of his own spit, he stopped his stroking and went back to using just his mouth.
The spit had cooled slightly from the air and made Dream’s thighs twitch as Sapnap began to trail his fingers down… down… down until they reached his rim. Dream was still gasping above him, attempted words or begging coming out as choked-off incoherence.
Sapnap couldn’t help but let his hips grind down against the bed as Dream managed to string together some breathy gasps of “Please, Pandas.” His moans were intoxicating, the voice he had heard for so long in every possible scenario except this one. The nickname that has always been so personal to them both bleeding intimacy into the moment. Sapnap thought he had heard every possible iteration of his best friend’s voice.
But as Sapnap hollowed out his cheeks and pressed the tip of his middle finger against Dream’s hole, Dream shocked him with a tone he had never heard before. “Sap, Sap, Sap, get off my dick I’m so fucking close holy shit.” It was so fucking desperate and so fucking hot.
With a smug sense of pride and a pitiful sliver of mercy, Sapnap slowly pulled his mouth off of Dream’s dick as he slipped his finger in to the first knuckle. “God! You’re such a dick.” Dream whined as Sapnap gave one final lick to the slit of his cock.
“I’m just trying to have some fun, Dreamie. What’s wrong with that?” He was being obnoxious. He knew that. But the look on Dream’s face as he sank his finger further and further until Dream arched his back, was a different type of sin. It was filthy and intimate and exactly what Sapnap had been picturing for weeks.
“Jesus fucking Christ, how is it so much better when someone else does it?” Dream exhaled heavily as Sapnap’s finger pulled out slowly. It was cute the way Dream was breathing with his movements, clearly willing his body to relax at the intrusion. “Pandas, please. Please keep going. I can take it. I had three of my fingers in me like yesterday.”
Sapnap shook his head with a soft smile before pushing himself off the bed to grab lube from his nightstand. Dream was whining, hands reaching out to grab at any part of Sapnap he could reach. It was adorable and kind of pathetic how desperate he was.
“You know, I don’t recall being this needy when I got fucked for the first time.” Sapnap pondered as he dug through his drawer for lube and a condom.
“You bottom?” Dream’s eyes were wide, one of his hands that had managed to reach Sapnap’s arms, tugging softly to drag him back.
“Yeah, sometimes you just get in that sort of mood where you need to get railed.” Sapnap smirked as he returned to settle between Dream’s legs again. Dream’s hand slipped from his arm and fell back to the bed.
“Would you bottom for me?” The blond’s face was hopeful and so fucking cute, Sapnap couldn’t even bother to tease him.
“Next time, yeah?” He let his voice drop to a taunting whisper as he flicked open the cap on the lube he had retrieved. After a few moments of coating his fingers and warming the liquid to the best of his ability, Sapnap used his clean hand to lift Dream’s right leg up onto his shoulder. Sapnap couldn’t help but turn his head to nip soft bites onto the pale skin of Dream’s calf.
“There won’t be a next time if you don’t hurry up and put your dick in m-“ Dream’s complaints were cut off as three of Sapnap’s fingers pressed into him slowly.
Sapnap kept a constant pressure until his fingers were fully inside of Dream, who was gasping on every inhale as his hole twitched around the intrusion.
With a smirk pressed against Dream’s calf, Sapnap began a shallow pump of his fingers. It was intoxicating and something about the way Dream’s hole clenched around his fingers, sucking him back in, greedy for more, was making him lose his patience.
After Sapnap angled his fingers and earned a particularly loud whine, Dream started to use the leg on Sapnap’s shoulder as leverage to roll his hips up and back down to meet Sapnap’s fingers. Every few moments, a whiny "please" made its way out of Dream’s parted lips.
“Holy shit, you really are desperate to be fucked.” Sapnap huffed slightly in disbelief. It all felt so natural with Dream. There was no pressure to perform, they were in tune with each other.
Dream whined and slurred out something Sapnap couldn’t quite make out. He pressed forward, Dream’s leg bending with him, his body bent in half with ease. “What was that, handsome?”
“Just you, Pandas. Just - fuck right there - just desperate for you.”
Sapnap could hardly breathe, he let Dream’s leg fall off his shoulder against the bed as he pulled his fingers out. With a rough grip of Dream’s jaw he pulled the other into a searing kiss. It was all teeth and spit and desperation. He pulled back to see Dream with a blissful expression on his face.
“You ready for me? I can’t keep waiting with you whining like that.” It was vulnerable to admit Sapnap wanted this as much as Dream did. It somehow felt risky. He was trying not to push but Dream looked so beautiful underneath him.
“So ready. So fucking ready. Please fuck me.” It was fucking filthy the way Dream was whining to get destroyed, his hands grabbing at any inch of Sapnap he could reach.
Sapnap wasted no time stripping his sweatpants off and reaching for the condom he had placed at the end of the bed earlier. He ripped the plastic wrapper open with his teeth as he wrapped a hand around his cock and gave slow strokes.
“You look so fucking good like this.” Dream rushed out, his chest rising and falling quickly as his eyes scanned every inch of the man above him.
An almost bashful smile made its way across Sapnap’s lips. His cheeks darkened with the slightest hint of a blush. “You should see yourself.” He quipped as he pulled the condom from the packaging and rolled it onto himself.
Eyes heavy with lust tracked every single move as Sapnap grabbed the bottle of lube and covered himself with it. “I’m getting incredibly impatient down here. It’s only been twenty-two years you know.” Dream tried to hide his smile as Sapnap wrapped his hands around his waist and pulled so he could get a better angle.
“You’re fucking unbareable. You know that right?” Sapnap laughed as he gave his cock one more long stroke before he lined it up with Dream’s hole. “Last check-in: do you want this? We don’t have to.”
Dream gave a slight roll of his eyes before letting one of his hands come down to find Sapnap’s knee where it was situated under his hips. He gave it a slight squeeze. “Please fuck me.” He laughed softly.
Sapnap’s heart melted slightly at the words. With a deep breath He pushed his hips forward, the tip of his cock pressing against Dream’s stretched hole. Even with his fingers, Dream was so fucking tight. It was a fight to keep himself from finishing the second he pushed in.
“Oh- oh my god, keep going.” Dream breathed. His eyebrows were pinched together but his eyes stayed focused on Sapnap. “All the way in, please. I can take it.” he continued.
Apprehension rose in the back of Sapnap’s throat but Dream just tilted his hips, allowing another inch of Sapnap’s cock to fill him. With a deep breath and a quick nod, Sapnap pushed until his hips were flush against Dream. Every inch of him was hot and tight and constricting. They were both breathing heavily, slowly adjusting to the sensations.
“You’re not a virgin anymore.” Sapnap let out a soft chuckle as he pulled his hips back slightly.
Dream let out a shaky exhale as he smiled at the sentiment. “No, I’m not a virgin anymore. Are you going to stop acting like I’m going to break now?”
It was comfortable, familiar. Their same old banter just with a new context.
In lieu of an answer, Sapnap snapped his hips forward, the few inches that he had pulled out being forced right back in. Dream’s back arched slightly, as Sapnap rolled his hips again. A few inches out, a few inches in. It was a slow pace, but every thrust back in was hard enough to jostle Dream up the bed slightly. His hands came down to grab at the comforter beneath him as Sapnap sped up slightly.
“Holy shit, oh my god this is so fucking good. We should have been doing this already.” Dream mumbled through his heavy breaths.
Sapnap was at a loss for words. He had spent all of the build-up teasing, but now that he was here, buried inside of his best friend, all he could focus on was making Dream cum as hard as possible.
With a quick grip on Dream’s ankles, Sapnap threw both of his legs onto his shoulders, it lifted Dream’s hips enough for him to lean forward and fuck down into that perefect spot. Dream responded with a loud gasp and a hand burying itself in Sapnap’s hair. “God, right fucking there Pandas, holy shit.”
It was disgustingly endearing the way Dream was rushing out his words. It was so right. They were words that seemed to be meant for Sapnap all along. A warm heat of satisfaction filled Sapnap’s chest. He leaned further, Dream’s legs now pinned towards his shoulders as he stopped the more languid roll of his hips to switch to a pace good enough to make Dream cry.
Every exhale coming from Dream’s lips was a moan. Sapnap couldn’t help but lean forward and slip his tongue into the other’s waiting mouth. It was messy and Dream was mumbling something about harder and Sapnap couldn’t resist.
He fucked Dream the way they did everything, with passion and love and an absurd admiration for the blond motivating his every move. He knew Dream could tell by the way he was staring. It felt like heaven. There was no way this was real. It was more natural than anything Sapnap had done in his life. Before he knew it Dream was whining a warning into his mouth but he didn’t let up. He kept hitting that perfect spot, just for Dream until the blond was throwing his head back and spilling between their stomachs, completely untouched outside of some friction.
The sight of Dream's parted lips slurring out "Pandas" over and over was enough to push him over the edge. With one final thrust, Sapnap buried himself in Dream and let go. His hips twitched slightly as Dream’s hole clenched around him from the overstimulation.
It was a blur; the heavy breathing, pulling out, wiping down Dream with his discarded underwear. They were laying, shoulder to shoulder, staring at the ceiling when Sapnap’s hand came down to grab Dream’s where it rested between them.
“You got quiet there at the end.” Dream whispered into the air above them.
“I just... realized something you know.” Sapnap responded, somehow quieter. His voice was clearly shaking.
“That you regret saying yes?” Dream offered, his head tilting slightly to look at Sapnap.
“That it wasn’t just for you.”
“It was for you too?”
“No. It was for us.”
“That’s so gay, shut up.”
