Heat the extra-virgin olive oil in a large pot over medium heat. Add the sliced sweet onion and sauté, stirring occasionally, until the onions are golden brown and caramelized, about 10-15 minutes. This step brings out the natural sweetness of the onions.
Stir in the finely chopped garlic, sea salt or pink salt, and freshly cracked black pepper. Continue to cook for 1-2 minutes until the garlic becomes fragrant, being careful not to let it burn.
Add the whole shiitake mushrooms and the sliced baby bella or cremini mushrooms to the pot with the sautéed onions, garlic, and seasoning. Cook for about 5-7 minutes, stirring occasionally, until the mushrooms are softened and begin to turn golden. I like to let the mushrooms get a little golden for extra flavor.
Pour in the chicken or vegetable broth, stirring to combine with the sautéed mushroom mixture. Bring everything to a boil, then add the loosely chopped kale leaves. Reduce the heat to low, cover the pot, and let it simmer for 20 minutes so the flavors meld and the kale becomes tender.
Uncover the pot and stir in the coconut milk or coconut cream. Let the soup heat through for a minute or two. Taste and season with additional salt and pepper if needed before serving. For a richer soup, I sometimes use coconut cream instead of milk.