Unified uppercase behaviour