The canonical way to handle responsive videos is to embed multiple source elements within the video element, and them use the media attribute to respond to the user's viewport size, and preferred color scheme: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/so...
One way to ensure this is layout using, ahem, tables. (Don't laugh, it works for the site you're reading right now...)
Not everything we've come up with in the last 20 years made life easier...