Fetches a URL and returns an on-page SEO score from real checks (title, meta, headings, alt text, keywords, and more). If the page cannot be fetched, score is null and reason says why.