You can align elements with CSS Grid using align-items (vertical) and justify-items (horizontal).
You can also use Flexbox, using align-items (vertical) and justify-content (horizontal).
And for the image, you can use border-radius.
img { border-radius: 100px; }
Suggestions:
Use box-sizing: border-box on *, so the browser will include the width and height of borders and padding in the total width and height calculation of the element.
Very well, my friend! It looks great! Here are some suggestions:
I would add "href" to the <a> tags because they are links and for best practices.
I would include a <nav> tag with a <ul> list and place the <a> links inside <li> tags, as it adds semantics since you are navigating through the links.
I would set the body as display: flex to center your <div>.