Zayne Parekh had an opportunity to extend the lead later in the period, dangling around a forward at the top of the left circle, but his low shot was parried out of play by Vejmelka.
That set up an opportunity for Cooley to put his stamp on the game, which he did on a Mammoth powerplay late in the period. A glove save off Nick Schmaltz, a blocker stop off Dylan Guenther and a breakaway save off a streaking Logan Cooley - all in the final 1:15 of the frame - helped the Flames hold the lead at the break.
Cooley made 16 more saves in period two, his best coming early in the frame when he dove across his crease to deny Lawson Crouse on a wraparound attempt. In fact, seven of those 16 stops came within the first 4:05 of the middle stanza as the hosts charged out of the gate looking for the equalizer.
They got it - through Barrett Hayton - then JJ Peterka gave the Mammoth the lead on a breakaway after pouncing on a loose puck at his own blue line.
But thanks to Cooley, the Flames hung around, and had a glorious chance in the dying embers of the frame on a partial breakaway from Morgan Frost.
In the third, Vejmelka stopped Matt Coronato on a pair of point-blank chances, one coming with just over three-and-a-half minutes left on the clock. He also denied Kadri on a mid-period breakaway attempt, spurning Kadri's backhand effort with his left pad.
Utah iced it with an empty-netter from Kevin Stenlund in the final minute.