Shifting Caesars Shifts
05AB1E, 28 27 24 bytes

láÇ¥R`XIlvyaiAyk+Aèëy}u?


Try it online!

Explanation

l                          # convert input to lower case
 á                         # keep only letters
  Ç¥                       # compute deltas of character codes
    R`                     # reverse and push separated to stack
      X                    # push 1
       Ilv                 # for each char y in lower case input
          yai              # if y is a letter
             Ayk           # get the index of y in the alphabet
                +          # add the next delta
                 Aè        # index into the alphabet with this
            ëy             # else push y
              }            # end if
            u?             # print as upper case