What is a CSS Polyfill, and when is it necessary?

A polyfill is JavaScript that replicates CSS functionality not natively supported by browsers, ensuring compatibility.