Additional fields based on an instance of another model

Looking for some direction on how to accomplish the following scenario.
I have a Policy model that I want to be able to add additional custom fields to depending on the clients needs. eg. custom_field_1, custom_field_2, custom_field_3, etc.
The fields would not be required and will be used if the client wants to collect additional information at the time a claim is placed. They can all be CharField’s for simplicity.
On the Claim model I would have a many to one from Claim to Policy and if the Policy contained custom fields they would be displayed in the Claim Submission form and the values saved to a model.
I will need to display the custom_field_* label on the form as well as the value that is entered for the custom_field_*. This will need to be connected to the submitted Claim instance as well.
Not sure if a JSONField would be best or multiple models.
When a claim is filed a Policy ID is entered and that ties the claim to the policy, the Policy is basically the rules for the claim. eg. claim limit, what adjusters handle that specifig policies claims, etc.
This morning it didn’t seem to be so difficult to figure out but now my brain is fried and not making any progress.

Any help/ideas would be greatly appreciated.

<opinion>
My first reaction to this is that I’d go with the multiple-model structure.

Superficially, I’d be looking at something like this:

Policy:
    All the basic policy data

Policy fields:
    FK to policy
    Sequence number
    Field label

Claim:
    FK to policy

Claim fields:
    FK to Claim
    FK to Policy field
    Field data

The sequence number allows you to determine the order in which these fields will be presented, along with the ability to associate it with the label. This will also give you the ability to create the form for that policy with the appropriate label.
</opinion>

Ken,
Thanks very much for getting back so quickly, I’ll definitely play around with your suggestion.
I’m going to step away from it today and get a fresh start in the morning.

Thanks again!