Попробуйте использовать следующий стиль-div:
export const TeamCard = styled.div`
position: relative;
background: red;
height: 300px;
width: 300px;
& .bgCircle {
border-radius: 100%;
height: 50px;
width: 50px;
background: hotpink;
transition: all ease 333ms;
}
&:hover {
.bgCircle {
position: absolute;
top: 0;
height: 300px;
width: 300px;
border-radius: 0;
left: 0;
right: 0;
}
}
& .description {
position: absolute;
bottom: 0;
}
`;
Это использует абсолютное позиционирование, чтобы правильно установить, где круг должен go. Чтобы заставить работать абсолютное позиционирование, содержащийся элемент должен иметь положение, отличное от 'stati c'.
Свойство перехода обеспечивает анимацию.