I need air temperature values 500 m above ground level (agl). Using ERA5, I would choose the temperature data up to the pressure level of 950 hPa (~540 masl; not included).

But pressure levels are relative to mean sea level, right? So, I am confused about the meaning of pressure levels data regarding to the orography.

Following this link (https://confluence.ecmwf.int/display/CUSF/Atmospheric+variables+below+model+terrain), we can found atmospheric variables that are below the model terrain at lower levels (e.g. at 1000 hPa or 975 hPa). So, pressure level layers could be interpreted like the right-hand figure. To get all available layers from 0 to 500 m above ground level I have to consider the geopotential, right? How is the correct way to do that?

However, model level definitions (https://confluence.ecmwf.int/display/UDOC/Model+level+definitions) are like the left-hand figure. In that case, I would only need two pressure level layers (1000 hPa and 975 hPa) independently of the terrain elevation.

What is the correct way to get air temperature from all available layers 500 magl?