For your main gallery, you want to only show the Clinics which have items that are in shipped or ordered, so your Items will be:
Distinct( Filter( Shipments, status="shipped" || status="ordered"), Clinics)
Inside each row, you'll have one label that lists the Clinic name, just pointing to the Title or whatever field you used for the name.
Then you'll have two more labels below, one for items ordered and one for shipped. Now you may find it difficult to add a distinct here if these are meant to be grouped into larger orders, unless you have a column for OrderNo or something that can allow the distinct to determine how many orders rather than individual items.
IF you have an OrderNo or grouping column and want to show totals for overall orders:
Label2:
"Ordered: " & CountRows( Distinct( Filter( Shipments, status="ordered" && Clinic=ThisItem.ClinicNameColumn ), OrderNo) )
Label3:
"Ordered: " & CountRows( Distinct( Filter( Shipments, status="shipped" && Clinic=ThisItem.ClinicNameColumn ), OrderNo) )
If you do not have a grouping column, then you can only show number of individual items shipped/ordered per clinic:
Label2:
"Ordered: " & CountRows( Filter( Shipments, status="ordered" && Clinic=ThisItem.ClinicNameColumn ) )
Label3:
"Shipped: " & CountRows( Filter( Shipments, status="shipped" && Clinic=ThisItem.ClinicNameColumn ) )
ThisItem may only have one item like .Result as we have made it Distinct, in that case use .Result instead of .ClinicNameColumn
Let me know if this helps,
Cheers,
Sancho