[Intro | low pulse, distorted ambience] Halo cracked, wings in the gutter Static prayers under crying thunder [Verse 1] We learned to kneel on broken glass Say ā€œforgive meā€ just to make it past Big teeth grins and counterfeit grace Blood on our shoes, heaven on our face We don’t fall — we slide Down rules we never wrote Kiss the match, kill the light Make a wish, learn to choke [Pre-Chorus] Hands still clean if you don’t look close Every sin wrapped in holy clothes [Chorus] Dirty angels, stained white Halo bent but we survive Hands clasped tight in the blight We’re not saved — we’re just alive Dirty angels, bruised and bright Feathers soaked in gasoline Say our prayers with clenched teeth Dirty angels, in between [Verse 2] Learned to smile while we steal air Call it faith, call it fair Every promise came with a edge Cut us into shape for this life We don’t run — we endure Call the damage discipline Every scar a uniform Wrapped on faith’s bones Every breath a quiet sin [Pre-Chorus] If this is grace, let it burn If this is love, why does it hurt [Chorus] Dirty angels, stained white Halo bent but we survive Hands clasped tight in hopes fright We’re not saved — we’re just survive Dirty angels, bruised and bright Feathers soaked in tar Say our prayers with clenched teeth Dirty angels, in between [Bridge | stripped back, almost whispered] We were never meant to be clean Just quiet enough to be unseen If heaven’s closed, we build below Make a home from what we know [Final Chorus | bigger, heavier] Dirty angels, no disguise See the truth in broken eyes No redemption, no release Just teeth, breath, and gravity Dirty angels, last ones standing Holy wreckage, human hands If there’s a god, let them look At the mess we made — and lived [Outro | fading distortion] Halo cracked… Still breathing.