The scripts have no notion of time, and this is for good reasons.
Okay. Awareness of time would be a useful feature.
And a huge can of worms...
Blocks have timestamps which need to be accurate within a few hours. Blockcount can also more or less work.
Yes, but the scripts do not.
Basically, transactions only depend on their order, specifically they must come after their inputs, and before their own double-spend attempt. Adding a notion of time or block count would make it possible to have transactions that
might be valid in one block, but not another, which could have cascading consequences and be a big ugly mess. And that is only the most obvious problem, the one that we are aware of, there are probably plenty of others too.