Yes there are timelock scripts (and opcodes) in Bitcoin.
From the Mastering the Lightning Network book (Antonopoulos, Osuntokun, Pickhardt):
Bitcoin has two levels of timelocks: transaction-level timelocks and output-level timelocks.
A transaction-level timelock is recorded in the transaction nLockTime field of the transaction and prevents the entire transaction from being accepted before the timelock has passed. Transaction-level timelocks are the most commonly used timelock mechanism in Bitcoin today.
An output-level timelock is created by a script operator. There are two types of output timelocks: absolute timelocks and relative timelocks.
Output-level absolute timelocks are implemented by the operator CHECKLOCKTIMEVERIFY, which is often shortened in conversation as CLTV. Absolute timelocks implement a time constraint with an absolute timestamp or blockheight, expressing the equivalent of "not spendable before block 800,000."
Output-level relative timelocks are implemented by the operator CHECKSEQUENCEVERIFY, often shortened in conversation as CSV. Relative timelocks implement a spending constraint that is relative to the confirmation of the transaction, expressing the equivalent of "can’t be spent until 1,024 blocks after confirmation."
Obviously your descendant would need access to the relevant private key (and no one else should be able to access it) for whenever the timelock expires but the timelock would prevent the spending of the Bitcoin until then. More complex arrangements (e.g. a combination of multisig and a timelock) may be superior to protect against the possibility of someone other than your descendant getting access to the private key.