top and middle are responsive