The storm had passed, but the city wore its bruises in daylight. Fortress Hill steamed under a white, heavy glare, the kind that made sweat prickle before you even moved. Puddles clung in the cracks of the asphalt, gutters ran black with oil and incense ash. Someone's laundry, plastered flat to bamboo poles all night, hung limp and sour, sleeves flapping as if begging for rescue.
Iris shouldered her satchel and stepped out into it. No bike today. The roads were snarled with bamboo scaffolds broken like snapped chopsticks, glass swept in half-hearted piles to the curb, cables sagging low as ropes. On foot she blended in with the rest of them: neighbors hauling buckets, shopkeepers prying charms off their doors, priests in sneakers and ponchos already hawking replacements for triple.
One man knelt at his storefront, scrubbing his lintel with seawater and muttering under his breath. His neighbor tore his talisman in half and yelped like he'd broken his own arm. A priest daubed cinnabar onto fresh slips, sealing each with a slap of his palm before pinning it to the wet brick. "Storms come in threes," he warned, voice carrying down the block. People paid him anyway.
The trams were running again. Ding-dings lumbered past on King's Road, steel hides streaked, bells ringing weary. Commuters sat pale and silent behind the glass, pretending the night hadn't nearly drowned them.
Iris cut toward Victoria Park. It was wreckage. Palm trees bent sideways, soil churned into swamp. The fortune-tellers had already returned, sweeping mud from their stalls, laying out charms to dry under stones. The characters shimmered faintly in the humid glare. A drone dipped too low, clipped by static from the old feng shui lines, and spiraled shrieking into a banyan. The fortune-tellers cheered as if the gods themselves had scored a point.
Causeway Bay's wet market roared alive, louder than it had any right to be. Tarps sagged with leftover rain, alleys slick. Cleavers slammed, smoke and brine turned the air into soup. Children tore through barefoot, flying patched kites stitched from garbage bags, copper wire in the frames sparking faint as they snapped overhead. Vendors swore, waving ladles, but the kids only laughed, splashing through puddles like they dared the storm to come back.
At one stall a woman with a prosthetic arm stacked garlic into neat pyramids, each bulb bound with red thread. People grabbed them faster as ward charms than food.
Iris sniffed star anise at a spice stall—sharp enough to sting her teeth, tinged with cheap ash to make it "special." The vendor grinned, gold teeth glinting. "Protection, girl. Good deal." She rolled her eyes and walked off before he finished the pitch.
Her list was simple. Rice, broth cubes, dried fruit. Enough to last. The storm had emptied her cupboards. By the time she'd circled to the pier her arms ached pleasantly, bags heavy with food.
Victoria Harbour lay greasy and flat under the white glare. Debris bobbed: roof tiles, prayer slips, the rear half of a scooter. Across the water, Central gleamed immaculate. Glass towers pristine, holo-ads crisp as ever. Their corporate wards had held like divine mandate. Screens already screamed about storm-relief loans and new drone subscriptions.
Iris spat into the water. The kitten stirred. She rubbed the satchel, more to calm herself than it, then turned back inland.
The phone buzzed against her thigh before she'd cleared the market streets. Static flickered across her AR before the name came clear: Cho
She thumbed it on. "If this is about rent, I'm already—"
His voice slammed into her, raw and too loud, like he hadn't realized the mic was open. "I owe you."
That was all. No hello. No setup. Just those three words, jagged as broken glass.
"Cho?" She slowed, groceries biting into her fingers. "You owe me what, exactly—money, bail, lunch?" She tried to laugh, dry and sharp. "Because if it's bail, you better—"
The line cut with a hard pop. Dead black.
She stopped dead on the curb, shoulder to shoulder with strangers still shouting about storm damage and ward prices. A monk slapped a dripping talisman onto a doorframe. A vendor swore at a sparking drone. Life pressed on, thick as before.
Her screen showed nothing but an error glyph: WATER DRAGON: POSTPONE MEETINGS. She cursed under her breath and shoved it away.
The kitten hissed faintly in the satchel, as if it shared the mood. Iris tapped the flap once. "Don't start."
She walked on, faster than before.
By the time she reached the slope toward Fortress Hill the crowds had thinned. The clamor of the market bled off behind her. Afternoon glare poured through gaps in the old buildings, slicking the puddles in white light. Her bags cut into her palms, her mind stuck on the sound of Cho's voice.
She noticed the silence too late.
No tram bells. No drone hum. Just the soft dripping of water from balconies above.
The satchel stiffened against her hip. Claws pressed faintly through canvas. The kitten made a low, uncertain sound.
Iris looked up.
The figure blocked the lane ahead.
It didn't move. Just stood in the wet hush, wrapped in dark cloth that clung slick to its body. Face half-shadowed, not hidden. Confidence didn't need masks.
She made a step back, suddenly feeling movement behind her. Here it was - another figure, mirror of the first.
Her throat went dry. The ink on their skin moved. Dragons curled, koi swam, talismans writhed alive under flesh. Bound spirits, weaponized into tattoos that breathed. She knew the stories. She'd seen once—just once—what they could do to a man. Her stomach clenched.
Her pride kept her standing where she was.
The one before her stepped forward, fluid as oil. Iris stiffened, expecting him to pull out a blade or unleash his inks, but instead, the figure stopped right in front of her and, unexpectedly, bowed.
Both hands extended.
An envelope lay across his palms.
Iris stared. Her grip whitened on the plastic handles. "You're kidding me," she said, voice too loud.
No answer.
The man held the bow. His ink shifted lazily, scaled coils watching her with their own eyes.
She set one bag down, reached carefully, and plucked the envelope. Her fingertips brushed his arm. Heat throbbed under the skin. The tattoos felt alive against her nails. She pulled back quick.
The moment stretched taut, then snapped, as they smeared into the shadows, like a botched photography attempt.
The city's noise rushed back all at once. Buses, voices, dripping water.
Iris tore the envelope open with her thumb. Inside: brushstrokes bold and bleeding, written in the arrogance of ancestry. She recognized it halfway through the first character.
She read it again, slower, as if the ink might change. Not a street crew, not a flashy tattoo gang. Older. Older than the towers across the harbor, older than the wards flaking from doorways. Pirates had carried that name across these waters centuries ago. Merchants had bribed it. Warlords had bled for it.
Wei Yanshu.
Great. The storm hadn't even dried and a page from history book already wanted a chat.