Lightly toast the cumin seeds, allspice berries, coriander seeds, black peppercorns, and clove in a hot dry pan for 1-2 minutes, until they become fragrant. Add them to a food processor or spice grinder and grind into a powder (or use a mortar and pestle).
Add the annatto seeds (achiote) and Mexican oregano. Process into a powder.
Add the garlic and bitter orange juice. Process until smooth. It should be a bit loose.
Bring the pork shoulder to room temperature. Slice it into 4 large pieces and set into a bowl.
Pour the marinade over the pork and rub it into the meat. Cover the bowl and refrigerate. Marinate for at least 4 hours, or overnight for more flavor penetration.
When you are ready to cook, set 4 banana leaves into a large Dutch oven or baking dish. The leaves should be centered and overlapping, hanging out of the pot. Add the pork with the marinade into the center, then fold the leaves over the pork, enclosing it.
Heat your oven to 300 degrees F (150 C). Cover and bake for 4 hours, or until the meat is fork tender and easily shreds with a fork.
Heat the pot to medium-low and simmer for 4 hours, or until the meat is fork tender and easily shreds with a fork. (Add a little water if it becomes too dry during cooking.)
Cook for 6-8 hours on low heat or 4-5 hours on high heat, or until the meat is fork tender and easily shreds with a fork.
Shred the cochinita pibil (cooked pork) with forks. Serve on warmed tortillas topped with pickled red onions, lime wedges, sliced peppers, spicy chili flakes or your own favorite toppings.
