Use the flexbox on the parent, not on the div you want to center:
.parent {
  display: flex;
  justify-content: center;
  align-items: center;
}
.card {
  width: 200px;
  height: 200px;
  background-color: black;
}
<div class="parent">
  <div class="card">
    <img src="images/image-equilibrium.jpg" alt="">
  </div>
</div>
 
 
If you want to keep the HTML structure (not inserting parent), you could just use the horizontal margin auto like this:
.card {
  width: 200px;
  height: 200px;
  background-color: black;
  margin: 0 auto;
}
<div class="card">
  <img src="images/image-equilibrium.jpg" alt="">
</div>
 
 
EDIT: OP wants to center it both vertically and horizontally.
If you want to do that, you need to modify the most top parent as well (the <body> tag) and make its height 100%, like this:
body {
  height: 100vh;
  margin: 0;
}
.parent {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.card {
  width: 200px;
  height: 200px;
  background-color: black;
}
<div class="parent">
  <div class="card">
    <img src="images/image-equilibrium.jpg" alt="">
  </div>
</div>