Context. Despite swift progress in the characterisation of exoplanet atmospheres in composition and structure, the study of atmospheric dynamics has not progressed at the same speed. While theoretical models have been developed to describe the lower layers of the atmosphere and, disconnected, the exosphere, little is known about the intermediate layers up to the thermosphere. Aims. We aim to provide a clearer picture of atmospheric dynamics for the class of ultra hot Jupiters, highly-irradiated gas giants, on the example of WASP-76 b. Methods. We analysed two datasets jointly, obtained with the HARPS and ESPRESSO spectrographs, to interpret the resolved planetary sodium doublet. We then applied the MERC code, which retrieves wind patterns, speeds, and temperature profiles on the line shape of the sodium doublet. An updated version of MERC, with added planetary rotation, also provides the possibility to model the latitude dependence of the wind patterns. Results. We retrieve the highest Bayesian evidence for an isothermal atmosphere, interpreted as a mean temperature of 3389 ± 227 K, a uniform day-to-night side wind of 5.5 +1.4 −2.0 km s −1 in the lower atmosphere with a vertical wind in the upper atmosphere of 22.7 +4.9 −4.1 km s −1 , switching atmospheric wind patterns at 10 −3 bar above the reference surface pressure (10 bar). Conclusions. Our results for WASP-76 b are compatible with previous studies of the lower atmospheric dynamics of WASP-76 b and other ultra hot Jupiters. They highlight the need for vertical winds in the intermediate atmosphere above the layers probed by global circulation model studies to explain the line broadening of the sodium doublet in this planet. This work demonstrates the capability of exploiting the resolved spectral line shapes to observationally constrain possible wind patterns in exoplanet atmospheres, an invaluable input to more sophisticated 3D atmospheric models in the future.