If you used flex to build your site, it will work just fine in IE11 as long as you explicitly define a width on parent elements. Even if the width is “auto” meaning its implicitly “100%” you have explicitly set 100%. I’ve had to support IE11 multiple times and it’s been done with flex every time.
If you built with Grid, @pietrofalco is correct in that IE11 does not support Grid at all. So, you’ll have to adjust this by using Flex instead. Simply convert your grid elements to flex and adjust your child elements accordingly. If you have a complex layout, it could take some work.
Columns / floats are unnecessary and can be avoided entirely.
Given your “fix it” options, I would 2nd Pietro’s comment about providing the user a message to upgrade their browser. I’ve found that most of the time it’s people that did not know they needed to nor could upgrade their browser.
Lastly, if your client insists on having IE be supported fully, make them pay for it no matter how long the project has been in production. Make it painful (costly) so they’ll make the less painful choice (message to upgrade their browser).
Here is more information on IE11 directly from Microsoft: https://www.microsoft.com/en-us/microsoft-365/windows/end-of-ie-support