Khalid Abdullah's homebred filly Spanish Sun seized the lead 100 yards from the wire and held off Ocean Silk by a head to win the Ribblesdale Stakes (Eng-II) at Royal Ascot Thursday.