Hi Zeeshan,
One approach I think might work is to attempt the preferred agent first in the Inbound Call Flow using Transfer to User. If the agent does not answer within a configured timeout, you could handle the timeout/failure path, play a prompt (e.g., "Your specialist is unavailable, transferring you to the team"), and then transfer the call to the queue using Transfer to ACD.
Hope this helps.
------------------------------
Phaneendra
Technical Solutions Consultant
------------------------------