Type variables that look unbound are actually implicitly bound with a universal quantifier:
"Maybe a" is actually "forall a. Maybe a";
"Either a b" is actually "forall a. forall b. Either a b", that is, "forall a. (forall b. Either a b)";
"Either a (Either b c)" is actually "forall a. forall b. forall c. Either a (Either b c)";
"a" is actually "forall a. a";
"f a" is actually "forall f. forall a. f a".
alpha-equivalence: You can rename the bound variables of an expression without changing its meaning, as long as you don't change the bindings.
Example of changing the bindings: "forall x. forall y. x" (x is bound by the first/outer quantifier) is not alpha-equivalent to "forall y. forall x. x" (x is bound by the second/inner quantifier).
Examples of alpha-equivalence (here "≡" reads "is alpha-equivalent to"):