Three usual sources, you have at least two:
- Cookie banner pushing content. Make it an overlay instead of part of the flow:
position: fixed; bottom: 0. It then covers content instead of moving it. That's probably most of your 0.41. - Images without dimensions. Every
<img>needswidthandheight(or anaspect-ratioin CSS), so the browser reserves the space before the file arrives. - Font swap. The fallback font has different widths, so text reflows when the web font arrives. Self-host the font and preload it, or use a fallback with adjusted metrics (
size-adjustin@font-face).
And remove Bolt's spinner, it makes the page slower without fixing anything.