Скрины отличная штука.
Но код нужно выкладывать в песочницу типа jsfiddle.net
Главное, пока делаете песочницу, очень вероятно, найдете в чем проблема.
А не найдете сами, то мы найдем.
Roman Polezhaev, почитайте про flex-grow и flex-shrink.
Или про minmax() для grid.
Сейчас вы делаете так: https://jsfiddle.net/fsvxLjno/
Если места не хватает, то блоки ужимаются.
Если им задать flex-shrink 0, то они перестанут это делать и начнут вываливаться из блока, если им не хватит места.
vada, потому же почему не стоит использовать fieldset и legend для реализации так любимого дизайнерами приема. Потому что сайты люди не только смотрят, но и слушают. А роботы те вообще, видят только код и понимают его соответствующим образом.
Jungles, фоны паттернами как обои были креативными в начале века. Не обижайтесь.
Поэтому совет посмотреть актуальные макеты остается в силе и для выполнения задания.
Ага.
Кроме именованных областей у гридов есть и неименованные.
Посмотрите в справочнике или пройдите игру про гридам https://cssgridgarden.com/#ru