OK THX you got me to think about it better.
I suggest you move the LCD printing to before the servo waggling in those cases where that happens. That gets the text up without any delay.
Those delays are interfering and inadvertently helping, but you can't count the way you have that logic, expecially if this is a "press and hold" thing.
For counting, you must debounce the buttons, then recognize that for buttons that have become pressed, that is have just gone from not presst to presst.
For each such button that has become pressed, increment the count.
Debouncing and state change detection are straight forward.
If you place a small delay in your loop, the debouncing will be taken care of. You already use delay(), so a bit more that always happens won't kill you.
For state change detection, there is an example in the IDE, and I wrote a version that is identical but different, and have a wokwi simulation you can visit to play with it.
See this post and the thread it is on
Try it here
Count every detected press
Do something if any button is being pressed
Do something if all buttons are being pressed
You don't need to use if/else for the second two, but it does not hurt.
Now I think you will be unhappy with the delays causing the system to react slowly to the changing conditions in real life.
After you get this working, nothing you do will be wasted time including learning about state change detection, you can work on changing out the timing method (delays) for something that responds nearly instantly.
Part of that will be properly denouncing the buttons.
HTH
a7