/*! trentpower.fr · authored source */
{
  "en": {
    "meta": {
      "home": {
        "title": "Client Strategy & Growth Systems · Trent Power",
        "description": "Client strategy, growth systems and cultural adoption at global scale",
        "og_title": "Client Strategy & Growth Systems · Trent Power",
        "og_description": "Client strategy, growth systems and cultural adoption at global scale"
      },
      "privacy": {
        "title": "Privacy & Trust · Trent Power",
        "description": "A simple, privacy-respectful site with no tracking, analytics, cookies, profiling or third-party services"
      },
      "integrity": {
        "title": "Integrity · Trent Power",
        "description": "Signed public releases, integrity manifest, detached signature and public signing key"
      },
      "releases": {
        "title": "Releases · Trent Power",
        "description": "Frozen, signed snapshots of the public site"
      },
      "security": {
        "title": "Security & Threat Model · Trent Power",
        "description": "Security architecture, operational controls, public verification surfaces and residual risks"
      },
      "acknowledgments": {
        "title": "Security acknowledgements · Trent Power",
        "description": "Responsible security disclosures verified and resolved for trentpower.fr."
      },
      "maintenance": {
        "title": "Down for maintenance · Trent Power",
        "description": "Down for maintenance."
      },
      "404": {
        "title": "Page not found · Trent Power",
        "description": "Page not found."
      },
      "500": {
        "title": "Something went wrong · Trent Power",
        "description": "Something went wrong."
      },
      "verify": {
        "title": "Verify this page · Trent Power",
        "description": "A public page record showing the canonical URL, source mirror, page fingerprint and signed release archive"
      },
      "source": {
        "title": "Source mirrors · Trent Power",
        "description": "Readable public mirrors of selected site files"
      },
      "403": {
        "title": "Forbidden · Trent Power",
        "description": "Access not permitted."
      },
      "verify_locally": {
        "title": "Verify locally · Trent Power",
        "description": "Detached verification notes: signed manifest check from a temporary keyring"
      }
    },
    "hero": {
      "statement": "Client strategy, growth systems, and cultural adoption at global scale.",
      "body": "I lead client strategy at Group level, focusing on the systems, governance, and ways of working that turn client relationships into long-term value. My work sits at the intersection of strategy, technology, and human relationships, with a focus on impact that scales and endures."
    },
    "approach": {
      "label": "Approach",
      "growth_title": "Client growth takes discipline",
      "growth_body": "Lasting growth follows when strong systems are in place.",
      "clienteling_title": "Clienteling converts memory into meaning",
      "clienteling_detail": "<dfn id=\"clienteling-definition\">Clienteling</dfn> is a discipline. The practice of transforming what a Client Advisor knows into something a Client genuinely feels: recognised, remembered, served with intention. The moment it becomes mechanical, it stops being Clienteling.",
      "adoption_title": "Adoption matters more than tools",
      "adoption_body": "A strategy or technology only creates value when teams trust it and choose to use it. Trust must be earned, and utility must be proven. Teams are first-line clients and vital collaborators.",
      "ai_title": "AI should amplify human relationships",
      "ai_body": "Authenticity is a human advantage, and it cannot be automated. Trust, empathy, and judgement are built in the moment through tone, presence, and real accountability. I use AI to remove friction and sharpen context, so people can show up more human, more relevant, and more consistent at scale.",
      "governance_title": "Governance creates momentum",
      "governance_body": "Clear ownership, cadence, and disciplined priorities create alignment, accelerate decisions, and enable scale.",
      "taste_title": "Taste is a strategic advantage",
      "taste_body": "Judgement, discernment, and cultural awareness shape better choices, and sharper execution."
    },
    "trajectory": {
      "label": "Trajectory",
      "current_label": "Current",
      "current_title": "Group Director, Client Development & Client Relations",
      "current_org": "<abbr title=\"Louis Vuitton Moët Hennessy\">LVMH</abbr>",
      "current_detail": "Group-wide client strategy across Maisons and markets",
      "current_span": "2023 — now",
      "previous_label": "Previous",
      "previous_title": "Group Head of Clienteling",
      "previous_org": "<abbr title=\"Louis Vuitton Moët Hennessy\">LVMH</abbr>",
      "previous_detail": "Global",
      "previous_span": "2017 — 2023",
      "maisons_label": "Maisons",
      "maisons_title": "Senior leadership across Clienteling, <abbr title=\"Customer Relationship Management\">CRM</abbr> & Retail",
      "maisons_org": "BVLGARI",
      "maisons_detail": "Australia & China",
      "maisons_span": "2004 — 2017",
      "background_label": "Background",
      "background_title": "Digital & entrepreneurial",
      "background_detail": "Building online platforms and communities",
      "background_span": "1997 — 2004",
      "education_label": "Education",
      "education_detail": "University of Sydney, Masters\nEnglish, French\nSelected executive and leadership certifications"
    },
    "projects": {
      "label": "Projects",
      "paris_desc": "A private cultural intelligence system for Paris, combining location, effort, editorial judgement and personal taste into a calmer way to decide what is worth going out for.",
      "paris_subline": "A personal experiment in taste systems, local relevance and human-scale recommendation.",
      "paris_preview_header": "This week near Jourdain, 20th",
      "paris_preview_caption": "A sample cultural intelligence selection for one week, one neighbourhood.",
      "paris_cta": "View project",
      "tier_walk": "walk",
      "tier_metro": "metro",
      "tier_bike": "bike"
    },
    "contact": {
      "label": "Contact",
      "email_aria": "Email Trent Power"
    },
    "footer": {
      "privacy": "Privacy",
      "lang_toggle": "FR"
    },
    "modal": {
      "text": "This is a personal project. If you'd like to see it, I'd be happy to share access.",
      "cta_aria": "Request access by email",
      "close": "Close",
      "cta_label": "Access by request"
    },
    "cite": {
      "hover": "Copy citation",
      "copied": "Copied",
      "site_label": "Personal Site",
      "edition_label": "Edition",
      "label": {
        "action": "Cite & verify"
      },
      "overlay": {
        "kicker": "This page",
        "lede": "Canonical signed publication record.",
        "action": {
          "copy_citation": "Copy citation",
          "verify": "Verify this page",
          "print_home": "Print profile",
          "print_sheet": "Print this sheet",
          "print_page": "Print page",
          "close": "Close",
          "open_source": "View source"
        },
        "page_title": {
          "home": "Client Strategy & Growth Systems",
          "privacy": "Privacy",
          "security": "Security",
          "integrity": "Integrity",
          "verify": "Verification",
          "source": "Source",
          "source-reader": "Source reader",
          "acknowledgments": "Security acknowledgements",
          "integrity-verify-locally": "Verify locally",
          "releases": "Editions",
          "release-archive": "Edition 2026-05-09",
          "forbidden": "Access not available",
          "not-found": "Page not found",
          "server-error": "Temporary server error",
          "maintenance": "Down for maintenance",
          "sw-reset": "Service worker reset"
        },
        "toast": {
          "citation_copied": "Citation copied"
        },
        "edition_label": "Edition",
        "release_status": "Signed release"
      }
    },
    "privacy": {
      "page_title": "Privacy & Trust",
      "body_intro": "This website is intentionally simple and privacy respectful.",
      "body_detail": "It uses no tracking, analytics, cookies, profiling, or third party services. No personal data is collected for analytics, advertising, or profiling purposes when you browse the site. Any limited technical data processed by the server is used only to ensure the security and proper operation of the site.",
      "local_storage": "The only browser storage used is local language preference. It remains on the visitor’s device and is never transmitted by the site.",
      "back": "← Home",
      "print": {
        "kicker": "Privacy & Trust",
        "title": "Privacy-first by design",
        "lede": "This site is intentionally simple and privacy-respectful. It uses no tracking, analytics, cookies, profiling or third-party services.",
        "meta": "Edition 2026-05-09 · trentpower.fr/privacy/",
        "card": {
          "01": {
            "label": "01 No tracking",
            "title": "No tracking",
            "body": "No analytics. No cookies. No profiling. No third-party scripts."
          },
          "02": {
            "label": "02 No data collection",
            "title": "No data collection",
            "body": "No public forms. No visitor accounts. No behavioural tracking. No advertising infrastructure."
          },
          "03": {
            "label": "03 Verification route",
            "title": "Verification route",
            "body": "Integrity page. Security page. Public manifest. Source view."
          },
          "04": {
            "label": "04 Design principle",
            "title": "Privacy as posture",
            "body": "Privacy is not a compliance layer. It is part of the site’s editorial and professional posture."
          },
          "05": {
            "label": "05 What you can check",
            "title": "What you can check",
            "body": "View source. Read /integrity.json. Verify the signature. Inspect the security headers."
          },
          "06": {
            "label": "06 Contact",
            "title": "Contact",
            "body": "trent@trentpower.fr · canonical route trentpower.fr/privacy/"
          }
        },
        "footer": {
          "proof": "Private · Static · Signed · No tracking",
          "edition": "Edition 2026-05-09 · trentpower.fr/privacy/"
        },
        "qr": {
          "label": "trentpower.fr/privacy/"
        },
        "doc_title": "Trent Power - Privacy Trust Sheet"
      },
      "body_records": "Public inspection and verification records are published separately."
    },
    "integrity": {
      "page_title": "Integrity",
      "body_intro": "This site publishes signed releases so public files can be checked against a <dfn id=\"integrity-manifest\">manifest</dfn>, <dfn id=\"detached-signature\">detached signature</dfn> and public key.",
      "last_reviewed": "Last reviewed: <time datetime=\"2026-05-09\">9 May 2026</time>",
      "file_integrity": "/integrity.json · SHA-256 hashes of all public assets",
      "file_sig": "/integrity.json.sig · detached PGP signature",
      "file_key": "/.well-known/pgp-key.asc · public signing key",
      "history_heading": "History",
      "history_body": "Signed snapshots are kept for reference.",
      "history_link": "View archived editions",
      "copy_button": "Copy",
      "copy_button_done": "Copied",
      "back": "← Privacy",
      "fingerprint_copy": "Copy fingerprint",
      "fingerprint_copied": "Copied",
      "print": {
        "kicker": "Integrity",
        "title": "Signed public verification",
        "lede": "Published files are listed in a public manifest and signed with a detached PGP signature so updates can be verified independently.",
        "meta": "Edition 2026-05-09 · trentpower.fr/integrity/",
        "card": {
          "01": {
            "label": "01 Manifest",
            "title": "Manifest",
            "body": "/integrity.json — <abbr title=\"Secure Hash Algorithm, 256-bit\">SHA-256</abbr> hashes of every intentional public file."
          },
          "02": {
            "label": "02 Signature",
            "title": "Detached signature",
            "body": "/integrity.json.sig — detached PGP signature that verifies the manifest."
          },
          "03": {
            "label": "03 Public key",
            "title": "Public key",
            "body": "/.well-known/pgp-key.asc — fingerprint A729 591B 450D 3F59 3694 98BD 8299 1F25 04AE 0263."
          },
          "04": {
            "label": "04 Releases",
            "title": "Frozen releases",
            "body": "/integrity/releases/ — public snapshots: February 2026 and May 2026."
          },
          "05": {
            "label": "05 Source route",
            "title": "Source route",
            "body": "/source/ — public text view of selected source files. No secrets, no private artefacts."
          },
          "06": {
            "label": "06 Verification",
            "title": "Verification",
            "body": "curl -O trentpower.fr/integrity.json && curl -O trentpower.fr/integrity.json.sig && gpg --verify integrity.json.sig integrity.json"
          }
        },
        "footer": {
          "proof": "Private · Static · Signed · No tracking",
          "edition": "Edition 2026-05-09 · trentpower.fr/integrity/"
        },
        "qr": {
          "label": "trentpower.fr/integrity/"
        },
        "doc_title": "Trent Power - Integrity Verification Sheet"
      },
      "page_level_verify_note": "For page-level records, use <a href=\"/verify/\">Verify</a>. For local manifest verification commands, see <a href=\"/integrity/verify-locally/\">Verify locally</a>.",
      "release_verify_note": "Release archives are verified through a signed checksum list and detached archive signatures. The live public site is verified through /integrity.json.",
      "record": {
        "kicker": "Signed release",
        "title": "<time datetime=\"2026-05\">May 2026</time>",
        "status_short": "Manifest · Signature · Public key",
        "label": {
          "manifest": "Manifest",
          "signature": "Signature",
          "public_key": "Public key",
          "archives": "Archives",
          "checksums": "Checksums",
          "fingerprint": "Fingerprint"
        },
        "desc": {
          "manifest": "<abbr title=\"Secure Hash Algorithm, 256-bit\">SHA-256</abbr> hashes of public files",
          "signature": "Detached <abbr title=\"Pretty Good Privacy\">PGP</abbr> signature",
          "public_key": "Public signing key",
          "archives": "Signed public source release",
          "checksums": "Signed checksum list for archive downloads"
        },
        "action": {
          "view_manifest": "View manifest",
          "view_releases": "View releases"
        }
      },
      "verify_release_local": {
        "summary": "Advanced local verification",
        "note": "Run the signed manifest check in a temporary keyring."
      },
      "related": {
        "label": "Related records",
        "verify_page": "Verify a page",
        "source_mirrors": "Source mirrors",
        "archived_editions": "Archived editions"
      }
    },
    "releases": {
      "page_title": "Releases",
      "body_intro": "Each <dfn id=\"signed-release\">release</dfn> is a frozen, signed snapshot of the public site at the time of publication. Source archives can be downloaded, and checksums and signatures are provided for local verification.",
      "editions_heading": "Editions",
      "group": {
        "current": "Current release",
        "archive": "Archive"
      },
      "view_release": "View release",
      "download_checksums_sig": "Checksums & signature",
      "aria": {
        "actions_current": "Current release downloads and verification",
        "actions_archive": "Release record"
      },
      "detail": {
        "page_title": "May 2026",
        "intro": "Signed release archives for the 9 May 2026 edition. A signed checksum list verifies the archive set; checksums verify the downloaded files; detached signatures verify each archive directly. The signed manifest at /integrity.json remains the live-site authority.",
        "card": {
          "kicker": "Release files",
          "title": "9 May 2026",
          "status": "ZIP · TAR.GZ · Checksums · Signatures",
          "label": {
            "zip": "ZIP",
            "zip_sig": "ZIP signature",
            "zip_sha": "ZIP checksum",
            "targz": "TAR.GZ",
            "targz_sig": "TAR.GZ signature",
            "targz_sha": "TAR.GZ checksum",
            "sums": "Checksum list",
            "sums_sig": "Checksum list signature"
          },
          "desc": {
            "zip": "Portable public source snapshot",
            "sig": "Detached PGP signature",
            "sha": "SHA-256 checksum",
            "targz": "Technical preservation archive",
            "sums": "SHA-256 list for release archives",
            "sums_sig": "Detached PGP signature over SHA256SUMS"
          }
        },
        "note": "Archive binaries are not included in /integrity.json to avoid recursive hashing. They are verified separately through the signed checksum list, individual SHA-256 checksums and detached signatures. <a href=\"/integrity/\">Integrity</a> remains the live-site authority.",
        "related": {
          "label": "Related records",
          "integrity": "Integrity",
          "all_releases": "All releases",
          "source": "Source",
          "verify": "Verify"
        },
        "back": "← Releases"
      },
      "edition_feb": "February 2026 · initial signed release",
      "back": "← Integrity",
      "edition_feb_date": "February 2026",
      "edition_feb_desc": "<cite>Initial signed release</cite>",
      "print": {
        "kicker": "Releases",
        "title": "Frozen public editions",
        "lede": "Public release snapshots preserve selected editions of the site with local assets so their design and integrity can be inspected over time.",
        "meta": "Edition 2026-05-09 · trentpower.fr/integrity/releases/",
        "doc_title": "Trent Power - Release Archive Sheet",
        "card": {
          "01": {
            "label": "01 4 May 2026",
            "title": "4 May 2026",
            "body": "Final May edition. Signed source archives, deterministic ZIP and TAR.GZ, aggregated SHA256SUMS. Clean active filenames. One-page print profile. Trust sheets."
          },
          "02": {
            "label": "02 February 2026",
            "title": "February 2026",
            "body": "Initial signed release. Earlier visual system. Preserved as a historical archive."
          },
          "03": {
            "label": "03 Archive principle",
            "title": "Archive principle",
            "body": "Frozen assets. Local CSS and fonts. No live mutable style dependency."
          },
          "04": {
            "label": "04 Integrity route",
            "title": "Integrity route",
            "body": "/integrity.json · /integrity.json.sig · /.well-known/pgp-key.asc"
          },
          "05": {
            "label": "05 Why it matters",
            "title": "Why it matters",
            "body": "Verifiability. Authorship. Continuity. Public trust."
          },
          "06": {
            "label": "06 Where to inspect",
            "title": "Where to inspect",
            "body": "/integrity/releases/2026-05-08/ · /integrity/releases/2026-02/ · /source/"
          }
        },
        "footer": {
          "proof": "Private · Static · Signed · No tracking",
          "edition": "Edition 2026-05-09 · trentpower.fr/integrity/releases/"
        },
        "qr": {
          "label": "trentpower.fr/integrity/releases/"
        }
      },
      "edition_feb_meta": "Signed snapshot · Initial release",
      "edition_may09_date": "9 May 2026",
      "edition_may09_desc": "<cite>Final May edition</cite>",
      "edition_may09_meta": "Signed snapshot · Current release",
      "download_zip": "Download ZIP",
      "download_targz": "Download TAR.GZ",
      "related": {
        "label": "Related records",
        "verify_page": "Verify a page",
        "integrity_manifest": "Integrity manifest",
        "source_mirrors": "Source mirrors"
      }
    },
    "security": {
      "page_title": "Security & Threat Model",
      "body_intro": "How trentpower.fr is hosted, protected and publicly verifiable.",
      "body_detail": "This page describes the public site's security posture, operating model, verification surfaces and residual risks.",
      "s1_summary": "1. Architecture",
      "s2_summary": "2. Assets protected",
      "s2_body": "The controls described here protect:",
      "s2_list": "Domain ownership\nDNS integrity\nHosting account integrity\nPublic content integrity\nThe signing key used for release authenticity",
      "s3_summary": "3. Threat model",
      "s3_infra_heading": "Infrastructure compromise",
      "s3_infra_list": "Registrar account takeover\n<abbr title=\"Domain Name System\">DNS</abbr> hijack\nHosting credential compromise",
      "s3_content_heading": "Content tampering",
      "s3_content_list": "Post-deployment file modification\nMalicious JavaScript injection\nSilent alteration of static assets",
      "s3_admin_heading": "Administrative abuse",
      "s3_admin_list": "Credential stuffing\nAutomated vulnerability scanning",
      "s3_noise_heading": "Commodity internet noise",
      "s3_noise_body": "Continuous automated probing for common <abbr title=\"Content Management System\">CMS</abbr> paths, configuration files, or known endpoints. These are treated as persistent background conditions rather than exceptional events.",
      "s4_summary": "4. Controls",
      "s4_registrar_heading": "Registrar &amp; <abbr title=\"Domain Name System\">DNS</abbr>",
      "s4_registrar_list": "<abbr title=\"Multi-Factor Authentication\">MFA</abbr> enabled\nRegistrar lock active\n<abbr title=\"Domain Name System Security Extensions\">DNSSEC</abbr> enabled and validated\n<abbr title=\"Certificate Authority Authorization\">CAA</abbr> records restrict certificate issuance",
      "s4_hosting_heading": "Hosting",
      "s4_hosting_list": "Multi-factor authentication enabled\n<abbr title=\"Secure File Transfer Protocol\">SFTP</abbr>-only deployment\nNo <abbr title=\"Secure Shell\">SSH</abbr> shell exposure\nNo scheduled background execution",
      "s4_content_heading": "Public content",
      "s4_content_list": "Static architecture reduces server-side attack surface\nStrict <abbr title=\"Content Security Policy\">CSP</abbr> starting from <code>default-src 'none'</code>\nNo external resource loading\nNo dynamic script execution",
      "s4_monitoring_heading": "Monitoring",
      "s4_monitoring_list": "Structured log analysis\nPattern detection and anomaly scoring\nFile integrity drift detection against the signed release baseline",
      "s6_summary": "6. Residual risk",
      "s6_protect_summary": "This model protects the public static site. It does not protect against registrar compromise, hosting compromise, client-device compromise or private key compromise.",
      "s6_intro": "This model does not attempt to address:",
      "s6_list": "Physical compromise of hosting infrastructure\nGlobal <abbr title=\"Domain Name System\">DNS</abbr> root compromise\nCertificate authority (<abbr title=\"Certificate Authority\">CA</abbr>) compromise\nState-level adversaries\nZero-day browser exploits on client devices",
      "s6_footer": "The main risks remain domain, <abbr title=\"Domain Name System\">DNS</abbr>, hosting and private key compromise.",
      "s7_summary": "7. Disclosure",
      "s7_body": "Responsible disclosure is welcome. Security contact details and encrypted communication instructions are published at <a href=\"/.well-known/security.txt\"><code>/.well-known/security.txt</code></a>.",
      "s8_summary": "8. Design principles",
      "s8_list": "Simplicity over complexity\nDeterministic behaviour over dynamic systems\nTransparency over obscurity\nVerifiable integrity over trust assumptions",
      "back": "← Privacy",
      "print": {
        "kicker": "Security & Threat Model",
        "title": "Static, self-managed, verification-led",
        "lede": "The public site is static HTML, CSS and vanilla JavaScript, with strict headers, no runtime server logic, no public database and no third-party scripts.",
        "meta": "Edition 2026-05-09 · trentpower.fr/security/",
        "card": {
          "01": {
            "label": "01 Architecture",
            "title": "Architecture",
            "body": "Static HTML, CSS, vanilla JavaScript. Self-managed deployment on Apache (Gandi, Paris). No public database."
          },
          "02": {
            "label": "02 Headers",
            "title": "Security headers",
            "body": "<abbr title=\"Content Security Policy\">CSP</abbr> default-deny. <abbr title=\"HTTP Strict Transport Security\">HSTS</abbr>. <abbr title=\"Cross-Origin Opener Policy\">COOP</abbr> / <abbr title=\"Cross-Origin Embedder Policy\">COEP</abbr> / <abbr title=\"Cross-Origin Resource Policy\">CORP</abbr>. Referrer-Policy no-referrer. Locked-down Permissions-Policy."
          },
          "03": {
            "label": "03 Assets protected",
            "title": "Assets protected",
            "body": "Identity. Published content. Public verification files. Source integrity."
          },
          "04": {
            "label": "04 Threat model",
            "title": "Threat model",
            "body": "Content injection. Hosting credential compromise. Spoofed identity. Stale or tampered files."
          },
          "05": {
            "label": "05 Controls",
            "title": "Controls",
            "body": "No third-party scripts. No public forms. Signed integrity manifest. Restricted file exposure. Service-worker-controlled cache."
          },
          "06": {
            "label": "06 Residual risk",
            "title": "Residual risk",
            "body": "Hosting and registrar risk remain. Static-site exposure is reduced, not eliminated. Responsible disclosure route is published."
          }
        },
        "footer": {
          "proof": "Private · Static · Signed · No tracking",
          "edition": "Edition 2026-05-09 · trentpower.fr/security/"
        },
        "qr": {
          "label": "trentpower.fr/security/"
        },
        "doc_title": "Trent Power - Security Threat Model Sheet"
      },
      "public_verification_summary": "5. Public verification surface",
      "public_verification_intro": "The site exposes public inspection routes so published content can be checked without private infrastructure access.",
      "public_verification_list": "<code>/integrity/</code> records signed releases, public key and manifest\n<code>/verify/</code> records one page's canonical <abbr title=\"Uniform Resource Locator\">URL</abbr>, source mirror and fingerprint\n<code>/source/</code> publishes readable mirrors of selected public files\n<code>/integrity/releases/</code> preserves frozen signed snapshots",
      "public_verification_footer": "These routes support inspection and provenance. They do not remove the need to protect <abbr title=\"Domain Name System\">DNS</abbr>, hosting credentials and the private signing key.",
      "s1_routes_note": "Public inspection routes expose the signed manifest, page records, readable source mirrors and archived releases without exposing private infrastructure.",
      "architecture_card": {
        "kicker": "Architecture",
        "browser_label": "Browser",
        "browser_body": "<abbr title=\"HyperText Transfer Protocol Secure\">HTTPS</abbr> · no cookies · no analytics",
        "host_label": "Static host",
        "host_body": "Apache · Gandi · Paris · <abbr title=\"Secure File Transfer Protocol\">SFTP</abbr> deployment",
        "files_label": "Site files",
        "files_body": "<abbr title=\"HyperText Markup Language\">HTML</abbr> · <abbr title=\"Cascading Style Sheets\">CSS</abbr> · vanilla JS · self-hosted fonts",
        "cache_label": "Offline cache",
        "cache_body": "Service worker · local cache after first visit",
        "trust_label": "Trust",
        "trust_body": "Integrity · Verify · Source · Releases",
        "archive_label": "Archive",
        "archive_body": "Frozen signed releases"
      },
      "related": {
        "label": "Related records",
        "verify_page": "Verify a page",
        "integrity_manifest": "Integrity manifest",
        "source_mirrors": "Source mirrors",
        "privacy": "Privacy"
      }
    },
    "acknowledgments": {
      "page_title": "Security acknowledgements",
      "body_intro": "This page records responsible security disclosures that have been verified and resolved.",
      "none": "There are no acknowledgements at present. This reflects the absence of reportable disclosures to date, not the absence of review or maintenance.",
      "report": "If you believe you have found a security issue with this site, please report it responsibly. Contact details and disclosure preferences are listed in security.txt.",
      "integrity_link": "Site integrity statement",
      "back": "← Home"
    },
    "maintenance": {
      "page_title": "Down for maintenance",
      "body": "The signed manifest, source mirrors and frozen release archives remain available throughout maintenance. Verification continues to work.",
      "kicker": "Maintenance",
      "title": "Down for maintenance",
      "lede": "We're doing some work here. Check back shortly, or return to the homepage."
    },
    "error_404": {
      "page_title": "Page not found",
      "body": "The page you’re looking for doesn’t exist or has moved.",
      "back": "← Home"
    },
    "error_500": {
      "page_title": "Something went wrong",
      "body": "The server encountered an error. Try again shortly, or return to the homepage.",
      "back": "← Home"
    },
    "home": {
      "trust_privacy": "privacy-first",
      "trust_signed": "signed releases",
      "trust_short_privacy": "private",
      "trust_short_signed": "signed",
      "trust_short_static": "static",
      "trust_static": "static",
      "trust_no_tracking": "no tracking"
    },
    "print": {
      "kicker": "trentpower.fr",
      "name": "Trent Power",
      "role": "Client strategy, growth systems and cultural adoption",
      "contact": {
        "linkedin": "LinkedIn · Trent Power"
      },
      "title": "Client strategy, growth systems and cultural adoption at global scale",
      "body": "I lead client strategy at Group level, focusing on the systems, governance and ways of working that turn client relationships into long-term value. My work sits at the intersection of strategy, technology and human relationships, with a focus on impact that scales and endures.",
      "focus": {
        "01": {
          "label": "01 Focus",
          "title": "Client growth takes discipline",
          "body": "Lasting growth follows when strong systems are in place."
        },
        "02": {
          "label": "02 Adoption",
          "title": "Adoption matters more than tools",
          "body": "Technology creates value when teams trust it, choose it and use it."
        },
        "03": {
          "label": "03 Human relationships",
          "title": "AI should amplify human relationships",
          "body": "Authenticity remains a human advantage; automation must strengthen context, memory and care."
        },
        "04": {
          "label": "04 Governance",
          "title": "Governance creates momentum",
          "body": "Clear ownership and disciplined priorities create alignment and scale."
        }
      },
      "trajectory": {
        "label": "Trajectory",
        "current": {
          "label": "Current",
          "body": "Group Director, Client Development & Client Relations · LVMH"
        },
        "previous": {
          "label": "Previous",
          "body": "Senior leadership across Clienteling, CRM and Client Development"
        },
        "background": {
          "label": "Background",
          "body": "Early digital and entrepreneurial work building online platforms and communities"
        },
        "education": {
          "label": "Education",
          "body": "University of Sydney · Masters · English, French · Executive education"
        }
      },
      "project": {
        "label": "Proof point",
        "title": "What’s On in Paris",
        "body": "A private cultural intelligence system for Paris, combining location, effort, editorial judgement and personal taste into a calmer way to decide what is worth leaving home for.",
        "note": "A personal experiment in taste systems, local relevance and human-scale recommendation."
      },
      "footer": {
        "proof": "Private · Static · Signed · No tracking",
        "edition": "Edition <time datetime=\"2026-05-09\">2026-05-09</time> · https://trentpower.fr/",
        "citation": "Trent Power. Personal Site. Paris, France.",
        "evidence": "Public record · HTML · Edition 9 May 2026"
      },
      "place": "Personal Site · Paris, France",
      "doc_title": "Trent Power - Client Strategy Executive Profile",
      "arch": {
        "caption": "Static, privacy-first, signed and inspectable",
        "browser": "Browser",
        "host": "Static Host",
        "files": "Site Files",
        "cache": "Offline Cache",
        "trust": "Trust",
        "archive": "Archive"
      }
    },
    "error": {
      "403": {
        "print": {
          "kicker": "403",
          "title": "Access not available",
          "lede": "This path is not publicly accessible. The public site exposes only intentional files and pages.",
          "meta": "Edition 2026-05-09 · trentpower.fr",
          "doc_title": "Trent Power - Access Boundary Sheet",
          "card": {
            "01": {
              "label": "01 Access boundary",
              "title": "Access boundary",
              "body": "Some paths are intentionally unavailable. Private, backup and operational files are blocked."
            },
            "02": {
              "label": "02 Public routes",
              "title": "Public routes",
              "body": "Homepage. Privacy & Trust. Integrity. Security. Source."
            },
            "03": {
              "label": "03 Why this matters",
              "title": "Why this matters",
              "body": "Reduces accidental exposure. Keeps public files intentional. Supports privacy and trust posture."
            },
            "04": {
              "label": "04 Verification",
              "title": "Verification",
              "body": "Inspect /integrity.json. View selected source files. Check /.well-known/security.txt."
            },
            "05": {
              "label": "05 Static posture",
              "title": "Static posture",
              "body": "No public database. No visitor accounts. No forms. No tracking."
            },
            "06": {
              "label": "06 Contact",
              "title": "Contact",
              "body": "trent@trentpower.fr · responsible disclosure via /security/"
            }
          },
          "footer": {
            "proof": "Private · Static · Signed · No tracking",
            "edition": "Edition 2026-05-09 · trentpower.fr"
          },
          "qr": {
            "label": "trentpower.fr"
          }
        }
      },
      "404": {
        "print": {
          "kicker": "404",
          "title": "Page not found",
          "lede": "The address may have changed, or the page may no longer be part of the public site.",
          "meta": "Edition 2026-05-09 · trentpower.fr",
          "doc_title": "Trent Power - Page Not Found Sheet",
          "card": {
            "01": {
              "label": "01 What happened",
              "title": "What happened",
              "body": "The requested route does not resolve to a public page. The site remains available through the homepage."
            },
            "02": {
              "label": "02 Where to go",
              "title": "Where to go",
              "body": "Homepage. Privacy & Trust. Integrity. Security."
            },
            "03": {
              "label": "03 Verification",
              "title": "Verification",
              "body": "Public manifest. Source view. Signed releases."
            },
            "04": {
              "label": "04 If this was expected",
              "title": "If expected",
              "body": "Check the URL. Remove outdated path fragments. Try the canonical homepage."
            },
            "05": {
              "label": "05 Public posture",
              "title": "Public posture",
              "body": "Static site. No tracking. No forms. No third-party scripts."
            },
            "06": {
              "label": "06 Contact",
              "title": "Contact",
              "body": "trent@trentpower.fr · LinkedIn · Trent Power"
            }
          },
          "footer": {
            "proof": "Private · Static · Signed · No tracking",
            "edition": "Edition 2026-05-09 · trentpower.fr"
          },
          "qr": {
            "label": "trentpower.fr"
          }
        }
      },
      "500": {
        "print": {
          "kicker": "500",
          "title": "Temporary server error",
          "lede": "Something unexpected happened while serving this page. The public site is static, so this is likely a hosting or routing issue rather than an application failure.",
          "meta": "Edition 2026-05-09 · trentpower.fr",
          "doc_title": "Trent Power - Temporary Server Error Sheet",
          "card": {
            "01": {
              "label": "01 What happened",
              "title": "What happened",
              "body": "The server could not complete the request. Try again shortly."
            },
            "02": {
              "label": "02 Stable routes",
              "title": "Stable routes",
              "body": "Homepage. Integrity. Security. Source."
            },
            "03": {
              "label": "03 Public verification",
              "title": "Public verification",
              "body": "/integrity.json · /integrity.json.sig · /.well-known/pgp-key.asc"
            },
            "04": {
              "label": "04 Architecture",
              "title": "Architecture",
              "body": "Static HTML, CSS and JavaScript. No runtime public application. No public database."
            },
            "05": {
              "label": "05 What to do",
              "title": "What to do",
              "body": "Refresh later. Return to homepage. Contact if persistent."
            },
            "06": {
              "label": "06 Contact",
              "title": "Contact",
              "body": "trent@trentpower.fr · LinkedIn · Trent Power"
            }
          },
          "footer": {
            "proof": "Private · Static · Signed · No tracking",
            "edition": "Edition 2026-05-09 · trentpower.fr"
          },
          "qr": {
            "label": "trentpower.fr"
          }
        }
      }
    },
    "source": {
      "print": {
        "kicker": "Source",
        "title": "Public source view",
        "lede": "Selected public files are mirrored as plain text so the site can be inspected from any reader, including mobile.",
        "meta": "Edition 2026-05-09 · trentpower.fr/source/",
        "doc_title": "Trent Power - Public Source Sheet",
        "card": {
          "01": {
            "label": "01 What is included",
            "title": "What is included",
            "body": "HTML mirrors. CSS. JavaScript. Manifest files. .htaccess mirror."
          },
          "02": {
            "label": "02 What is excluded",
            "title": "What is excluded",
            "body": "Credentials. Private notes. Invoices. Backups. Generator internals unless explicitly public."
          },
          "03": {
            "label": "03 How it is organised",
            "title": "How it is organised",
            "body": "Sorted by file type, then name. Plain text mirrors. SHA-256 hashes. File sizes."
          },
          "04": {
            "label": "04 Verification",
            "title": "Verification",
            "body": "source-manifest.json · /integrity.json · detached signature · public key."
          },
          "05": {
            "label": "05 Files of note",
            "title": "Files of note",
            "body": "styles.css.txt · app.js.txt · print.css.txt · htaccess.txt · source-manifest.json"
          },
          "06": {
            "label": "06 Principle",
            "title": "Principle",
            "body": "Human readers first. Machine-readable files preserve identity, authorship and context."
          }
        },
        "footer": {
          "proof": "Private · Static · Signed · No tracking",
          "edition": "Edition 2026-05-09 · trentpower.fr/source/"
        },
        "qr": {
          "label": "trentpower.fr/source/"
        }
      },
      "heading": "Source",
      "intro_lede": "Selected public files are published here in readable form, for inspection, preservation, accessibility and machine readability.",
      "curation_note": "This index shows the principal public mirrors. Additional mirrored files may remain available by direct URL where they support verification, recovery, or release integrity.",
      "download_lede": "Download the public source archive for the current edition",
      "download_targz": "TAR.GZ",
      "download_zip": "ZIP",
      "download_checksums": "Checksums",
      "back": "← Privacy",
      "group": {
        "published-pages": "Published pages",
        "trust-records": "Trust records",
        "scripts": "Scripts",
        "metadata": "Metadata"
      },
      "col": {
        "validated": "Validated"
      },
      "group_gloss": {
        "published-pages": "Readable mirrors of the principal public pages, served as plain text so the bytes can be inspected without execution.",
        "trust-records": "Public commitments and identity surfaces. Who publishes the site, what is promised, where disclosure runs.",
        "scripts": "Authored stylesheets and JavaScript the page ships to the browser. Mirrored from source, not the minified deployed bytes.",
        "metadata": "Server configuration and machine-readable records describing the site to crawlers, indexers and language models."
      },
      "editions": {
        "eyebrow": "Editions",
        "title": "Edition lineage",
        "note": {
          "current": "Current signed release",
          "earlier": "Earlier signed release"
        }
      },
      "files": {
        "403_html_txt": {
          "description": "Forbidden page."
        },
        "404_html_txt": {
          "description": "Not found page."
        },
        "500_html_txt": {
          "description": "Server error page."
        },
        "ai_usage_txt_txt": {
          "description": "Statement of AI usage and policy for the site."
        },
        "app_enhance_js_txt": {
          "description": "Progressive enhancement layer. Non-essential interactions, gracefully optional."
        },
        "app_js_txt": {
          "description": "Authored runtime script. Navigation, language switch, citation drawer wiring."
        },
        "assertion_txt_txt": {
          "description": "Authorship assertion. Declaration of authorship and integrity intent."
        },
        "attestations_json_txt": {
          "description": "Public attestations. Verifiable claims about the site."
        },
        "changelog_txt_txt": {
          "description": "Edition change log. Notable revisions to the public site."
        },
        "cite_js_txt": {
          "description": "Cite-and-verify drawer. Surfaces canonical URL, page fingerprint and signature."
        },
        "fonts_full_css_txt": {
          "description": "Webfont declarations. Subsets, formats and fallbacks."
        },
        "htaccess_txt": {
          "description": "Apache configuration. Public-safety scanned before mirroring."
        },
        "humans_txt_txt": {
          "description": "Credits and notes for the people behind the site."
        },
        "i18n_core_js_txt": {
          "description": "Editorial translation source. All five languages in one authored JSON."
        },
        "i18n_de_js_txt": {
          "description": "German translations."
        },
        "i18n_es_js_txt": {
          "description": "Spanish translations."
        },
        "i18n_it_js_txt": {
          "description": "Italian translations. Deployed compact bytes."
        },
        "images_manifest_json_txt": {
          "description": "Image inventory. Per-file dimensions, derivatives and hashes."
        },
        "index_html_txt": {
          "description": "Home page. The editorial entry point."
        },
        "integrity_index_html_txt": {
          "description": "Integrity overview. The signed manifest, key and release authority."
        },
        "integrity_releases_2026_05_09_index_html_txt": {
          "description": "Frozen page record for the 2026-05-09 edition."
        },
        "integrity_releases_archive_css_txt": {
          "description": "Stylesheet used inside frozen release archives. Held alongside its release records."
        },
        "integrity_releases_index_html_txt": {
          "description": "Release index. The list of signed editions."
        },
        "llms_txt_txt": {
          "description": "Machine-readable guidance for language models and AI systems."
        },
        "maintenance_html_txt": {
          "description": "Maintenance notice. Used during planned downtime."
        },
        "manifest_webmanifest_txt": {
          "description": "Web app manifest. Installable surface metadata."
        },
        "pgp_txt_txt": {
          "description": "PGP statement. The signing key fingerprint and its use."
        },
        "print_css_txt": {
          "description": "Print stylesheet. Layout rules for paper output."
        },
        "privacy_index_html_txt": {
          "description": "Privacy statement. What is collected, retained and shared."
        },
        "readme_txt": {
          "description": "Orientation note for the source tree. Same text shipped at the root of every release archive."
        },
        "robots_txt_txt": {
          "description": "Crawler access policy and public indexing intent."
        },
        "security_acknowledgments_index_html_txt": {
          "description": "Acknowledgments for public security disclosures."
        },
        "security_index_html_txt": {
          "description": "Security posture. Architecture, headers and disclosure path."
        },
        "site_metadata_json_txt": {
          "description": "Site-level metadata. Edition, build, asset version."
        },
        "sitemap_xml_sha256_txt": {
          "description": "Source mirror of the SHA-256 checksum for sitemap.xml."
        },
        "sitemap_xml_txt": {
          "description": "Public sitemap. URL inventory for crawlers."
        },
        "source_manifest_json_txt": {
          "description": "Manifest of the /source/ tree itself. Every mirrored file with its hash."
        },
        "statement_txt_txt": {
          "description": "Editorial statement. The site's authoring principles."
        },
        "styles_css_txt": {
          "description": "Authored stylesheet. Mirrored from source, not the minified deployed bytes."
        },
        "sw_cache_manifest_json_txt": {
          "description": "Service worker cache manifest. Files pinned for offline use."
        },
        "sw_js_txt": {
          "description": "Service worker. Offline cache for the public site."
        },
        "sw_reset_index_html_txt": {
          "description": "Service worker reset. Clears the offline cache."
        },
        "verify_index_html_txt": {
          "description": "Verification interface. Page-level fingerprint checks."
        },
        "verify_verify_js_txt": {
          "description": "Verification logic. Renders a page record from the verification map."
        },
        "well_known_attribution_txt_txt": {
          "description": "Author attribution. Names the responsible party for the public site."
        },
        "well_known_build_json_txt": {
          "description": "Build record. Reproducibility data for the current edition."
        },
        "well_known_person_json_txt": {
          "description": "Machine-readable identity in JSON-LD. The reference used by discovery, federation and verification.",
          "role": "Canonical identity record"
        },
        "well_known_pgp_key_asc_txt": {
          "description": "ASCII-armoured public signing key. The publisher's signing identity."
        },
        "well_known_publication_json_txt": {
          "description": "Publication record. Describes the site as a self-managed editorial work."
        },
        "well_known_security_txt_txt": {
          "description": "Coordinated disclosure policy. Standard /.well-known/security.txt contact and scope.",
          "role": "Public trust surface"
        },
        "well_known_webfinger_txt": {
          "description": "WebFinger discovery surface. Resolves identity across federated protocols.",
          "role": "Identity discovery"
        }
      },
      "related": {
        "title": "Related records",
        "integrity": "Integrity",
        "verify": "Verify",
        "security": "Security"
      }
    },
    "verify": {
      "kicker": "Verify",
      "title": "Verify this page",
      "lede": "A public route for checking source, hash, signature and canonical identity.",
      "noscript_fallback": "JavaScript is required to select and display a page record here. Source mirrors, the signed manifest and release archives remain available through <a href=\"/source/\">Source</a> and <a href=\"/integrity/\">Integrity</a>.",
      "meta": "Edition 2026-05-09 · trentpower.fr/verify/",
      "doc_title": "Trent Power - Verification Sheet",
      "action": {
        "copy_canonical": "Copy URL",
        "copy_hash": "Copy hash",
        "copy_command": "Copy verification command",
        "open_source": "Open source mirror",
        "open_manifest": "Open manifest entry",
        "open_signature": "Open signature",
        "open_key": "Open public key",
        "copied": "Copied",
        "copy_manifest_command": "Copy manifest command",
        "copy_source_command": "Copy source command",
        "copy_fingerprint": "Copy fingerprint",
        "view_source_mirror": "View source mirror",
        "open_source_mirror": "Open mirror"
      },
      "command": {
        "manifest_title": "Verify the signed manifest",
        "source_title": "Verify the source mirror",
        "note": "The signed manifest verifies the published file set. The second command hashes the source mirror so it can be compared against the expected SHA-256 above."
      },
      "unknown": {
        "title": "Route not in the verification map",
        "body": "This route is not in the public verification map. You can still inspect the public manifest, source view and signed releases.",
        "action": {
          "source": "Source",
          "manifest": "Integrity manifest",
          "releases": "Release archive"
        }
      },
      "back": "← Privacy",
      "status": {
        "found": "Found in signed manifest",
        "missing": "Not found in current public manifest"
      },
      "title_default": "Verify this page",
      "title_prefix": "Verify",
      "lede_v2": "Check a published page against its source mirror, page fingerprint and signed release record.",
      "local": {
        "heading": "Verify locally",
        "manifest_label": "Verify the signed manifest",
        "manifest_desc": "Checks that /integrity.json was signed by the published public key.",
        "mirror_label": "Verify this page mirror",
        "mirror_desc": "Calculates the source mirror fingerprint so it can be compared with the expected value above.",
        "intro": "Run two local checks: verify the signed manifest, then compare this page's source mirror against the expected fingerprint.",
        "subheading_manifest": "Verify signed manifest",
        "subheading_mirror": "Verify source mirror",
        "closing": "The signed manifest verifies the published file set. The source command hashes this page's mirror so it can be compared against the fingerprint above."
      },
      "related": {
        "heading": "Related records",
        "source": "Source mirror",
        "manifest": "Integrity manifest",
        "archive": "Release archive"
      },
      "thispage": {
        "heading": "This page",
        "row": {
          "title": "Page title",
          "canonical": "Canonical URL",
          "route": "Route",
          "source": "Source mirror",
          "file_type": "File type",
          "file_size": "File size",
          "manifest_status": "Manifest status",
          "validated": "Last validated",
          "sha256": "Page fingerprint",
          "release": "Release archive",
          "file": "File",
          "citation": "Citation",
          "route_prefix": "Route"
        },
        "status": {
          "found_manifest": "Found in signed manifest",
          "source_available": "Source available",
          "release_archived": "Release archived",
          "short": {
            "signed": "Signed",
            "source": "Mirrored",
            "archived": "Archived"
          }
        },
        "kicker": "Page record",
        "group": {
          "citation": "Citation",
          "location": "Location",
          "evidence": "Evidence",
          "fingerprint": "Fingerprint",
          "archive": "Archive"
        },
        "validated_prefix": "Validated"
      },
      "selected": {
        "manifest": "Integrity manifest",
        "signature": "Detached signature",
        "public_key": "Public key"
      },
      "general": {
        "source": "Source viewer",
        "releases": "Release archive"
      },
      "chooser": {
        "heading": "Related records",
        "label": {
          "home": "Homepage",
          "privacy": "Privacy",
          "security": "Security",
          "integrity": "Integrity",
          "verify": "Verify",
          "source": "Source",
          "releases": "Releases"
        }
      }
    },
    "copy": {
      "command": "Copy command",
      "copied": "Copied",
      "failed": "Copy failed"
    },
    "trust_routes": {
      "heading": "Trust routes",
      "privacy_label": "Privacy",
      "privacy_desc": "What this site does not collect",
      "security_label": "Security",
      "security_desc": "How the site is protected",
      "integrity_label": "Integrity",
      "integrity_desc": "How releases are signed",
      "verify_label": "Verify",
      "verify_desc": "How a page can be checked",
      "source_label": "Source",
      "source_desc": "Readable mirrors of public files",
      "releases_label": "Releases",
      "releases_desc": "Frozen signed snapshots"
    },
    "sw_reset": {
      "page_title": "Service Worker Reset",
      "lede": "Clears the local offline cache for this device only. The live publication and server are unaffected.",
      "secondary": "If a recent edition is not appearing correctly, this utility refreshes the local publication cache.",
      "local_marker": "LOCAL DEVICE ONLY",
      "status_label": "Local cache status",
      "status_initial": "Reading local state…",
      "button": "Reset local offline cache",
      "button_done": "Reset complete",
      "edition_label": "Cached edition",
      "edition_none": "No cached edition detected",
      "clears_heading": "Clears",
      "clear_sw": "Service Worker registrations",
      "clear_caches": "Offline cache entries",
      "clear_pref": "Saved language preference",
      "preserves_heading": "Does not clear",
      "preserve_history": "Browser history",
      "preserve_downloads": "Downloads",
      "preserve_others": "Other websites",
      "preserve_server": "Server content",
      "link_home": "Home",
      "link_reload": "Reload current edition",
      "footnote": "Offline state is stored locally through the browser Cache Storage and Service Worker APIs.",
      "detected_label": "Detected",
      "scope_heading": "Scope",
      "api_label": "APIs"
    },
    "verify_intro": {
      "panel_label": "Current edition",
      "edition": "Edition",
      "signing_key": "Signing key",
      "manifest": "Signed manifest",
      "signature": "Detached signature",
      "public_key": "Public key",
      "archive": "Edition archive"
    },
    "verify_locally": {
      "page_title": "Verify locally",
      "body_intro": "Detached verification notes for the signed integrity manifest. Run the check in a temporary keyring so the public signing key does not enter your default keychain.",
      "body_close": "The command imports the public key into a throw-away keyring, verifies the signed manifest, and removes the working files. No state is retained on the machine afterwards.",
      "back": "← Integrity"
    },
    "source_reader": {
      "title": "Source reader",
      "loading": "Loading source…",
      "action": {
        "canonical": "Canonical",
        "verify": "Verify",
        "plain_text": "Raw",
        "copy_code": "Copy code",
        "wrap_lines": "Wrap lines",
        "unwrap_lines": "Unwrap lines",
        "back_to_top": "Top",
        "copied": "Copied",
        "view_source": "Source",
        "view_annotated": "Annotated",
        "view_rendered_page": "View rendered page",
        "reading_mode": "Reading mode",
        "top": "Top"
      },
      "meta": {
        "validated": "Validated",
        "part_of": "Related systems:",
        "document_map": "Document map",
        "end_of_source": "End of source mirror",
        "intent": "This reader presents public source mirrors with structural annotations and signed publication references."
      },
      "integrity": {
        "canonical": "Canonical file",
        "edition": "Edition",
        "sha256": "SHA-256",
        "signed_release": "Signed release"
      },
      "map_label": {
        "head": "Head",
        "identity": "Identity",
        "discovery": "Discovery",
        "social_preview": "Social preview",
        "assets": "Assets",
        "structured_data": "Structured data",
        "header": "Header",
        "main": "Main",
        "footer": "Footer",
        "tokens": "Tokens",
        "fonts": "Fonts",
        "base": "Base",
        "layout": "Layout",
        "components": "Components",
        "responsive": "Responsive",
        "print": "Print",
        "state": "State",
        "i18n": "i18n",
        "events": "Events",
        "modals": "Modals",
        "copy": "Copy",
        "verification": "Verification",
        "init": "Init",
        "policy": "Policy",
        "records": "Records"
      },
      "mode": {
        "label": "Reading mode",
        "source": "Source",
        "annotated": "Annotated",
        "raw": "Raw"
      },
      "end": {
        "title": "End of source mirror",
        "edition": "Edition",
        "sha256": "SHA-256",
        "signed_release": "Signed release"
      },
      "kind": {
        "html": "HyperText Markup Language",
        "css": "Cascading Style Sheets",
        "js": "JavaScript",
        "json": "JavaScript Object Notation",
        "xml": "Extensible Markup Language",
        "text": "Plain text",
        "apache": "Apache configuration",
        "sig": "Detached PGP signature",
        "asc": "ASCII-armoured PGP key"
      },
      "gloss": {
        "foundations": "character encoding, viewport, colour scheme.",
        "head": "document head — metadata, no rendered content.",
        "identity": "authorship, application name, attribution links.",
        "document": "page title, description, canonical url.",
        "discovery": "indexing and referrer policy.",
        "social": "open graph and twitter card metadata.",
        "assets": "stylesheets, scripts, icons, manifest.",
        "icons": "platform icons and home-screen artwork.",
        "structured": "json-ld schema, machine-readable identity.",
        "header": "site header — wordmark and primary nav.",
        "footer": "colophon, language switch, footer actions.",
        "script": "site application logic.",
        "tokens": "design tokens — colours, typography, spacing.",
        "fonts": "font face declarations and font assets.",
        "base": "reset and base element typography.",
        "layout": "page-level layout grammar.",
        "components": "reusable component styles.",
        "responsive": "viewport-aware overrides.",
        "print": "print stylesheet rules.",
        "state": "application state and runtime variables.",
        "i18n": "translation lookup and language switching.",
        "events": "event listeners and interaction wiring.",
        "modals": "overlay surfaces, dialogs, focus traps.",
        "copy": "clipboard interactions.",
        "verification": "signed-manifest and cryptographic references.",
        "records": "editorial record entries.",
        "init": "boot sequence — runs once on load.",
        "policy": "declared site policies."
      }
    }
  },
  "fr": {
    "meta": {
      "home": {
        "title": "Stratégie Client & Systèmes de Croissance · Trent Power",
        "description": "Stratégie client, systèmes de croissance et adoption culturelle à l’échelle mondiale",
        "og_title": "Stratégie Client & Systèmes de Croissance · Trent Power",
        "og_description": "Stratégie client, systèmes de croissance et adoption culturelle à l’échelle mondiale"
      },
      "privacy": {
        "title": "Confidentialité & confiance · Trent Power",
        "description": "Un site simple et respectueux de la vie privée : ni tracking, ni analyses, ni cookies, ni profilage, ni services tiers"
      },
      "integrity": {
        "title": "Intégrité · Trent Power",
        "description": "Éditions publiques signées, manifeste d’intégrité, signature détachée et clé publique"
      },
      "releases": {
        "title": "Éditions · Trent Power",
        "description": "Instantanés signés et figés du site public"
      },
      "security": {
        "title": "Sécurité & modèle de menace · Trent Power",
        "description": "Architecture de sécurité, contrôles opérationnels, surfaces publiques de vérification et risques résiduels"
      },
      "acknowledgments": {
        "title": "Remerciements de sécurité · Trent Power",
        "description": "Divulgations de sécurité responsables vérifiées et résolues pour trentpower.fr."
      },
      "maintenance": {
        "title": "En maintenance · Trent Power",
        "description": "En maintenance."
      },
      "404": {
        "title": "Page introuvable · Trent Power",
        "description": "Page introuvable."
      },
      "500": {
        "title": "Une erreur est survenue · Trent Power",
        "description": "Une erreur s’est produite."
      },
      "verify": {
        "title": "Vérifier cette page · Trent Power",
        "description": "Document public présentant l’URL canonique, le miroir source, l’empreinte et l’archive d’édition signée"
      },
      "source": {
        "title": "Miroirs source · Trent Power",
        "description": "Miroirs publics lisibles d’une sélection de fichiers du site"
      },
      "403": {
        "title": "Accès refusé · Trent Power",
        "description": "Accès non autorisé."
      },
      "verify_locally": {
        "title": "Vérifier localement · Trent Power",
        "description": "Notes de vérification détachées : contrôle du manifeste signé depuis un trousseau temporaire"
      }
    },
    "hero": {
      "statement": "Stratégie client, systèmes de croissance et adoption culturelle à l’échelle mondiale.",
      "body": "Je pilote la stratégie client au niveau du Groupe, en me concentrant sur les systèmes, la gouvernance et les façons de travailler qui transforment les relations clients en valeur à long terme. Mon travail se situe à l’intersection de la stratégie, de la technologie et des relations humaines, avec un impact qui se déploie à grande échelle et dans la durée."
    },
    "approach": {
      "label": "Approche",
      "growth_title": "La croissance client exige une discipline",
      "growth_body": "Une croissance durable repose sur des systèmes solides.",
      "clienteling_title": "Le clienteling transforme la mémoire en sens",
      "clienteling_detail": "Le <dfn id=\"clienteling-definition\">clienteling</dfn> est une discipline. La pratique de transformer ce qu'un Conseiller Client sait en quelque chose qu'un Client ressent véritablement : reconnu, mémorisé, servi avec intention. Dès qu'il devient mécanique, il cesse d'être du clienteling.",
      "adoption_title": "L’adoption compte plus que les outils",
      "adoption_body": "Une stratégie ou une technologie ne crée de la valeur que lorsque les équipes lui font confiance et choisissent de l’utiliser. La confiance se mérite, l’utilité se démontre. Les équipes sont des clients de première ligne et des collaborateurs essentiels.",
      "ai_title": "L’IA doit amplifier les relations humaines",
      "ai_body": "L’authenticité est un avantage humain, elle ne peut pas être automatisée. La confiance, l’empathie et le jugement se construisent dans l’instant, à travers le ton, la présence et la responsabilité réelle. J’utilise l’IA pour réduire les frictions et affiner le contexte, afin que chacun puisse être plus humain, plus pertinent et plus cohérent à grande échelle.",
      "governance_title": "La gouvernance crée de l’élan",
      "governance_body": "Des responsabilités claires, une cadence régulière et des priorités disciplinées créent l’alignement, accélèrent les décisions et permettent le passage à l’échelle.",
      "taste_title": "Le goût est un avantage stratégique",
      "taste_body": "Le jugement, le discernement et la conscience culturelle façonnent de meilleures décisions et une exécution plus précise."
    },
    "trajectory": {
      "label": "Parcours",
      "current_label": "Actuel",
      "current_title": "Directeur Groupe, Développement Client & Relations Clients",
      "current_org": "<abbr title=\"Louis Vuitton Moët Hennessy\">LVMH</abbr>",
      "current_detail": "Stratégie client à l’échelle du Groupe, à travers Maisons et marchés",
      "current_span": "2023 — aujourd’hui",
      "previous_label": "Précédent",
      "previous_title": "Responsable Groupe Clienteling",
      "previous_org": "<abbr title=\"Louis Vuitton Moët Hennessy\">LVMH</abbr>",
      "previous_detail": "Mondial",
      "previous_span": "2017 — 2023",
      "maisons_label": "Maisons",
      "maisons_title": "Direction senior en Clienteling, <abbr title=\"Customer Relationship Management\">CRM</abbr> & Retail",
      "maisons_org": "BVLGARI",
      "maisons_detail": "Australie & Chine",
      "maisons_span": "2004 — 2017",
      "background_label": "Parcours initial",
      "background_title": "Numérique & entrepreneurial",
      "background_detail": "Construire des plateformes et des communautés en ligne",
      "background_span": "1997 — 2004",
      "education_label": "Formation",
      "education_detail": "Université de Sydney, Master\nAnglais, Français\nCertifications exécutives et de leadership sélectionnées"
    },
    "projects": {
      "label": "Projets",
      "paris_desc": "Un système privé d’intelligence culturelle pour Paris, combinant localisation, effort, jugement éditorial et goût personnel pour décider plus calmement ce qui mérite une sortie.",
      "paris_subline": "Une expérimentation personnelle autour des systèmes de goût, de la pertinence locale et de la recommandation à échelle humaine.",
      "paris_preview_header": "Cette semaine près de Jourdain, 20e",
      "paris_preview_caption": "Un échantillon de sélections d'intelligence culturelle, une semaine, un quartier.",
      "paris_cta": "Voir le projet",
      "tier_walk": "à pied",
      "tier_metro": "métro",
      "tier_bike": "vélo"
    },
    "contact": {
      "label": "Contact",
      "email_aria": "Écrire à Trent Power"
    },
    "footer": {
      "privacy": "Confidentialité",
      "lang_toggle": "IT"
    },
    "modal": {
      "text": "C’est un projet personnel. Si vous souhaitez y accéder, je serais heureux de vous en donner l’accès.",
      "cta_aria": "Demander l’accès par e-mail",
      "close": "Fermer",
      "cta_label": "Sur demande"
    },
    "cite": {
      "hover": "Copier la citation",
      "copied": "Copié",
      "site_label": "Site personnel",
      "edition_label": "Édition",
      "label": {
        "action": "Citer et vérifier"
      },
      "overlay": {
        "kicker": "Cette page",
        "lede": "Référence canonique de publication signée.",
        "action": {
          "copy_citation": "Copier la citation",
          "verify": "Vérifier cette page",
          "print_home": "Imprimer le profil",
          "print_sheet": "Imprimer cette fiche",
          "print_page": "Imprimer la page",
          "close": "Fermer",
          "open_source": "Voir la source"
        },
        "page_title": {
          "home": "Stratégie Client & Systèmes de Croissance",
          "privacy": "Confidentialité",
          "security": "Sécurité",
          "integrity": "Intégrité",
          "verify": "Vérification",
          "source": "Source",
          "source-reader": "Lecteur source",
          "acknowledgments": "Remerciements de sécurité",
          "integrity-verify-locally": "Vérifier localement",
          "releases": "Éditions",
          "release-archive": "Édition 2026-05-09",
          "forbidden": "Accès non disponible",
          "not-found": "Page introuvable",
          "server-error": "Erreur serveur temporaire",
          "maintenance": "Maintenance en cours",
          "sw-reset": "Réinitialisation du service worker"
        },
        "toast": {
          "citation_copied": "Citation copiée"
        },
        "edition_label": "Édition",
        "release_status": "Édition signée"
      }
    },
    "privacy": {
      "page_title": "Confidentialité & confiance",
      "body_intro": "Ce site est intentionnellement simple et respectueux de la vie privée.",
      "body_detail": "Il n’utilise ni traçage, ni analytique, ni cookies, ni profilage, ni services tiers. Aucune donnée personnelle n’est collectée à des fins d’analytique, de publicité ou de profilage lorsque vous parcourez le site. Toute donnée technique limitée traitée par le serveur sert uniquement à assurer la sécurité et le bon fonctionnement du site.",
      "local_storage": "Le seul stockage navigateur utilisé est la préférence de langue locale. Elle reste sur l’appareil du visiteur et n’est jamais transmise par le site.",
      "back": "← Accueil",
      "print": {
        "kicker": "Confidentialité & confiance",
        "title": "La confidentialité, par conception",
        "lede": "Ce site est volontairement simple et respectueux de la vie privée. Aucun suivi, aucune analytique, aucun cookie, aucun profilage, aucun service tiers.",
        "meta": "Édition 2026-05-09 · trentpower.fr/privacy/",
        "card": {
          "01": {
            "label": "01 Aucun suivi",
            "title": "Aucun suivi",
            "body": "Aucune analytique. Aucun cookie. Aucun profilage. Aucun script tiers."
          },
          "02": {
            "label": "02 Aucune collecte",
            "title": "Aucune collecte de données",
            "body": "Aucun formulaire public. Aucun compte visiteur. Aucun suivi comportemental. Aucune infrastructure publicitaire."
          },
          "03": {
            "label": "03 Voie de vérification",
            "title": "Voie de vérification",
            "body": "Page Intégrité. Page Sécurité. Manifeste public. Vue source."
          },
          "04": {
            "label": "04 Principe de conception",
            "title": "La privacy comme posture",
            "body": "La confidentialité n’est pas une couche de conformité. Elle fait partie de la posture éditoriale et professionnelle du site."
          },
          "05": {
            "label": "05 Ce que vous pouvez vérifier",
            "title": "Ce que vous pouvez vérifier",
            "body": "Voir la source. Lire /integrity.json. Vérifier la signature. Inspecter les en-têtes de sécurité."
          },
          "06": {
            "label": "06 Contact",
            "title": "Contact",
            "body": "trent@trentpower.fr · route canonique trentpower.fr/privacy/"
          }
        },
        "footer": {
          "proof": "Privé · Statique · Signé · Sans suivi",
          "edition": "Édition 2026-05-09 · trentpower.fr/privacy/"
        },
        "qr": {
          "label": "trentpower.fr/privacy/"
        },
        "doc_title": "Trent Power - Profil de confidentialité"
      },
      "body_records": "Les fiches publiques d’inspection et de vérification sont publiées séparément."
    },
    "integrity": {
      "page_title": "Intégrité",
      "body_intro": "Ce site publie des éditions signées afin que les fichiers publics puissent être vérifiés au moyen d’un <dfn id=\"integrity-manifest\">manifeste</dfn>, d’une <dfn id=\"detached-signature\">signature détachée</dfn> et d’une clé publique.",
      "last_reviewed": "Dernière révision : <time datetime=\"2026-05-09\">9 mai 2026</time>",
      "file_integrity": "/integrity.json · hachages SHA-256 de tous les fichiers publics",
      "file_sig": "/integrity.json.sig · signature PGP détachée",
      "file_key": "/.well-known/pgp-key.asc · clé de signature publique",
      "history_heading": "Historique",
      "history_body": "Les instantanés signés sont conservés pour référence.",
      "history_link": "Voir les éditions archivées",
      "copy_button": "Copier",
      "copy_button_done": "Copié",
      "back": "← Confidentialité",
      "fingerprint_copy": "Copier l’empreinte",
      "fingerprint_copied": "Copiée",
      "print": {
        "kicker": "Intégrité",
        "title": "Vérification publique signée",
        "lede": "Les fichiers publiés sont listés dans un manifeste public et signés par une signature PGP détachée afin que toute mise à jour puisse être vérifiée de manière indépendante.",
        "meta": "Édition 2026-05-09 · trentpower.fr/integrity/",
        "card": {
          "01": {
            "label": "01 Manifeste",
            "title": "Manifeste",
            "body": "/integrity.json — empreintes <abbr title=\"Secure Hash Algorithm, 256-bit\">SHA-256</abbr> de chaque fichier public intentionnel."
          },
          "02": {
            "label": "02 Signature",
            "title": "Signature détachée",
            "body": "/integrity.json.sig — signature PGP détachée qui certifie le manifeste."
          },
          "03": {
            "label": "03 Clé publique",
            "title": "Clé publique",
            "body": "/.well-known/pgp-key.asc — empreinte A729 591B 450D 3F59 3694 98BD 8299 1F25 04AE 0263."
          },
          "04": {
            "label": "04 Versions",
            "title": "Versions figées",
            "body": "/integrity/releases/ — instantanés publics : février 2026 et mai 2026."
          },
          "05": {
            "label": "05 Voie source",
            "title": "Voie source",
            "body": "/source/ — vue texte publique de fichiers sources sélectionnés. Aucun secret, aucun artefact privé."
          },
          "06": {
            "label": "06 Vérification",
            "title": "Vérification",
            "body": "curl -O trentpower.fr/integrity.json && curl -O trentpower.fr/integrity.json.sig && gpg --verify integrity.json.sig integrity.json"
          }
        },
        "footer": {
          "proof": "Privé · Statique · Signé · Sans suivi",
          "edition": "Édition 2026-05-09 · trentpower.fr/integrity/"
        },
        "qr": {
          "label": "trentpower.fr/integrity/"
        },
        "doc_title": "Trent Power - Certificat d’intégrité"
      },
      "page_level_verify_note": "Pour les fiches au niveau de la page, utilisez <a href=\"/verify/\">Vérifier</a>. Pour les commandes de vérification locale du manifeste, voir <a href=\"/integrity/verify-locally/\">Vérifier localement</a>.",
      "release_verify_note": "Les archives d’édition sont vérifiées par une liste de sommes de contrôle signée et des signatures détachées. Le site public en direct est vérifié par /integrity.json.",
      "record": {
        "kicker": "Édition signée",
        "title": "<time datetime=\"2026-05\">Mai 2026</time>",
        "status_short": "Manifeste · Signature · Clé publique",
        "label": {
          "manifest": "Manifeste",
          "signature": "Signature",
          "public_key": "Clé publique",
          "archives": "Archives",
          "checksums": "Sommes de contrôle",
          "fingerprint": "Empreinte"
        },
        "desc": {
          "manifest": "Empreintes <abbr title=\"Secure Hash Algorithm, 256-bit\">SHA-256</abbr> des fichiers publics",
          "signature": "Signature <abbr title=\"Pretty Good Privacy\">PGP</abbr> détachée",
          "public_key": "Clé publique de signature",
          "archives": "Édition publique signée des sources",
          "checksums": "Liste de sommes de contrôle signée pour les archives"
        },
        "action": {
          "view_manifest": "Voir le manifeste",
          "view_releases": "Voir les éditions"
        }
      },
      "verify_release_local": {
        "summary": "Vérification locale avancée",
        "note": "Exécute la vérification du manifeste signé dans un trousseau temporaire."
      },
      "related": {
        "label": "Documents liés",
        "verify_page": "Vérifier une page",
        "source_mirrors": "Miroirs source",
        "archived_editions": "Éditions archivées"
      }
    },
    "releases": {
      "page_title": "Versions",
      "body_intro": "Chaque <dfn id=\"signed-release\">édition</dfn> est un instantané figé et signé du site public au moment de la publication. Les archives sources peuvent être téléchargées, et des sommes de contrôle et signatures sont fournies pour la vérification locale.",
      "editions_heading": "Éditions",
      "group": {
        "current": "Édition actuelle",
        "archive": "Archives"
      },
      "view_release": "Voir l’édition",
      "download_checksums_sig": "Sommes de contrôle & signature",
      "aria": {
        "actions_current": "Téléchargements et vérification de l’édition actuelle",
        "actions_archive": "Fiche d’édition"
      },
      "detail": {
        "page_title": "Mai 2026",
        "intro": "Archives d’édition signées pour l’édition du 9 mai 2026. Une liste de sommes de contrôle signée vérifie l’ensemble des archives ; les sommes de contrôle vérifient les fichiers téléchargés ; des signatures détachées vérifient directement chaque archive. Le manifeste signé publié à /integrity.json reste l’autorité du site en direct.",
        "card": {
          "kicker": "Fichiers d’édition",
          "title": "9 mai 2026",
          "status": "ZIP · TAR.GZ · Sommes de contrôle · Signatures",
          "label": {
            "zip": "ZIP",
            "zip_sig": "Signature ZIP",
            "zip_sha": "Somme ZIP",
            "targz": "TAR.GZ",
            "targz_sig": "Signature TAR.GZ",
            "targz_sha": "Somme TAR.GZ",
            "sums": "Liste de sommes de contrôle",
            "sums_sig": "Signature de la liste"
          },
          "desc": {
            "zip": "Instantané portable de la source publique",
            "sig": "Signature PGP détachée",
            "sha": "Somme de contrôle SHA-256",
            "targz": "Archive technique de préservation",
            "sums": "Liste SHA-256 des archives de l’édition",
            "sums_sig": "Signature PGP détachée sur SHA256SUMS"
          }
        },
        "note": "Les fichiers d’archive ne sont pas inclus dans /integrity.json afin d’éviter un hachage récursif. Ils sont vérifiés séparément au moyen de la liste de sommes de contrôle signée, des sommes de contrôle SHA-256 individuelles et de signatures détachées. <a href=\"/integrity/\">Intégrité</a> reste l’autorité du site en direct.",
        "related": {
          "label": "Documents liés",
          "integrity": "Intégrité",
          "all_releases": "Toutes les éditions",
          "source": "Source",
          "verify": "Vérifier"
        },
        "back": "← Versions"
      },
      "edition_feb": "Février 2026 · première version signée",
      "back": "← Intégrité",
      "edition_feb_date": "Février 2026",
      "edition_feb_desc": "<cite>Première édition signée</cite>",
      "print": {
        "kicker": "Versions",
        "title": "Éditions publiques figées",
        "lede": "Les instantanés de versions publiques préservent des éditions choisies du site avec des ressources locales afin que leur conception et leur intégrité puissent être inspectées dans le temps.",
        "meta": "Édition 2026-05-09 · trentpower.fr/integrity/releases/",
        "doc_title": "Trent Power - Archive des versions",
        "card": {
          "01": {
            "label": "01 Mai 2026",
            "title": "Mai 2026",
            "body": "Édition finale Signifier, Söhne, Söhne Mono. Noms de fichiers actifs propres. Profil imprimé d’une page. Fiches de confiance."
          },
          "02": {
            "label": "02 Février 2026",
            "title": "Février 2026",
            "body": "Première version signée. Système visuel antérieur. Préservée comme archive historique."
          },
          "03": {
            "label": "03 Principe d’archive",
            "title": "Principe d’archive",
            "body": "Ressources figées. CSS et polices locales. Aucune dépendance de style mutable en direct."
          },
          "04": {
            "label": "04 Voie d’intégrité",
            "title": "Voie d’intégrité",
            "body": "/integrity.json · /integrity.json.sig · /.well-known/pgp-key.asc"
          },
          "05": {
            "label": "05 Pourquoi",
            "title": "Pourquoi",
            "body": "Vérifiabilité. Auteur. Continuité. Confiance publique."
          },
          "06": {
            "label": "06 Où inspecter",
            "title": "Où inspecter",
            "body": "/integrity/releases/2026-05-08/ · /integrity/releases/2026-02/ · /source/"
          }
        },
        "footer": {
          "proof": "Privé · Statique · Signé · Sans suivi",
          "edition": "Édition 2026-05-09 · trentpower.fr/integrity/releases/"
        },
        "qr": {
          "label": "trentpower.fr/integrity/releases/"
        }
      },
      "edition_feb_meta": "Instantané signé · Édition initiale",
      "edition_may09_date": "9 mai 2026",
      "edition_may09_desc": "<cite>Édition finale de mai</cite>",
      "edition_may09_meta": "Instantané signé · Édition actuelle",
      "download_zip": "Télécharger ZIP",
      "download_targz": "Télécharger TAR.GZ",
      "related": {
        "label": "Documents liés",
        "verify_page": "Vérifier une page",
        "integrity_manifest": "Manifeste d'intégrité",
        "source_mirrors": "Miroirs source"
      }
    },
    "security": {
      "page_title": "Sécurité & modèle de menace",
      "body_intro": "Comment trentpower.fr est hébergé, protégé et publiquement vérifiable.",
      "body_detail": "Cette page décrit la posture de sécurité du site public, son modèle d'exploitation, ses surfaces de vérification et ses risques résiduels.",
      "s1_summary": "1. Architecture",
      "s2_summary": "2. Actifs protégés",
      "s2_body": "Les contrôles décrits ici protègent :",
      "s2_list": "La propriété du domaine\nL’intégrité DNS\nL’intégrité du compte d’hébergement\nL’intégrité du contenu public\nLa clé de signature utilisée pour l’authenticité des versions",
      "s3_summary": "3. Modèle de menace",
      "s3_infra_heading": "Compromission de l’infrastructure",
      "s3_infra_list": "Prise de contrôle du compte registrar\nDétournement <abbr title=\"Domain Name System\">DNS</abbr>\nCompromission des identifiants d’hébergement",
      "s3_content_heading": "Altération du contenu",
      "s3_content_list": "Modification de fichiers après déploiement\nInjection de JavaScript malveillant\nAltération silencieuse des ressources statiques",
      "s3_admin_heading": "Abus administratif",
      "s3_admin_list": "Credential stuffing\nAnalyse automatisée des vulnérabilités",
      "s3_noise_heading": "Bruit internet courant",
      "s3_noise_body": "Sondage automatisé continu pour les chemins <abbr title=\"Content Management System\">CMS</abbr> courants, les fichiers de configuration ou les points d’entrée connus. Ces éléments sont traités comme des conditions de fond persistantes plutôt que comme des événements exceptionnels.",
      "s4_summary": "4. Contrôles",
      "s4_registrar_heading": "Registrar &amp; <abbr title=\"Domain Name System\">DNS</abbr>",
      "s4_registrar_list": "<abbr title=\"Multi-Factor Authentication\">MFA</abbr> activée\nVerrouillage du registrar actif\n<abbr title=\"Domain Name System Security Extensions\">DNSSEC</abbr> activé et validé\nEnregistrements <abbr title=\"Certificate Authority Authorization\">CAA</abbr> restreignant l’émission de certificats",
      "s4_hosting_heading": "Hébergement",
      "s4_hosting_list": "Authentification multi-facteurs activée\nDéploiement <abbr title=\"Secure File Transfer Protocol\">SFTP</abbr> uniquement\nAucune exposition <abbr title=\"Secure Shell\">SSH</abbr> shell\nAucune exécution en arrière-plan planifiée",
      "s4_content_heading": "Contenu public",
      "s4_content_list": "Architecture statique réduisant la surface d’attaque côté serveur\n<abbr title=\"Content Security Policy\">CSP</abbr> stricte démarrant par <code>default-src 'none'</code>\nAucun chargement de ressource externe\nAucune exécution de script dynamique",
      "s4_monitoring_heading": "Surveillance",
      "s4_monitoring_list": "Analyse structurée des journaux\nDétection de patterns et scoring des anomalies\nDétection de dérive d’intégrité des fichiers par rapport à la base de référence signée",
      "s6_summary": "6. Risque résiduel",
      "s6_protect_summary": "Ce modèle protège le site statique public. Il ne protège pas contre la compromission du bureau d’enregistrement, de l’hébergement, des appareils clients ou de la clé privée.",
      "s6_intro": "Ce modèle ne tente pas de traiter :",
      "s6_list": "Compromission physique de l’infrastructure d’hébergement\nCompromission de la racine <abbr title=\"Domain Name System\">DNS</abbr> mondiale\nCompromission d’une autorité de certification (<abbr title=\"Certificate Authority\">CA</abbr>)\nAdversaires étatiques\nExploits navigateur zero-day sur les appareils clients",
      "s6_footer": "Les risques principaux restent la compromission du domaine, du <abbr title=\"Domain Name System\">DNS</abbr>, de l'hébergement et de la clé de signature privée.",
      "s7_summary": "7. Divulgation",
      "s7_body": "La divulgation responsable est la bienvenue. Les coordonnées de sécurité et les instructions de communication chiffrée sont publiées sur <a href=\"/.well-known/security.txt\"><code>/.well-known/security.txt</code></a>.",
      "s8_summary": "8. Principes de conception",
      "s8_list": "Simplicité plutôt que complexité\nComportement déterministe plutôt que systèmes dynamiques\nTransparence plutôt qu’obscurité\nIntégrité vérifiable plutôt qu’hypothèses de confiance",
      "back": "← Confidentialité",
      "print": {
        "kicker": "Sécurité & modèle de menace",
        "title": "Statique, auto-géré, axé sur la vérification",
        "lede": "Le site public est composé de HTML, CSS et JavaScript natif, avec des en-têtes stricts, aucune logique serveur à l’exécution, aucune base de données publique et aucun script tiers.",
        "meta": "Édition 2026-05-09 · trentpower.fr/security/",
        "card": {
          "01": {
            "label": "01 Architecture",
            "title": "Architecture",
            "body": "HTML, CSS, JavaScript natif. Déploiement auto-géré sur Apache (Gandi, Paris). Aucune base de données publique."
          },
          "02": {
            "label": "02 En-têtes",
            "title": "En-têtes de sécurité",
            "body": "<abbr title=\"Content Security Policy\">CSP</abbr> par défaut deny. <abbr title=\"HTTP Strict Transport Security\">HSTS</abbr>. <abbr title=\"Cross-Origin Opener Policy\">COOP</abbr> / <abbr title=\"Cross-Origin Embedder Policy\">COEP</abbr> / <abbr title=\"Cross-Origin Resource Policy\">CORP</abbr>. Referrer-Policy no-referrer. Permissions-Policy verrouillée."
          },
          "03": {
            "label": "03 Actifs protégés",
            "title": "Actifs protégés",
            "body": "Identité. Contenu publié. Fichiers de vérification publics. Intégrité du code source."
          },
          "04": {
            "label": "04 Modèle de menaces",
            "title": "Modèle de menaces",
            "body": "Injection de contenu. Compromission des identifiants d’hébergement. Usurpation d’identité. Fichiers obsolètes ou altérés."
          },
          "05": {
            "label": "05 Contrôles",
            "title": "Contrôles",
            "body": "Aucun script tiers. Aucun formulaire public. Manifeste d’intégrité signé. Exposition de fichiers restreinte. Cache piloté par service worker."
          },
          "06": {
            "label": "06 Risque résiduel",
            "title": "Risque résiduel",
            "body": "Le risque hébergeur et registrar demeure. L’exposition d’un site statique est réduite, pas éliminée. Voie de divulgation responsable publiée."
          }
        },
        "footer": {
          "proof": "Privé · Statique · Signé · Sans suivi",
          "edition": "Édition 2026-05-09 · trentpower.fr/security/"
        },
        "qr": {
          "label": "trentpower.fr/security/"
        },
        "doc_title": "Trent Power - Profil sécurité"
      },
      "public_verification_summary": "5. Surface de vérification publique",
      "public_verification_intro": "Le site expose des routes d'inspection publique pour que le contenu publié puisse être contrôlé sans accès à l'infrastructure privée.",
      "public_verification_list": "<code>/integrity/</code> recense les éditions signées, la clé publique et le manifeste\n<code>/verify/</code> recense l'<abbr title=\"Uniform Resource Locator\">URL</abbr> canonique d'une page, son miroir source et son empreinte\n<code>/source/</code> publie les miroirs lisibles d'une sélection de fichiers publics\n<code>/integrity/releases/</code> conserve les instantanés signés et figés",
      "public_verification_footer": "Ces routes facilitent l'inspection et la provenance. Elles ne suppriment pas la nécessité de protéger le <abbr title=\"Domain Name System\">DNS</abbr>, les identifiants d'hébergement et la clé privée de signature.",
      "s1_routes_note": "Les routes d'inspection publiques exposent le manifeste signé, les enregistrements de page, les miroirs source lisibles et les éditions archivées sans exposer l'infrastructure privée.",
      "architecture_card": {
        "kicker": "Architecture",
        "browser_label": "Navigateur",
        "browser_body": "<abbr title=\"HyperText Transfer Protocol Secure\">HTTPS</abbr> · ni cookies ni analyses",
        "host_label": "Hébergement statique",
        "host_body": "Apache · Gandi · Paris · déploiement <abbr title=\"Secure File Transfer Protocol\">SFTP</abbr>",
        "files_label": "Fichiers du site",
        "files_body": "<abbr title=\"HyperText Markup Language\">HTML</abbr> · <abbr title=\"Cascading Style Sheets\">CSS</abbr> · JavaScript natif · polices auto-hébergées",
        "cache_label": "Cache hors-ligne",
        "cache_body": "Service worker · cache local dès la première visite",
        "trust_label": "Confiance",
        "trust_body": "Intégrité · Vérification · Source · Éditions",
        "archive_label": "Archive",
        "archive_body": "Instantanés signés et figés"
      },
      "related": {
        "label": "Documents liés",
        "verify_page": "Vérifier une page",
        "integrity_manifest": "Manifeste d'intégrité",
        "source_mirrors": "Miroirs source",
        "privacy": "Confidentialité"
      }
    },
    "acknowledgments": {
      "page_title": "Mentions de sécurité",
      "body_intro": "Cette page recense les divulgations de sécurité responsables qui ont été vérifiées et résolues.",
      "none": "Il n’y a pas de mentions pour le moment. Cela reflète l’absence de divulgations signalables à ce jour, et non l’absence de révision ou de maintenance.",
      "report": "Si vous pensez avoir trouvé un problème de sécurité sur ce site, veuillez le signaler de manière responsable. Les coordonnées et les préférences de divulgation sont indiquées dans security.txt.",
      "integrity_link": "Déclaration d’intégrité du site",
      "back": "← Accueil"
    },
    "maintenance": {
      "page_title": "En maintenance",
      "body": "Le manifeste signé, les miroirs source et les archives de versions restent accessibles pendant la maintenance. La vérification reste opérationnelle.",
      "kicker": "Maintenance",
      "title": "En maintenance",
      "lede": "Des travaux sont en cours. Revenez dans quelques instants ou retournez à la page d'accueil."
    },
    "error_404": {
      "page_title": "Page introuvable",
      "body": "La page que vous recherchez n’existe pas ou a été déplacée.",
      "back": "← Accueil"
    },
    "error_500": {
      "page_title": "Une erreur s’est produite",
      "body": "Le serveur a rencontré une erreur. Réessayez dans quelques instants ou retournez à la page d’accueil.",
      "back": "← Accueil"
    },
    "home": {
      "trust_privacy": "confidentialité d’abord",
      "trust_signed": "versions signées",
      "trust_short_privacy": "privé",
      "trust_short_signed": "signé",
      "trust_short_static": "statique",
      "trust_static": "statique",
      "trust_no_tracking": "sans suivi"
    },
    "print": {
      "kicker": "trentpower.fr",
      "name": "Trent Power",
      "role": "Stratégie client, systèmes de croissance et adoption culturelle",
      "contact": {
        "linkedin": "LinkedIn · Trent Power"
      },
      "title": "Stratégie client, systèmes de croissance et adoption culturelle à l’échelle mondiale",
      "body": "Je dirige la stratégie client au niveau Groupe, en me concentrant sur les systèmes, la gouvernance et les méthodes de travail qui transforment les relations clients en valeur durable. Mon travail se situe à l’intersection de la stratégie, de la technologie et des relations humaines, avec un impact qui passe à l’échelle et qui dure.",
      "focus": {
        "01": {
          "label": "01 Focus",
          "title": "La croissance client exige une discipline",
          "body": "Une croissance durable repose sur des systèmes solides."
        },
        "02": {
          "label": "02 Adoption",
          "title": "L’adoption compte plus que les outils",
          "body": "La technologie crée de la valeur quand les équipes lui font confiance, la choisissent et l’utilisent."
        },
        "03": {
          "label": "03 Relations humaines",
          "title": "L’IA doit amplifier les relations humaines",
          "body": "L’authenticité reste un avantage humain ; l’automatisation doit renforcer le contexte, la mémoire et l’attention."
        },
        "04": {
          "label": "04 Gouvernance",
          "title": "La gouvernance crée de l’élan",
          "body": "Un cadre de responsabilité clair et des priorités disciplinées créent l’alignement et l’échelle."
        }
      },
      "trajectory": {
        "label": "Parcours",
        "current": {
          "label": "Actuel",
          "body": "Directeur Groupe, Développement Client & Relations Clients · LVMH"
        },
        "previous": {
          "label": "Précédent",
          "body": "Direction senior en Clienteling, CRM et Développement Client"
        },
        "background": {
          "label": "Parcours initial",
          "body": "Travaux digitaux et entrepreneuriaux fondateurs : plateformes et communautés en ligne"
        },
        "education": {
          "label": "Formation",
          "body": "Université de Sydney · Master · Anglais, Français · Formation executive"
        }
      },
      "project": {
        "label": "Point de preuve",
        "title": "What’s On in Paris",
        "body": "Un système privé d’intelligence culturelle pour Paris, combinant localisation, effort, jugement éditorial et goût personnel pour décider plus calmement de ce qui mérite que l’on sorte de chez soi.",
        "note": "Une expérimentation personnelle sur les systèmes de goût, la pertinence locale et la recommandation à échelle humaine."
      },
      "footer": {
        "proof": "Privé · Statique · Signé · Sans suivi",
        "edition": "Édition <time datetime=\"2026-05-09\">2026-05-09</time> · https://trentpower.fr/",
        "citation": "Trent Power. Site personnel. Paris, France.",
        "evidence": "Document public · HTML · Édition du 9 mai 2026"
      },
      "place": "Site personnel · Paris, France",
      "doc_title": "Trent Power - Profil exécutif stratégie client",
      "arch": {
        "caption": "Statique, respectueux de la vie privée, signé et inspectable",
        "browser": "Navigateur",
        "host": "Hébergement",
        "files": "Fichiers",
        "cache": "Cache",
        "trust": "Confiance",
        "archive": "Archive"
      }
    },
    "error": {
      "403": {
        "print": {
          "kicker": "403",
          "title": "Accès indisponible",
          "lede": "Ce chemin n’est pas accessible publiquement. Le site public n’expose que des fichiers et pages intentionnels.",
          "meta": "Édition 2026-05-09 · trentpower.fr",
          "doc_title": "Trent Power - Limite d’accès",
          "card": {
            "01": {
              "label": "01 Limite d’accès",
              "title": "Limite d’accès",
              "body": "Certains chemins sont intentionnellement indisponibles. Les fichiers privés, de sauvegarde et opérationnels sont bloqués."
            },
            "02": {
              "label": "02 Voies publiques",
              "title": "Voies publiques",
              "body": "Accueil. Confidentialité & confiance. Intégrité. Sécurité. Source."
            },
            "03": {
              "label": "03 Pourquoi",
              "title": "Pourquoi",
              "body": "Réduit l’exposition accidentelle. Maintient des fichiers publics intentionnels. Soutient la posture de confidentialité et de confiance."
            },
            "04": {
              "label": "04 Vérification",
              "title": "Vérification",
              "body": "Inspecter /integrity.json. Voir les fichiers sources sélectionnés. Consulter /.well-known/security.txt."
            },
            "05": {
              "label": "05 Posture statique",
              "title": "Posture statique",
              "body": "Aucune base de données publique. Aucun compte visiteur. Aucun formulaire. Sans suivi."
            },
            "06": {
              "label": "06 Contact",
              "title": "Contact",
              "body": "trent@trentpower.fr · divulgation responsable via /security/"
            }
          },
          "footer": {
            "proof": "Privé · Statique · Signé · Sans suivi",
            "edition": "Édition 2026-05-09 · trentpower.fr"
          },
          "qr": {
            "label": "trentpower.fr"
          }
        }
      },
      "404": {
        "print": {
          "kicker": "404",
          "title": "Page introuvable",
          "lede": "L’adresse a peut-être changé, ou la page ne fait plus partie du site public.",
          "meta": "Édition 2026-05-09 · trentpower.fr",
          "doc_title": "Trent Power - Page introuvable",
          "card": {
            "01": {
              "label": "01 Ce qui s’est passé",
              "title": "Ce qui s’est passé",
              "body": "L’adresse demandée ne correspond à aucune page publique. Le site reste accessible depuis l’accueil."
            },
            "02": {
              "label": "02 Où aller",
              "title": "Où aller",
              "body": "Accueil. Confidentialité & confiance. Intégrité. Sécurité."
            },
            "03": {
              "label": "03 Vérification",
              "title": "Vérification",
              "body": "Manifeste public. Vue source. Versions signées."
            },
            "04": {
              "label": "04 Si c’était attendu",
              "title": "Si attendu",
              "body": "Vérifier l’URL. Retirer les fragments obsolètes. Essayer la page d’accueil canonique."
            },
            "05": {
              "label": "05 Posture publique",
              "title": "Posture publique",
              "body": "Site statique. Sans suivi. Sans formulaire. Sans script tiers."
            },
            "06": {
              "label": "06 Contact",
              "title": "Contact",
              "body": "trent@trentpower.fr · LinkedIn · Trent Power"
            }
          },
          "footer": {
            "proof": "Privé · Statique · Signé · Sans suivi",
            "edition": "Édition 2026-05-09 · trentpower.fr"
          },
          "qr": {
            "label": "trentpower.fr"
          }
        }
      },
      "500": {
        "print": {
          "kicker": "500",
          "title": "Erreur serveur temporaire",
          "lede": "Un événement inattendu est survenu lors du chargement de cette page. Le site public étant statique, il s’agit probablement d’un incident d’hébergement ou de routage plutôt que d’une défaillance applicative.",
          "meta": "Édition 2026-05-09 · trentpower.fr",
          "doc_title": "Trent Power - Erreur serveur temporaire",
          "card": {
            "01": {
              "label": "01 Ce qui s’est passé",
              "title": "Ce qui s’est passé",
              "body": "Le serveur n’a pas pu traiter la requête. Réessayer dans un instant."
            },
            "02": {
              "label": "02 Voies stables",
              "title": "Voies stables",
              "body": "Accueil. Intégrité. Sécurité. Source."
            },
            "03": {
              "label": "03 Vérification publique",
              "title": "Vérification publique",
              "body": "/integrity.json · /integrity.json.sig · /.well-known/pgp-key.asc"
            },
            "04": {
              "label": "04 Architecture",
              "title": "Architecture",
              "body": "HTML, CSS et JavaScript statiques. Aucune application publique à l’exécution. Aucune base de données publique."
            },
            "05": {
              "label": "05 Que faire",
              "title": "Que faire",
              "body": "Rafraîchir plus tard. Revenir à l’accueil. Contacter si persistant."
            },
            "06": {
              "label": "06 Contact",
              "title": "Contact",
              "body": "trent@trentpower.fr · LinkedIn · Trent Power"
            }
          },
          "footer": {
            "proof": "Privé · Statique · Signé · Sans suivi",
            "edition": "Édition 2026-05-09 · trentpower.fr"
          },
          "qr": {
            "label": "trentpower.fr"
          }
        }
      }
    },
    "source": {
      "print": {
        "kicker": "Source",
        "title": "Vue source publique",
        "lede": "Des fichiers publics sélectionnés sont copiés en texte brut afin que le site puisse être inspecté depuis n’importe quel lecteur, y compris mobile.",
        "meta": "Édition 2026-05-09 · trentpower.fr/source/",
        "doc_title": "Trent Power - Vue source publique",
        "card": {
          "01": {
            "label": "01 Ce qui est inclus",
            "title": "Ce qui est inclus",
            "body": "Miroirs HTML. CSS. JavaScript. Fichiers manifeste. Miroir .htaccess."
          },
          "02": {
            "label": "02 Ce qui est exclu",
            "title": "Ce qui est exclu",
            "body": "Identifiants. Notes privées. Factures. Sauvegardes. Internes du générateur, sauf publication explicite."
          },
          "03": {
            "label": "03 Organisation",
            "title": "Organisation",
            "body": "Trié par type de fichier, puis par nom. Miroirs en texte brut. Empreintes SHA-256. Tailles de fichier."
          },
          "04": {
            "label": "04 Vérification",
            "title": "Vérification",
            "body": "source-manifest.json · /integrity.json · signature détachée · clé publique."
          },
          "05": {
            "label": "05 Fichiers notables",
            "title": "Fichiers notables",
            "body": "styles.css.txt · app.js.txt · print.css.txt · htaccess.txt · source-manifest.json"
          },
          "06": {
            "label": "06 Principe",
            "title": "Principe",
            "body": "Lecteurs humains d’abord. Les fichiers lisibles par machine préservent identité, auteur et contexte."
          }
        },
        "footer": {
          "proof": "Privé · Statique · Signé · Sans suivi",
          "edition": "Édition 2026-05-09 · trentpower.fr/source/"
        },
        "qr": {
          "label": "trentpower.fr/source/"
        }
      },
      "heading": "Source",
      "intro_lede": "Des fichiers publics sélectionnés sont publiés ici sous forme lisible, pour l'inspection, la préservation, l'accessibilité et la lisibilité par machine.",
      "curation_note": "Cet index présente les principaux miroirs publics. D'autres fichiers miroirs peuvent rester accessibles par URL directe lorsqu'ils soutiennent la vérification, la récupération ou l'intégrité des versions publiées.",
      "download_lede": "Télécharger l'archive source publique de l'édition courante",
      "download_targz": "TAR.GZ",
      "download_zip": "ZIP",
      "download_checksums": "Sommes de contrôle",
      "back": "← Confidentialité",
      "group": {
        "published-pages": "Pages publiées",
        "trust-records": "Fiches de confiance",
        "scripts": "Scripts",
        "metadata": "Métadonnées"
      },
      "col": {
        "validated": "Validé"
      },
      "group_gloss": {
        "published-pages": "Miroirs lisibles des principales pages publiques, servis en texte brut afin que les octets puissent être inspectés sans exécution.",
        "trust-records": "Engagements publics et surfaces d'identité. Qui publie le site, ce qui est promis, où passent les signalements.",
        "scripts": "Feuilles de style et JavaScript écrits à la source que la page envoie au navigateur. Miroirs de la source, non des octets minifiés déployés.",
        "metadata": "Configuration serveur et fiches lisibles par machine décrivant le site aux robots d'indexation et aux modèles de langage."
      },
      "editions": {
        "eyebrow": "Éditions",
        "title": "Lignée des éditions",
        "note": {
          "current": "Édition signée en cours",
          "earlier": "Édition signée antérieure"
        }
      },
      "files": {
        "403_html_txt": {
          "description": "Page interdite."
        },
        "404_html_txt": {
          "description": "Page introuvable."
        },
        "500_html_txt": {
          "description": "Page d'erreur serveur."
        },
        "ai_usage_txt_txt": {
          "description": "Déclaration sur l'usage de l'IA et politique pour le site."
        },
        "app_enhance_js_txt": {
          "description": "Couche d'amélioration progressive. Interactions non essentielles, gracieusement optionnelles."
        },
        "app_js_txt": {
          "description": "Script d'exécution écrit à la source. Navigation, changement de langue, câblage du tiroir de citation."
        },
        "assertion_txt_txt": {
          "description": "Affirmation d'auteur. Déclaration d'auteur et d'intention d'intégrité."
        },
        "attestations_json_txt": {
          "description": "Attestations publiques. Revendications vérifiables sur le site."
        },
        "changelog_txt_txt": {
          "description": "Journal des éditions. Révisions notables du site public."
        },
        "cite_js_txt": {
          "description": "Tiroir de citation et vérification. Expose l'URL canonique, l'empreinte de la page et la signature."
        },
        "fonts_full_css_txt": {
          "description": "Déclarations de polices web. Sous-ensembles, formats et fallbacks."
        },
        "htaccess_txt": {
          "description": "Configuration Apache. Vérifiée contre toute fuite avant publication."
        },
        "humans_txt_txt": {
          "description": "Crédits et notes pour les personnes derrière le site."
        },
        "i18n_core_js_txt": {
          "description": "Source éditoriale des traductions. Les cinq langues réunies dans un JSON unique."
        },
        "i18n_de_js_txt": {
          "description": "Traductions allemandes."
        },
        "i18n_es_js_txt": {
          "description": "Traductions espagnoles."
        },
        "i18n_it_js_txt": {
          "description": "Traductions italiennes. Octets compacts déployés."
        },
        "images_manifest_json_txt": {
          "description": "Inventaire des images. Dimensions, dérivés et empreintes par fichier."
        },
        "index_html_txt": {
          "description": "Page d'accueil. Le point d'entrée éditorial."
        },
        "integrity_index_html_txt": {
          "description": "Vue d'ensemble de l'intégrité. Le manifeste signé, la clé et l'autorité de publication."
        },
        "integrity_releases_2026_05_09_index_html_txt": {
          "description": "Fiche figée de la page pour l'édition 2026-05-09."
        },
        "integrity_releases_archive_css_txt": {
          "description": "Feuille de style utilisée dans les archives d'éditions figées. Conservée auprès de ses fiches d'édition."
        },
        "integrity_releases_index_html_txt": {
          "description": "Index des éditions. La liste des éditions signées."
        },
        "llms_txt_txt": {
          "description": "Indications lisibles par machine pour les modèles de langage et systèmes d'IA."
        },
        "maintenance_html_txt": {
          "description": "Avis de maintenance. Utilisé lors d'une interruption planifiée."
        },
        "manifest_webmanifest_txt": {
          "description": "Manifeste d'application web. Métadonnées de la surface installable."
        },
        "pgp_txt_txt": {
          "description": "Déclaration PGP. Empreinte de la clé de signature et son usage."
        },
        "print_css_txt": {
          "description": "Feuille de style d'impression. Règles de mise en page pour le rendu papier."
        },
        "privacy_index_html_txt": {
          "description": "Déclaration de confidentialité. Ce qui est collecté, conservé et partagé."
        },
        "readme_txt": {
          "description": "Note d'orientation pour l'arborescence source. Même texte livré à la racine de chaque archive d'édition."
        },
        "robots_txt_txt": {
          "description": "Politique d'accès des robots et intention d'indexation publique."
        },
        "security_acknowledgments_index_html_txt": {
          "description": "Remerciements pour les signalements de sécurité publics."
        },
        "security_index_html_txt": {
          "description": "Posture de sécurité. Architecture, en-têtes et voie de signalement."
        },
        "site_metadata_json_txt": {
          "description": "Métadonnées du site. Édition, compilation, version des ressources."
        },
        "sitemap_xml_sha256_txt": {
          "description": "Miroir source de la somme de contrôle SHA-256 pour sitemap.xml."
        },
        "sitemap_xml_txt": {
          "description": "Plan du site public. Inventaire d'URL pour les robots d'indexation."
        },
        "source_manifest_json_txt": {
          "description": "Manifeste de l'arborescence /source/ elle-même. Chaque fichier miroir avec son empreinte."
        },
        "statement_txt_txt": {
          "description": "Déclaration éditoriale. Les principes d'écriture du site."
        },
        "styles_css_txt": {
          "description": "Feuille de style écrite à la source. Miroir de la source, non des octets minifiés déployés."
        },
        "sw_cache_manifest_json_txt": {
          "description": "Manifeste de cache du service worker. Fichiers épinglés pour usage hors ligne."
        },
        "sw_js_txt": {
          "description": "Service worker. Cache hors ligne du site public."
        },
        "sw_reset_index_html_txt": {
          "description": "Réinitialisation du service worker. Vide le cache hors ligne."
        },
        "verify_index_html_txt": {
          "description": "Interface de vérification. Contrôles d'empreinte au niveau de la page."
        },
        "verify_verify_js_txt": {
          "description": "Logique de vérification. Rend une fiche de page à partir de la carte de vérification."
        },
        "well_known_attribution_txt_txt": {
          "description": "Attribution d'auteur. Nomme la partie responsable du site public."
        },
        "well_known_build_json_txt": {
          "description": "Fiche de compilation. Données de reproductibilité de l'édition courante."
        },
        "well_known_person_json_txt": {
          "description": "Identité lisible par machine en JSON-LD. La référence utilisée par la découverte, la fédération et la vérification.",
          "role": "Fiche d'identité canonique"
        },
        "well_known_pgp_key_asc_txt": {
          "description": "Clé publique de signature en ASCII-armor. L'identité de signature de l'auteur."
        },
        "well_known_publication_json_txt": {
          "description": "Fiche de publication. Décrit le site comme un ouvrage éditorial auto-géré."
        },
        "well_known_security_txt_txt": {
          "description": "Politique de divulgation coordonnée. Contact et périmètre standard /.well-known/security.txt.",
          "role": "Surface de confiance publique"
        },
        "well_known_webfinger_txt": {
          "description": "Surface de découverte WebFinger. Résout l'identité à travers les protocoles fédérés.",
          "role": "Découverte d'identité"
        }
      },
      "related": {
        "title": "Fiches associées",
        "integrity": "Intégrité",
        "verify": "Vérifier",
        "security": "Sécurité"
      }
    },
    "verify": {
      "kicker": "Vérification",
      "title": "Vérifier cette page",
      "lede": "Une voie publique pour contrôler la source, l’empreinte, la signature et l’identité canonique.",
      "noscript_fallback": "JavaScript est nécessaire pour sélectionner et afficher une fiche de page ici. Les miroirs source, le manifeste signé et les archives d’édition restent accessibles via <a href=\"/source/\">Source</a> et <a href=\"/integrity/\">Intégrité</a>.",
      "meta": "Édition 2026-05-09 · trentpower.fr/verify/",
      "doc_title": "Trent Power - Fiche de vérification",
      "action": {
        "copy_canonical": "Copier l’URL",
        "copy_hash": "Copier l’empreinte",
        "copy_command": "Copier la commande de vérification",
        "open_source": "Ouvrir le miroir source",
        "open_manifest": "Ouvrir l’entrée du manifeste",
        "open_signature": "Ouvrir la signature",
        "open_key": "Ouvrir la clé publique",
        "copied": "Copié",
        "copy_manifest_command": "Copier la commande manifeste",
        "copy_source_command": "Copier la commande source",
        "copy_fingerprint": "Copier l'empreinte",
        "view_source_mirror": "Voir le miroir source",
        "open_source_mirror": "Ouvrir le miroir"
      },
      "command": {
        "manifest_title": "Vérifier le manifeste signé",
        "source_title": "Vérifier le miroir source",
        "note": "Le manifeste signé valide l’ensemble des fichiers publiés. La seconde commande calcule l’empreinte du miroir source pour la comparer au SHA-256 attendu ci-dessus."
      },
      "unknown": {
        "title": "Route absente de la carte de vérification",
        "body": "Cette route ne figure pas dans la carte de vérification publique. Vous pouvez tout de même consulter le manifeste public, la vue source et les versions signées.",
        "action": {
          "source": "Source",
          "manifest": "Manifeste d'intégrité",
          "releases": "Archive des éditions"
        }
      },
      "back": "← Confidentialité",
      "status": {
        "found": "Présent dans le manifeste signé",
        "missing": "Absent du manifeste public actuel"
      },
      "title_default": "Vérifier cette page",
      "title_prefix": "Vérifier",
      "lede_v2": "Contrôler une page publiée par rapport à son miroir source, son empreinte de page et son enregistrement de version signée.",
      "local": {
        "heading": "Vérifier localement",
        "manifest_label": "Vérifier le manifeste signé",
        "manifest_desc": "Vérifie que /integrity.json a été signé avec la clé publique publiée.",
        "mirror_label": "Vérifier le miroir de cette page",
        "mirror_desc": "Calcule l'empreinte du miroir source pour la comparer à la valeur attendue ci-dessus.",
        "intro": "Effectuez deux contrôles locaux : vérifier le manifeste signé, puis comparer le miroir source de cette page à l'empreinte attendue.",
        "subheading_manifest": "Vérifier le manifeste signé",
        "subheading_mirror": "Vérifier le miroir source",
        "closing": "Le manifeste signé authentifie l'ensemble des fichiers publiés. La seconde commande calcule l'empreinte du miroir de cette page pour la comparer à l'empreinte ci-dessus."
      },
      "related": {
        "heading": "Documents associés",
        "source": "Miroir source",
        "manifest": "Manifeste d'intégrité",
        "archive": "Archive de version"
      },
      "thispage": {
        "heading": "Cette page",
        "row": {
          "title": "Titre de la page",
          "canonical": "URL canonique",
          "route": "Route",
          "source": "Miroir source",
          "file_type": "Type de fichier",
          "file_size": "Taille",
          "manifest_status": "Statut dans le manifeste",
          "validated": "Dernière validation",
          "sha256": "Empreinte de la page",
          "release": "Archive de version",
          "file": "Fichier",
          "citation": "Citation",
          "route_prefix": "Route"
        },
        "status": {
          "found_manifest": "Présent dans le manifeste signé",
          "source_available": "Source disponible",
          "release_archived": "Version archivée",
          "short": {
            "signed": "Signé",
            "source": "Miroir",
            "archived": "Archivé"
          }
        },
        "kicker": "Document de page",
        "group": {
          "citation": "Citation",
          "location": "Emplacement",
          "evidence": "Évidence",
          "fingerprint": "Empreinte",
          "archive": "Archive"
        },
        "validated_prefix": "Validé"
      },
      "selected": {
        "manifest": "Manifeste d'intégrité",
        "signature": "Signature détachée",
        "public_key": "Clé publique"
      },
      "general": {
        "source": "Visualiseur source",
        "releases": "Archives des éditions"
      },
      "chooser": {
        "heading": "Documents liés",
        "label": {
          "home": "Accueil",
          "privacy": "Confidentialité",
          "security": "Sécurité",
          "integrity": "Intégrité",
          "verify": "Vérifier",
          "source": "Source",
          "releases": "Éditions"
        }
      }
    },
    "copy": {
      "command": "Copier la commande",
      "copied": "Copié",
      "failed": "Échec de copie"
    },
    "trust_routes": {
      "heading": "Routes de confiance",
      "privacy_label": "Confidentialité",
      "privacy_desc": "Ce que ce site ne collecte pas",
      "security_label": "Sécurité",
      "security_desc": "Comment le site est protégé",
      "integrity_label": "Intégrité",
      "integrity_desc": "Comment les éditions sont signées",
      "verify_label": "Vérifier",
      "verify_desc": "Comment une page peut être contrôlée",
      "source_label": "Source",
      "source_desc": "Miroirs lisibles des fichiers publics",
      "releases_label": "Éditions",
      "releases_desc": "Instantanés signés et figés"
    },
    "sw_reset": {
      "page_title": "Réinitialisation du Service Worker",
      "lede": "Efface le cache hors-ligne local de cet appareil uniquement. La publication en ligne et le serveur ne sont pas affectés.",
      "secondary": "Si une édition récente ne s'affiche pas correctement, cet utilitaire rafraîchit le cache local de la publication.",
      "local_marker": "APPAREIL LOCAL UNIQUEMENT",
      "status_label": "État du cache local",
      "status_initial": "Lecture de l'état local…",
      "button": "Réinitialiser le cache hors-ligne local",
      "button_done": "Réinitialisation effectuée",
      "edition_label": "Édition en cache",
      "edition_none": "Aucune édition en cache détectée",
      "clears_heading": "Efface",
      "clear_sw": "Enregistrements du Service Worker",
      "clear_caches": "Entrées du cache hors-ligne",
      "clear_pref": "Préférence de langue enregistrée",
      "preserves_heading": "N'efface pas",
      "preserve_history": "Historique du navigateur",
      "preserve_downloads": "Téléchargements",
      "preserve_others": "Autres sites",
      "preserve_server": "Contenu du serveur",
      "link_home": "Accueil",
      "link_reload": "Recharger l'édition actuelle",
      "footnote": "L'état hors-ligne est conservé localement via les API Cache Storage et Service Worker du navigateur.",
      "detected_label": "Détecté",
      "scope_heading": "Portée",
      "api_label": "API"
    },
    "verify_intro": {
      "panel_label": "Édition actuelle",
      "edition": "Édition",
      "signing_key": "Clé de signature",
      "manifest": "Manifeste signé",
      "signature": "Signature détachée",
      "public_key": "Clé publique",
      "archive": "Archive d'édition"
    },
    "verify_locally": {
      "page_title": "Vérifier localement",
      "body_intro": "Notes de vérification détachées pour le manifeste d'intégrité signé. Exécutez le contrôle dans un trousseau temporaire afin que la clé publique de signature n'entre pas dans votre trousseau principal.",
      "body_close": "La commande importe la clé publique dans un trousseau jetable, vérifie le manifeste signé et supprime les fichiers de travail. Aucun état ne subsiste sur la machine ensuite.",
      "back": "← Intégrité"
    },
    "source_reader": {
      "title": "Lecteur source",
      "loading": "Chargement du source…",
      "action": {
        "canonical": "Canonique",
        "verify": "Vérifier",
        "plain_text": "Brut",
        "copy_code": "Copier le code",
        "wrap_lines": "Retour à la ligne",
        "unwrap_lines": "Sans retour à la ligne",
        "back_to_top": "Haut",
        "copied": "Copié",
        "view_source": "Source",
        "view_annotated": "Annoté",
        "view_rendered_page": "Voir la page rendue",
        "reading_mode": "Mode de lecture",
        "top": "Haut"
      },
      "meta": {
        "validated": "Validé le",
        "part_of": "Systèmes liés :",
        "document_map": "Plan du document",
        "end_of_source": "Fin du miroir source",
        "intent": "Ce lecteur présente les miroirs publics du code source, avec annotations structurelles et références de publication signées."
      },
      "integrity": {
        "canonical": "Fichier canonique",
        "edition": "Édition",
        "sha256": "SHA-256",
        "signed_release": "Publication signée"
      },
      "map_label": {
        "head": "Tête",
        "identity": "Identité",
        "discovery": "Découvrabilité",
        "social_preview": "Aperçu social",
        "assets": "Ressources",
        "structured_data": "Données structurées",
        "header": "En-tête",
        "main": "Contenu principal",
        "footer": "Pied de page",
        "tokens": "Jetons",
        "fonts": "Polices",
        "base": "Base",
        "layout": "Mise en page",
        "components": "Composants",
        "responsive": "Responsive",
        "print": "Impression",
        "state": "État",
        "i18n": "i18n",
        "events": "Événements",
        "modals": "Modales",
        "copy": "Copie",
        "verification": "Vérification",
        "init": "Initialisation",
        "policy": "Politique",
        "records": "Enregistrements"
      },
      "mode": {
        "label": "Mode de lecture",
        "source": "Source",
        "annotated": "Annoté",
        "raw": "Brut"
      },
      "end": {
        "title": "Fin du miroir source",
        "edition": "Édition",
        "sha256": "SHA-256",
        "signed_release": "Publication signée"
      },
      "kind": {
        "html": "Langage de balisage hypertexte",
        "css": "Feuilles de style en cascade",
        "js": "JavaScript",
        "json": "Notation d'objet JavaScript",
        "xml": "Langage de balisage extensible",
        "text": "Texte brut",
        "apache": "Configuration Apache",
        "sig": "Signature PGP détachée",
        "asc": "Clé PGP en ASCII-armor"
      },
      "gloss": {
        "foundations": "encodage des caractères, fenêtre d'affichage, palette.",
        "head": "en-tête du document — métadonnées, aucun contenu rendu.",
        "identity": "auteur, nom de l'application, liens d'attribution.",
        "document": "titre de la page, description, URL canonique.",
        "discovery": "politique d'indexation et de référent.",
        "social": "métadonnées open graph et twitter card.",
        "assets": "feuilles de style, scripts, icônes, manifeste.",
        "icons": "icônes de plateforme et illustration d'écran d'accueil.",
        "structured": "schéma json-ld, identité lisible par machine.",
        "header": "en-tête du site — sigle et navigation principale.",
        "footer": "colophon, sélecteur de langue, actions de pied de page.",
        "script": "logique applicative du site.",
        "tokens": "jetons de design — couleurs, typographie, espacements.",
        "fonts": "déclarations @font-face et fichiers de police.",
        "base": "réinitialisation et typographie des éléments de base.",
        "layout": "grammaire de mise en page au niveau de la page.",
        "components": "styles de composants réutilisables.",
        "responsive": "ajustements selon la fenêtre d'affichage.",
        "print": "règles de feuille de style pour l'impression.",
        "state": "état applicatif et variables d'exécution.",
        "i18n": "résolution des traductions et changement de langue.",
        "events": "écouteurs d'événements et câblage des interactions.",
        "modals": "surfaces superposées, dialogues, pièges de focus.",
        "copy": "interactions avec le presse-papiers.",
        "verification": "manifeste signé et références cryptographiques.",
        "records": "fiches éditoriales.",
        "init": "séquence de démarrage — exécutée une fois au chargement.",
        "policy": "politiques déclarées du site."
      }
    }
  }
}
