As Rococo already pointed out, the no-cloning theorem doesn't forbid cloning of all specific states. It just states that you cannot make copies of arbitrary (general) states.
Let me (briefly) reiterate the core of the theorem: To clone a state you need a linear operator C that maps a state $|a>|0>$ to $|a>|a>$. This is not possible for general states: $$C |\lambda a+ \mu b>|0>$$ would have to map to $$|\lambda a+\mu b>|\lambda a+ \mu b>$$ per definition of the operator. But linearity (and homogenity) leads to $$C |\lambda a+\mu b>|0> = \lambda C|a>|0> + \mu C|b>|0> = \lambda|a>|a> + \mu |b>|b>$$ while $$ |\lambda a+ \mu b>|\lambda a+ \mu b> = \lambda^2|a>|a> +\lambda \mu (|a>|b>+|b>|a>)+\mu^2|b>|b>$$
So you see that for e.g. $\lambda=1, \mu=0$ (i.e. a base state) there is no contradiction. But you can't clone a general superposition of your base states.