Thanks so much for your reply Alan. I think this may be the best/closest solution to what I need.
The challenge I have is that for each week's Course Set in the Program, there are about 7 courses, and I wanted learners to be able see that they were completing "checking off" the individual courses as they progressed through the week's set at their own pace. If I enable enrollment duration for the whole week (7 days) then they will not see their individual courses as completed until the end of the 7 days.
I have tried adding the Course Condition: Enrollment Duration just to the last Course in each Set in the Program, but I was worried this would cause the 7 days to start only when they clicked the button to 'launch' that particular Course. (Which, as the last course is ideally being completed towards the end of the week.)
I wasn't sure if the timing for "Enrollment" in a course started when the course became available to the learner, or when they clicked the "Launch Course" button?