trying to create a "fluid grid" interaction using hover states.
Goal: When hovering over a card that is within a grid, the card increases in size and "pushes" the other cards in other columns and rows making them smaller.
Problem: I thought using the "auto" size for the grid parent would work, but it's not. Code below
.shape-card-container {
  width: 100vw;
  height: 100vh;
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  grid-column-gap: 4px;
  grid-row-gap: 4px;
}
.shape-card {
  width: 100%;
  height: 100%;
  background: blue;
  border-radius: 64px;
  cursor: pointer;
  overflow: hidden;
  transition: background 300ms cubic-bezier(0.66, 0.11, 0.03, 0.96);
}
.shape-card:hover {
  width: 105%;
  height: 105%;
}<div class="shape-card-container">
  <div class="shape-card">
   
  </div>
  <div class="shape-card">
    
  </div>
  <div class="shape-card">
   
  </div>
  <div class="shape-card">
   
  </div>
</div> 
    