"Zac put on 18 lbs. for his role in The Lucky One," says a source. "Since then, he's lost weight but he's keeping up a fitness routine."
Efron, who bulked up with the help of trainer Logan Hood, kept his diet in check by following healthy eating tips from nutritionist David Allan. Also a factor in his toned physique: During mealtimes the actor, 23, turned to Z.E.N. Foods, an L.A.-based meal delivery service.
"He loves being outdoors, hiking and exercising outside," adds the source. "He's always been in shape."
Pacific Coast News
For more about Efron and his amazing body transformation, pick up the new issue of PEOPLE, on newsstands Friday
– Thailan Pham