As a noobie, this is a great opportunity to learn some fundamentals.
It will help you forever.
delay() is very limited for use in real timing situations.
millis() is by far the better way to go.
A state machine will bring all your dreams to reality.
Do like this. Declare the functions representing each state then use the (also) suggested approach comparing (millis()-previousMillis) and change state. U can solve it reading all that was mentioned. .....Then u can think of a button. I think.