\begin{turn}{-90}
\begin{tikzpicture}[thick,scale=0.7,font=\sffamily]
      \tikzstyle{params}=[rotate=90,color=red,midway,above]
      \tikzstyle{params2}=[rotate=90,color=red,above=0mm,left=-0.75mm]
      \tikzstyle{params3}=[rotate=90,color=red,right]
      \tikzset{node style/.style={circle,transform shape,rotate=90, minimum width=0.85cm, line width=0.5mm, fill=gray!20!white}}
      \tikzset{nodehl style/.style={circle,transform shape,rotate=90, minimum width=0.85cm, line width=0.5mm, fill=orange!20!white}}
      % style/.style={circle,transform shape,rotate=90, minimum width=0.85cm, line width=0.5mm, fill=orange!20!white}
      % Draw the states
      \node[node style] at (-0.5,0)       (skm1)      {$s_{k-1}$};
      \node[node style] at (0,3.75)    (hkm1)      {$h_{k-1}$};

      \node[node style] at (1.5,6)     (ok)        {$o_k$};
      \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (hkm1) edge node[params] {\tiny $W_o$} (ok);

      \node[node style] at (1.5,1.5)   (stk)       {$\tilde{s}_k$};
      \node[node style] at (1.5,3)     (fk)        {$f_k$};
      \node[node style] at (1.5,4.5)   (ik)        {$i_k$};
      \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (hkm1) edge node[params3] {\tiny $W_i$} (ik);
      \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (hkm1) edge node[params2] {\tiny $W_f$} (fk);
      \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (hkm1) edge node[params] {\tiny $W$} (stk);

      \node[node style] at (2.75,0)       (sk)        {$s_k$};
      \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (ik)   edge (sk);
      \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (fk)   edge (sk);
      \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (stk)  edge (sk);
      \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (skm1) edge (sk);

      \node[node style] at (3,3.75)    (hk)        {$h_k$};
      \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (sk)   edge (hk);
      \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (ok)   edge (hk);

      \visible<1->
      {
        \node[node style] at (5,0)      (stm1)      {$s_{t-1}$};
        \node[node style] at (5.5,3.75)   (htm1)      {$h_{t-1}$};
        \node[node style] at (7,1.5)  (stt)       {$\tilde{s}_t$};
        \node[node style] at (7,3)    (ft)        {$f_t$};
        \node[node style] at (7,4.5)  (it)        {$i_t$};
        \node[node style] at (7,6)    (ot)        {$o_t$};
        \node[node style] at (8.25,0)      (st)        {$s_t$};
        \node[node style] at (9,3.75)   (ht)        {$h_t$};
        \node[node style] at (9,7)      (loss)      {$\mathcal{L}_{t}(\theta)$};
        
        % Connect the states with arrows

        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (skm1) edge (hkm1);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (stm1) edge (htm1);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (htm1) edge (ot);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (htm1) edge (it);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (htm1) edge (ft);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (htm1) edge (stt);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (st)   edge (ht);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (it)   edge (st);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (ft)   edge (st);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (stt)  edge (st);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (ot)   edge (ht);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (stm1) edge (st);
        \draw[->, auto=right, line width=0.3mm, >=latex, draw=black, fill=black] (ht)   edge (loss);
        \draw[->, line width=0.3mm, dashed, path fading=west, draw=black, fill=black] (-1.5,6) -> (hkm1);
        \draw[->, line width=0.3mm, dashed, path fading=west, draw=black, fill=black] (-1.5,0) -> (skm1);
        \draw[->, line width=0.3mm, dashed, path fading=east, draw=black, fill=black] (hk) -> (3.5,1.5);
        \draw[->, line width=0.3mm, dashed, path fading=east, draw=black, fill=black] (hk) -> (3.5,3);
        \draw[->, line width=0.3mm, dashed, path fading=east, draw=black, fill=black] (hk) -> (3.5,4.5);
        \draw[->, line width=0.3mm, dashed, path fading=east, draw=black, fill=black] (hk) -> (3.5,6);
        \draw[->, line width=0.3mm, dashed, path fading=west, draw=black, fill=black] (4.5,6) -> (htm1);
        \draw[->, line width=0.3mm, dashed, path fading=west, draw=black, fill=black] (sk) -> (stm1);
        \draw[->, line width=0.3mm, dashed, path fading=west, draw=black, fill=black] (4.5,4.5) -> (stm1);
        \draw[->, line width=0.3mm, dashed, path fading=west, draw=black, fill=black] (4.5,3) -> (stm1);
        \draw[->, line width=0.3mm, dashed, path fading=west, draw=black, fill=black] (4.5,1.5) -> (stm1);
      }
  
      \end{tikzpicture}
\end{turn}
