I hear you. I’m in a similar situation. I’m not new to programming so picking up html and js was easy enough, but css is challenging to me. You thought you knew and try something and the page won’t appear as you expected. Coming up with a correct layout is not simple. After experimenting with different ways, Bootstrap is my first choice now for layout (I’m taking a Bootstrap class on Udemy). When I become more experienced (I hope I will eventually), I may go with a straight flex box. I start by dividing the page into main sections and work on each section from top to bottom. One mental model that helps me to think about css is that each div is like a transparent cellophane sheet which you can lay side by side or stack (nest) up. You can color them, cut them into fixed sizes, make them expandable/shrinkable, and so forth.
I wish there are resources out there that will let us practice in small pieces. Something like “make this layout/design/component using this and that css features” instead of “design this complete web page using any techniques you like.” Many resources on the Internet explain things with examples, but never gave any practical small exercises. There may be out there, but I have not found them. Has anybody?