The proof consists of two norm inequalities, the upper bound being elementary and the lower bound relying on the [existence of support functionals](/theorems/881) (a consequence of the Hahn-Banach theorem).
**Step 1: Upper bound $\|\phi(v)\|_{V^{**}} \le \|v\|_V$.** For any $v \in V$ and any $f \in V^* \setminus \{0\}$:
\begin{align*}
\frac{|(\phi(v))(f)|}{\|f\|_{V^*}} = \frac{|f(v)|}{\|f\|_{V^*}} \le \frac{\|f\|_{V^*} \|v\|_V}{\|f\|_{V^*}} = \|v\|_V.
\end{align*}
Taking the supremum over all such $f$ gives $\|\phi(v)\|_{V^{**}} \le \|v\|_V$.
**Step 2: Lower bound $\|\phi(v)\|_{V^{**}} \ge \|v\|_V$.** Fix $v \in V \setminus \{0\}$. By the Hahn-Banach theorem, there exists a support functional $f_v \in V^*$ satisfying $f_v(v) = \|v\|_V$ and $\|f_v\|_{V^*} = 1$. Then:
\begin{align*}
\|\phi(v)\|_{V^{**}} = \sup_{f \in V^* \setminus \{0\}} \frac{|(\phi(v))(f)|}{\|f\|_{V^*}} \ge \frac{|(\phi(v))(f_v)|}{\|f_v\|_{V^*}} = \frac{|f_v(v)|}{1} = \|v\|_V.
\end{align*}
The inequality is trivially true when $v = 0$.
**Step 3: Conclusion.** Combining Steps 1 and 2, $\|\phi(v)\|_{V^{**}} = \|v\|_V$ for all $v \in V$. Since every isometry is injective (if $\phi(v) = 0$ then $\|v\|_V = 0$ hence $v = 0$), $\phi$ is an isometric embedding of $V$ into $V^{**}$.