<?xml version="1.0" encoding="UTF-8"?>
<!-- Absolute <loc> URLs — the sitemap protocol requires them. The Florentacia
     landing this idea came from uses relative paths, which crawlers reject.

     ⚠️ THE xhtml:link ALTERNATES BELOW ARE THE LOAD-BEARING hreflang SIGNAL,
     not a duplicate of the ones usePageMeta injects. This site is a client-
     rendered SPA with no SSR and no prerender step: every <link rel="alternate">
     the app writes appears only after JavaScript runs, and the served bytes are
     always index.html with its static English <title> and lang="en". A crawler
     that does not execute JS therefore sees NO on-page hreflang at all. This
     file is static, so it is the one channel that always arrives.

     Rules the format enforces: every URL in a language set must list the
     COMPLETE set including itself, and the hrefs must match the <loc> values
     character for character. Add a language and you touch every <url> in that
     set, not just the new one.

     ⚠️ The origin is hardcoded here and also lives in src/lib/site-url.ts.
     A static file cannot import it. Change one, change the other.

     x-default differs BY SECTION on purpose — English for marketing (widest
     audience), German for legal (the binding version). See src/i18n/index.ts. -->
<urlset
  xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
  xmlns:xhtml="http://www.w3.org/1999/xhtml"
>
  <!-- Marketing — EN at "/", DE at "/de" -->
  <url>
    <loc>https://finnery.app/</loc>
    <priority>1.0</priority>
    <xhtml:link rel="alternate" hreflang="en" href="https://finnery.app/" />
    <xhtml:link rel="alternate" hreflang="de" href="https://finnery.app/de" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://finnery.app/" />
  </url>
  <url>
    <loc>https://finnery.app/de</loc>
    <priority>1.0</priority>
    <xhtml:link rel="alternate" hreflang="en" href="https://finnery.app/" />
    <xhtml:link rel="alternate" hreflang="de" href="https://finnery.app/de" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://finnery.app/" />
  </url>

  <!-- Legal — DE authoritative at the unprefixed slug, EN under /en -->
  <url>
    <loc>https://finnery.app/datenschutz</loc>
    <priority>0.3</priority>
    <xhtml:link rel="alternate" hreflang="de" href="https://finnery.app/datenschutz" />
    <xhtml:link rel="alternate" hreflang="en" href="https://finnery.app/en/datenschutz" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://finnery.app/datenschutz" />
  </url>
  <url>
    <loc>https://finnery.app/en/datenschutz</loc>
    <priority>0.3</priority>
    <xhtml:link rel="alternate" hreflang="de" href="https://finnery.app/datenschutz" />
    <xhtml:link rel="alternate" hreflang="en" href="https://finnery.app/en/datenschutz" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://finnery.app/datenschutz" />
  </url>

  <url>
    <loc>https://finnery.app/impressum</loc>
    <priority>0.3</priority>
    <xhtml:link rel="alternate" hreflang="de" href="https://finnery.app/impressum" />
    <xhtml:link rel="alternate" hreflang="en" href="https://finnery.app/en/impressum" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://finnery.app/impressum" />
  </url>
  <url>
    <loc>https://finnery.app/en/impressum</loc>
    <priority>0.3</priority>
    <xhtml:link rel="alternate" hreflang="de" href="https://finnery.app/impressum" />
    <xhtml:link rel="alternate" hreflang="en" href="https://finnery.app/en/impressum" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://finnery.app/impressum" />
  </url>

  <url>
    <loc>https://finnery.app/agb</loc>
    <priority>0.3</priority>
    <xhtml:link rel="alternate" hreflang="de" href="https://finnery.app/agb" />
    <xhtml:link rel="alternate" hreflang="en" href="https://finnery.app/en/agb" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://finnery.app/agb" />
  </url>
  <url>
    <loc>https://finnery.app/en/agb</loc>
    <priority>0.3</priority>
    <xhtml:link rel="alternate" hreflang="de" href="https://finnery.app/agb" />
    <xhtml:link rel="alternate" hreflang="en" href="https://finnery.app/en/agb" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://finnery.app/agb" />
  </url>

  <!-- ⚠️ The one pair whose slugs are NOT mirror images: /konto-loeschen
       pairs with /en/delete-account, not /en/konto-loeschen. -->
  <url>
    <loc>https://finnery.app/konto-loeschen</loc>
    <priority>0.3</priority>
    <xhtml:link rel="alternate" hreflang="de" href="https://finnery.app/konto-loeschen" />
    <xhtml:link rel="alternate" hreflang="en" href="https://finnery.app/en/delete-account" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://finnery.app/konto-loeschen" />
  </url>
  <url>
    <loc>https://finnery.app/en/delete-account</loc>
    <priority>0.3</priority>
    <xhtml:link rel="alternate" hreflang="de" href="https://finnery.app/konto-loeschen" />
    <xhtml:link rel="alternate" hreflang="en" href="https://finnery.app/en/delete-account" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://finnery.app/konto-loeschen" />
  </url>
</urlset>
