They had stopped dancing now, standing still in the center of the room with her hand on his face and his hand at her waist.
"Mhairi," he breathed.
"Aye?"
"I'm goin’ tae kiss ye now. So, if ye dinnae want me tae, say so."
For a moment she just looked at him, her grey eyes searching his. Then she rose up on her toes, closing the distance between them.
"Dinnae ye dare stop," she whispered.
Alpin's control shattered.
He kissed her—gently at first, just a brush of lips against lips. Testing. Asking permission that she'd already granted but that he needed to ask anyway.
Mhairi made a small sound in the back of her throat and pressed closer, and Alpin deepened the kiss. His hand at her waist pulled her against him while his other hand cradled the back of her head.
She tasted like honey from dinner and something uniquely her. Her hands slid up his chest to lock behind his neck, and when her fingers tangled in his hair, Alpin groaned.
The kiss went from gentle to intense, days of tension and wanting pouring into it. Alpin backed her slowly toward the wall, never breaking contact, until her back met stone and he could cage her in with his arms.
"Alpin," she gasped against his mouth.
"Too much?" He pulled back just enough to see her face, breathing hard.
"Nay. Nae enough."
He moved back down, kissing her with a fierceness that stole his breath.
What they were doing was dangerous. It was reckless. She'd been through hell and he should be giving her space, time, not crowding her against a wall in his solar like some lovesick fool.
But when Mhairi's teeth caught his bottom lip and tugged gently, every rational thought fled his mind.
His hands framed her face, thumbs stroking her cheekbones as he kissed her deeper, slower, trying to pour everything he felt into the contact. Every protective instinct, every moment of wanting, every impossible hope that this brilliant, brave, beautiful woman might someday want him back.
"We should stop," he murmured against her lips, even as he kissed her again.
"People will talk if they find us like this."
Alpin pulled back with effort, resting his forehead against hers. They were both breathing hard, and he could feel Mhairi's heart racing under his hands.
"That was..." she started.
"Aye."
"I've never..." She trailed off, color flooding her cheeks. "That was me first kiss."
Alpin's chest tightened. "Mhairi?—"
"I'm glad it was ye." Her hands were still in his hair, and she looked up at him with such trust that it nearly undid him. "I'm glad me first kiss was with someone who makes me feel safe. Someone who makes me feel... alive."
"Ye make me feel alive too," he admitted roughly.
"Is that why ye rescued me? Because I make ye feel alive?"
"I rescued ye because I couldnae help meself.” He kissed her forehead gently.
They stood there for a long moment, wrapped in each other's arms. Outside, the castle settled into evening quiet.