The idea
shape-outside changes the *shape* that inline content wraps around, without changing the element's own box. shape-outside: circle(50%) lets text flow into the corners of the square, hugging the circle instead of the rectangle.
This level needs shape-outside — the box itself stays a square, only the wrap shape changes. A hardcoded height is off-limits.