Covariance describes how lifetimes behave in type substitution. A type is covariant over a lifetime if it can accept shorter lifetimes than originally specified.
📌 Example:
let short: &'short i32 = &5;
let long: &'long i32 = short; // allowed if &'long is covariant over 'short