score:5
Because it's easier for them to require passports than to create a special policy for EU citizens. I wouldn't be surprised if non-EU citizens are also asked to prove they're legally allowed to stay within the Schengen area, even though they don't have to check that for intra-EU journeys.
So the answer is: because the company is too lazy to have a reasonable policy.
Upvote:1
While traveling from a Schengen port to a Schengen port, without planned stops, you should not even need to show your passport of ID card. But when traveling on a sea, unforseen things can happen and your cruise ship might need to call in at a port which is outside the area where your ID is valid.
And there is the possibility of an emergency evacuation, which might land you in a country that does not accept EU ID cards.
But it can also be a case of 'we set the rules, we stick to it.' Without good reasoning.
Upvote:2
Look at it from the cruise line's point of view. There are two policies they could adopt:
So (2) is the obvious choice.
And you can say they ought to make an exception for such a common case, an EU citizen traveling between EU ports -- and I am sure they have thought about doing so, but have decided against it.