width: calc((330 * 100) / 1920) * 1vw);
height: calc((330 * 100) / 1920) * 1vw);
где :
330 - ширина блока
1920 - ширина екрана на каком делаешь адаптив
Нужно пропробовать с calc(), я это делаю через scss, с помощью миксов .
По доке, только column и row, и к обгортке, которой задаем display: grid.
Если нужно конкретно к ячейки отступы, то можно добавить padding, это так, для примера.
Есть понятие critical css.
Первый екран инлайново подключить в head в тег style, остальные стили конкретной страницы подключить через скрипт.
Вот стаття: https://habr.com/ru/post/445264/