CSS calc() allows you to mix and match units to get real-time calculations. It's useful when you need to size elements but you have some unknown number that you have to account for.
Let's start out by targeting the main element. We'll set its margin left property to five rem. This five rem equals the width of the element. Now for the width, let's take width and we'll set that to a calc() function of 100 percent minus 25 rem. Here the 25 rem comes from the 5-rem width of the element plus the 20-rem width of the aside element.
Now when I resize my window, the main element is still positioned in the correct location, and it grows and shrinks depending on the remaining available space. We can take this one step further by repeating this pattern inside of a MIDI query to ensure that the layout functions properly even when the elements change size.
If I resize my window, the nav and the side elements shrink, and the main element continues to take up the remaining space thanks to the calc() function.