Interesting to note that when the condition is true, but I then modify the data in the table to make it false (by changing the start time +x minutes), the elements hide without requiring a refresh.
Possibly because they’re set initially to be hidden, unless the value is true… but then surely there is a way to make it show without a refresh?
You are likely running into the fact that references to current date/time in conditionals like this freeze at the point of page load.
There are some plugins that address the issue but the easiest way to manage this is simply add a state of type ‘date’ to your element/page, wherever makes sense for you, and use the event run every x seconds to update that state with the current date/time.
Then have your conditional above reference this state rather than current date/time.
I guess the main problem is, it doesn’t track Current date/time in real time. I just printed it to a text box and it doesn’t get updated. So, it won’t update your conditionals as well for the same reason.