“The bouquet hit Maya Whitaker square in the chest at her sister’s wedding. Not her hands — her chest. White roses, eucalyptus, and one ridiculous satin ribbon. She didn’t laugh. She didn’t toss it to someone else. She walked straight to my table with the whole ballroom watching and said, ‘I need you to not make a joke for 10 seconds.’ That scared me more than the flowers because Maya and I survived on jokes. Then she reached out, placed the bouquet against my chest, and in front of 200 people asked, ‘Do you want the truth now, or do you want me to keep pretending for another 8 years?'”

“The bouquet hit Maya Whitaker square in the chest at her sister’s wedding. Not her hands — her chest. White roses, eucalyptus, and one ridiculous satin ribbon. She didn’t laugh. She didn’t toss it to someone else. She walked straight to my table with the whole ballroom watching and said, ‘I need you to not make a joke for 10 seconds.’ That scared me more than the flowers because Maya and I survived on jokes. Then she reached out, placed the bouquet against my chest, and in front of 200 people asked, ‘Do you want the truth now, or do you want me to keep pretending for another 8 years?'”

“Do you want the truth now, or do you want me to keep pretending for another 8 years?”

There are sentences that split a life cleanly in half. Before. After. Maya’s question landed in the ballroom and did exactly that.

My hand closed around the bouquet by reflex. Her fingers were still there, tangled with mine around the satin wrap stems. The microphone waited near her mouth. Two hundred people waited behind her, but Maya wasn’t performing for them. She was looking at me like she had finally kicked open a door and was daring me to stop standing in the hallway.

I had imagined confessing to her before. Usually at 1:00 a.m., when she was asleep on my couch and I was staring at the ceiling like a coward with excellent hospitality skills. In those versions, there were no chandeliers. No relatives. No DJ in a purple vest whispering, “Oh my god,” into a hot mic.

I leaned closer and spoke low enough that only she could hear. “If you say it here, I can’t protect you from the noise.”

Her mouth curved, but her eyes stayed bright. “I’m not asking for protection.”

“I know.”

“I’m asking if you’re going to meet me.”

That hit harder because there it was. Not rescue. Not spectacle. A hand reaching across the line we’d both drawn and redrawn until it looked like friendship. I looked at her fingers against mine, then at her face.

“I want the truth,” I said.

Maya inhaled. Then she turned slightly, lifted the mic, and said, “Hi everyone.”

A ripple of laughter, nervous and eager, moved through the room. Maya winced. “This was not in the wedding timeline, and if my mother is currently looking for a way to unplug me, I respect that.”

More laughter. Her mother, from a table near the front, called, “I am considering it.”

Maya smiled, but her hand tightened around mine. “I caught the bouquet. And I know the tradition is supposed to be funny, or lucky, or threatening, depending on your feelings about centerpieces and joint bank accounts.”

The groom raised his glass. “Threatening.”

Clare smacked his arm, laughing. Maya looked back at me, and the room faded again.

“But the second it hit me, I thought of one person. Not because I expect a proposal. Please nobody faint.” I almost laughed. Almost. “Because he’s the person I have loved in all the ways that didn’t scare me enough to name.”

My chest went tight.

“He has been my emergency contact for 6 years, even though I never told him. He knows I pretend to like black coffee when I’m stressed, but I actually wanted half sugar and mostly cream. He once drove 40 minutes in the rain because I texted him a picture of a spider and the word ‘absolutely not.'”

People laughed again, but I couldn’t. I remember that night. The spider had been the size of a dime. She had stood on her kitchen counter holding a frying pan like a shield.

“He makes me braver,” she said, “and more annoying, and less lonely.” Her lips trembled. “So, Caleb Brooks, I’m done pretending I don’t look for you first. I’m done pretending I don’t compare every man I meet to you and get irritated when they aren’t you. And I’m done pretending that when I imagine the next wedding, I want to attend.” She glanced at the bouquet between us. “You aren’t standing at the end of the aisle.”

The ballroom exploded. Not with polite applause. With chaos. Clare sobbed loudly. Ben yelled, “That’s my sister-in-law!” Though technically she wasn’t. Adrienne shouted, “Finally!” Like he’d been personally wronged by time.

Maya lowered the mic. Face flushed scarlet now. For one terrifying second, I saw the panic arrive. The question behind her eyes. Did I just ruin us?

I couldn’t answer with a speech. I’d never had her gift for walking into emotional traffic with her chin up. So I took the microphone gently from her hand and gave it to Adrienne without looking away from her. He accepted it like an Olympic torch.

Then I stepped closer. Maya’s breath caught.

“I need to say something,” I told her.

She nodded once.

I brushed my thumb over her knuckles where she still held the bouquet. “Not to them.”

Her eyes filled. “To me,” she whispered.

“To you.”

I took her hand and led her away from the center of the room. The crowd groaned in protest, but Clare immediately clapped her hands and yelled, “Give them 5 minutes or I’m cutting the cake with a steak knife.”

That worked. Mostly.

I guided Maya through a side door into the hotel garden where the music became a muffled pulse behind glass and the night air smelled like wet stone and roses. String lights hung over the patio beyond them. The city glimmered in the dark, indifferent to the fact that my entire life had just shifted under my shoes.

Maya let go of the bouquet and pressed both hands to her cheeks. “Oh no,” she said.

I stood in front of her. “Oh no?”

“I said too much.”

“No.”

“I said aisle. I said aisle, Caleb. At my sister’s wedding. Into a microphone. I have become the cautionary tale.”

I laughed then, helplessly, because she looked so horrified and beautiful and exactly like herself.

“Maya.”

“I should move maybe to a country with no microphones.”

“Maya.”

“And no bouquet-based customs.”

I caught her hands and pulled them gently away from her face. She stopped talking. Her palms were warm. Mine were sweaty. Her eyes searched me again, but this time she looked more afraid.

“I’ve loved you for years,” I said.

Her lips parted. The words were plain. No poetry, no audience. Just the truth finally sat down between us.

“I kept telling myself it was better not to say it. That I was being careful. That keeping you as my best friend was better than wanting more and losing everything.” Her fingers curled around mine. “But that was fear. Not respect. Not patience. Fear.”

Maya’s eyes spilled over. One tear slipped down her cheek. I lifted a hand, then paused. “Can I?”

She nodded. I brushed the tear away with my thumb, and she leaned into my touch like she’d been waiting years for permission to do it.

“I’m scared, too,” she admitted.

“I know.”

“No, you don’t. I’m not scared you don’t love me.” She gave a watery laugh. “I mean, I was 5 minutes ago, but I’m recovering.”

I smiled. “Okay.”

“I’m scared because you matter more than anyone I’ve ever dated. If this goes wrong, I don’t just lose a boyfriend. I lose my person.”

“You won’t lose me.”

“You don’t know that.”

“No,” I said, “but I know I’m not going to treat this like something fragile I can drop. I’m going to choose you on purpose. Not accidentally. Not when it’s easy. On purpose.”

Her breath shook. Then she stepped closer until the tips of her shoes touched mine. “That sounded dangerously like a man who means it.”

“I do.”

“Say it again.”

I looked at her mouth. Bad idea. Necessary idea. “I love you, Maya Whitaker.”

She closed her eyes. The smile that moved across her face was slow and disbelieving, like sunrise touching a room she’d thought would stay dark.

“I love you, too, Caleb Brooks.”

I should have asked if I could kiss her. I meant to. But Maya rose onto her toes, slid one hand up my chest, fisted it in my lapel, and whispered, “Please stop being noble for one second.”

So I kissed her.

The first touch was soft, careful, barely more than a question. Then she answered. Her arms wound around my neck, and the bouquet dropped somewhere near our feet with a quiet thump. I wrapped one arm around her waist and pulled her closer. She made a tiny sound against my mouth that erased every reasonable thought I had ever had.

It wasn’t a movie kiss. It was better. It was familiar and impossible at once — like coming home to a house you hadn’t known you owned.

When we broke apart, her forehead stayed against mine. Behind the glass doors, a roar went up. We both turned. Half the wedding had their faces pressed to the windows. Adrienne gave us two thumbs up.

Maya groaned and buried her face in my shoulder. “I hate everyone.”

I kissed her hair. “No, you don’t.”

“I hate them romantically.”

“That’s new.”

“So are we.”

We stood there laughing softly, holding each other under the string lights while the bouquet lay abandoned at our feet. Then Maya lifted her head. Her eyes were shining again, but steadier now.

“So,” she said, brushing her thumb along my jaw. “What happens when we go back in?”

I looked through the doors at the waiting crowd, then back at the woman in my arms. “We dance.”

Her smile turned wicked. “You hate dancing.”

“I love you more.”

She went still for half a heartbeat. Then she kissed me again, quick and fierce. “Good answer.”

We walked back into the ballroom, holding hands. That was the first strange miracle. Not the applause, though there was plenty of that. Not Clare crying into a napkin while trying to look dignified. Not Ben standing on a chair like a man who thought love stories required sports commentary.

The miracle was Maya’s fingers threaded through mine in public. Not because she needed balance. Not because we were crossing a street. Because she wanted to. Because I wanted her there.

The DJ, recovering his professional instincts, faded into a slow song. Something old and warm with a trumpet line. Maya glanced at me. “Last chance to fake an ankle injury.”

“I’m a physical therapist. I’d have to make it convincing.”

“You’re stalling.”

“I am absolutely stalling.”

She stepped backward onto the dance floor, pulling me with her. “Then stall while moving.”

I put one hand at her waist. Her breath hitched so softly I might have missed it if I hadn’t been watching her like she was the only thing in the room with gravity.

“You okay?” I asked.

She nodded. “Your hand is on my waist.”

“It is.”

“That’s new.”

“I can move it.”

“Don’t you dare.”

My fingers flexed against the green silk. Her smile flickered, pleased and nervous, and it did something unreasonable to my chest. We started swaying. I was not good at dancing. Maya knew this because she had once watched me attempt salsa at a fundraiser and told me afterward that I danced like a polite refrigerator.

But tonight, she didn’t tease me. She rested her free hand on my shoulder, her thumb brushing the edge of my collar. Every few seconds, she glanced at my mouth like she was remembering the garden. I was definitely remembering the garden.

Around us, the wedding resumed in the way weddings do after a scandal becomes a story everyone approves of. Couples joined us. Cameras flashed. Someone whooped when I spun Maya badly enough that she bumped into my chest. She laughed into my jacket.

“There he is,” she said. “My elegant refrigerator.”

“Careful. I’m emotionally vulnerable now.”

She looked up. “I noticed.”

I lowered my voice. “Do you regret it?”

Her face sobered. “No.” One word. No hesitation. Then she touched my jaw with the backs of her fingers, just briefly, like she needed to make sure I was real. “Do you?”

I stopped dancing. Not dramatically. Just enough that she felt it. “No. I regret every night I didn’t kiss you sooner.”

Her eyes softened. “That’s a dangerous sentence at a family wedding.”

“Your family has already seen me kiss you.”

“My grandmother hasn’t recovered.”

I glanced toward the nearest table. An elderly woman in lavender lifted her champagne at us with impressive solemnity. “She seems resilient.”

Maya laughed and tucked her face against my neck. For 3 minutes, I let myself have it. Her body close to mine. Her perfume. Her hand in my hand. The knowledge that if I turned my head, my lips would brush her temple. And I was allowed to want that now.

Then the song ended, and reality rushed in wearing sensible shoes. Maya’s mother reached us first. She was a slim woman with careful silver hair and the expression of someone who had hosted enough events to understand both floral arrangements and emotional ambushes.

“Maya,” she said.

Maya squeezed my hand once before letting go. “Mom.”

Her mother looked at her, then at me, then at the bouquet Adrienne had retrieved and was now waving from across the room like evidence. “I had a timeline,” she said.

Maya winced. “I know.”

“A beautiful timeline.”

“I know.”

“With color-coded notes.”

“I said I know.”

Her mother’s mouth twitched. Then she pulled Maya into a hug. “Oh, sweetheart,” she whispered loud enough for me to hear. “It’s about time.”

Maya made a strangled sound. “You two. Everyone. Darling.”

I studied the ceiling. Bad choice. Ben was still on the chair pointing at us. Maya’s mother released her and turned to me. I straightened like I was meeting a parole board.

“Caleb.”

“Yes, ma’am.”

“If you break her heart, I will be very disappointed in you.”

“I understand.”

“And I will also have your mother’s phone number by breakfast.”

“That feels more threatening.”

“It should.”

Maya slipped her arm around my waist. “Mom.”

Her mother smiled then, warm enough to undo the warning. “Be happy, both of you. Quietly, for the next 20 minutes, so your sister can cut her cake.”

“We can do quietly,” Maya said. I looked at her. She looked at me. We both knew that was a lie.

The rest of the night became a blur of congratulations and jokes and people saying they had known. Apparently, everyone had known. The bartender knew. The photographer knew. A cousin I’d met once in a parking lot knew.

By midnight, my face hurt from smiling. Maya found me near the dessert table where I was hiding with a tiny tart. “There you are.”

“I was kidnapped by your uncle for 15 minutes.”

“Which one?”

“The one who asked if I had retirement savings before he asked if I loved you.”

“Oh, Leonard. He means well.”

“He took notes.”

She stole the tart from my hand and bit into it. I stared at her. “What?” she asked around the pastry. “That was mine.”

“You love me.”

“I do.”

“I didn’t realize it came with baked goods theft.”

“You should read the contract.”

I leaned against the table, and she stepped between my knees without thinking. Then she realized what she’d done. So did I. The noise of the room seemed to drop by half. Her hand hovered near my tie.

“Is this okay?”

“I love that you asked.”

She hated that she felt she had to. I caught her hand and placed it flat over my heart. “It’s more than okay.”

Her lashes dipped. “I keep forgetting I’m allowed.”

“Me, too.”

She smiled, but it trembled. I shifted closer. “Hey. I’m fine.”

“Maya,” she sighed. “I am fine. I am also terrified that tomorrow morning you’ll wake up and think that was a lot of champagne and poor crowd management.”

I took the tart from her hand, set it down, and cupped her face. “Tomorrow morning,” I said, “I’m picking you up for coffee.”

Her eyes widened. “You are?”

“Yes.”

“As a date?”

“As a date.”

Her smile came slowly. “What time?”

“10.”

“I have brunch with Clare at 10:00.”

“11.”

“I have to return my dress bag to the bridal suite.”

“Noon.”

“I might be emotionally hungover.”

“Maya.”

She grinned. “Make it 12:30. I like a man who negotiates.”

I shook my head, smiling despite myself. “12:30. Coffee date. Will you be nervous?”

“Extremely.”

“Good.”

She slid her hands up my chest. “Me, too.”

Then, in the middle of her sister’s reception, beside the dessert table and under the surveillance of at least 12 relatives pretending not to look, Maya kissed me. Not like the garden. This kiss was softer, slower, a promise rather than an explosion. When she pulled back, she whispered, “Just so you don’t forget by tomorrow.”

“I’m going to need several reminders.”

Her eyes sparked. “Greedy?”

“For you.”

Apparently that did it. The teasing slipped from her face, and something naked and tender took its place. She rose up and pressed her forehead to mine.

“I wanted this for so long.”

My hand settled at her waist again. “Me, too.”

“Why were we such idiots?”

“I was afraid.”

“I was stubborn.”

“I noticed.”

She pinched my side. “Don’t become too confident. It’s unattractive.”

“You just kissed me next to miniature cheesecakes.”

“I contain multitudes.”

The night ended with sparklers outside the hotel. Clare and Ben ran through the glowing tunnel, laughing as sparks danced against the dark. Maya stood beside me wrapped in my suit jacket because she’d claimed she was freezing and then refused to give it back. Her shoulder brushed mine. Our hands found each other again. This time, neither of us looked surprised.

As the newlyweds climbed into the car, Maya leaned her head against my arm. “Caleb.”

“Yeah.”

“Tomorrow after coffee…” She looked down. “Can we not try to be casual about this?”

The question opened something in me. All night, I had been afraid to want too much too fast. Afraid I’d scare her. Afraid we’d sprint and stumble. But Maya was asking for honesty, not speed.

I turned toward her. “No casual. We go carefully, but we don’t pretend it’s small.”

Her eyes shone in the fading light. “Okay,” she whispered. I kissed her temple. She closed her eyes and leaned into me. Behind us, Adrienne shouted, “I can still see you being adorable, and frankly, it’s upsetting.”

Maya laughed against my shoulder, but she didn’t move away.

I slept for 3 hours and woke up smiling like an idiot. Then I panicked. Not about loving Maya. That part felt weirdly calm, like a truth my body had known long before my brain signed the paperwork. I panicked about the date. Our first date. With my best friend, which meant I couldn’t use any of my usual first date material because Maya already knew everything. She knew my coffee order. My worst haircut. My irrational hatred of decorative pillows. She knew I once cried during a dog food commercial and blamed seasonal allergies.

At 11:47, I stood outside her apartment building holding two coffees and a paper bag from the bakery around the corner. At 11:48, I considered leaving and texting, “Something came up.” The thing was cowardice.

At 11:49, Maya opened the front door.

She wore jeans, a cream sweater, and her hair loose around her shoulders. No green silk. No bouquet. No ballroom lights. Somehow it was worse. Or better. Definitely both.

Her smile appeared slowly. “You’re early.”

“I’m prompt.”

“You’re nervous.”

“I’m prompt and nervous.”

She glanced at the coffees. “Is one of those mine?”

“Half sugar, mostly cream.”

Her expression softened. “That was very boyfriend of you.”

The word hit the sidewalk between us. Boyfriend. We both stared at it. Then Maya stepped outside, took her coffee, and said, “Too soon?”

I shook my head. “No. Just new. Good new. The kind that makes me forget how stairs work.”

“There are no stairs here.”

“Exactly. I’m doing great.”

She laughed, and the tightness in my chest loosened.

We walked to the river because it was close and because neither of us was ready to sit across from each other like strangers interviewing for romance. The sky was pale blue. The morning cool enough that Maya tucked her free hand into her sleeve. I wanted to hold it. I did not know if I was supposed to ask.

Maya looked sideways at me. “You’re overthinking.”

“I’m thinking a normal amount.”

“You have a forehead crease.”

“That’s medical.”

“That’s lying.”

We stopped at a crosswalk. She shifted her coffee to her other hand and held out her empty one. My heart did something embarrassing.

“You can hold it,” she said. “I won’t alert the authorities.”

I slid my fingers through hers. “Simple. Devastating.”

Her thumb brushed mine, and she looked down at our hands with a shy little smile I had never seen from her before. I wanted to earn that smile every day for the rest of my life. Dangerous thought for a first date. Accurate thought, unfortunately.

We found a bench near the water, and I handed her a croissant from the bag. She narrowed her eyes. “Is this almond?”

“Yes.”

“You hate almonds.”

“I’m not eating it.”

“You bought me an almond croissant on our first date.”

“I’ve bought you almond croissants before.”

“Not as a man trying to woo me.”

“I’ve been trying to woo you for years, apparently with terrible branding.”

She laughed, then tore the croissant in half and handed me the smaller piece. “This is how you know I love you.”

“Because you’re sharing?”

“Because I’m giving you the part with less filling. Romance is alive.”

We ate in companionable silence for a minute, watching a dog drag its owner toward a patch of wet grass. Then Maya said, “My phone has been exploding.”

“Mine, too.”

“Adrienne sent me a photo of us kissing by the dessert table with the caption ‘historic footage.'”

“He sent me the same photo with, ‘You’re welcome, coward.'”

Maya snorted. “Accurate.”

I bumped her shoulder with mine. “Harsh.”

“Caleb.” I looked at her. Her teasing faded, but she didn’t pull her hand from mine. “I need to say something before this gets too dreamy.”

My stomach tightened. “Okay.”

“I don’t want us to become careful in the wrong way.”

“What does that mean?”

She stared at the river. “You have this habit. When something matters, you make yourself smaller so nobody feels pressured to keep you.”

I went still. She knew me too well. That was the gift in the danger.

“Maya—”

“No, listen.” She turned toward me. “I love that you’re steady. I love that you show up. But I don’t want a version of you that edits every want before I can hear it.” Her eyes searched mine. “If you want to kiss me, tell me. If you’re scared, tell me. If you’re mad, tell me. Don’t become my perfect low-maintenance almost-boyfriend.”

“Almost?” I asked, because humor was easier than the ache in my chest.

Her mouth curved. “That’s what you heard.”

“I’m coping poorly.”

I looked down at our joined hands. She was right. For years, I had loved her quietly because quiet felt safe. But now quiet could become another kind of hiding.

“I want this,” I said. Her fingers tightened. “I want you. Not as an accident after a wedding. Not as a maybe. I want to take you on dates and kiss you good night and learn what changes when we stop pretending we’re only friends.”

Maya’s eyes went bright.

“And I’m scared I’ll mess it up because I’ve wanted it so long that it feels impossible to hold without breaking.”

She set her croissant on the bag, turned fully on the bench, and touched my cheek. “You’re not holding it alone.”

Something in me gave way then. Not dramatically. Quietly. Like a knot loosening.

I leaned in slowly, giving her every chance to pull back. She didn’t. Our kiss tasted like coffee and almond sugar. Her hand slid to the back of my neck, and mine settled at her waist over the soft knit of her sweater. It was a public bench at noon on a Sunday, but the world politely blurred.

When we parted, she smiled against my mouth. “That was good communication.”

“I’m a quick learner.”

“Show off.”

I kissed her again, shorter this time. Because I could. Because she wanted me to. Because we were allowed.

After that, we walked the river path for an hour, hand in hand, and the strangeness began to settle into something sweeter. Not less thrilling. Just more real.

We talked about rules and discovered neither of us liked the word. So Maya renamed them “ways not to be idiots.” Way one: if either of us got scared, we said it out loud. Way two: no pretending a date wasn’t a date. Way three: best friend privileges remained — including emergency soup, airport pickups, and sending unflattering pictures of pigeons with captions. Way four: kissing was encouraged, but not to be used as a substitute for hard conversations.

“I object to that one,” I said.

“Overruled.”

“You’re very strict.”

“I’m very kissable. It balances out.”

I stopped walking. She made it three steps before our joined hands pulled her back. Her eyebrows lifted. “Yes, I want to kiss you.”

Her face lit. “See? Communication.”

I drew her in under a maple tree, just beginning to turn gold, and kissed her until a cyclist rang his bell at us.

Maya laughed into my chest. “We are a public nuisance.”

“I’m comfortable with that.”

By late afternoon, I walked her back to her apartment. At the door, the easy mood shifted again. Not bad. Just heavier. The first date was ending. We both felt it.

She leaned against the brick beside the entrance. “Do you want to come up?”

Every muscle in my body answered before my brain could. Maya saw it and smiled, soft but nervous.

“For dinner,” she added. “Leftover wedding cake and whatever is in my freezer.”

I exhaled. “Yes.” Then I paused. Her smile faltered. “What?”

“I’m trying not to make myself smaller.” I said. “Okay, so the full answer is yes. I want to come up. I also want to kiss you in your kitchen and probably forget dinner exists. And I want to go slowly enough that neither of us wakes up tomorrow terrified.”

Maya’s expression changed in a way I would remember forever. Tenderness. Desire. Relief. She stepped close and hooked one finger in the front pocket of my jeans.

“Caleb Brooks,” she said. “That may be the hottest responsible sentence anyone has ever said to me.”

I laughed, but it came out rough. She rose on her toes and kissed the corner of my mouth.

“Come upstairs,” she whispered. “We’ll eat freezer dumplings, argue about a movie, and make out like emotionally honest adults.”

I brushed my nose against hers. “That’s a very specific plan.”

“I’m a woman with vision.”

Upstairs, her apartment looked the same as always. Plants in the window. Books stacked badly. The blue mug I’d given her beside the sink. But when she turned on music and handed me a pan for dumplings, everything glowed with new possibility.

Halfway through dinner, she dabbed soy sauce from my chin with her thumb. I caught her wrist and kissed her palm. She went quiet. Then she pushed her plate aside and climbed onto the couch beside me, close enough that her knee pressed mine.

“No pretending it’s small?” she asked.

“No pretending.”

Her hand found my heart again. Mine covered it. And when she kissed me this time, slow and certain in the warm light of her living room, I understood that the bouquet hadn’t started anything. It had only exposed what had been blooming all along.

The next morning, I woke up on Maya’s couch with a crick in my neck and her foot tucked under my thigh. We had not made it through the movie. We had made it through half a plate of dumplings, three slices of wedding cake, and one long whispered conversation in the dark about what we were afraid of losing. At some point, Maya had fallen asleep with her head on my shoulder. At some later point, I had decided moving would be a crime.

Now, pale morning light filled her apartment. A plant on the windowsill leaned toward the glass. Somewhere in the building, pipes clanked.

Maya stirred. Her eyes opened slowly, unfocused and soft. Then she saw me. For one breath, neither of us said anything. This was the moment I’d feared. The morning after the confession. After the wedding high. After the first date glow. The moment reality might arrive and make us both awkward.

Maya blinked at me. Then she smiled. Sleepy. Warm. Mine if I was brave enough to keep choosing her.

“Hi,” she whispered.

My heart settled. “Hi. Still here?”

“I was trapped.”

She looked down at her foot wedged under my leg. “A likely story. You’re stronger than you look.”

“I’m emotionally formidable.”

“That, too.”

She shifted closer, and I brushed a strand of hair away from her cheek. The gesture was so simple it nearly broke me. I had touched Maya a thousand times as a friend. High fives. Shoulder bumps. Quick hugs at airports. This was different. This was a loud tenderness.

Her eyes searched mine. “Are we okay?”

I leaned down and kissed her forehead. “We’re more than okay.”

“Good.” She closed her eyes. “Because I had a dream that you decided we needed to ‘circle back’ after reviewing our friendship metrics.”

I laughed. “That sounds like me on cold medicine.”

“It was very upsetting.”

“No circling back. No metrics.”

She opened one eye. “What about kissing?”

“Strongly recommended.”

She smiled, slid her hand behind my neck, and pulled me down. The kiss was slow and morning-soft. No audience. No bouquet. No one shouting “finally” from across a ballroom. Just Maya’s fingers in my hair and my hand at her waist. And the quiet astonishment of waking up beside the person I’d loved for years.

After breakfast — toast burned by me, heroically tolerated by her — we started telling people. Not announcing. Not performing. Just telling.

Clare responded with 17 heart emojis in one voice memo that was mostly sobbing.

Adrienne texted: “Remember when I said if you fumbled this I’d change your locks? I’m proud to report your keys remain safe.”

My mother went silent for a full 5 seconds on the phone, then said, “Oh, Caleb, you sound happy.”

I hadn’t realized I did. But I was.

The first month was beautiful and clumsy. We had to learn each other in reverse. On dates, I kept reaching for the old rhythm of friendship, trying to make everything easy. Maya noticed every time.

“Say the scary thing,” she would tell me.

So I did. I told her I got jealous when a man at her office made her laugh in a way I didn’t recognize. She kissed me once, then said, “Thank you for telling me. Also, he has a ferret named Chairman Meow, so you’re safe.”

I told her I worried that if we fought, I’d shut down. She took my hand and said, “Then I’ll remind you to come back, and you’ll remind me not to turn every feeling into a courtroom argument.”

She told me she feared I’d wake up one day and miss the simplicity of being friends. I told her friendship was not what I missed. Distance was. Pretending was. Wanting her from 3 feet away and calling it loyalty.

We still fought. Of course we did. Our first real argument happened over a canceled dinner. I stayed late with a patient, forgot to text, and found Maya in her kitchen with cooling pasta and eyes too bright for anger to hide the hurt.

The old me wanted to apologize until I disappeared. The new us stood there terrified and trying.

“I’m not mad that you helped someone,” she said. “I’m mad that you forgot I was waiting.”

“I know,” I said. “I’m sorry. I don’t want to make you feel like an afterthought.”

“You didn’t make me feel like one.” Her voice cracked. “You made me afraid I’d become one.”

That sentence stayed with me. I crossed the kitchen slowly. “Never. You are not the space left over after my life. You’re in the center of it.”

She cried then, and I held her, and the pasta became a tragedy. Later, we ate it cold from the pan sitting on the floor. Maya wiped her eyes and said, “This is terrible.”

“My apology?”

“The pasta. Deeply mediocre.”

“I didn’t cook it.”

“I know. I’m blaming you romantically.”

I kissed her salty cheek. “Fair.”

By winter, my toothbrush lived in her bathroom. By spring, her books had colonized my apartment. By summer, we stopped pretending either place was separate and found a small house with blue shutters and a porch that sagged slightly to the left.

“It has character,” Maya said, standing in the overgrown yard.

“It has structural concerns.”

“You’re such a flirt.”

“I’m serious. That railing is a lawsuit.”

She slipped her hand into mine. “But look at the kitchen window.”

I did. Sunlight poured through it, landing on cracked tile and empty counters. I could see her there. Barefoot. Laughing. Burning toast while blaming me somehow. I could see myself coming home to her. Not visiting. Home.

“We can fix the railing,” I said.

Her smile broke wide open.

A year after the bouquet hit her chest, Clare and Ben hosted an anniversary party in their backyard. There were fewer flowers this time and significantly less emotional ambush risk. At least that was what I thought.

Maya wore a yellow sundress and stood under a string of paper lanterns talking with her grandmother. I watched her from the drink table holding two lemonades and feeling that familiar pull in my ribs. The one that always said: “There’s my person.”

She caught me looking and raised an eyebrow. I walked over.

“You’re staring,” she said.

“I’m admiring in public. I’ve grown.”

“Debatable.”

I handed her a lemonade. Our fingers brushed. And even after a year, that small contact still made something in me light up.

Clare clapped her hands from the patio. “All unmarried people to the lawn.”

Maya froze. I looked at her. She looked at me.

“No,” she said.

I grinned. “Afraid of flowers?”

“I have a history.”

“Understandable.”

Clare lifted her bouquet — smaller than her wedding one, tied with a blue ribbon — and scanned the group. Then she smiled like a menace. “Maya, don’t worry,” she called. “This one’s not for you.”

She turned around and tossed it. The bouquet sailed high over the laughing crowd, straight toward me. I caught it against my chest.

The yard went silent for half a second. Then Adrienne, from somewhere near the grill, yelled, “Full circle!”

Maya covered her mouth. I looked down at the flowers, then at her. Her eyes filled, but she was laughing, too. I walked straight to her, just like she had walked to me. Every step felt like an answer.

When I reached her, I held the bouquet between us. “Well,” I asked.

She laughed through tears. “Well, what? You’re just going to stand there like I didn’t just get attacked by flowers?”

Her face crumpled into the most beautiful smile I had ever seen.

I set the bouquet in her hands, then reached into my pocket. Maya stopped breathing.

This time, I didn’t need a ballroom. I didn’t need a microphone. I didn’t need 200 witnesses — though apparently we had about 30 and one man holding grill tongs like opera glasses.

I took her left hand.

“Maya Whitaker,” I said, my voice shaking. “You are the person I look for first. You are my best friend, my favorite argument, my emergency contact, my home. I loved you quietly for years, and then you were brave enough to make me stop hiding.”

Tears slipped down her cheeks.

I lowered to one knee. “So I’m asking loudly now. Will you marry me?”

She dropped the bouquet again. Then she grabbed my face with both hands and kissed me before answering. Everyone screamed. I laughed against her mouth.

“Is that yes?”

“Yes,” she said, breathless. “Yes, you emotionally formidable refrigerator.”

I slid the ring onto her finger with hands that would not stop trembling. She stared at it, then at me, and whispered, “No pretending it’s small.”

“No pretending,” I said.

She pulled me up and into her arms. Behind us, the bouquet lay in the grass, blue ribbon curling in the warm evening breeze. And for once, fate didn’t have to throw anything at us.

We were already reaching.

What would you have done if your best friend caught the bouquet at a wedding and walked straight to your table with the whole room watching?