AI The Heartstone burned through Aurora Carter’s jumper before the gap in the air opened.
Not heat enough to blister. Heat with a pulse . One thud for her ribs, one thud for the deep crimson gem at her throat, as if her heart had gained an accomplice and neither of them trusted the other.
The ancient oak standing stones of the Fae Grove leaned around her in a crooked ring. Moss thickened their bases. Wildflowers nodded in winter-dark grass. No wind moved them. Beyond the ring, Richmond Park lay muffled under ordinary night, but inside the grove the moonlight pooled silver and green, and every shadow seemed to listen.
Nyx stood beside the largest stone in a shape almost human, tall and narrow, their faint violet eyes opening inside their face like two bruised stars.
“The Veil has thinned here.”
Their voice slid over the grass, a whisper dragged through leaves.
Aurora gripped the Fae-forged blade Isolde had given her. The moonsilver handle bit cold into her palm. The dagger’s leaf-shaped edge shone with a pale hunger, reflecting no moon she could see.
“You could’ve mentioned it would feel like swallowing a live coal.”
Nyx’s head tilted.
“You did not swallow it.”
“Not the point.”
Isolde Varga drifted past them without bending a blade of grass. Her silver hair fell to her waist, untouched by damp or burr. Pale lavender eyes fixed on the space between two stones, where the air had begun to warp.
“A door knows the hand that knocks. A mouth knows the taste of the name it has eaten.”
Aurora stared at the shimmer.
“Useful. Love that.”
Isolde’s mouth curved, not quite a smile.
“You brought Dymas close when you wore its red heart. The rest only answered.”
The distortion widened. It looked like heat over tarmac at first, then like water held upright, then like the inside of an eyelid lit from behind. Amber light seeped through, warm and thick. It carried smells that had no business crossing into a winter grove: roasted peaches, burnt sugar, yeast, charred fat, rain on hot soil, crushed mint, blood-orange peel.
Aurora’s stomach clenched.
Nyx moved closer to the opening, and their outline frayed at the edges. “Prince Belphegor’s realm.”
“Gluttony.” Aurora swallowed.
“A feast where the plate never empties.”
Isolde lifted one bare foot and placed it in front of the other. No print marked the grass.
Aurora raised the dagger.
The shimmer folded inward at the sight of the moonsilver, bunching like skin around a thorn. Lines appeared across it. Not cracks. Wards. Fine black script tangled through the amber light, each letter shaped like a hook.
Aurora pushed the blade in.
The ward split without sound.
For one second, she saw London behind her through the curve of the blade: wet grass, dark trees, an old world pretending it had no doors.
Then the portal breathed her name.
Not aloud. Not in any language she knew. It pressed Aurora into her bones, tugged at the scar on her left wrist, and the crescent there stung as if an old accident had remembered teeth.
“Rory.” Nyx’s shadow-hand hovered near her elbow but did not touch. “Step through before it decides to bargain.”
“Right. Grand.”
She stepped.
The grove vanished.
Warm amber sky stretched above her, too low and too vast at once, like the whole world had been poured under glass. No sun hung there. Light came from everywhere: from swollen clouds the colour of honeycomb, from rivers that flashed copper between distant hills, from trees whose fruits glowed beneath skins thin as lantern paper.
Aurora stumbled onto a road made of black salt.
It crunched under her boots. The grains were large and glossy, each one shaped like a tiny tooth. Heat rose from it in soft waves and wrapped around her calves. Behind her, the portal rippled between two basalt pillars carved with open mouths. Their stone tongues unfurled down the sides and vanished into the soil.
Nyx emerged after her, their form thinning in the bright, syrupy air. Shadows clung under vines, beneath roots, inside cracks, but none stretched where they should have. Dymas did not seem to care where light fell.
Isolde came last. The portal snapped shut behind her like a bitten thread.
Aurora turned in a slow circle.
“Oh.”
The word left her small and useless.
Vineyards rolled away from the road in terraces too perfect for any human hand, each vine twisted around bones of white stone. Grapes hung in clustered jewels: green as sea glass, blue as old bruises, gold as coins fresh from a furnace. Between the vines, low figures moved with silver pruning shears, clipping, humming, tasting juice from their thumbs. Their faces looked human until they turned; each had an extra mouth at the throat, murmuring recipes while the main mouth stayed shut.
Farther down the slope stood orchards with trunks as thick as towers. Pears grew beside pomegranates, figs beside apples striped with flame, fruits Aurora had no names for: spiralled red pods that opened and closed like sleeping lungs, velvet globes covered in frost despite the heat, flat white discs that rang softly when the breeze touched them. A flock of birds made of folded pastry lifted from one tree and flaked crumbs into the air.
Aurora caught one on her sleeve. It melted into butter.
Nyx’s eyes narrowed .
“Do not lick anything.”
“I wasn’t going to.”
“You thought about it.”
“I’m hungry, not suicidal.”
A bell rang somewhere ahead. The sound rolled through the terraces and set the grapes trembling. Workers straightened. Some crossed themselves. Some pressed fingers to their throat-mouths. One man, grey-haired and sweating through a chef’s white jacket, stared up at the road and froze when he saw Aurora.
The throat-mouth smiled.
The man did not.
Aurora lifted a hand before she knew why.
He shook his head once. Sharp. Don’t.
Then a vine curled around his ankle and dragged him back into the row. He bent over the grapes again, shears snapping.
Aurora’s hand fell.
Isolde walked on.
“The hungry road rewards the still and tests the moving.”
“Does that mean we keep walking or don’t?”
“The road has teeth either way.”
Aurora looked down at the black salt beneath her boots. A few grains had shifted closer to the leather, as if sniffing .
“Walking, then.”
They followed the road as it curved between two sloping orchards. The air thickened with sweetness. It coated Aurora’s tongue. Her stomach cramped with want, sudden and sharp. She had eaten half a bao in the Golden Empress kitchen before leaving, standing by the back door while Yu-Fei barked at a supplier over prawns, but now hunger hollowed her out. Not normal hunger. This dragged pictures through her head: her mother’s bara brith cooling on the counter in Cardiff; late-night chips wrapped in paper; the first meal she had eaten in London after fleeing Evan, sitting on Eva’s floor with cold noodles and shaking hands.
She stopped.
Nyx turned.
“Carter.”
The nearest tree leaned. Its bark opened along a seam and revealed a hollow filled with steaming stew. Lamb, rosemary, carrots, glossy gravy. The smell hit her so hard her eyes watered.
A wooden spoon grew from the bark.
Aurora’s fingers twitched.
Isolde appeared at her side, close enough that her hair brushed Aurora’s sleeve and left a frost-cool trace.
“A gift that asks no price has already named it.”
Aurora clenched her fist around the dagger until the moonsilver burned cold.
“I hate this place.”
The hollow in the tree puckered. The spoon wilted. The stew slid back into darkness.
Nyx drifted between Aurora and the orchard. Their shadow stretched for a moment, long and ragged, then snapped back beneath them.
“It likes need. It fattens on the first bite.”
“Could you say that before the haunted casserole makes eyes at me next time?”
“I will narrate every stew.”
Despite herself, Aurora gave a breath that almost counted as a laugh.
They moved deeper.
The terraces opened into a valley paved with pale marble veined in red. At its centre sprawled a market under canopies of woven leaves and hammered gold. Stalls overflowed with impossible abundance: towers of sugared insects with glass wings still buzzing; bowls of soup where tiny storms turned under the surface; loaves that sighed when cut; cheeses veined with light; skewers of meat roasting over blue fire that burned without smoke.
Crowds pressed between the stalls.
Demons in silk and lacquered masks tasted from silver forks. Tall women with horns like polished walnut debated over jars of pickled moons. Children with fox ears and black eyes chased rolling fruits that squealed. Humans worked everywhere, pale with heat, sleeves rolled, hands scarred by knives and fire. Some wore chains so fine they looked like jewellery until Aurora saw the links vanish under their skin.
A man kneaded dough at a stall shaped like a chapel altar. Words covered his forearms in black ink, crawling each time he flexed. Contract script. His eyes passed over Aurora, then caught on the Heartstone pendant. His mouth opened.
A demon behind him touched one claw to the man’s spine.
The man bent over the dough and punched it flat.
Aurora leaned toward Nyx.
“Those are souls.”
“Yes.”
“Contracted?”
“Many. Some bargained. Some inherited debt. Some mistook an invitation for a choice.”
A vendor with four arms and a face hidden beneath a copper veil swept towards them, bangles clattering from wrist to elbow. In each hand she held a tray: ruby seeds, white cakes, green wine, strips of something crisp and black.
“Guests with no grease on their lips. Rare. Sad. Suspicious.” Her voice clicked like cutlery in a drawer. “Taste and be welcomed.”
Aurora stepped back. “We’re only looking.”
“Looking dries the tongue.” The vendor thrust the green wine nearer. Tiny bubbles rose inside it, each bubble containing a little screaming face. “First cup free.”
“No cup is free in Dymas.” Nyx’s whisper pulled shade from beneath the canopy. The shadows thickened around the vendor’s feet.
Her veiled head turned towards them. “Nightwhisper. You cast poorly here.”
“I cast enough.”
Isolde lifted one finger and pointed at the vendor’s trays.
“The seed remembers the tree. The cake remembers the oven. The wine remembers the throat. The crisp remembers the skin.”
Aurora’s gaze snapped to the black strips.
The vendor lowered that tray .
“Poetry spoils trade.”
“Truth curdles a liar’s milk.”
“I do not lie.”
“No. You season.”
The vendor gave a hard little bow and backed into the crowd, trays held high. Her bangles kept clattering long after bodies hid her.
Aurora exhaled through her nose.
“I nearly asked what the crisp was.”
Nyx glided beside her. “You knew.”
“I didn’t want to.”
A procession burst from a side street before they reached the next archway.
Drums thudded. Flutes shrieked. Six demons carried an enormous platter on their shoulders, and on it sat a roasted boar the size of a van, its tusks gilded, its apple-stuffed mouth propped open in triumph. The crowd cheered. Fat dripped from the platter onto the marble and hissed. Human cooks followed behind with knives, each blade longer than Aurora’s arm. Their white coats bore the same embroidered crest: a sleeping fly inside a crown.
One cook, a young woman with brown skin and a shaved head, stumbled. A demon in a red waistcoat caught her by the collar.
“Legs, Mina. The prince’s table hates delay.”
The woman’s eyes met Aurora’s.
No plea. No tears. Just a quick flick down to Aurora’s dagger, then to an alley behind a fountain shaped like an overflowing goblet.
Aurora shifted her grip on the blade.
Nyx’s voice brushed her ear. “Not here.”
“She looked at the knife.”
“Everyone here looks at knives.”
Isolde watched the procession pass. “A blade drawn for one throat may cut the rope around another, or it may ring the dinner bell.”
Aurora’s jaw tightened.
“Riddle vote says not here as well. Fine.”
They crossed after the platter vanished beneath an arch carved with grapes and grinning skulls. Beyond it, the market noise fell away as if someone had shut a door.
A garden spread before them, ancient and arranged in circles. Each ring held a different crop: herbs in the first, vegetables in the second, fruit trees in the third, then stranger things farther in. The soil changed colour with each step of the path: brown, red, violet, pearl-white. Water channels ran between the rings, but the liquid in them was not water. One glittered like oil. Another smelled of cider. A third ran thick and dark, and Aurora chose not to name it.
At the garden’s heart stood a stone table long enough for a hundred guests. Empty plates lined both sides. No chairs. Above each plate floated a flame the size of a plum.
The flames turned as the group entered.
Aurora stopped at the edge of the herb ring. Lavender brushed her boots. It smelled clean, almost ordinary, and that made her chest ache.
“This place is older than the market.”
Nyx’s form steadied in the shade of a fennel stalk taller than a lamppost. “Older than most princes.”
Isolde’s bare feet crossed the soil without leaving marks. “Before crowns, there were mouths. Before bargains, there was appetite.”
Aurora walked to the first water channel and crouched. The Heartstone pulsed again, faint but steady. Its crimson glow matched small symbols cut into the stone edging the channel: circles within circles, each broken by a single bite-mark.
She touched the pendant.
“You know this place, don’t you?”
The gem warmed her fingertips. No answer. Just heat.
A sound rose from the table.
Not speech. Porcelain chattered.
One plate shivered, then filled itself with bread. Steam curled from the torn crust. Another produced a mound of black cherries. Another, a slice of cake with cream sliding down its sides. Dish after dish bloomed along the table, each one more inviting than the last, and the flames above them bent like noses catching scent.
Aurora stood.
“Nope.”
The nearest plate spun. The bread split open. Inside, where soft crumb should have been, lay a folded scrap of parchment.
Nyx stilled.
Isolde’s eyes paled until they looked almost white.
Aurora moved before either of them warned her off. She kept the dagger in one hand and used its tip to tease the parchment free. The bread closed around the blade with wet force. Moonsilver flashed. The loaf fell apart in two steaming halves.
The parchment fluttered onto the stone path.
Words inked themselves across it, one line at a time.
Aurora read aloud.
“Delivery accepted. Carter, Aurora. Table reserved.”
The plates stopped chattering.
Across the long garden, every little flame leaned towards her.