“You make me happy too.” It felt like the right thing to do, to lean in, and kiss Gavin again.

Just so Zach didn’t confess his love again.

He’d done it a handful of times, but he was trying not to push Gavin.

It sounded like he loved him, but things were so good, Zach couldn’t say he missed actually hearing the words.

Their lips brushed together, firm and sweet, but then Gavin pulled back again, one of his hands reaching up to cup Zach’s cheek. “What I’m trying to say is I love you .”

Zach had just told himself he was fine not hearing the words, but the moment Gavin said it, he realized that was total bullshit. He had needed them.

It was why he’d felt so uncertain today; not entirely sure where he’d stood.

But Gavin had just made it as plain as he could.

He was with Zach now; he loved Zach now.

“God, I love you too,” Zach said roughly and pulled Gavin in, mouth moving against his own, until he was nearly squirming into Zach’s lap.

“Come on.” Zach slid his hand down Gavin’s back, resting against the tantalizing curve of Gavin’s ass. “Let’s go to bed.”

“Before we do . . .I . . .” Gavin took a deep breath, suddenly looking awkward again .

“What is it?” Zach pressed their foreheads together. “You can tell me anything. Whatever you want, I’m going to do my best to give it to you.”

“First off, I do want you to fuck me,” Gavin said.

Zach chuckled, heat winding its way through him, making his dick even harder. “That’s not going to be a problem.”

“And . . .I really enjoy what we do most of the time, but I want this to be different. Just me and you.”

Gavin didn’t need to say the words, or ask for it, but Zach understood what he wasn’t saying: I want you to make love to me.

And Zach had meant what he’d said earlier, that he’d give Gavin anything he wanted, but this was the easiest request he could’ve ever made.

“Yes,” Zach said softly, and leaning in, kissed him again. It was sweet and tender and hot, too. He didn’t think they could be anything else together.

Gavin slid off his lap and, reaching for Zach’s arm, tugged him up. “Come on,” he murmured into Zach’s mouth, his body pressed against Zach’s, until he could feel every aroused inch of him. “Let’s go to bed.”

Zach didn’t need to be asked twice.

He let Gavin pull him into the bedroom, and felt his heart beat faster as Gavin pulled his polo shirt off, then slid his pants down, toeing his socks off.

Zach could see the outline of his hard dick in his dark blue boxer briefs, and Gavin hissed out an unsteady breath as Zach reached out, palming it .

“Your turn.” Gavin smirked, the corner of his mouth quirking up.

Zach hadn’t been able to predict just how much he’d like taking control in the bedroom with Gavin, but he discovered this was just as good, too. Their movements soft and deliberate, their edge dulled by the sweetness blooming between them.

He pulled his sweatshirt off and slid his sweatpants down. The moment they hit the floor, Gavin was on him, straddling his thighs, pushing him back onto the bed, mouth on his.

They kissed for a long time, Gavin’s hips making little circular grinds against his own but other than that, he seemed content enough to kiss until Zach’s lips felt swollen and he might just drown in a sea of desire, the air between them warm and thick, like syrup.

His fingers slid under the waistband of Gavin’s briefs, feeling the muscles of his ass clench and then relax.

“Come on,” Gavin mumbled into his mouth. “I want it. Want you .”

But Zach had been hanging back, trying to let Gavin set the pace, because that was what he’d thought he’d been asking for earlier.

“I don’t wanna—”

Gavin pressed a kiss to his mouth, and Zach groaned a little as he swiveled his hips even more insistently, feeling his cock brush against Gavin’s. “It’s a give and take, baby.”

Zach didn’t waste time, then. He knew what he wanted. What Gavin wanted, too. Tensing his muscles, he flipped them and eased down Gavin’s body, taking his briefs with him as he went.

Gavin’s cock twitched against his stomach as Zach wrapped a hand around his thigh and pressed it open. “This what you want?” he asked.

Shooting Zach a hot, affectionate, nearly exasperated look, Gavin nodded. “But faster ,” he added.

Zach chuckled. “Impatient, much?”

“I’ve been wanting you,” Gavin protested.

“Well, get the lube, then,” Zach said. “Can’t fuck you without it.”

Gavin grumbled again, but he leaned over, stretching his lean, muscled body to get to the drawer, and Zach could only sit there, between his legs and think, God, that’s all mine.

“No condom,” Gavin said resolutely, handing the bottle to Zach.

“You sure?”

Gavin’s voice dipped low. “I want to feel you. All of you.”

Zach swallowed hard, arousal surging through him, his cock aching. “Fuck, that’s hot,” he admitted.

The pupils in Gavin’s eyes dilated even further and yeah, he thought so too.

Zach knew Gavin had enjoyed his fingers the one time he’d used them before, but he still took his time. Warmed up the lube on the pads of his fingers and gently worked up to even sliding a single one in.

By the time he finally did, Gavin groaned and Zach realized he’d made a similar noise at the white-hot clenching heat around it as he gently thrust in.

“Another,” Gavin begged. “Come on. I’m not delicate. ”

“But precious,” Zach argued. “Important. Gorgeous , like this.”

Gavin’s head flopped back onto the bed. “You’re gonna kill me.”

“And you’re gonna enjoy every second of it,” Zach promised.

But he did give Gavin another finger, relishing the way his body tightened and then loosened around him. Then twitching as Zach curled them, and hit that spot that made Gavin cry out.

“Oh yeah, baby, let me hear you.” Zach could hear the guttural roughness in his own voice. How close he was to just thrusting into that soft, sweet heat. Making Gavin cry with how good it was.

Gavin made a choked noise. Like he was embarrassed. That wasn’t going to fly, at all.

“I wanna hear it,” Zach said. “Tell me just how bad you want my cock.” He slid a third finger in and stroked the edges of Gavin’s hole with his thumb. Making him groan.

“I want it,” Gavin begged.

“Better.” This was turning Zach on so much it was becoming a hardship to not just thrust mindlessly into the mattress, desperately craving that friction against his hard cock.

“Please,” Gavin demanded. “I’m ready. So ready. I love you.”

And like hell Zach wasn’t going to give it to him after he said that .

“Come on, turn over for me, baby,” Zach said, and Gavin shook his head in protest.

“I want to see you. ”

“Trust me, it’ll be easier this way,” Zach said. “I’ll make it . . .” I’ll make it special . But the words felt trapped in his throat. I love you, too. So fucking much.

“I do trust you,” Gavin said, so softly, the truth of what he was saying so undeniable Zach couldn’t miss it.

He turned over, rising to his knees, tensing and then relaxing as Zach’s hands caught his hips, rearranging him exactly where he wanted him.

Zach finally got rid of his underwear, slicking up his dick with only a few quick movements, because if he touched himself any more than he did, he was going to lose it. And he wanted to be so good for Gavin. The best .

“You ready?” Zach murmured, leaning over and draping himself across Gavin’s warm back. He ran a soothing hand up and down his flank before he returned it to his hip.

“Yeah.” Gavin sounded anticipatory. Breathless. A little nervous.

Zach took it easy, carefully fitting himself to Gavin and then sliding in achingly slow. Absorbing every gasp and groan Gavin made, every keen of disbelief at how good it was.

And it was really fucking good. Gavin was hot and tight around him, under him, the two of them plastered together with barely any room for Zach to even breathe as he finally slid the last inch in.

Zach patted Gavin’s hip reassuringly, trying to get himself back under control. He’d never felt so close to the edge, but he’d promised and Gavin trusted him.

“I’m good. It’s so good.” Gavin’s voice was high and breathy and incredulous. “ God, please .”

It only took a few slow, measured thrusts for Gavin to start working his own hips, moving with Zach, and then suddenly, it wasn’t slow or controlled at all, but frantic, both of them chasing their pleasure.

Sweat slid down Zach’s spine, down his abs, dripping onto Gavin’s skin and he didn’t care. He only wanted to be closer, deeper. He reached around, groaning under his breath as he found Gavin’s cock hard and dripping precome, making the slide easy as he began to stroke him.

Gavin tensed and then let out a shout, clenching around Zach, his orgasm overtaking him.

It only took a few more strokes for Zach to follow right behind him, both of them collapsing onto the bed together.

“One second,” Zach said, sounding like he’d just run sprints, breath gusting in and out of his chest. “I know I’m heavy.”

“I like it.” Gavin’s reply was muffled by the comforter but clear enough.

“I love you,” Zach mumbled back.

Gavin laughed, breathlessly. “Ditto. Wow.”

Zach finally found the energy to pull out and collapsed next to Gavin. Sliding an arm around Gavin’s back, tugging him closer. Gavin’s face was relaxed, and so happy. “Good?”

“I think that’s an understatement.”

Satisfaction curled through Zach. He’d done that. He’d made Gavin sound that way, happy and peaceful and totally fucked out.

“I should get up and clean us up. We’re probably uh . . .going to have to change the sheets.”

“In a minute,” Gavin said, tilting his face closer to Zach’s. “First, I wanna do this.” He leaned in and kissed him, soft and earnest. And Zach wasn’t ever going to argue about that.