Hi!, I have some suggestions for your code.
I have checked and you could use another method to center the component on page, currently you use:
.card{
position: relative;
top: 50%;
left: 50%;
transform: translate(-50%, 50%);
}
And this can make it overlap other HTML elements like:
<div class="attribution">
Challenge by <a href="https://www.frontendmentor.io?ref=challenge" target="_blank">Frontend Mentor</a>.
Coded by <a href="#">Your Name Here</a>.
</div>
you could simplify it by using margins, using the viewport as a measure and so all your element would be centered without overlapping any other html element.
margin: 25vh auto;
Also your image and text at low resolutions will overflow the chart container since they have absolute sizes like:
.card{
max-height: 499px;
}
img {
height: 288px;
width: 288px;
}
You can use percentages for the responsiveness of your image within its container so that it does not overflow. As well as removing the max-heigth of the card so that it adapts to the content inside it.
.card{
max-width: 320px;
}
img {
max-width: 100%;
}
I also recommend the use of relative units such as rem or em in the font-size as well as in other elements such as padding or margins.
/* 1rem = 16px */