Heat the ghee in a large sauté pan. Add the onion and cook, stirring, until well browned. Add the ginger-garlic paste, turmeric, cayenne pepper and salt. Continue cooking and stirring for a minute or two.

Add the cinnamon stick, cardamom seeds, cloves, cumin and cashews. Cook for a further minute.

Add the yogurt a little at a time, stirring as you go. Cook until the ghee separates to the sides of the pan. This can take about 10 minutes. Mix in the cilantro, mint and chilies.

Add the chicken and cook, turning the pieces occasionally, until the sauce is very thick, about half an

hour. If you find the sauce is still too watery after the chicken has cooked through, remove the chicken and reduce the sauce further. The resulting dish should be very dry compared to a more conventional chicken curry. Moving on to the biryani itself, warm the milk and add the saffron. Set it aside, allowing the saffron to steep in the warm milk.

Meanwhile, bring a large pot of salted water to boil. Once the water is boiling, drain the soaking rice and add it to the boiling water. Set a timer for 6 minutes. Once the 6 minutes are up, check the rice. It should be partially cooked. The grains should fall apart readily in your hand, but they shouldn’t yet be entirely soft. Drain the rice in a large strainer. Handle the rice gently from this point on, as the grains will be very delicate.

Preheat the oven to 350°F. Begin assembling the biryani. Brush the bottom of a medium-sized Dutch-oven-style pan with ghee. Add a spoonful or two of the sauce from the chicken to the bottom of the pan and spread it around. Then add half of the partially cooked rice to the pan and spread it evenly. Layer the cooked chicken and the thick sauce evenly over the first layer of rice. Top the chicken with the lime juice, cilantro, mint and half of the crispy onions. Spread the remaining rice on top of the chicken.

Drizzle the surface of the rice with the saffron-steeped milk. Cover the dish with a lid and bake for one hour.

Remove the biryani from the pan and place it on a platter. Meanwhile, sauté the raw cashews in a small amount of ghee and sprinkle them on top. Also top with additional mint, cilantro and remaining fried onions. Add any other toppings you like. Serve with lemon wedges, raita, chutney, kebabs and salad.