[{"data":1,"prerenderedAt":240},["ShallowReactive",2],{"legal-consent":3,"live-signal":34,"legal-privacy":39},{"id":4,"title":5,"acceptLabel":6,"body":7,"declineLabel":23,"description":24,"extension":25,"meta":26,"navigation":27,"path":28,"privacyHref":29,"prompt":30,"seo":31,"stem":32,"__hash__":33},"legal/legal/consent.md","Cookies & analytics","Accept",{"type":8,"value":9,"toc":19},"minimark",[10],[11,12,13,14,18],"p",{},"Analytics consent prompt copy. Edit the frontmatter above to change\nthe visible strings; the body of this markdown document is intentionally\nunused — ",[15,16,17],"code",{},"ConsentPrompt"," reads only the frontmatter fields.",{"title":20,"searchDepth":21,"depth":21,"links":22},"",2,[],"Decline","Analytics consent prompt copy. Edit the frontmatter above to change\nthe visible strings; the body of this markdown document is intentionally\nunused — ConsentPrompt reads only the frontmatter fields.","md",{},true,"/legal/consent","/legal/privacy","We use Google Analytics 4 to understand which pages visitors find useful. Analytics is off by default; choose below. Read more on our privacy page.",{"title":5,"description":24},"legal/consent","YD3ndNOkmtY4hpjrLmZGUB9xZ90ykWzi50_51lPzHbE",{"repo":35,"sha":36,"timestamp":37,"fetchedAt":38},"Koshux/Portfolio","b8eae60","2026-04-27T22:33:23Z","2026-04-27T22:48:56.569Z",{"id":40,"title":41,"acceptLabel":42,"body":43,"declineLabel":42,"description":235,"extension":25,"meta":236,"navigation":27,"path":29,"privacyHref":29,"prompt":42,"seo":237,"stem":238,"__hash__":239},"legal/legal/privacy.md","Privacy notice",null,{"type":8,"value":44,"toc":227},[45,49,68,73,127,131,158,162,176,180,209,213,216,220],[46,47,41],"h1",{"id":48},"privacy-notice",[11,50,51,52,55,56,60,61,64,65,67],{},"This site (",[15,53,54],{},"jameslanzon.com",") is a static portfolio. No backend stores\nyour data. The only optional analytics is ",[57,58,59],"strong",{},"Google Analytics 4 (GA4)",",\nloaded ",[57,62,63],{},"only after"," you click ",[57,66,6],{}," on the consent prompt.",[69,70,72],"h2",{"id":71},"what-we-collect-only-with-your-consent","What we collect (only with your consent)",[74,75,76,104,107,117,120],"ul",{},[77,78,79,80,83,84,86,87,83,90,83,93,96,97,83,100,103],"li",{},"The page path you visited (",[15,81,82],{},"/",", ",[15,85,29],{},", …) and the page\ntitle, with all query-string parameters stripped except the marketing\nattribution params (",[15,88,89],{},"utm_source",[15,91,92],{},"utm_medium",[15,94,95],{},"utm_campaign",",\n",[15,98,99],{},"utm_term",[15,101,102],{},"utm_content",").",[77,105,106],{},"Your referring URL (HTTP referrer, also redacted to remove query\nstrings and fragments).",[77,108,109,110,113,114,103],{},"Country (derived by Google from your IP — your IP itself is\n",[57,111,112],{},"anonymised"," before storage; we set ",[15,115,116],{},"anonymize_ip: true",[77,118,119],{},"Device category (mobile / desktop / tablet) and browser family.",[77,121,122,123,126],{},"A first-party ",[15,124,125],{},"_ga"," cookie used to attribute return visits.",[69,128,130],{"id":129},"what-we-do-not-collect","What we do NOT collect",[74,132,133,136,149,152,155],{},[77,134,135],{},"Your precise IP address.",[77,137,138,139,142,143,96,146,103],{},"Advertising identifiers — Google Signals and ad personalization are\n",[57,140,141],{},"disabled"," at the SDK level (",[15,144,145],{},"allow_google_signals: false",[15,147,148],{},"allow_ad_personalization_signals: false",[77,150,151],{},"Cross-site identifiers, fingerprints, or third-party tracking.",[77,153,154],{},"Form input, scroll-pixel positions, mouse movements, session\nrecordings, or heatmaps.",[77,156,157],{},"Email addresses or any URL query parameters that might contain\npersonal data — these are stripped before any analytics call.",[69,159,161],{"id":160},"retention","Retention",[11,163,164,165,168,169,171,172,175],{},"GA4 retains event-level data for the default ",[57,166,167],{},"14 months",", after which\nit is aggregated. The ",[15,170,125],{}," cookie expires after ",[57,173,174],{},"2 years"," unless you\nrevoke consent first.",[69,177,179],{"id":178},"your-controls","Your controls",[74,181,182,188,195,206],{},[77,183,184,187],{},[57,185,186],{},"Cookie preferences"," (button at the top of this page) — open the\nprompt at any time to change your decision.",[77,189,190,191,194],{},"Revoking consent immediately removes the GA4 script from the page,\nclears the ",[15,192,193],{},"_ga*"," cookies on this domain, and stops all subsequent\nanalytics calls.",[77,196,197,198,201,202,205],{},"We honour the ",[15,199,200],{},"Sec-GPC"," (Global Privacy Control) header and the\n",[15,203,204],{},"navigator.doNotTrack === '1'"," setting as automatic decline signals.\nWhen either is on, the consent prompt is hidden by default and the\nGA tag never loads.",[77,207,208],{},"You can also use your browser's content-blocking extensions; we do\nnot detect or circumvent them.",[69,210,212],{"id":211},"when-javascript-is-disabled","When JavaScript is disabled",[11,214,215],{},"The site is fully usable without JavaScript. With JS off, the consent\nprompt does not render and no analytics runs.",[69,217,219],{"id":218},"contact","Contact",[11,221,222,223,226],{},"Questions about this notice: email ",[15,224,225],{},"lanzonprojects@gmail.com",".",{"title":20,"searchDepth":21,"depth":21,"links":228},[229,230,231,232,233,234],{"id":71,"depth":21,"text":72},{"id":129,"depth":21,"text":130},{"id":160,"depth":21,"text":161},{"id":178,"depth":21,"text":179},{"id":211,"depth":21,"text":212},{"id":218,"depth":21,"text":219},"This site (jameslanzon.com) is a static portfolio. No backend stores\nyour data. The only optional analytics is Google Analytics 4 (GA4),\nloaded only after you click Accept on the consent prompt.",{},{"title":41,"description":235},"legal/privacy","3BdnwEh8nRG2sCAQtKoJiboJ_VEJob3Tru3f29X2LAk",1777330148372]