My XPath with double slash always selects same element from HtmlAgilityPack result

I'm trying to scrap the list of music for a given date from the billboard website. When I obtain a list of div for each music I'm trying to get the title and the artist for each div, but in my foreach loop I get always the same return values, is like my foreach loop doesn't go to the next div.

using HtmlAgilityPack;
using System;
using System.Collections.Generic;

namespace Billboard_Scraping
    internal class Program
        static void Main(string[] args)
            var billBoardMusic = GetMusicList("");

        static List<Music> GetMusicList(string url)
            var musics = new List<Music>();
            HtmlWeb web = new HtmlWeb();
            HtmlDocument document = web.Load(url);
            HtmlNodeCollection linknode = document.DocumentNode.SelectNodes("//div[contains(@class,\"o-chart-results-list-row-container\")]");

            foreach (var link in linknode)
                var music = new Music();
                var titleXPath = "//h3[contains(@class,\"c-title\")]";
                var artistXPath = "//span[contains(@class,\"c-label  a-no-trucate\")]";

                music.Title = link.SelectSingleNode(titleXPath).InnerText.Trim();
                music.Autor = link.SelectSingleNode(artistXPath).InnerText.Trim();
            return musics;

    public class Music
        public string Title { get; set; }
        public string Autor { get; set; }
How many English words
do you know?
Test your English vocabulary size, and measure
how many words do you know
Online Test
Powered by Examplum