Usually, D class is full flex. Even more usually, when there is FF in the fare basis, it is full flex. That's what the website uses to "brand" the various business class fares and 99% of the time it is correct. However here, LH screwed up completely, so you get D for half the usual P promo fare, and you get non flex P conditions as per the rules... even if the fare basis has FF and the booking class is D. Trust the rules (check on ITA to be sure) and not marketing blabla on the website.