Народився 25 червня1992 року в місті Бонгейден. Вихованець футбольної школи клубу «Генк»[1]. Він був переведений в першу команду клубу в липні 2009 року, але так за неї і не дебютував.
Влітку 2011 року він переїхав до Німеччини у «Гоффенгайм 1899» і підписав з ним чотирирічний контракт[2]. У сезоні 2011/12 він був воротарем другої команди (U-23) в четвертому дивізіоні, а наступного сезону 23 вересня 2012 року дебютував на дорослому рівні в матчі проти «Ганновера 96» (3:1). Молодий бельгієць зумів зайняти місце основного воротаря, витіснивши досвідченого Тіма Візе. Втім наприкінці січня 2013 року клуб орендував бразильця Еурелью Гомеса, який став основним воротарем у другій половині сезону. Коли Гомес отримав трау у 28 турі і не зміг грати до кінця сезону, Кастельс знову став основним воротарем. Загалом у свій дебютний сезон він зіграв 16 матчів у Бундеслізі.
У новому сезоні Кастельс також розпочав основним воротарем, зігравши у 23 матчах чемпіонату, але 6 квітня 2014 року під час матчу Бундесліги проти «Герти» Кастельс зазнав перелом гомілки і переніс операцію в той же день[3]. За час відновлення бельгійця клуб придбав нового воротаря Олівера Бауманна, який міцно зайняв місце в основній команді, через що після повернення Кастельс за клуб більше не зіграв.
В січні 2015 року Кун підписав контракт до червня 2018 року з «Вольфсбургом»[4] і відразу був відданий в оренду до кінця сезону 2014/15 в «Вердер»[5]. Там він був дублером Рафаеля Вольфа, втім зіграв у шести останніх матчах сезону. Після закінчення сезону Кастельс повернувся до «Вольфсбурга». 1 серпня 2015 року через травму основного воротаря Дієго Бенальйо дебютував за команду у матчі на Суперкубок Німеччини, в якому відбивши післяматчевий пенальті від Хабі Алонсо приніс своїй команді перемогу і здобув свій перший титул у кар'єрі. Після цього він грав у трьох матчах Бундесліги, поки Бенальйо не відновився. У сезоні 2016/17 Кастельс виборов собі місце в основі, а після того як влітку 2017 року Бенальйо покинув клуб, Кастельс підписав з клубом нову трирічну угоду[6] і став одноосібним першим номером, зігравши у всіх 34 матчах Бундесліги сезону 2017/18. Станом на 18 червня 2018 року відіграв за «вовків» 67 матчів в національному чемпіонаті.
2007 року дебютував у складі юнацької збірної Бельгії до 15 років і в подальшому грав за всі вікові збірні. За збірною до 19 років був учасником юнацького чемпіонату Європи 2011 року, де вже у першому матчі групового етапу проти Іспанії (1:4) на 13 хвилині заробив вилучення і пенальті у власні ворота[7]. Замість Куна у ворота став Томас Камінскі, який зіграв і у обох наступних матчах збірної. Загалом Кастельс взяв участь у 28 іграх на юнацькому рівні.
Протягом 2011—2013 років залучався до складу молодіжної збірної Бельгії. На молодіжному рівні зіграв у 9 офіційних матчах.