OrdinalIgnoreCase helper
Review


I see no reason not to seal this class. No need for virtual methods.
You prefer readability over argument checks: Comparer.Equals(Text, other.Text)
I would make != the opposite of == as blackbox:  !(left == right);
If you want to be a bit more resilient to unicode shenanigans, you should do text.Normalize(); (á is not always á, unless you normalize)