Work Text:
It’s impossible not to keep count. Keith’s only been at the party for an hour so far, but he’s noticed four different couples ducking into the bathroom for extended periods of time, only to emerge after a little while with flushed cheeks and lazy smiles. That’s eight people in the last hour who have had sex, and that’s only in the downstairs bathroom alone. God knows how many people are fucking in the upstairs bedrooms right now.
Keith squints as two girls make their way to the bathroom hand in hand, giggling and maneuvering through the crowd. Close friends, or two people about to fuck?
“I don’t get the big deal,” Keith says, shaking his head and raising his cup for a drink. He’s been nursing the same drink the whole time he’s been here, partially because he hates braving the raucous atmosphere of kitchens at house parties, and partially because Lance has been good company in this corner of the room. Everyone knows that leaving Lance’s side at a party means you might not end up beside it again in the same night.
“What big deal?” Lance says, tucking his phone in his pocket and turning to face Keith.
“Two more people just went into that bathroom!” Keith says. “What’s so special about sex that everyone wants to do it at a party?”
Lance laughs, as if Keith is making a joke, but then his expression quickly sobers. “You’re not joking?” he says.
“What do you mean?”
“I’m asking if you, Keith Kogane, are a virgin.”
“I mean. Yeah.”
“You,” Lance says, incredulous. “I thought you’d lost it already. You’re a virgin?!”
Keith smacks Lance on the arm. “Say that a little louder, why don’t you?” And then he leans against the wall, looking toward the bathroom thoughtfully. “I just don’t get what the big deal could be. I mean, it can’t be that different from masturbating, and it’s not like people are sneaking into corners to touch themselves.”
“I’d say it’s pretty different,” Lance argues. His eyes flick over Keith — just once, and quickly — and then he cocks his head to the side. “I could show you what the big deal is,” he says, totally casual. “I mean, if you want.”
Keith’s mouth goes dry. He feels frozen for a second, breathless — and then the tension bleeds out of him.
This is Lance. His best friend since elementary school. Honestly, Keith isn’t sure why he hasn’t thought of it himself before. First of all, it eliminates about half the factors he was worried about when it came to losing his virginity. He doesn’t have to explain to Lance, of all people, that he’s trans. He also doesn’t have to explain that he’s a virgin. Plus, he doesn’t have to worry about it being super awkward, since it’s not like he’s hooking up with a stranger. And, at the very least, he knows that Lance is experienced. He’s probably bound to have a good time.
So… why not? He can lose his virginity and figure out what the big deal is all in one go. Besides, it’s not like he’s not attracted to Lance. He’s had a crush on him since high school, so this is basically the beginning of every fantasy he’s ever had about him. The real challenge will be keeping his feelings in check — which, actually, shouldn’t be a challenge at all. He’s already been doing it for years. It’s not like sex is going to change that.
“You know what?” Keith says. “Fine. Yeah. Let’s do it.”
Lance’s eyes widen. “Really?”
“Yeah,” Keith says. He raises his drink and Lance clinks his own cup against it, looking surprised. They both down their last sips and discard their cups on the coffee table. Lance spares Keith a glance and then makes his way to the stairs, looking much more casual than Keith feels. It feels like everyone’s eyes are burning into him as they climb the steps.
They make it to someone’s bedroom and Lance closes and locks the door decisively behind them. For a second, they just stand there. Neither one of them making a move. And then Keith grabs Lance by the shirt and pulls him into a kiss.
Lance laughs against his mouth, his hands coming up to touch Keith. One cups Keith by the back of his head, his fingers sneaking into Keith’s hair, and the other cinches around Keith’s waist and pulls him close.
Kissing is nothing new for Keith, but kissing Lance? That’s a whole new experience. He’s a damn good kisser. It’s like there’s this rhythm they’re following, ebbing and flowing, getting fast and then slow again. Lance kisses with his whole body — Keith will be wrapped up in it, for a second, and then he’ll be reminded of Lance’s hands, tugging on his hair or sliding down to squeeze his butt.
Lance sucks on his lower lip, pulling Keith’s lip piercing into his mouth, and then he groans when Keith kisses him with tongue, introducing him to his tongue piercing next.
“I love those,” Lance murmurs between kisses. His lips move along Keith’s jaw and then latch onto his neck, just below his ear. “Never made out with someone with piercings before.”
Keith can’t respond. He’s too busy trying not to let his breath come out shakily. God, he shouldn’t be this wet already.
Lance presses him backward and then Keith’s back is against the wall. Lance’s thigh squeezes between Keith’s legs in the same instant and Keith’s body reacts automatically, grinding down on him. Lance hums against his neck, pleased, and Keith is sucked into the sensation, unable to describe it. He usually doesn’t let people kiss his neck for long, but Lance is doing something different, something heady and hot and more pleasurable than Keith ever thought it could be.
His hand slides down Keith’s side and then back up, under his shirt. It’s just Lance’s hand — Lance, who’s seen him shirtless since the day Keith got top surgery and definitely touched his bare skin more than he could count — but it makes Keith feel breathless. Especially when Lance’s hand creeps toward Keith’s waistband, his fingers just barely slipping beneath the hem.
Keith can’t stop grinding against him. They haven’t even gotten to the sex yet, but he’s starting to imagine why people might like it so much… It’s all the touching. Lance’s hands on his body, his mouth on Keith’s skin — that’s not something you get to experience alone.
“Bed?” Lance says, the words hot in Keith’s ear, directly followed by Lance’s lips on his earlobe. Keith shivers. They’ve been in the same bed literally hundreds of times. They’ve had sleepovers all their lives. But this is different. Now they’re going to have sex in a bed.
“Uh-huh,” Keith manages, and Lance takes a step away from him and, Jesus, Keith is soaking. Lance reaches for his own shirt, walking backward toward the bed, and Keith follows him as he imitates him. They shuck off their pants next, both standing at the foot of the bed, and pause with their hands on their boxers. They stare at each other for a second longer before shoving off that final layer.
“Holy shit,” Keith says immediately. Accidentally. It’s just — what? Lance is so, so overly cocky. His personality is so big, you would think he’s compensating for something. But holy shit. His dick is huge. Like — bigger than Keith’s biggest dildo, which isn’t small by any means. He has a piercing, too, just underneath the head.
Lance steps closer, running his hands down Keith’s sides and then looping them both around to grab his butt. “I don’t have to fuck you if you’re scared,” Lance says. “We could do other stuff instead — it still counts.”
“What? No,” Keith snaps. “I want it in me.”
Lance laughs, grinning, and Keith frowns. “How the hell have you not mentioned…”
Lance raises his eyebrows. Smirks. “My endowment?”
“Jesus.”
“It’s uncouth to brag,” Lance says primly, and then immediately breaks into a grin again. “A lot of people don’t want me to top, though.”
“More for me,” Keith says, shrugging. Lance snorts and then twists Keith toward the bed. He scoots back toward the head, silently apologizing to the poor guy who’s bed they’re about to fuck in.
Lance has only just started to crawl toward Keith on the bed when he suddenly stops, staring at Keith’s face. “Can I eat you out?” he blurts.
Keith flushes, but he nods. He’s always wanted… Well, oral has always been the thing he was most excited for when he thought about sex. He didn’t actually think he’d get to experience it tonight.
Lance lays down there in between his legs. He pushes Keith’s thighs apart, making room for himself, and then he traces a finger between Keith’s lips. It moves so smoothly, evidence of how wet Keith is, but Lance doesn’t tease him about it. He just pulls Keith’s lips to the side with his thumbs and then buries his face between Keith’s legs.
Immediately, Keith is breathless. Lance traces his tongue around Keith’s clit, slow and pointed, and then he flattens his tongue over it, hard. He laps at Keith, and then it’s like he’s kissing him, but right on his clit. He fucks his tongue into Keith, too, and Keith can’t help gasping and shaking and grinding into Lance’s face.
It happens when Lance is sucking on his clit, one of his fingers starting to slide into his opening — Keith just cums. He moans, his fingers buried in Lance’s hair as he grinds into his mouth, clenching desperately around Lance’s finger. Soon after, Keith’s too sensitive and he pulls Lance’s face away from him, panting.
Lance grins up at him. The entire bottom half of his face is wet and shiny. “Did you just come?” he says.
Keith imagines what he would normally do in this moment. Scoff. Deny. Shrug, like it’s no big deal. Keith just nods, still catching his breath, and he realizes that he grabbed Lance’s free hand at some point and is still holding onto it.
“Wow,” Lance says, and then he slides three fingers into Keith at once. Keith groans, his eyes fluttering shut, and he grinds down onto Lance’s fingers. Lance fingers him, his mouth sucking and kissing the insides of Keith’s thighs, working closer and closer back to Keith’s clit.
“What the fuck,” Keith groans, arching into Lance’s mouth.
Lance laughs. “What?” he says, his lips still moving against Keith.
“I knew you couldn’t be bad,” Keith says. “But I didn’t think you would be this good.” Lance curls his fingers inside Keith, making him gasp. “Okay, you can fuck me now,” Keith adds, breathless.
Lance flicks his tongue against Keith one last time and then he rolls off the bed, picking up his pants and pulling a condom out of the pocket. He slides it on with practiced ease and then crawls back onto the bed, between Keith’s legs.
“Loss of virginity in three, two—”
“Shut the fuck up.”
Lance laughs, reaching between them and angling himself toward Keith’s opening. Keith can feel him against him, sliding up and down until his cock catches — and then slides in. And in. And in. Fuck, he’s huge.
“Good?” Lance says, sounding a little breathless now.
“Great,” Keith says. “You can move.”
Lance leans over him, and then he’s thrusting in and out, finally fucking Keith. It feels better than Keith would’ve expected, and he wraps his legs around Lance, pulling him in even harder every time Lance fucks into him.
It’s like they’ve both forgotten how to talk. No more jokes or funny banter. Like they aren’t just two friends having sex, but two people having sex. Lance’s breath punches out of him every once in a while and when Keith accidentally moans, Lance groans and kisses him. He grabs Keith’s wrists and pins them above his head, fucking into him even harder, even faster.
“Fuck, Keith,” Lance groans, just staring down at him. The sound of their bodies is obscene. The headboard is hitting the wall in a rhythmic thunk, thunk, thunk and there’s no way that anyone doesn’t know exactly what they’re doing.
Keith can feel himself getting close again. Every time Lance fucks into him, Keith keeps making these little sounds, like hah, and he never thought it would be this good, that this is exactly what all the hype is about.
Lance groans, fucking into him more erratically, and then he stutters into Keith and slows down into lazy thrusts before stopping. Damn, Keith was close too, but he already came once, so—
Lance reaches between them as he slides out of Keith, rubbing Keith’s clit quickly, and Keith arches into his hand and then cums with a gasp, twitching away from Lance’s touch. Lance flops down beside Keith, grinning, and turns to look at him.
“Well?” he says.
Keith frowns. “I guess I see what the big deal is,” he admits.
—
Keith can’t stop thinking about it. Sex. Lance. Sex with Lance.
It’s been a week since the party, and things have been fine. Totally normal. They’ve met up for lunch like they usually do throughout the week and they’ve studied in the library together. The fact that they had sex isn’t something that they’re unwilling to mention, but it also isn’t something that comes up in conversation a lot.
But Keith was wrong. Having sex with Lance, like, compounded his feelings. Before, he could only imagine what sex with him might be like. He would daydream about being in a relationship with Lance, cuddling on his bed and watching movies and kissing lazily — the whole nine yards. But now, Keith doesn’t just think about having sex with Lance when he’s horny. He thinks about it all the time.
He’ll be sitting in class, completely zoned out, just remembering the way that Lance ate him out. Or he’ll be studying for an exam, and then suddenly he’s thinking about the way Lance pinned his arms to the bed. His mind is a constant hellscape of Lance, Lance, Lance and there’s no escaping it.
It’s not like Keith is about to go looking for someone to hook up with, either. He wasn’t really interested in it before and he’s not really interested in it now. Plus, from the stories he’s heard, he has a feeling that most hookups aren’t as good as the one he and Lance had. Not everyone just has chemistry like that, and while their chemistry might not be something that’s romantic, it’s still the chemistry of people who have known each other all their lives and get along perfectly.
Keith moans, fucking himself with his biggest dildo with one hand and rubbing his clit with the other. He cums, clenching around the dildo, but it’s not the same. His dildo feels tiny in comparison to Lance, and he can’t stop thinking about how good sex with him was. The feeling of Lance’s hands on his body, his mouth on Keith’s neck…
Shit.
—
“—and then Pidge was like, ‘I can’t just skip class because you want me to, Lance,’ and I told them that I was — shit.” Lance’s character blows up on the screen. Keith laughs, beating the level by himself. Lance tosses his remote onto the floor and flops back onto Keith’s bed with a groan. “I hate this game.”
“You just suck at it.”
“Yeah, ‘cause it sucks,” Lance huffs. And then, totally unprompted: “Do you keep thinking about when we had sex? Or is that just me?”
Keith freezes, still staring at the screen celebrating his win. It’s been just a little more than a week since that night. A little more than a week of Keith thinking about Lance and Lance’s dick nonstop, in every waking moment of every day—
“Sorry, that was weird, I know it was just a one-time—”
“Yes,” Keith blurts. “I keep thinking about it. A lot.”
“Oh, thank God,” Lance says, and then he grabs Keith by the arm and pulls him on top of him. They’re kissing, grinding against each other in Keith’s bed, not some stranger’s. Keith thought it would never happen again, like it existed in some other universe — the universe where they’re just a little bit tipsy at a stranger’s house in a stranger’s room. But now they’re back at home base and Lance is hard against Keith’s thigh and Keith really, really wants to get his mouth on that cock.
“Can I suck you off?” Keith says, when he managed to break away from the kiss, and Lance groans and bucks up against him.
“Um, fuck yes?” he says, laughing, and then they’re rearranging. Lance stands up to take his pants off and Keith follows him like a lost puppy, so that Lance ends up against the wall with Keith on his knees in front of him. It looks even bigger from here but Keith doesn’t hesitate. He grabs Lance’s cock with one hand and pops as much of it into his mouth as he can.
Lance groans, his head thunking against the wall, and Keith slowly pulls off of him and licks across the head of his cock. “Pointers appreciated, by the way,” he says.
“Right,” Lance says. “Um. You could start slow, just bobbing your head to get it — wet.” He clears his throat. “You could also lick down it, and also my, uh. Balls.” He’s blushing, one hand having come up to scratch his head, but Keith just nods.
“Noted,” he says. He licks the head of Lance’s cock again, but this time with the flat of his tongue, making sure that Lance can feel his tongue piercing against him. Lance twitches against his lips, so Keith figures he got it right. He pays special attention to Lance’s piercing, and then he takes Lance into his mouth again, bobbing his head to get his spit all over Lance.
He can hear Lance breathing heavily above him, occasionally twitching in Keith’s mouth, and Keith just keeps using his tongue, dragging his piercing against him. Once he gets the hang of it, he takes him even deeper — as much of him as he can fit — and Lance groans when he hits the back of Keith’s throat, just for a second.
Keith keeps bobbing his head, occasionally jerking off what he can’t swallow or tugging on Lance’s balls. His other hand is occupied, snaking beneath his own pants and buried inside himself.
“Fuck,” Lance groans when he notices. “Are you touching yourself?”
“Mm-hmm,” Keith says around him.
Lance moans, one of his hands coming up to tug on Keith’s hair. “Fuck. I’m gonna cum.”
Keith groans again, ready for it, and he takes Lance in even deeper. He can feel Lance twitching in his mouth, filling him up. He tries to swallow it all, but his throat spasms and then he’s coughing and Lance pulls out. The remainder gets on Keith’s face — his cheek, his lips, his chin — and Keith flushes.
“Sorry,” he says, and then coughs. “I thought I could swallow it.”
“Holy shit,” Lance says, pulling Keith to his feet. “That’s hot.” His thumb rubs against Keith’s lip, collecting his cum, and Keith grabs his wrist to stop him from pulling away and then sucks his thumb into his mouth. Lance gapes, his eyes darkening, and he shakes his head. “Hold on.”
He wipes the rest off with his own boxers — gross — and then he’s kissing Keith again. He rubs him through his pants as they make out and it makes kissing Lance that much harder. He really has to concentrate, meanwhile Lance seems to be able to multitask easily, constantly switching up the pattern and the way he’s touching Keith.
Keith is down to cum like that, but when Lance pulls away, he’s hard again. “Can I fuck you?” he says.
“Yeah,” Keith says, “If you have—”
Lance ducks down, pulling a condom out of his pocket once again.
“How often do you keep those on you?”
“Every time I’ve come over to your dorm, recently,” Lance says. “Just in case.”
Keith would make a snarky comment about that — presumptuous much? — but he can’t deny that he’s glad. He kicks his pants off and then Lance is crowding him against the wall again, lifting one of Keith’s legs and holding it against his waist. He slides into Keith — both of them groaning at the feeling — and then Lance is lifting Keith’s other leg and fucking him against the wall.
Keith wraps his arms around Lance’s shoulders, moaning as Lance fucks into him. This time it’s faster, more desperate. Like they’ve been waiting for this moment ever since the last time they fucked. Keith is already close — he doesn’t even have to touch himself when he cums, Lance fucking him is enough. He clenches around Lance sporadically and Lance moans at the feeling, cumming after just a few more strokes.
He sets Keith back on the ground afterward and Keith wobbles for a moment, his legs weak. They’re sated and smiling as Lance disposes of the condom and pulls his boxers back on, climbing onto Keith’s bed once again and retrieving his remote.
“See, now I’ll be good at the game,” he decides. “I’m not distracted anymore.”
“Sure,” Keith scoffs, pulling on his own underwear and copying him.
This is fine. This is good, even. They’re already best friends, and they clearly like having sex with each other. They can just — do that. Be friends who have sex sometimes. No big deal.
—
Keith is going insane.
It’s been a week since Lance came over and they fucked. That must’ve been the last moment of peace before the whirlwind of midterms hit. They’ve barely seen each other at all this week, and when they have, it’s just been in the library, surrounded by textbooks and coffee and half-written papers.
Despite the fact that Keith is drowning in work, he still can’t stop thinking about Lance. It doesn’t help that Lance accidentally left his jacket behind the last time he was over. And Keith — he’s not a strong person. When your crush leaves their jacket behind, you can’t not wear it.
So Keith is horny and missing Lance and wearing his jacket, to boot. Lance made it seem so easy last time. He didn’t stress about bringing sex up at all — he just said it, and then they were fucking. Keith wishes he were here now, so he could do the same thing.
Then again, maybe Lance expects Keith to initiate it this time. That’s probably what would be fair, right?
Keith doesn’t overthink it. He just writes a text and that’s it. Full send.
Keith: I’m horny.
Lance: oh? 👀
Lance: i bet i could help with that 🤔
Keith: Yeah?
Lance: r u touching urself rn?
Keith: Yeah.
Lance: what are u thinking about
Keith: You.
Keith: Your dick.
Lance: damn i wish i was there rn
Lance: i would fuck u so good
Lance: eat u out after. you’d be trying to push my head away but i’d just keep going. make u come again
Keith’s hitting call before he can even think about it. It doesn’t even get through a full ring before Lance answers, his laugh the first thing to come down the line. “Hello,” he says.
“Hi,” Keith pants. He’s already kicked his underwear off and he’s rubbing himself, imagining that Lance is the one doing it. In fact, the only thing he’s wearing anymore is Lance’s jacket.
“What are you doing right now?” Lance asks.
“You know.”
“I wanna hear you say it,” Lance says.
“I’m touching myself,” Keith says, blushing. Lance hums.
“Do you have any toys?” he asks.
Keith gapes. Doesn’t answer.
“Come on,” Lance says. “I’m sure you do.”
“Lance.”
“Last month I was looking for a pencil and you tried to rip my head off when I almost opened your desk drawer. What’s in there?”
Keith huffs. “Dildos,” he says.
“Perfect! Wanna grab one for me?”
Keith grumbles, feeling hot all over, and he puts Lance on speaker before he gets up and grabs his favorite one. He climbs back onto the bed and twists it in his hand, feeling awkward. Somehow, it’s less embarrassing for Lance to just know that he’s touching himself.
“Okay,” Keith says.
“You got one?”
“Yeah.”
“What’s it look like? How big?”
Fuck. “Um… it’s purple. And it’s… pretty big. Smaller than you.”
Keith can hear Lance grin. “Put it in,” he says. Keith lays back on the bed, setting his phone on his stomach, and he lets his legs fall open as he reaches between them. “Go slow at first,” Lance instructs. “But really clench around it.”
Somehow, Lance telling him what to do is really hot. A little embarrassing. Keith follows his instructions and fucks himself slowly, his breath growing shaky.
“What are you wearing?” Lance asks.
“Nothing,” Keith lies.
“Hot,” Lance says. “Keep going slow, but thrust in really hard. Really feel it.”
Keith listens. He’s sweating. He never usually takes it this slow. Usually, by the time he grabs his dildo, he’s already close. He fucks himself with it fast and hard.
“I can hear it,” Lance says. That makes Keith hot all over. He’s breathing shakily, trying to control it, not wanting Lance to hear.
“Stop,” Lance says, and Keith does. “Short, shallow thrusts. So you can barely feel it. Do it until you can’t stand it.”
Keith does. They’re tiny and it barely feels like anything. He wants to fuck himself with it, wants to feel it, he wants to slam it deep into him and cum, clenching around it.
“Lance,” Keith whines.
“Keep going.”
Keith huffs, clenching around the toy desperately.
“Lance,” he insists.
“Bring the phone closer to your mouth,” Lance says, so Keith slides the phone up his chest. “Okay. Fuck yourself how you really want to. Hard and fast.”
Keith moans, gripping the dildo and fucking himself hard. It’s loud — no doubt Lance can still hear it — but he’s loud, too. Gasping into the phone and moaning as he fucks himself.
“Gonna touch myself too,” Keith blurts.
“Sure,” Lance says. “But drag your hand down your stomach slowly. Make yourself wait for it.”
Keith does just that. He traces his fingers down his stomach, past his belly button, over his hip. And then he buries it at the top of his legs, rubbing his clit furiously. Keith cums quickly, spasming around the dildo, and he moans into the phone, twitching and sweating on the bed.
Lance is silent as Keith comes down from it, breathing heavily. Keith clears his throat. “Wow,” he says.
“You’re welcome,” Lance says. “Now finish your fucking paper. I know you’re still procrastinating.”
—
They start having sex. Like. All the time.
Before, it was casual. Before, there was restraint. But ever since they got past midterms, it’s been constant.
Keith can’t even keep track of all the times they’ve had sex anymore. Lance is at his dorm almost every day — Keith hides his jacket in his closet, because he’s a menace — and even though they still hang out like normal, they also have sex all the time. Lance ends up sleeping over several times a week, whereas before, it was usually only every once in a while.
But now they’ll get dinner together and then go back to Keith’s dorm and fuck. Or they’ll study together and then go back to Keith’s dorm and fuck. They’ll binge a show together and then have to go back several episodes, because they accidentally got distracted and fucked.
Keith will wake up, naked, with Lance curled around him. Lance will wake up and then they’ll be grinding against each other, sleepy but horny. Sometimes they’ll fuck and then just stay naked, and Lance will spoon Keith as they watch a show on Keith’s laptop. He’ll just trace patterns on Keith’s side, which is insane, because you’d think that the two of them being naked together would result in them having more sex, but that’s not always the case. Sometimes it’s just that — them being naked, and together, and comfortable.
Basically, Keith has it worse than ever. It’s like he finally has everything he’s ever wanted, except Lance isn’t his boyfriend. He’s just his friend who he has sex with all the time and it’s infuriating because Keith loves him and he loves having sex with him but he also just wants to have him.
Still. Keith isn’t going to fuck it up when sex is on the table. He’d rather have this than nothing at all.
“Fuck, fuck, fuck!” Keith pants. He’s standing in the shower, his hands balanced against the wall, and Lance is on his knees underneath him, his arms wrapped around Keith’s thighs and honestly the only thing keeping him up. He’s eating Keith out and Keith might honestly slip and fall and die but it’ll be worth it.
He cums, holding Lance there with his thighs, and Lance just keeps eat him out. Even when Keith is trembling and half-heartedly trying to push him away, Lance keeps going and going and going.
“L-Lance,” Keith gasps, because he’s seriously about to lose it, and Lance finally pulls away.
“Sorry,” Lance says, standing up and then pecking him on the mouth. “I just like it when you get all shaky.”
Keith rolls his eyes but he starts jerking Lance off anyway. Lance turns off the shower and Keith only stops when Lance hands him his towel. They dry off quickly — Keith is already calculating how long it’ll take them to get through the door and back to his bed, and whether Lance will actually manage to properly dry off this time — when Lance catches him by the hips and pins him against the counter. Lance is taller than Keith — just by an inch — and he probs his chin on Keith’s shoulder, looking at them in the mirror. They weren’t in the shower long enough for it fog up.
“Yeah, I wanna fuck you right here,” Lance decides. He grabs a condom out of the bathroom drawer — they have a million of them stashed everywhere now — and he bends Keith over the counter just before he slides in.
Keith is struck — it’s hot, seeing Lance fucking him, standing up straight while Keith is bent over the counter — but Lance makes eye contact with him in the mirror and shakes his head. “Don’t look at me,” he says. “Look at yourself. I want you to see the faces you make when I fuck you.”
Fuck, that’s hot. So Keith watches himself as Lance fucks him. He watches the flush that rises to his cheeks, the way his mouth falls open and stays that way, the expressions he makes when he moans and how dark his pupils get in the mirror.
He gets close and his eyes keep fluttering shut, but Lance reminds him to watch, so Keith watches as his face contorts when he cums, shaking and clenching around Lance as he slides against the counter.
It’s hot. It’s really hot. But it’s still not enough.
—
It’s weeks later and Keith is alone in his dorm, wearing Lance’s jacket and watching a movie. These days, he barely lets himself wear Lance’s jacket anymore, because Lance will stop by unexpectedly all the time and the risk is just too great. But Lance went home to visit family for the weekend and he isn’t going to be back until tomorrow morning, so Keith is living it up.
They’ve been texting constantly while Lance has been home, which is kind of unusual for them. Usually, they’ll just text each other if they think of something. Half of their texts are just Lance sending Keith TikToks, because Keith refuses to download the app and Lance still wants to show him anyway.
But lately, they’ve been closer than ever. Lance going home just proved that to Keith, because suddenly all their thoughts couldn’t wait until the next time they saw each other.
Someone knocks on Keith’s door and Keith frowns in confusion, pausing his movie. Sometimes their RAs will knock if they’re being loud or if it’s a scheduled check-in, but Keith can’t think of any reason his RA would be here today, and none of his other hall mates ever really stop by his room.
Keith rolls out of bed and crosses his room, opening the door without thinking to check through the peep hole.
“Lance!” Keith says, surprised.
Lance pushes into the room like usual, already talking. “Right? I wasn’t planning to come back so soon, but then — is that my jacket?”
Keith goes red. He can feel the heat all over — from his forehead down to the neck of his shirt.
“I — um, it’s—”
Lance grins. “It looks good on you,” he says. “I was wondering where it was.”
“Sorry,” Keith blurts. “You can have it back.”
“Nah,” Lance says. “It’s cute that you’re wearing it.”
This is humiliating.
Lance is just smiling, though. It looks so soft and genuine. Keith can’t take it anymore, so he kisses him.
It’s not like the kinds of kisses they have most of the time. It’s not heated and desperate, their mouths connected as their hands push clothes off and away. It’s slow and tender, Lance’s hand cupping Keith’s head as their lips slide together slowly, softly.
When they make it to the bed, it stays that way. Their clothes come off and they’re touching but it’s still soft. It’s touching just to touch, just to feel. They aren’t chasing their orgasms or rushing into sex, just enjoying the feeling of their bodies against each other.
“Don’t,” Keith says, when Lance goes to grab a condom. “I want to feel you.” The likelihood of him getting pregnant on T is slimmer, and he’s on birth control, anyway.
So Lance slides into him, and for the first time, Keith can really feel his piercing. It glides against the inside of Keith, pressing into his walls, and Keith clenches around Lance.
“Wait,” Keith says. “I want to ride you.”
So they flip around and Keith’s just about to crawl on top of Lance when he clears his throat. “Can you put the jacket back on, actually?” he says. “I really want to fuck you in my jacket.”
Heat blooms in Keith’s gut and he snags Lance’s jacket from the floor, sliding back into it and letting it hang open over him. Lance groans at the sight of Keith wearing nothing but his jacket and then Keith lines himself up with Lance, reaching under him to ease Lance inside of him.
Jesus. Lance goes even deeper into him like this, and that piercing…
“Fuck,” Lance groans, gripping Keith’s hips. “You look really, really good on my lap,” he says. “In my jacket.”
Keith starts moving, then, planting his hands on Lance’s chest and fucking himself on his cock. From this position, his clit is being stimulated too, and it’s just making Keith want to go even faster, even harder. Lance starts dragging Keith down every time he raises up and Keith feels like he’s on fire. Lance is going even deeper, fucking him even harder, and they’re both sweaty and breathless and groaning at the sensation.
Keith is getting so close, but it’s hard to keep up the pace and his thighs are aching and Lance realizes it at the same time he does. He flips them around, drawing Keith’s legs up over his shoulders, and then he’s fucking him deep and hard and—
“I love you,” Keith says, because he’s thinking it all the time and somehow the wires got crossed and it escaped his mouth on accident and — holy shit. He clenches around Lance — from pleasure and fear, he’ll admit — and he’s so close but Jesus how could he say that why would he say that—
“I love you, too,” Lance says, grinning so big. He sounds relieved, and they laugh and smile at each other for a few seconds before Lance thrusts into him again and Keith groans. Lance fucks into him again, harder and faster, and then he’s reaching between Keith’s legs to rub his clit and Keith is cumming, squeezing Lance’s shoulders with his legs and clenching around him.
Lance follows him over the edge, thrusting into him more slowly, and then they collapse against the bed together, Lance pulling Keith into his arms.
“You love me,” Lance says. Keith scoffs.
“You said it back.”
“Yeah, but I knew I loved you,” Lance says. “I didn’t know you loved me.”
Keith snorts, burying his face in Lance’s chest and pressing a kiss there. “We’re idiots, aren’t we?”
“I’m pretty sure we’ve been dating this whole time,” Lance confirms. “So. Yeah.”
Keith laughs, pushing Lance onto his back and flopping on top of him. Lance wraps his arms around Keith and holds him tight, letting out a big breath. They stay like that for a while, just touching each other and basking in the feeling of each other’s bodies. It’s perfect, finally.
