Background music not returning to correct volume after a SFX is played

yoo so I got a simple script here that plays background music

while true do
    for i = 1,#script:GetChildren() do
        local sound = script["background_action_music"..i]:Clone()
        sound.Name = "BGM"
        sound.Parent = workspace

        sound:Play()
        sound.Ended:Wait()
        sound:Destroy()
    end
end

problem is just as soon as i use another sfx the music volume is SIGNIFICANTLY lower and just stays like that you can hear it in the video, starts out loud, after 1 sfx its super low, not sure if this is just a bug or somethin with properties? alongside this my memory is 2k+??? in live game it’s like 500, is it just the loop or whats wrong here, I got no plugins enabled and didn’t mess with studio settings…