[step:Derive elementarity from the existential witness condition]We prove that $\mathcal{M} \preccurlyeq \mathcal{N}$. It suffices to prove, by induction on formulas, that for every $L$-formula $\theta(x_1,\dots,x_n)$ and every tuple $(a_1,\dots,a_n) \in M^n$,
\begin{align*}
\mathcal{M} \models \theta(a_1,\dots,a_n)
\quad\Longleftrightarrow\quad
\mathcal{N} \models \theta(a_1,\dots,a_n).
\end{align*}
For atomic formulas this follows from the definition of substructure: function terms have the same values in $\mathcal{M}$ and $\mathcal{N}$ on tuples from $M$, and relation symbols are interpreted in $\mathcal{M}$ by restriction from $\mathcal{N}$. The Boolean connectives follow immediately from the induction hypothesis.
It remains to handle existential quantifiers. Let $\theta(x_1,\dots,x_n)$ be the formula
\begin{align*}
\exists y\,\psi(y,x_1,\dots,x_n).
\end{align*}
Assume the induction hypothesis holds for $\psi$. If
\begin{align*}
\mathcal{M} \models \exists y\,\psi(y,a_1,\dots,a_n),
\end{align*}
then some $c \in M$ satisfies $\mathcal{M} \models \psi(c,a_1,\dots,a_n)$, so by the induction hypothesis
\begin{align*}
\mathcal{N} \models \psi(c,a_1,\dots,a_n),
\end{align*}
and hence $\mathcal{N} \models \exists y\,\psi(y,a_1,\dots,a_n)$.
Conversely, suppose
\begin{align*}
\mathcal{N} \models \exists y\,\psi(y,a_1,\dots,a_n).
\end{align*}
By the existential witness condition proved above, there exists $c \in M$ such that
\begin{align*}
\mathcal{N} \models \psi(c,a_1,\dots,a_n).
\end{align*}
By the induction hypothesis applied to $\psi$,
\begin{align*}
\mathcal{M} \models \psi(c,a_1,\dots,a_n).
\end{align*}
Therefore
\begin{align*}
\mathcal{M} \models \exists y\,\psi(y,a_1,\dots,a_n).
\end{align*}
Universal quantifiers are handled by rewriting $\forall y\,\psi$ as $\neg\exists y\,\neg\psi$.
Thus $\mathcal{M} \preccurlyeq \mathcal{N}$. Together with $A \subset M$ and $|M| \leq |A|+|L|+\aleph_0$, this proves the theorem.[/step]