fixed opacity logic