小镇制帽店的苏菲活得像本合不上的旧书,18岁的年纪,60岁的心态。

每天埋头缝帽子,连橱窗外的春光都懒得瞥一眼。

妹妹说她该出去约会,她嘟囔“哈尔只吃美女的心,我又不是”就搪塞过去。

可命运偏要撕开这层灰扑扑的包装,巷子里被大兵调戏时,一个金发青年从天而降!

他指尖一点,士兵们像提线木偶般原地转圈,自己却牵起苏菲的手踩上屋顶,风鼓起他的白衬衫,脚下是整个小镇流转的灯火。

等苏菲回神,手心只剩一枚温热的戒指,耳边飘过一句“终于找到你了”。

荒野女巫的嫉妒比砒霜还毒,当晚她闯进帽子店,枯爪按在苏菲头上,“小丫头,尝尝衰老的滋味吧!”

镜子里瞬间爬满皱纹的脸,反而让苏菲松了口气,这副皱巴巴的皮囊,终于配得上她苍老的灵魂了。

她裹上旧披肩离家出走,却撞见个会鞠躬的稻草人。

暴雨夜,稻草人蹦跳着把她引到荒野,四只铁爪撑起的钢铁巨兽正“轰隆隆”喘气,烟囱喷出的黑烟像极了一颗搏动的心脏。

推开锈迹斑斑的铁门,苏菲差点被霉味熏个跟头!

锅碗瓢盆堆成山,蜘蛛网当窗帘,小火魔卡西法在壁炉里打哈欠:“老太婆,别挡我亮光!”

可苏菲的洁癖基因瞬间觉醒,抹布一甩擦灶台,脏水泼得卡西法吱哇乱叫。

连哈尔的魔法浴室都敢闯,结果搅乱药水,把哈尔的金发染成诡异橘红!

这位传闻中的“吃心魔”当场崩溃,裹着浴巾满地打滚:“不美了活着还有什么意思?!”黏液眼泪淌成河,黑暗精灵满屋飞。

城堡门钮藏着四色魔法,蓝门通港口,红门连王宫,绿门是荒野,而黑门后,硝烟呛得人咳嗽。

哈尔每次从黑门回来都像被抽干血的鸟,羽毛沾火药,指尖结血痂。

苏菲这才发现,他白天躲追兵当懦夫,夜里却化身黑鹰撞敌军战机!

有次他重伤摔进城堡,羽翼褪成苍白少年,蜷在椅子里喃喃:“南边的海烧起来了。”

卡西法跳脚骂:“火药味臭死了!打仗的都没礼貌!”

为帮哈尔躲征兵,苏菲假扮他老妈闯王宫。

千级台阶爬到腿抖,镶金大门后坐着织毛衣的莎莉曼夫人,脚边趴着被废魔法的荒野女巫,如今像条喘气的癞皮狗。

老太婆眼皮一抬:“你儿子和恶魔做交易,心早被吃空了!”

苏菲突然挺直佝偻的背:“他只是想自由活着!”话音未落皱纹褪尽,变回少女模样。

可莎莉曼一句“你在和儿子谈恋爱吗”,又把她打回原形。

决战前夜,哈尔把苏菲带到秘密花园。

戒指突然发烫,指引她推开一扇隐形门,时光倒流回童年草地!

瘦小的哈尔跪在流星雨中,捧住一颗将熄的火星:“求你活下去!”

随即撕开胸膛,把跳动的心脏按进火焰!火苗窜成卡西法大笑:“契约成立!我给你城堡和力量!”

而少年踉跄倒地时,戒指传来苏菲的呼喊:“在未来等我,”原来他游荡半生,等的就是当年惊鸿一瞥的少女。

战火吞没城堡,卡西法吞下哈尔的心脏逃亡。

苏菲跌进时光裂缝,捧起奄奄一息的火魔跳进哈尔胸膛,心脏归位刹那,铁爪城堡“哗啦”解体!

废墟中哈尔银发飞舞,徒手捏爆追兵炮弹。

稻草人为护苏菲被炸碎,她含泪吻了吻草杆,咒语解除!

邻国王子归来停战,新生的城堡长出翅膀,载着苏菲和哈尔飞向云端。