“And the source is Viktor.”
They found him in the north tower’s ritual chamber. A circular room, walls carved with dimensional runes that glowed silver-black, and at the centre, a vortex the size of a doorway, swirling, stabilizing, growing. The murraue were already pressing against the other side. Hazel could see their shapes in the portal’s surface: shadow-things with too many limbs and mouths that opened and opened and never closed.
Viktor stood before the portal, hands weaving the runes that held it open. He didn’t look like a fugitive. He looked like a general executing a contingency plan.
Viktor’s sister Cassandra flanked him, blood magic drawn and ready. Hazel had heard the name in depositions. The Blackwood family’s enforcer, the one who made problems disappear before they reached Viktor’s desk.
“Ah, the hedge witch and her demon.” Viktor didn’t turn around. “I wondered when you’d arrive. You’re too predictable,both of you. Too moral. You couldn’t just take the evidence and run, could you?”
“Not really our style,” Hazel said.
“No. It wouldn’t be.” The portal pulsed. “In approximately two minutes, this gateway will be fully stable. An army of murraue will pour through and spread across the region. Every sleeping mind within a hundred miles will become a feeding ground. Do you know what happens to a human brain subjected to sustained murraue feeding? Madness. Permanent, irreversible madness.”
“Then we’d better work fast.” Marcus stepped forward, and Cassandra moved to intercept.
She was faster than last time. Blood magic crackled around her hands, dark, vicious, the kind of power that broke the rules because it was written in suffering. She lashed out at Marcus with a cutting spell that would have opened him from throat to groin.
He deflected. Barely. The obsidian poison made him slow, half a beat behind where he should have been, his reactions dulled by the grinding pain in his side. The deflection cost him: the spell’s edge caught his shoulder, shearing through fabric and skin.
Hazel covered him. Purple shields interposed between Marcus and Cassandra’s follow-up strikes, not elegant, not geometric, just raw power thrown into the gap. Cassandra’s blood magic ate at the shields, dissolving them from the inside.
“Cute,” Cassandra said. “How long can you sustain that, hedge witch? Another minute? Thirty seconds?”
Less than that. Hazel could feel her reserves draining. The ward deployment, the compound breach, and now shield-casting against blood magic was emptying her faster than she could replenish.
Marcus attacked. Not from the front, but from the angle, using Cassandra’s focus on Hazel to close the distance. Five centuries of combat experience compressed into a single movement: demon speed, demon strength, and the cold precision of a man who’d been fighting long before Cassandra’s great-grandparents were born. His clawed hand caught her casting arm. Cassandra screamed as his demon fire burned through her blood magic shields and scorched the skin beneath.
She went down. Not unconscious, tougher than that. But down, her magic sputtering like a candle in a storm.
“The portal!” Hazel pointed. It was nearly stable. The murraue were pressing harder, their shadow-bodies distorting the gateway’s surface like fingers pushing through a membrane.
Viktor’s hands moved faster. “Too late. Sixty seconds.”
Marcus charged him. Viktor deflected without looking. Six hundred years of accumulated power redirected the demon’s attack like a wall redirecting water. Marcus hit the far wall and didn’t get up immediately. The obsidian wound had split open. Blood, human-red, not demon-black, pooled on the stone.
Hazel stood alone before the portal.
She wasn’t strong enough to close it by force. She knew that. Viktor’s power sustained the gateway, and his power dwarfed hers. She couldn’t overpower a six-hundred-year-old dark sorcerer with hedge magic and stubbornness.
But she didn’t need to overpower it.
She needed tocorruptit.
The anti-nightmare technique. Silver and obsidian. The charm Marcus had given her, the one she wore against her chest. The same principle that had driven the murraue from her dreams that night at the cabin, amplified through the wards they’d deployed across Willowbrook. The silver repelled; the obsidian absorbed. Together, they created a feedback loop that turned nightmare energy back on itself.
Hazel pulled the pendant from beneath her shirt. Silver and obsidian, crystallized midnight. She’d worn it every day since Marcus placed it around her neck.
She pressed it against the portal’s surface.
The effect was immediate. The pendant’s enchantment, designed for one person’s dreams, couldn’t close a dimensional breach. But it couldreverse the polarity. The murraue pressing against the portal from the other side suddenly found themselves being pulled backward, the portal’s current reversed fromincomingtooutgoing. Not pushing nightmare demons into this world. Pushing them back.
Viktor felt it. His hands faltered. “What are you—that’s impossible. You can’t reverse a dimensional flow with atrinket?—”
“It’s not a trinket.” Hazel poured her magic into the pendant, every scrap of power she had left, purple light blazing so bright it washed the colour from the room. “It’s silver and obsidian. It’s the same protection that kept me alive when your murraue came for me. And it’s connected to every ward Marcus and I placed across Willowbrook. Every. Single. One.”
The ward network lit up. Miles away, the silver-and-obsidian barriers around Willowbrook flared, channelling energy back along the magical connection to Hazel’s pendant. Not much; each ward contributed only a fraction of its power. But there were hundreds of them, placed street by street across two nights of combined casting, and together they formed a network that amplified the pendant’s reversal a thousandfold.
The portal screamed. The murraue screamed. Viktor screamed.