Kulenović was born in Zagreb in 1999. His father Almin Kulenović, who hails from Bihać, is a former Bosnian international who has seven caps for Bosnia and Herzegovina.[2][3] His mother Tajana (née Prša) is the daughter of Croatian musician Franjo "Nano" Prša.[4]
Kulenović joined the academy of Dinamo Zagreb in 2008. During the 2015–16 season, he played 27 times for the reserves, scoring 22 goals and adding 11 assists.[5] On 7 June 2016, he moved abroad and joined the academy of Polish club Legia Warsaw on a three-year contract.[1] On 22 July 2017, he was loaned out to the youth team of Italian club Juventus,[6] but returned to his parent club in the following June.[7]
On 10 July 2018, Kulenović made his first team debut, playing the last nine minutes of a 1–0 victory over Irish club Cork City in the UEFA Champions League.[8] On 22 August, he signed a three-year contract extension with the club.[9] On 27 October, he scored his first goal for the club in a 1–1 league draw against Jagiellonia Białystok.[10]
On 2 September 2019, Kulenović returned to Dinamo Zagreb, signing a long-term deal.[11] He debuted on 21 September against Varaždin. However, after an unsuccessful season where he failed to scored a single goal, he was loaned out to Rijeka on 21 September 2020.[12][13] On 24 September, in a Europa League third qualifying round against Kolos Kovalivka, he made his debut for Rijeka. The match went into extra time and, while the score was 1–0, Kulenović notably had an opportunity to set the score to 2–0; however, the ball stopped in a puddle of mud on the goal line as the pitch was soaking wet due to heavy rain. It was then netted in by teammate Franko Andrijašević.[14][13] He scored his first goal for Rijeka on 4 October, a penalty kick in a 2–0 victory over Slaven Belupo.[15] In the second half of the season, Kulenović fell out of favour with coach Simon Rožman, who left him out of the squad during the training ahead of the derby with Hajduk Split on 27 February 2021.[16]
During August 2024, various Bosnian and Croatian media reported about the possibility of Kulenović choosing to represent Bosnia and Herzegovina internationally. Kulenović allegedly refused to represent any national team other than Croatia, as well as claimed that he hadn't been contacted by the Football Association of Bosnia and Herzegovina at all.[19]