Castigo literally translates to "punishment". While this might sound negative, in the world of reggaetón it's often used as a playful and flirty slang term for intense passion.
When Feid sings, Pasar la noche dándote castigo (Spending the night giving you punishment), he's using this double meaning to describe a wild, romantic night. It's a perfect example of how context can completely change a word's meaning in music, making it a very intriguing word to learn!
This song is one big, heartfelt message to an ex. Feid is laying all his cards on the table, telling this girl everything he wishes she knew. He's tried everything to move on, but it's not working: "Si tú supieras to' lo que yo he hecho sólo pa' ver si te olvido" (If you only knew everything I've done just to see if I can forget you). He admits he's wanted to text her many times but holds back. He's watching her social media, seeing her post "corazones partidos" (broken hearts) and pictures from the gym, and he's convinced it's all connected to him.
He mixes heartbreak with classic reggaeton swagger, claiming all the other guys hitting on her are just his copycats: "todos esos son hijos míos" (they are all my sons). He feels like a bandit who has no luck in love, and even though he's in a hot place like Miami, his "corazón está frío" (heart is cold) without her. The whole song builds up to one simple request: he wants to dance reggaeton with her and have just one more night together. It's a classic tale of wanting someone back, full of regret, longing, and a little bit of hope.