Delays inside your sequences will always follow what you have set inside of your sequence steps unless there are some settings restricting all of your queued-up emails from going out as you have set. For example, if you have hundreds of contacts in a sequence that are set to receive an email, and you adjust the Daily email send limit to a number lower than the contacts that are in queue to receive emails, then all of the emails will not go out.
To prevent this, the proper rule of thumb is to take your Daily Enrollment Limit number (the number of contacts set to be enrolled on a daily basis), and multiply it by the number of email steps in your sequence to get your Daily Email Send Limit number.
When you set a delay, the system will always follow the number of days you have set, and will then try and send after the number of days you have determined. If that number lands outside of your Sending Days (as set in your Sequence Settings), it will then wait until the next sending day you have selected to send the pending emails.
In the screenshot below, for example, if you enroll a contact in a sequence on a Friday and the first email goes out that day, and you have a 3 day delay but are only sending Monday through Friday, the second email would go out on Monday, since it is 3 days later. If you enroll a contact on a Wednesday, and you have a 3 day delay but are only sending Monday through Friday, the second email would also go out on Monday since you have the settings turned on to only send Monday through Friday, and Monday is the first send day where the 3 day delay conditions have been met.
If you were to add a 4th email step with a 2 day delay after Step 3, then the Step 4 Email would go out 2 days after Step 3 (while also factoring in the same logic with your Sending Days)