Adelaide hang on to end Lions' run in AFL