The COLLATE clause has high precedence (higher than ||), so the expression
x || y COLLATE z
is equivalent to:
x || (y COLLATE z)