<?xml version="1.0" encoding="UTF-8"?>
<!-- One URL, not four.

     /impressum, /datenschutz and /agb are SPA routes: the not_found_handling
     fallback serves index.html for all three, so each returns a byte-identical
     document whose <link rel="canonical"> points at "/". Listing them here
     asked Google to index three pages that each declare they are really the
     home page -- a sitemap contradicting a canonical, which Google resolves by
     believing the canonical and ignoring the sitemap entry.

     They stay reachable and crawlable via the footer, which is all the law
     requires of an Impressum. They were never search targets.

     lastmod is the mark-and-metadata change of 10 Aug 2026. Keep it honest:
     a lastmod that moves without the content moving is a signal Google learns
     to discount, and then it is worth nothing when the page really does
     change. -->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://gradematch.org/</loc>
    <lastmod>2026-08-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <!-- Belongs here where the legal routes did not: it is a real static file
       with its own <head> and a canonical pointing at itself, so the sitemap
       and the page agree about what it is. -->
  <url>
    <loc>https://gradematch.org/how-it-works/</loc>
    <lastmod>2026-08-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <!-- /team/ was listed here until 17 Aug 2026. It is withdrawn rather than
       finished, and its source is in drafts/team/ -- so the entry comes out
       with it. A sitemap that advertises a URL returning 404 is worse than one
       that omits a page: it is the one signal Search Console reads as the site
       being broken rather than merely incomplete. Put both back together. -->
</urlset>
